:root{--c-champagne: #f8f3d1;--c-cafe: #302413;--surface: var(--c-champagne);--ink: var(--c-cafe);--line: var(--c-cafe);--grano: .07;--grano-mezcla: multiply;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 40px;--space-6: 64px;--radius-none: 0;--radius-full: 9999px;--mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--track: .1em;--fs-display: clamp(2.1rem, 8.5vw, 3.9rem);--fs-title: clamp(1.5rem, 5.2vw, 2.1rem);--fs-heading: clamp(1.05rem, 3.4vw, 1.25rem);--fs-body: clamp(.95rem, 2.9vw, 1rem);--fs-sm: .875rem;--fs-label: .72rem;--ease: cubic-bezier(.16, 1, .3, 1);--dur: 1.1s;--ancho: 46rem;--gutter: clamp(1.25rem, 6vw, 3.5rem)}html[data-tema=cafe]{--surface: var(--c-cafe);--ink: var(--c-champagne);--line: var(--c-champagne);--grano: .05;--grano-mezcla: screen}.inv{--surface: var(--c-cafe);--ink: var(--c-champagne);--line: var(--c-champagne)}html[data-tema=cafe] .inv{--surface: var(--c-champagne);--ink: var(--c-cafe);--line: var(--c-cafe)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:var(--fs-body);line-height:1.65;letter-spacing:var(--track);font-weight:400;overflow-x:hidden;transition:background-color .6s var(--ease),color .6s var(--ease)}h1,h2,h3,h4,p,ul,ol,figure,table{margin:0}ul{list-style:none;padding:0}a{color:inherit}button{font:inherit;letter-spacing:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}:focus-visible{outline:1px solid var(--ink);outline-offset:4px}::selection{background:var(--ink);color:var(--surface)}.saltar{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--surface);padding:var(--space-3);font-size:var(--fs-label);text-transform:uppercase}.saltar:focus{left:0}.marca{display:block}.marca svg{display:block;width:100%;height:auto}.sprite{position:absolute;width:0;height:0;overflow:hidden}.intro{position:fixed;inset:0;z-index:95;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5)}.intro[hidden]{display:none}.intro-fondo{position:absolute;inset:0;background:var(--surface)}.intro-marca{position:relative;width:min(62vw,280px);color:var(--ink);will-change:transform}@media (min-width: 720px){.intro-marca{width:min(38vw,340px)}}.intro-iso{display:block;width:100%;height:auto;overflow:visible}.intro-slogan{position:relative;margin:0;color:var(--ink);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.3em;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .47s var(--ease),transform .47s var(--ease)}.intro[data-fase=dibujado] .intro-slogan{opacity:1;transform:none}.intro[data-fase=vuela] .intro-slogan{opacity:0;transition-duration:.23s}.grano{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:var(--grano);mix-blend-mode:var(--grano-mezcla);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px}.progreso{position:fixed;inset:0 auto auto 0;height:1px;width:100%;background:var(--ink);transform:scaleX(0);transform-origin:0 50%;z-index:70;pointer-events:none}@supports (animation-timeline: scroll()){.progreso{animation:avanzar linear both;animation-timeline:scroll(root block)}}@keyframes avanzar{to{transform:scaleX(1)}}.riel{position:fixed;left:var(--space-4);top:50%;transform:translateY(-50%);z-index:40;pointer-events:none;display:none;font-size:var(--fs-label);text-transform:uppercase;writing-mode:vertical-rl;letter-spacing:.32em;color:var(--ink)}@media (min-width: 1100px){.riel{display:block}}.barra{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--gutter);background:var(--surface);border-bottom:1px solid transparent;transition:border-color .4s var(--ease),background-color .6s var(--ease)}.barra[data-pegada=si]{border-bottom-color:var(--line)}.barra-marca{display:block}.marca-iso-chica{width:40px}.tema{display:flex;border:1px solid var(--line)}.tema button{padding:6px 10px;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.12em;transition:background-color .3s var(--ease),color .3s var(--ease)}.tema button+button{border-left:1px solid var(--line)}.tema button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.hero{min-height:calc(100svh - 58px);padding:var(--space-5) var(--gutter) var(--space-6);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:clamp(14px,3.6vw,26px);max-width:var(--ancho);margin:0 auto;position:relative}.hero-marca{width:clamp(180px,52vw,300px)}.marca-logo{width:100%}@media (min-width: 900px){.hero{max-width:64rem;display:grid;grid-template-columns:minmax(260px,360px) 1fr;grid-template-areas:"marca estado" "marca cta" "tagline dir";align-content:center;align-items:end;column-gap:var(--space-6);row-gap:var(--space-4)}.hero-marca{grid-area:marca;width:100%;align-self:center}.hero-tagline{grid-area:tagline;align-self:start}.estado{grid-area:estado}.cta{grid-area:cta}.dir{grid-area:dir;align-self:start}}.hero-tagline{font-style:italic;font-size:var(--fs-body);max-width:26ch}.estado{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--space-2) 0;width:100%;flex-wrap:wrap}.estado-punto{width:7px;height:7px;border:1px solid var(--ink);background:var(--ink);flex:none}.estado-punto[data-estado-punto=si]{animation:latir 3s steps(1,end) infinite}.estado-punto[data-estado-punto=no]{background:transparent}@keyframes latir{0%,60%{background:var(--ink)}60.01%,to{background:transparent}}.estado-detalle{text-transform:none;letter-spacing:var(--track);font-style:italic}.cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4);background:var(--ink);color:var(--surface);text-decoration:none;border-radius:var(--radius-none);transition:transform .5s var(--ease);will-change:transform}.cta-texto{display:flex;flex-direction:column;gap:2px}.cta-etiqueta{font-size:var(--fs-heading);text-transform:uppercase;letter-spacing:.14em}.cta-detalle{font-size:var(--fs-label);font-style:italic;letter-spacing:var(--track)}.cta-flecha{font-size:1.3rem;transition:transform .5s var(--ease)}.cta:hover .cta-flecha,.cta:focus-visible .cta-flecha{transform:translate(4px,-4px)}.dir{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2) var(--space-4);width:100%}.dir-texto{font-size:var(--fs-sm);font-style:italic}.enlace{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--line);padding-bottom:2px}.baja{position:absolute;left:var(--gutter);bottom:var(--space-4);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.24em;animation:respirar 4s var(--ease) infinite}@keyframes respirar{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.banda{background:var(--surface);color:var(--ink);overflow:hidden;padding:var(--space-3) 0;border-block:1px solid var(--line)}.banda-pista{display:flex;width:max-content;animation:correr 56s linear infinite}.banda-item{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.3em;padding-inline:2.2rem;white-space:nowrap}.banda-item:after{content:"—";margin-left:2.2rem}@keyframes correr{to{transform:translate(-50%)}}.seccion{padding:var(--space-6) var(--gutter);scroll-margin-top:64px}.seccion>*{max-width:var(--ancho);margin-inline:auto}.sec-head{display:flex;align-items:baseline;gap:var(--space-3);border-bottom:1px solid var(--line);padding-bottom:var(--space-3);margin-bottom:var(--space-5)}.sec-num{font-size:var(--fs-label);letter-spacing:.2em}.sec-titulo{font-size:var(--fs-title);font-weight:400;letter-spacing:var(--track)}.acceso{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-3);border-bottom:1px solid var(--line);text-decoration:none;transition:background-color .35s var(--ease),color .35s var(--ease),padding-left .35s var(--ease)}.acceso-texto{display:flex;flex-direction:column;gap:2px}.acceso-etiqueta{font-size:var(--fs-heading);text-transform:uppercase;letter-spacing:.14em}.acceso-detalle{font-size:var(--fs-sm);font-style:italic}.acceso-flecha{font-size:1.15rem;transition:transform .35s var(--ease)}.acceso:hover,.acceso:focus-visible,.acceso[data-tocado=si]{background:var(--ink);color:var(--surface);padding-left:var(--space-5)}.acceso:hover .acceso-flecha,.acceso:focus-visible .acceso-flecha{transform:translate(4px)}.manifiesto{background:var(--surface);color:var(--ink)}.man-cuerpo{display:grid;gap:var(--space-5);max-width:var(--ancho);margin-inline:auto}@media (min-width: 720px){.man-cuerpo{grid-template-columns:240px 1fr;align-items:start;gap:var(--space-6)}}.man-iso{width:clamp(160px,48vw,240px)}.man-linea{font-style:italic;font-size:clamp(1rem,3.4vw,1.15rem);line-height:1.85;margin-bottom:var(--space-3);max-width:42ch}.man-cierre{font-size:var(--fs-title);line-height:1.35;text-transform:uppercase;letter-spacing:.12em;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line);max-width:20ch}.descanso{display:flex;justify-content:center;padding:var(--space-6) var(--gutter)}.marca-auxiliar{width:clamp(110px,28vw,160px)}.visita-grid{display:grid;gap:var(--space-6)}@media (min-width: 720px){.visita-grid{grid-template-columns:1fr 1fr;gap:var(--space-5)}}.visita-sub{font-size:var(--fs-label);font-weight:400;text-transform:uppercase;letter-spacing:.2em;padding-bottom:var(--space-2);border-bottom:1px solid var(--line);margin-bottom:var(--space-3)}.visita-dir{font-style:italic;margin-bottom:var(--space-4)}.boton{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em;text-decoration:none;transition:background-color .35s var(--ease),color .35s var(--ease)}.boton:hover,.boton:focus-visible{background:var(--ink);color:var(--surface)}.horario{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.horario th,.horario td{padding:var(--space-2) 0;text-align:left;font-weight:400}.horario td{text-align:right;font-style:italic}.horario tr+tr th,.horario tr+tr td{border-top:1px solid var(--line)}.horario tr[data-hoy=si] th,.horario tr[data-hoy=si] td{background:var(--ink);color:var(--surface)}.horario tr[data-hoy=si] th{padding-left:var(--space-2)}.horario tr[data-hoy=si] td{padding-right:var(--space-2)}.visita-nota{margin-top:var(--space-3);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em}.fijo{position:fixed;left:0;right:0;bottom:0;z-index:55;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--surface);text-decoration:none;transform:translateY(110%);transition:transform .6s var(--ease)}.fijo[data-visible=si]{transform:none}.fijo-texto{display:flex;flex-direction:column;gap:1px;min-width:0}.fijo-etiqueta{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em}.fijo-dir{font-size:.7rem;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (min-width: 720px){.fijo{display:none}}.pie{background:var(--surface);color:var(--ink);padding:var(--space-6) var(--gutter);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center}@media (max-width: 719px){.pie{padding-bottom:calc(var(--space-6) + 64px)}}.marca-tag{width:clamp(200px,60vw,320px)}.pie-meta{font-size:var(--fs-sm);font-style:italic}.pie-credito{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.18em}.pie-credito a{text-decoration:none;border-bottom:1px solid var(--line)}.rv{opacity:0;transform:translateY(12px)}.rv[data-visible=si]{opacity:1;transform:none;transition:opacity var(--dur) var(--ease) calc(var(--i, 0) * 90ms),transform var(--dur) var(--ease) calc(var(--i, 0) * 90ms)}html.no-js .rv{opacity:1;transform:none}body[data-intro-corriendo=si]{overflow:hidden}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.rv,.rv[data-visible=si]{opacity:1;transform:none;transition:none}.banda-pista,.baja,.estado-punto{animation:none}.cta,.acceso,.boton,body{transition:none}.intro{display:none}}
