/* ═══════════════════════════════════════════════════════════
   ZAPIENZ · scrollytelling
   Paleta y tipos salen del ícono de la app (Z de barras, azul
   noche + verde). Todo el movimiento va por transform/opacity.
   ═══════════════════════════════════════════════════════════ */
:root{
  --noche:#0E2453; --noche-2:#07142E; --noche-3:#132F66;
  --verde:#4AB472; --verde-luz:#8FF0B4; --verde-tinta:#052014;
  --papel:#F3EEE3; --papel-2:#E8E1D2; --tinta:#101A33; --tinta-2:#4B5570;
  --blanco:#F6F8FF; --gris:#AFC0DE;
  --serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --sans:"Manrope","Segoe UI",Helvetica,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;
  --ease:cubic-bezier(.16,.8,.3,1);
  --radio:22px;
  --caja:1180px;
  --player-h:64px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--noche-2);color:var(--blanco);font-family:var(--sans);font-size:17px;line-height:1.55;overflow-x:hidden;font-feature-settings:"ss01"}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit}
.mono{font-family:var(--mono);font-size:.82em;letter-spacing:.02em}
.caja{width:min(var(--caja),100% - 40px);margin-inline:auto}
.saltar{position:absolute;left:12px;top:-60px;z-index:200;background:var(--verde);color:var(--verde-tinta);padding:10px 16px;border-radius:999px;font-weight:700;text-decoration:none}
.saltar:focus{top:12px}
.visualmente-oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--verde-luz);outline-offset:3px;border-radius:6px}

/* grano global */
body::after{content:"";position:fixed;inset:0;z-index:150;pointer-events:none;opacity:.055;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ── tipografía ───────────────────────────────────────────── */
.rotulo{font-family:var(--mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--verde);margin:0 0 18px}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.3rem,5.2vw,4.4rem);line-height:1.02;letter-spacing:-.02em;margin:0 0 22px}
.h2 em{font-style:italic;color:var(--verde-luz)}
.h2--xl{font-size:clamp(2.6rem,7vw,6.4rem);line-height:.98}
.parrafo{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.6;max-width:56ch;color:var(--gris);margin:0}
.parrafo--luz{color:#D6DFF3}
.titular{font-family:var(--serif);font-weight:400;font-size:clamp(2.7rem,7.4vw,6.6rem);line-height:.96;letter-spacing:-.025em;margin:0 0 24px}
.titular em{font-style:italic;color:var(--verde-luz)}
.sobre{font-size:.92rem;color:var(--gris);margin:0 0 20px}
.bajada{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.55;max-width:44ch;color:#DDE5F6;margin:0 0 30px}

/* ── botones ──────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--verde);color:var(--verde-tinta);text-decoration:none;font-weight:700;padding:15px 26px;border-radius:999px;border:1.5px solid transparent;min-height:48px;position:relative;isolation:isolate;transition:transform .2s var(--ease),box-shadow .25s var(--ease),background .2s var(--ease);will-change:transform}
.btn::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);z-index:-1}
.btn .ico{width:20px;height:20px;fill:currentColor}
.btn--ghost{background:rgba(246,248,255,.08);color:var(--blanco);border-color:rgba(246,248,255,.28);backdrop-filter:blur(8px)}
.btn--linea{background:transparent;color:var(--verde-luz);border-color:var(--verde)}
.btn--mini{padding:10px 18px;min-height:40px;font-size:.92rem}
.btn--grande{padding:18px 34px;font-size:1.1rem}
.btn:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  .btn:hover{box-shadow:0 12px 32px -10px rgba(74,180,114,.55)}
  .btn:hover::before{transition:transform .7s var(--ease);transform:translateX(120%)}
  .btn--ghost:hover{background:rgba(246,248,255,.14)}
  .btn--linea:hover{background:rgba(74,180,114,.12)}
}

/* ── nav ──────────────────────────────────────────────────── */
.nav{position:fixed;inset:0 0 auto 0;z-index:120;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 22px;transition:background .35s var(--ease),backdrop-filter .35s,box-shadow .35s}
.nav.es-solido{background:rgba(7,20,46,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.nav.es-papel{background:rgba(243,238,227,.86);color:var(--tinta)}
.nav__marca{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.95rem}
.nav__z{width:26px;height:26px;color:var(--verde)}
.nav__links{display:flex;gap:6px}
.nav__links a{text-decoration:none;font-size:.9rem;font-weight:600;padding:8px 12px;border-radius:999px;opacity:.85;transition:opacity .2s,background .2s}
.nav__links a.es-activo{opacity:1;background:rgba(74,180,114,.16)}
@media (hover:hover) and (pointer:fine){.nav__links a:hover{opacity:1;background:rgba(255,255,255,.08)}.nav.es-papel .nav__links a:hover{background:rgba(16,26,51,.08)}}
@media (max-width:900px){.nav__links{display:none}}

/* ═══════════ 1 · HERO ═══════════ */
.hero{position:relative;height:180svh;background:var(--noche-2)}
.hero__pista{position:sticky;top:0;height:100svh;overflow:hidden}
.hero__marco{position:absolute;inset:0;overflow:hidden;will-change:clip-path,opacity;background:var(--noche)}
.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);will-change:transform}
.hero__velo{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(7,20,46,.55) 0%,rgba(7,20,46,.15) 40%,rgba(7,20,46,.72) 100%),
  linear-gradient(90deg,rgba(7,20,46,.72) 0%,rgba(7,20,46,.25) 55%,rgba(7,20,46,0) 100%)}
.hero__foco{position:absolute;inset:0;--mx:50%;--my:45%;background:radial-gradient(360px circle at var(--mx) var(--my),rgba(143,240,180,.18),rgba(143,240,180,.05) 45%,transparent 70%);mix-blend-mode:screen;opacity:0;transition:opacity .6s var(--ease)}
.hero__foco.es-vivo{opacity:1}
.hero__borde{position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);opacity:0;transition:opacity .3s}
.hero__cuerpo{position:absolute;left:0;right:0;bottom:0;padding:0 22px 96px;width:min(var(--caja),100%);margin-inline:auto;will-change:transform,opacity}
@media (min-width:900px){.hero__cuerpo{padding:0 22px 110px;bottom:0}}
.hero__acciones{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero__nota{font-size:.9rem;color:var(--gris);margin:18px 0 0}
.hero__pie{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:var(--gris);font-size:.75rem}
.hero__scroll{width:22px;height:34px;border:1.5px solid rgba(246,248,255,.4);border-radius:12px;position:relative}
.hero__scroll i{position:absolute;left:50%;top:6px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:var(--verde-luz);animation:desliza 1.8s var(--ease) infinite}
@keyframes desliza{0%{transform:translateY(0);opacity:1}70%{transform:translateY(12px);opacity:0}100%{opacity:0}}
.hero__pausa{position:absolute;right:20px;bottom:20px;z-index:5;width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(246,248,255,.35);background:rgba(7,20,46,.5);backdrop-filter:blur(6px);cursor:pointer;display:grid;place-items:center}
.hero__pausa-ico{width:12px;height:14px;border-left:4px solid #fff;border-right:4px solid #fff}
.hero__pausa[aria-pressed="true"] .hero__pausa-ico{border:0;width:0;height:0;border-left:12px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}

/* entrada del hero */
[data-anim]{opacity:0;transform:translateY(22px);filter:blur(8px)}
.cargado [data-anim]{animation:entra .8s var(--ease) forwards;animation-delay:var(--retraso,0s)}
@keyframes entra{to{opacity:1;transform:none;filter:blur(0)}}

/* ═══════════ 2 · TRAYECTO ═══════════ */
.trayecto{position:relative;z-index:2;margin-top:-70svh;padding:40vh 0 34vh;isolation:isolate}
.trayecto__fondo{position:absolute;inset:26svh 0 0;z-index:-1;pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 28%);mask-image:linear-gradient(180deg,transparent,#000 28%)}
.capa{position:absolute;inset:-14% 0;will-change:transform}
.trayecto__video{width:100%;height:100%;object-fit:cover;opacity:.55;filter:saturate(.9)}
.capa--luz{background:radial-gradient(60% 50% at 70% 30%,rgba(74,180,114,.22),transparent 70%),radial-gradient(40% 40% at 20% 80%,rgba(19,47,102,.8),transparent 70%)}
.capa--polvo{background-image:radial-gradient(circle,rgba(143,240,180,.9) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(246,248,255,.7) 0 .8px,transparent 1.3px);background-size:260px 260px,180px 180px;background-position:20px 40px,90px 130px;opacity:.35}
.trayecto__cuerpo{position:relative;z-index:1}
.trayecto::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,transparent 12%,rgba(7,20,46,.92) 24%,rgba(7,20,46,.45) 40%,rgba(7,20,46,.55) 85%,var(--noche-2) 100%)}
.cifras{list-style:none;padding:0;margin:64px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;max-width:900px}
.cifra{border-top:1px solid rgba(246,248,255,.16);padding-top:18px}
.cifra__n{display:block;font-size:clamp(2.6rem,5vw,4.2rem);line-height:1;color:var(--verde-luz);font-weight:500}
.cifra__n small{font-size:.38em;margin-left:4px;color:var(--verde)}
.cifra__t{display:block;color:var(--gris);font-size:.95rem;margin-top:10px;max-width:24ch}

/* revelado por líneas */
[data-lineas]>span{display:block;overflow:hidden}
[data-lineas]>span>i{display:block;font-style:inherit;transform:translateY(110%);transition:transform .9s var(--ease)}
[data-lineas].es-visible>span>i{transform:none}
[data-lineas].es-visible>span:nth-child(2)>i{transition-delay:.12s}
[data-lineas].es-visible>span:nth-child(3)>i{transition-delay:.24s}

/* portal: el botón play que se expande hasta ser la siguiente escena */
.portal{position:absolute;left:50%;bottom:-1px;transform:translateX(-50%);width:100%;height:1px;z-index:2;pointer-events:none}
.portal__disco{position:absolute;left:50%;bottom:0;width:120px;height:120px;margin-left:-60px;margin-bottom:-60px;border-radius:50%;background:var(--verde);display:grid;place-items:center;transform-origin:50% 50%;will-change:transform;box-shadow:0 0 0 12px rgba(74,180,114,.18),0 0 80px rgba(74,180,114,.35)}
.portal__play{width:48px;height:48px;fill:var(--verde-tinta);transition:opacity .3s}

/* ═══════════ 3 · NACE UN ZAP (fijada) ═══════════ */
.peli{position:relative;z-index:1;height:420svh;background:var(--noche)}
.peli__pista{position:sticky;top:0;height:100svh;overflow:hidden}
.peli__cuadro{position:absolute;inset:0;overflow:hidden}
.peli__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.peli__velo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,36,83,.75) 0%,rgba(14,36,83,.2) 35%,rgba(14,36,83,.25) 65%,rgba(14,36,83,.9) 100%)}
.peli__cabeza{position:absolute;left:0;right:0;top:calc(80px + 3vh);width:min(var(--caja),100% - 44px);margin-inline:auto}
.peli__cabeza .h2{max-width:14ch;font-size:clamp(1.9rem,3.6vw,3.2rem)}
.peli__pasos{list-style:none;margin:0;padding:0;position:absolute;left:0;right:0;bottom:calc(var(--player-h) + 42px);width:min(var(--caja),100% - 44px);margin-inline:auto;min-height:120px}
.peli__paso{position:absolute;left:0;right:0;bottom:0;max-width:34ch;font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.3;opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease),transform .6s var(--ease);pointer-events:none}
.peli__paso b{font-weight:700;color:var(--verde-luz)}
.peli__paso.es-visible{opacity:1;transform:none;pointer-events:auto}
.peli__num{display:block;color:var(--verde);font-size:.8rem;margin-bottom:8px;letter-spacing:.1em}
.peli__barra{position:absolute;left:0;right:0;bottom:calc(var(--player-h) + 18px);width:min(var(--caja),100% - 44px);margin-inline:auto;height:2px;background:rgba(246,248,255,.18);overflow:hidden}
.peli__barra i{display:block;height:100%;background:var(--verde-luz);transform:scaleX(0);transform-origin:0 50%}
/* mascara de entrada del portal */
.peli__cuadro{clip-path:circle(var(--r,150%) at 50% 0%)}

/* ═══════════ 4 · POR DENTRO (fijada) ═══════════ */
.dentro{position:relative;height:320svh;background:var(--papel);color:var(--tinta)}
.dentro__pista{position:sticky;top:0;height:100svh;overflow:hidden}
.dentro__cuadro{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;width:min(var(--caja),100% - 44px);margin-inline:auto;padding-top:64px}
.dentro .rotulo{color:#2E8A55}
.dentro .h2{color:var(--tinta)}
.dentro__estados{list-style:none;margin:28px 0 0;padding:0;position:relative;min-height:150px}
.dentro__estado{position:absolute;left:0;top:0;max-width:40ch;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.5;color:var(--tinta-2);opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.dentro__estado b{color:var(--tinta)}
.dentro__estado.es-visible{opacity:1;transform:none}
.dentro__nota{margin:34px 0 0;color:var(--tinta-2);font-size:.78rem}
.fono{perspective:1600px;justify-self:center}
.fono__cuerpo{width:min(320px,78vw);aspect-ratio:9/19.3;border-radius:46px;background:#0A1430;padding:12px;box-shadow:0 60px 100px -40px rgba(16,26,51,.6),0 0 0 2px #22305a,inset 0 0 0 1px rgba(255,255,255,.08);transform:rotateY(-14deg) rotateX(6deg) scale(.9);transform-style:preserve-3d;will-change:transform;position:relative}
.fono__pantalla{position:relative;width:100%;height:100%;border-radius:36px;overflow:hidden;background:#0B1A3A}
.fono__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .6s var(--ease),transform .9s var(--ease);transform:scale(1.02)}
.fono__img.es-visible{opacity:1;transform:none}
.fono__img--zoom.es-visible{transform:translateY(-30%) scale(1.25);transform-origin:50% 100%}
.fono__brillo{position:absolute;inset:0;border-radius:46px;background:linear-gradient(120deg,rgba(255,255,255,.14),transparent 45%);pointer-events:none;mix-blend-mode:screen;--gx:50%;--gy:50%;background:radial-gradient(240px circle at var(--gx) var(--gy),rgba(255,255,255,.16),transparent 70%)}
@media (max-width:820px){
  .dentro{height:260svh}
  .dentro__cuadro{grid-template-columns:1fr;align-content:start;gap:16px;padding-top:88px}
  .dentro__estados{min-height:120px}
  .fono__cuerpo{width:min(230px,58vw)}
  .dentro__nota{display:none}
}

/* ═══════════ 4b · REVEAL ═══════════ */
.reveal{background:var(--papel);color:var(--tinta);padding:6vh 0 14vh}
.reveal .rotulo{color:#2E8A55}
.reveal .h2 em{color:#2E8A55}
.reveal .parrafo{color:var(--tinta-2)}
.reveal .btn--linea{color:#1F6B41;border-color:#2E8A55;margin-top:22px}
.reveal__cuerpo{margin-bottom:36px}
.lupa{position:relative;width:min(var(--caja),100% - 40px);margin-inline:auto;border-radius:var(--radio);background:#FBF8F1;border:1px solid rgba(16,26,51,.1);padding:clamp(24px,4vw,56px);overflow:hidden;cursor:crosshair;touch-action:pan-y;box-shadow:0 30px 60px -40px rgba(16,26,51,.35)}
.lupa__base{columns:2;column-gap:40px;font-family:var(--serif);font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55;color:#5E6479}
.lupa__base p{margin:0 0 1em;break-inside:avoid}
.lupa__ideas{position:absolute;inset:0;padding:inherit;background:var(--noche);color:var(--blanco);--rx:-999px;--ry:-999px;
  -webkit-mask-image:radial-gradient(240px circle at var(--rx) var(--ry),#000 0 40%,rgba(0,0,0,.75) 60%,rgba(0,0,0,.15) 85%,transparent 100%);mask-image:radial-gradient(240px circle at var(--rx) var(--ry),#000 0 40%,rgba(0,0,0,.75) 60%,rgba(0,0,0,.15) 85%,transparent 100%);
  transition:-webkit-mask-image .2s,mask-image .2s}
.lupa.es-todo .lupa__ideas{-webkit-mask-image:none;mask-image:none}
.lupa__ideas ul{list-style:none;margin:0;padding:0;columns:2;column-gap:40px;font-family:var(--serif);font-size:clamp(1.15rem,1.9vw,1.7rem);line-height:1.35}
.lupa__ideas li{break-inside:avoid;margin:0 0 .8em;padding-left:2.4em;position:relative;color:var(--verde-luz)}
.lupa__ideas li .mono{position:absolute;left:0;top:.35em;color:var(--verde);font-size:.65em}
.lupa__pista{position:absolute;right:18px;bottom:12px;margin:0;font-size:.72rem;color:var(--tinta-2);pointer-events:none}
.solo-tacto{display:none}
@media (hover:none){.solo-puntero{display:none}.solo-tacto{display:inline}.lupa{cursor:default}}
@media (max-width:700px){.lupa__base,.lupa__ideas ul{columns:1}}

/* ═══════════ 5 · CATÁLOGO ═══════════ */
.catalogo{position:relative;background:var(--noche-2);padding:22vh 0 18vh;overflow:hidden;isolation:isolate}
.muro{position:absolute;inset:-10% 0;z-index:-1;pointer-events:none;opacity:.34;-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent)}
.muro__capa{position:absolute;left:0;right:0;will-change:transform}
.catalogo::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(7,20,46,.92) 0%,rgba(7,20,46,.7) 45%,rgba(7,20,46,.15) 100%)}
.catalogo__cuerpo{z-index:1}
.muro__capa:nth-child(1){top:6%;filter:blur(2px) brightness(.55)}
.muro__capa:nth-child(2){top:38%;filter:blur(.5px) brightness(.8)}
.muro__capa:nth-child(3){top:68%;filter:brightness(1)}
.muro__fila{display:flex;gap:18px;width:max-content;animation:deriva 90s linear infinite}
.muro__capa:nth-child(2) .muro__fila{animation-duration:120s;animation-direction:reverse}
.muro__capa:nth-child(3) .muro__fila{animation-duration:70s}
.muro__fila img{width:150px;height:auto;border-radius:12px;box-shadow:0 20px 40px -20px rgba(0,0,0,.8)}
@keyframes deriva{to{transform:translateX(-50%)}}
.catalogo__cuerpo{position:relative}
.eq{display:grid;grid-template-columns:repeat(10,1fr);gap:clamp(6px,1vw,14px);align-items:end;height:min(46vh,380px);margin-top:48px;max-width:1000px}
.eq__col{appearance:none;border:0;background:transparent;padding:0;position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;text-align:center;border-radius:12px;min-width:0}
.eq__col i{display:block;width:100%;height:var(--h,10%);min-height:14px;border-radius:999px;background:linear-gradient(180deg,var(--verde-luz),var(--verde) 60%,#2F7F4E);transform-origin:50% 100%;transform:scaleY(0);transition:transform .9s var(--ease),filter .3s;box-shadow:0 0 0 rgba(143,240,180,0)}
.eq.es-visible .eq__col i{transform:scaleY(1)}
.eq.es-visible .eq__col:nth-child(n) i{transition-delay:calc(var(--i,0)*60ms)}
.eq__n{position:absolute;left:0;right:0;bottom:calc(var(--h,10%) + 8px);font-size:clamp(.72rem,1.2vw,1rem);color:var(--verde-luz);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .3s var(--ease)}
.eq__t{position:absolute;left:0;right:0;top:100%;margin-top:10px;font-size:clamp(.6rem,.9vw,.8rem);color:var(--gris);line-height:1.15;opacity:.75;transition:opacity .2s,color .2s}
.eq__col.es-activo i,.eq__col:focus-visible i{filter:brightness(1.25);box-shadow:0 0 30px rgba(143,240,180,.5)}
.eq__col.es-activo .eq__n,.eq__col:focus-visible .eq__n{opacity:1;transform:none}
.eq__col.es-activo .eq__t,.eq__col:focus-visible .eq__t{opacity:1;color:var(--blanco)}
@media (hover:hover) and (pointer:fine){.eq__col:hover i{filter:brightness(1.25);box-shadow:0 0 30px rgba(143,240,180,.5)}.eq__col:hover .eq__n{opacity:1;transform:none}.eq__col:hover .eq__t{opacity:1;color:var(--blanco)}}
@media (max-width:700px){
  .eq{grid-template-columns:repeat(5,1fr);grid-auto-rows:150px;height:auto;gap:10px 8px;row-gap:56px}
  .eq__col{height:150px}
  .eq__n{opacity:1;transform:none}
}

/* ═══════════ 6 · RESEÑAS ═══════════ */
.resenas{background:var(--noche);padding:20vh 0 16vh;position:relative}
.resenas::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(143,240,180,.4),transparent)}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:44px;max-width:980px}
.tarjeta{margin:0;padding:30px 30px 26px;border-radius:var(--radio);background:rgba(246,248,255,.05);border:1px solid rgba(246,248,255,.1);position:relative;overflow:hidden;--hx:50%;--hy:50%}
.tarjeta::before,[data-halo]::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(320px circle at var(--hx) var(--hy),rgba(143,240,180,.14),transparent 60%);opacity:0;transition:opacity .35s;pointer-events:none}
.tarjeta.es-halo::before,[data-halo].es-halo::before{opacity:1}
.tarjeta__est{color:var(--verde-luz);letter-spacing:.12em;margin:0 0 14px;font-size:.95rem}
.tarjeta__cita{margin:0;font-size:1.06rem;line-height:1.55;color:#DDE5F6}
.tarjeta__cita p{margin:0 0 10px}
.tarjeta__tit{font-family:var(--serif);font-size:1.6rem;line-height:1.1;color:var(--blanco)}
.tarjeta__pie{margin:16px 0 0;color:var(--gris);font-size:.74rem}
/* profundidad de entrada */
.tarjeta.rev{transform:translateY(40px) scale(.96)}
.tarjeta.rev.es-visible{transform:none}
.tarjeta.rev:nth-child(2){transition-delay:.15s}

/* ═══════════ 7 · CIERRE ═══════════ */
.cierre{background:linear-gradient(180deg,var(--noche) 0%,var(--noche-2) 60%);padding:16vh 0 calc(var(--player-h) + 12vh);position:relative;overflow:hidden}
.planes{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px;margin-top:40px;max-width:900px}
.plan{padding:30px;border-radius:var(--radio);background:rgba(246,248,255,.05);border:1px solid rgba(246,248,255,.1);position:relative;overflow:hidden;--hx:50%;--hy:50%;transition:transform .3s var(--ease)}
.plan--alto{background:rgba(74,180,114,.12);border-color:rgba(74,180,114,.45)}
.plan__sello{margin:0 0 12px;color:var(--verde-luz);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.plan__t{font-family:var(--serif);font-weight:400;font-size:2rem;margin:0 0 10px}
.plan__d{color:var(--gris);margin:0 0 18px;line-height:1.5}
.plan__l{margin:0;padding:0;list-style:none;color:#DDE5F6}
.plan__l li{padding:8px 0 8px 22px;position:relative;border-top:1px solid rgba(246,248,255,.08)}
.plan__l li::before{content:"";position:absolute;left:0;top:16px;width:10px;height:10px;border-radius:50%;background:var(--verde)}
.pie-nota{color:var(--gris);font-size:.9rem;margin:22px 0 0}
@media (hover:none){.plan:active{transform:scale(.99)}}
.final{margin-top:18vh;text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px}
.final__z{width:clamp(90px,14vw,150px);height:auto;aspect-ratio:1;color:var(--verde)}
.final__t{font-family:var(--serif);font-size:clamp(2.2rem,5.4vw,4.6rem);line-height:1;letter-spacing:-.02em;margin:0;max-width:16ch}
.final__t em{color:var(--verde-luz)}

/* ═══════════ REPRODUCTOR ═══════════ */
.player{position:fixed;left:50%;bottom:14px;transform:translate(-50%,140%);z-index:110;width:min(560px,calc(100% - 28px));height:var(--player-h);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:0 18px 0 14px;border-radius:999px;background:rgba(7,20,46,.78);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(246,248,255,.12);box-shadow:0 20px 50px -20px rgba(0,0,0,.7);transition:transform .7s var(--ease),opacity .5s;opacity:0}
.player.es-visible{transform:translate(-50%,0);opacity:1}
.player__z{width:30px;height:30px;color:var(--verde)}
.player__info{min-width:0;display:flex;flex-direction:column;gap:6px}
.player__cap{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player__pista{display:block;height:3px;border-radius:2px;background:rgba(246,248,255,.16);overflow:hidden}
.player__pista i{display:block;height:100%;background:var(--verde-luz);transform:scaleX(0);transform-origin:0 50%}
.player__t{font-size:.8rem;color:var(--gris);white-space:nowrap}
.player__t #playerT{color:var(--blanco)}
.player__sep{margin:0 5px;opacity:.5}
@media (max-width:600px){.player{height:54px;gap:10px}.player__cap{font-size:.74rem}.player__z{width:24px;height:24px}}

/* animación de barras del logo (marca viva) */
.player__z .zbar,.final__z .zbar{transform-origin:50% 100%;transform-box:fill-box}
.player.es-vivo .zbar{animation:late 1.6s var(--ease) infinite alternate}
.player.es-vivo .zbar[data-col="1"]{animation-delay:.15s}.player.es-vivo .zbar[data-col="2"]{animation-delay:.3s}.player.es-vivo .zbar[data-col="3"]{animation-delay:.45s}.player.es-vivo .zbar[data-col="4"]{animation-delay:.6s}.player.es-vivo .zbar[data-col="5"]{animation-delay:.75s}.player.es-vivo .zbar[data-col="6"]{animation-delay:.9s}
@keyframes late{from{transform:scaleY(.6)}to{transform:scaleY(1.15)}}

/* ═══════════ PIE ═══════════ */
.pie{background:var(--noche-2);border-top:1px solid rgba(246,248,255,.08);padding:64px 0 calc(var(--player-h) + 40px);color:var(--gris);font-size:.94rem}
.pie__rejilla{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.pie__lema{margin:14px 0 12px;color:#DDE5F6}
.pie__aviso{font-size:.8rem;max-width:44ch;line-height:1.5;margin:0}
.pie__col h3{margin:0 0 10px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--verde)}
.pie__col p{margin:0 0 6px}
.pie__col a{text-decoration:none}
.pie__col a:hover{text-decoration:underline}
.pie__linea{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:20px;border-top:1px solid rgba(246,248,255,.08);font-size:.82rem}
@media (max-width:820px){.pie__rejilla{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.pie__rejilla{grid-template-columns:1fr}}

/* ═══════════ REVELADOS ═══════════ */
.rev{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:var(--retraso,0s)}
.rev.es-visible{opacity:1;transform:none}

/* ═══════════ MOVIMIENTO REDUCIDO ═══════════ */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
  [data-anim],.rev,.eq .eq__col i,[data-lineas]>span>i{opacity:1!important;transform:none!important;filter:none!important}
  .hero{height:100svh}.hero__cuerpo{transform:none!important;opacity:1!important}
  .hero__video{display:none}.hero__marco{background:url("../img/hero-poster.jpg") center/cover}
  .peli{height:auto}.peli__pista{position:relative;height:auto;overflow:visible}.peli__cuadro{position:relative;min-height:70svh;clip-path:none!important;padding:100px 0 40px}
  .peli__cabeza{position:relative;top:0;margin-bottom:24px}
  .peli__pasos{position:relative;bottom:auto;display:grid;gap:18px;min-height:0}
  .peli__paso{position:relative;opacity:1;transform:none;pointer-events:auto}
  .peli__barra,.portal{display:none}
  .peli__video{display:none}.peli__cuadro{background:url("../img/scroll-poster.jpg") center/cover}
  .dentro{height:auto}.dentro__pista{position:relative;height:auto}.dentro__cuadro{position:relative;padding:100px 0 60px}
  .dentro__estados{display:grid;gap:14px;min-height:0}.dentro__estado{position:relative;opacity:1;transform:none}
  .fono__cuerpo{transform:none!important}.fono__img{position:relative;opacity:1;transform:none!important}.fono__img[data-estado="1"],.fono__img[data-estado="2"]{display:none}
  .lupa .lupa__ideas{-webkit-mask-image:none;mask-image:none}
  .muro__fila{animation:none}.muro__capa{transform:none!important}
  .trayecto__video{display:none}.capa{transform:none!important}
  .player.es-vivo .zbar{animation:none}
}
