:root{--crema: #f4f1e8;--marfil: #fffdf7;--tinta: #1c2b33;--tinta-suave: #4c5b60;--linea: #e1dccd;--mostaza: #e4be5c;--comedor: #234337;--comedor-acento: #e4be5c;--extra: #0f9d70;--extra-acento: #ff6b45;--espai: #087dc1;--espai-acento: #60b45b;--serif: "Fraunces", Georgia, serif;--sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--curva: cubic-bezier(.2, .8, .2, 1);--rebote: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--crema);color:var(--tinta);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:3px solid var(--espai);outline-offset:3px;border-radius:6px}.fondo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='96' viewBox='0 0 72 96'%3E%3Cpath d='M14 88V40a22 22 0 0 1 44 0v48' fill='none' stroke='%231c2b33' stroke-opacity='.07' stroke-width='1.3'/%3E%3C/svg%3E");background-size:72px 96px;mask-image:radial-gradient(ellipse 90% 70% at 70% 10%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 90% 70% at 70% 10%,#000 0%,transparent 75%);animation:deriva 60s linear infinite}@keyframes deriva{to{background-position:72px 0}}.barra{max-width:1160px;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 20px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.marca{display:flex;align-items:center;gap:10px;text-decoration:none}.marca img{width:40px;height:auto}.marca span{display:flex;flex-direction:column;line-height:1.15}.marca strong{font-family:var(--serif);font-weight:600;font-size:17px}.marca small{font-size:12px;color:var(--tinta-suave);letter-spacing:.02em}.saludo{font-size:14px;font-weight:500;color:var(--tinta-suave);background:var(--marfil);border:1px solid var(--linea);padding:6px 14px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw;animation:aparece .6s var(--curva) .2s both}.portada{max-width:1160px;margin:0 auto;padding:44px 20px 56px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:48px}.antetitulo{margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--extra)}h1{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(38px,5.6vw,66px);line-height:1.04;letter-spacing:-.02em}h1 em{font-style:italic;font-weight:500;color:var(--comedor)}.entradilla{margin:22px 0 0;max-width:34em;font-size:18px;color:var(--tinta-suave)}.entra{animation:aparece .8s var(--curva) both;animation-delay:calc(.15s + var(--d) * .12s)}@keyframes aparece{0%{opacity:0;transform:translateY(18px)}}.fachada{position:relative;width:min(100%,470px);justify-self:center;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:5%;padding:30px 0 14px}.arco{--base: var(--comedor);--acento: var(--comedor-acento);--alto: 0px;position:relative;display:block;container-type:inline-size;text-decoration:none;translate:0 var(--alto);transform-origin:50% 100%;animation:alza .9s var(--curva) both;animation-delay:calc(.3s + var(--i) * .14s);transition:translate .4s var(--curva),filter .4s var(--curva);filter:drop-shadow(0 8px 12px rgb(28 43 51 / .12))}.arco:nth-child(2){--alto: -22px}.arco[data-app=extra]{--base: var(--extra);--acento: var(--extra-acento)}.arco[data-app=espai]{--base: var(--espai);--acento: var(--espai-acento)}.arco svg{display:block;width:100%;height:auto;overflow:visible}.hueco{fill:var(--base)}.acento{fill:var(--acento)}.fondo-glifo{fill:var(--base)}.claro{fill:var(--marfil)}.trazo,.trazo-claro{fill:none;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.trazo{stroke:var(--acento)}.trazo-claro{stroke:var(--marfil)}.glifo{transform-box:fill-box;transform-origin:center;animation:brota .7s var(--rebote) both;animation-delay:calc(1s + var(--i) * .14s)}.podio rect{transform-box:fill-box;transform-origin:50% 100%;animation:crece-alto .6s var(--rebote) both;animation-delay:calc(1.15s + var(--b) * .12s)}.percha{transform-origin:50% 0%}.nombre{position:absolute;left:6%;right:6%;bottom:9%;color:#fff;text-align:center;font-weight:700;font-size:clamp(11px,13cqi,19px);line-height:1.1;-webkit-hyphens:manual;hyphens:manual;animation:aparece .6s var(--curva) both;animation-delay:calc(1.2s + var(--i) * .14s)}.suelo{position:absolute;left:-4%;right:-4%;bottom:0;height:6px;border-radius:999px;background:var(--tinta);opacity:.85;transform-origin:left;animation:traza .9s var(--curva) .15s both}@keyframes alza{0%{opacity:0;transform:translateY(40px) scaleY(.35)}}@keyframes traza{0%{transform:scaleX(0)}}@keyframes brota{0%{transform:scale(0)}}@keyframes crece-alto{0%{transform:scaleY(0)}}a.arco:hover,a.arco:focus-visible,a.arco.resalta{translate:0 calc(var(--alto) - 10px);filter:drop-shadow(0 18px 22px rgb(28 43 51 / .24))}a.arco:hover .plato,a.arco.resalta .plato{animation:gira-plato 1.2s var(--curva)}a.arco:hover .podio rect,a.arco.resalta .podio rect{animation:salta .7s var(--rebote) both;animation-delay:calc(var(--b) * .08s)}a.arco:hover .percha,a.arco.resalta .percha{animation:balancea 1.4s ease-in-out}@keyframes gira-plato{50%{transform:scale(1.12) rotate(20deg)}}@keyframes salta{40%{transform:scaleY(1.25)}}@keyframes balancea{25%{transform:rotate(9deg)}60%{transform:rotate(-6deg)}}a.arco:active{translate:0 calc(var(--alto) - 4px)}.acceso{margin-top:30px;max-width:470px;padding:20px;background:var(--marfil);border:1px solid var(--linea);border-radius:22px;box-shadow:0 18px 40px -26px #1c2b3366}.acceso.cargando .form-acceso,.acceso.cargando .sesion{opacity:.5;pointer-events:none}.form-acceso label{display:block;margin-bottom:10px;font-weight:700;font-size:16px}.campo{display:flex;gap:8px}.campo input{flex:1;min-width:0;height:50px;padding:0 16px;font:inherit;font-size:16px;color:var(--tinta);background:#fff;border:1px solid var(--linea);border-radius:14px;transition:border-color .2s,box-shadow .2s}.campo input:focus{outline:none;border-color:var(--comedor);box-shadow:0 0 0 4px color-mix(in srgb,var(--comedor) 15%,transparent)}.boton-principal{flex:none;height:50px;padding:0 20px;font:inherit;font-weight:700;color:#fff;background:var(--tinta);border:none;border-radius:14px;cursor:pointer;transition:transform .2s var(--rebote),background .2s}.boton-principal:hover{background:var(--comedor)}.boton-principal:active{transform:scale(.97)}.boton-principal[disabled]{opacity:.6;cursor:progress}.ayuda{margin:10px 0 0;font-size:13.5px;color:var(--tinta-suave)}.aviso{margin:10px 0 0;font-size:14.5px;font-weight:500}.aviso:empty{display:none}.aviso.ok{color:var(--comedor)}.aviso.error{color:#b3412a}.sesion{display:flex;align-items:center;gap:14px;animation:aparece .5s var(--curva)}.sesion[hidden],.form-acceso[hidden]{display:none}.avatar{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--comedor);color:var(--mostaza);font-family:var(--serif);font-weight:600;font-size:22px}.sesion-datos{flex:1;min-width:0;line-height:1.3}.sesion-datos strong{display:block;font-size:17px}.sesion-datos small{display:block;color:var(--tinta-suave);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sesion-datos p{margin:6px 0 0;font-size:14px;color:var(--extra);font-weight:600}.salir{flex:none;height:40px;padding:0 14px;font:inherit;font-size:14px;color:var(--tinta-suave);background:none;border:1px solid var(--linea);border-radius:12px;cursor:pointer}.salir:hover{color:var(--tinta);border-color:var(--tinta-suave)}.sesion-botones{flex:none;display:flex;flex-direction:column;gap:6px}.sesion-botones [hidden]{display:none}.form-config{display:flex;flex-direction:column}.form-config label{margin:12px 0 6px;font-weight:700;font-size:14px}.form-config input,.form-config textarea{font:inherit;font-size:16px;color:var(--tinta);padding:12px 14px;background:#fff;border:1px solid var(--linea);border-radius:12px;resize:vertical}.form-config input:focus,.form-config textarea:focus{outline:none;border-color:var(--comedor);box-shadow:0 0 0 4px color-mix(in srgb,var(--comedor) 15%,transparent)}.botones-config{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:16px}.oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.servicios,.pasos{max-width:1160px;margin:0 auto;padding:24px 20px 56px}h2{margin:0 0 24px;font-family:var(--serif);font-weight:600;font-size:clamp(28px,3.4vw,38px);letter-spacing:-.015em}.tarjetas{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.tarjeta{--color: var(--comedor);--acento: var(--comedor-acento);display:flex;flex-direction:column;text-decoration:none;background:var(--marfil);border:1px solid var(--linea);border-radius:24px;overflow:hidden;transition:transform .35s var(--curva),box-shadow .35s var(--curva),border-color .35s}.tarjeta[data-app=extra]{--color: var(--extra);--acento: var(--extra-acento)}.tarjeta[data-app=espai]{--color: var(--espai);--acento: var(--espai-acento)}.tarjeta:hover,.tarjeta:focus-visible{transform:translateY(-6px);box-shadow:0 22px 40px -18px #1c2b3359;border-color:color-mix(in srgb,var(--color) 40%,var(--linea))}.foto{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:color-mix(in srgb,var(--color) 20%,var(--crema))}.foto img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--curva)}.foto:after{content:"";position:absolute;right:18px;bottom:0;width:40px;height:54px;background:radial-gradient(circle at 50% 44%,var(--acento) 0 8px,transparent 8.5px),var(--color);border-radius:20px 20px 0 0;box-shadow:0 0 0 4px var(--marfil);transition:transform .5s var(--rebote)}.tarjeta:hover .foto img{transform:scale(1.06)}.tarjeta:hover .foto:after{transform:translateY(-6px)}.cuerpo{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}.chapa{align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color);background:color-mix(in srgb,var(--color) 10%,#fff);padding:4px 10px;border-radius:999px}.tarjeta h3{margin:12px 0 6px;font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.15}.tarjeta p{margin:0;color:var(--tinta-suave)}.tarjeta ul{list-style:none;margin:16px 0 20px;padding:0;display:grid;gap:7px;font-size:15px}.tarjeta li{display:flex;align-items:center;gap:10px}.tarjeta li:before{content:"";flex:none;width:8px;height:10px;border-radius:4px 4px 1px 1px;background:var(--acento)}.boton{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:0 18px;border-radius:14px;background:var(--color);color:#fff;font-weight:600}.flecha{display:inline-block;transition:transform .35s var(--rebote)}.tarjeta:hover .flecha{transform:translate(5px)}.pasos ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pasos li{display:flex;gap:14px;align-items:flex-start}.num{flex:none;display:grid;place-items:center;width:40px;height:44px;border-radius:20px 20px 8px 8px;background:var(--tinta);color:var(--mostaza);font-family:var(--serif);font-weight:600;font-size:19px}.pasos strong{font-size:17px}.pasos p{margin:2px 0 0;color:var(--tinta-suave);font-size:15px}.js .revela{opacity:0;transform:translateY(24px);transition:opacity .7s var(--curva),transform .7s var(--curva);transition-delay:calc(var(--n, 0) * 90ms)}.js .revela.visible{opacity:1;transform:none}.js .tarjeta.revela.visible:hover{transform:translateY(-6px);transition-delay:0s}.pie{max-width:1160px;margin:0 auto;padding:24px 20px max(28px,env(safe-area-inset-bottom));border-top:1px solid var(--linea);display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:var(--tinta-suave)}.pie p{margin:0}.version{font:inherit;font-size:13px;color:var(--tinta-suave);background:none;border:1px solid var(--linea);border-radius:999px;padding:4px 12px;cursor:pointer}.version:hover{border-color:var(--tinta-suave);color:var(--tinta)}.modal{border:none;padding:0;background:transparent;max-width:min(92vw,480px);width:100%}.modal::backdrop{background:#1c2b3373;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal[open] .modal-caja{animation:aparece .35s var(--curva)}.modal-caja{background:var(--marfil);color:var(--tinta);border-radius:22px;padding:22px 24px 24px;max-height:80vh;overflow:auto}.modal-caja header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.modal-caja h2{margin:0;font-size:26px}.modal-texto{margin:0 0 14px;color:var(--tinta-suave)}.sin-sesion{display:inline-block;margin-top:16px;font-size:14px;color:var(--tinta-suave)}.cerrar{width:40px;height:40px;border-radius:12px;border:1px solid var(--linea);background:none;font-size:24px;line-height:1;cursor:pointer;color:var(--tinta)}.entrada-version{padding:14px 0;border-top:1px solid var(--linea)}.entrada-version h3{margin:0 0 6px;font-size:15px}.entrada-version h3 span{font-weight:400;color:var(--tinta-suave);margin-left:6px}.entrada-version ul{margin:0;padding-left:18px;color:var(--tinta-suave);font-size:15px}.puerta{position:fixed;z-index:50;background:var(--color);border-radius:999px 999px 0 0;pointer-events:none;display:grid;place-items:center;color:#fff;font-family:var(--serif);font-size:clamp(26px,4vw,40px);font-weight:600;transition:inset .6s var(--curva),border-radius .6s var(--curva)}.puerta span{opacity:0;transform:translateY(10px);text-align:center;transition:opacity .4s .25s,transform .4s .25s var(--curva)}.puerta small{display:block;margin-top:6px;font-family:var(--sans);font-size:15px;font-weight:500;opacity:.85}.puerta.abierta{top:0!important;right:0!important;bottom:0!important;left:0!important;border-radius:0}.puerta.abierta span{opacity:1;transform:none}@media(max-width:900px){.portada{grid-template-columns:1fr;gap:28px;padding-top:18px}.fachada{width:min(100%,380px);order:-1}.tarjetas,.pasos ol{grid-template-columns:1fr}.tarjetas{max-width:560px}}@media(max-width:520px){.marca small{display:none}.entradilla{font-size:17px}.campo{flex-direction:column}.campo input{flex:none}.pie{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
