/* IdS — hoja única del sitio. No editar sin revisar todas las páginas. */
/* IdS — capa web. Tokens de marca + componentes de landing. */
:root{
  --ink:#222328; --navy:#003057; --blue:#00629B; --sky:#4FA8D8;
  --acid:#C9F24D; --paper:#F5F4F2; --white:#fff; --gray:#C8C9C7;
  --mute:#5B5D64; --mute-d:#A9B6C2;
  --f:'Archivo',system-ui,sans-serif; --m:'IBM Plex Mono',ui-monospace,monospace;
  --pad:clamp(20px,5vw,80px); --max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--f);background:var(--paper);color:var(--ink);
  font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-wrap:pretty}
img{max-width:100%}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--navy)}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
::selection{background:var(--acid);color:var(--ink)}

/* ---- tipografía ---- */
.d1,.d2,.d3,.d4{font-family:var(--f);margin-inline:0}
.d1{font-size:clamp(42px,7.4vw,104px);line-height:.92;letter-spacing:-.04em;font-weight:700;margin:0}
.d2{font-size:clamp(31px,4.6vw,64px);line-height:1;letter-spacing:-.032em;font-weight:700;margin:0}
.d3{font-size:clamp(23px,2.5vw,34px);line-height:1.08;letter-spacing:-.024em;font-weight:600;margin:0}
.d4{font-size:clamp(19px,1.5vw,22px);line-height:1.2;letter-spacing:-.015em;font-weight:600;margin:0}
.lede{font-family:var(--f);margin-inline:0;font-size:clamp(17px,1.45vw,21px);line-height:1.5;color:var(--mute);margin:0}
.kick{font-family:var(--m);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500}
.mono{font-family:var(--m);font-variant-numeric:tabular-nums}
.on-dark .lede,.on-dark .p{color:var(--mute-d)}
.p{margin:0;color:var(--mute)}
.tight{max-width:56ch}
.acid{color:var(--acid)}
.hl{background:var(--acid);color:var(--ink);padding:0 .12em;box-decoration-break:clone}

/* ---- layout ---- */
.sec{padding:clamp(56px,8vw,132px) var(--pad)}
.wrap{max-width:var(--max);margin:0 auto}
.sec.tp0{padding-top:0}
.on-dark{background:var(--ink);color:var(--white)}
.on-navy{background:var(--navy);color:var(--white)}
.grid{display:grid;gap:clamp(24px,3vw,44px)}
.g2{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))}
.col{display:flex;flex-direction:column}
.row{display:flex;flex-wrap:wrap;align-items:center}
.gap8{gap:8px}.gap12{gap:12px}.gap16{gap:16px}.gap24{gap:24px}.gap36{gap:36px}

/* ---- nav ---- */
.i-nav{display:block;padding:0;gap:0;position:sticky;top:0;z-index:40;background:rgba(245,244,242,.88);
  backdrop-filter:blur(12px);border-bottom:1px solid rgba(34,35,40,.1)}
.i-nav-in{max-width:var(--max);margin:0 auto;padding:11px var(--pad);
  display:flex;align-items:center;justify-content:space-between;gap:20px}
.i-nav-links{display:flex;align-items:center;gap:clamp(10px,1.6vw,26px)}
.i-nav-links>a:not(.i-btn){font-size:15px;font-weight:500;color:var(--ink);position:relative;padding:4px 0}
.i-nav-links>a:not(.i-btn)::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;
  background:var(--blue);transition:width .25s ease}
.i-nav-links>a:not(.i-btn):hover::after{width:100%}
@media(max-width:860px){.i-nav-hide{display:none}}

/* ---- botones ---- */
.i-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;line-height:1.2;border:none;cursor:pointer;
  font-family:var(--f);font-size:16.5px;font-weight:600;padding:15px 26px;border-radius:3px;
  text-decoration:none;transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}
.i-btn:hover{transform:translateY(-2px)}
.i-btn:active{transform:translateY(0)}
.i-btn-p{background:var(--blue);color:var(--white);box-shadow:0 6px 18px -8px rgba(0,98,155,.8)}
.i-btn-p:hover{background:var(--navy);color:var(--white);box-shadow:0 10px 26px -8px rgba(0,48,87,.75)}
.i-btn-a{background:var(--acid);color:var(--ink)}
.i-btn-a:hover{background:#d9ff63;color:var(--ink)}
.i-btn-o{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px currentColor}
.i-btn-o:hover{background:var(--ink);color:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink)}
.on-dark .i-btn-o,.on-navy .i-btn-o{color:var(--white)}
.on-dark .i-btn-o:hover,.on-navy .i-btn-o:hover{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--white)}
.i-btn-s{padding:11px 19px;font-size:15.5px}
.i-btn .ar{transition:transform .2s ease}
.i-btn:hover .ar{transform:translateX(4px)}

/* ---- badge / chips ---- */
.i-badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--m);font-size:11.5px;
  letter-spacing:.1em;text-transform:uppercase;padding:6px 11px;border-radius:999px;
  background:var(--acid);color:var(--ink);font-weight:500}
.i-badge-o{background:transparent;box-shadow:inset 0 0 0 1px currentColor;color:var(--mute)}
.i-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.pulse{animation:pulse 1.9s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}

/* ---- ticker ---- */
.tick{overflow:hidden;border-top:1px solid rgba(34,35,40,.12);border-bottom:1px solid rgba(34,35,40,.12);
  padding:13px 0;background:var(--white)}
.on-dark .tick,.on-navy .tick{background:transparent;border-color:rgba(255,255,255,.18)}
.tick-t{display:flex;gap:0;width:max-content;animation:tick 34s linear infinite}
.tick:hover .tick-t{animation-play-state:paused}
.tick-t>span{display:inline-flex;align-items:center;gap:26px;padding-right:26px;
  font-family:var(--m);font-size:13.5px;letter-spacing:.06em;color:var(--mute);white-space:nowrap}
.tick-t b{color:var(--ink);font-weight:600}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---- tiles ---- */
.tile{display:flex;flex-direction:column;gap:13px;padding:26px;background:var(--white);
  border-radius:4px;text-decoration:none;color:inherit;position:relative;overflow:hidden;
  box-shadow:0 1px 0 rgba(34,35,40,.08);transition:transform .22s ease,box-shadow .22s ease}
.tile::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--blue);
  transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
a.tile:hover{transform:translateY(-5px);box-shadow:0 18px 42px -22px rgba(34,35,40,.5)}
a.tile:hover::before{transform:scaleX(1)}
.tile-n{font-family:var(--m);font-size:12px;letter-spacing:.14em;color:var(--blue)}
.tile-go{margin-top:auto;font-size:15px;font-weight:600;color:var(--blue);display:inline-flex;gap:7px;align-items:center}
a.tile:hover .tile-go .ar{transform:translateX(5px)}
.tile.soon::before{background:var(--gray)}
.on-dark .tile{background:rgba(255,255,255,.055);box-shadow:none}
.on-dark .tile-n{color:var(--acid)}

/* ---- stats ---- */
.stat{display:flex;flex-direction:column;gap:4px;padding-top:16px;border-top:2px solid var(--ink)}
.stat-n{font-family:var(--f);font-size:clamp(34px,3.9vw,54px);line-height:1;font-weight:700;letter-spacing:-.035em;
  font-variant-numeric:tabular-nums}
.stat-l{font-size:14px;color:var(--mute);line-height:1.4}
.on-dark .stat,.on-navy .stat{border-top-color:var(--acid)}
.on-dark .stat-l,.on-navy .stat-l{color:var(--mute-d)}

/* ---- steps ---- */
.step{display:flex;flex-direction:column;gap:9px;padding-top:16px;border-top:2px solid var(--blue)}
.on-dark .step,.on-navy .step{border-top-color:var(--acid)}
.step-k{font-family:var(--m);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--blue)}
.on-dark .step-k,.on-navy .step-k{color:var(--acid)}

/* ---- listas ---- */
.ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px}
.ul li{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start}
.ul .mk{color:var(--blue);font-weight:700;line-height:1.5}
.on-dark .ul .mk,.on-navy .ul .mk{color:var(--acid)}

/* ---- formularios ---- */
.i-card{background:var(--white);border-radius:5px;padding:clamp(22px,2.5vw,34px);
  display:flex;flex-direction:column;gap:17px;box-shadow:0 22px 60px -34px rgba(34,35,40,.5)}
.fl{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;
  letter-spacing:.05em;text-transform:uppercase;color:var(--mute)}
.fi{width:100%;padding:13px 14px;border:1px solid var(--gray);border-radius:3px;
  font-family:var(--f);font-size:16px;background:var(--white);color:var(--ink);transition:border-color .18s ease}
.fi:hover{border-color:var(--mute)}
.fi:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,98,155,.15)}
textarea.fi{resize:vertical;min-height:84px}
.file{border:1.5px dashed var(--gray);border-radius:4px;padding:18px;text-align:center;
  cursor:pointer;transition:border-color .18s ease,background .18s ease;font-size:14.5px;color:var(--mute)}
.file:hover{border-color:var(--blue);background:rgba(0,98,155,.04)}
.fine{font-size:12.5px;line-height:1.45;color:#7A7C83;margin:0}
.chk{display:grid;grid-template-columns:18px 1fr;gap:10px;font-size:13px;color:var(--mute);
  text-transform:none;letter-spacing:0;font-weight:400;line-height:1.45;cursor:pointer}
.chk input{width:17px;height:17px;accent-color:var(--blue);margin:2px 0 0}

/* ---- FAQ ---- */
.faq{border-top:1px solid rgba(34,35,40,.14)}
.faq summary{font-family:var(--f);cursor:pointer;list-style:none;padding:20px 0;display:flex;gap:16px;
  justify-content:space-between;align-items:flex-start;font-size:18.5px;font-weight:600;letter-spacing:-.012em}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--blue)}
.faq .pm{flex:none;width:22px;height:22px;position:relative;margin-top:4px}
.faq .pm::before,.faq .pm::after{content:"";position:absolute;background:var(--blue);
  left:50%;top:50%;transform:translate(-50%,-50%);transition:transform .25s ease}
.faq .pm::before{width:14px;height:2px}
.faq .pm::after{width:2px;height:14px}
.faq[open] .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq .ans{padding:0 0 22px;max-width:74ch;color:var(--mute);font-size:16px}

/* ---- hero media ---- */
.shot{border-radius:5px;overflow:hidden;background:var(--white);box-shadow:0 30px 70px -40px rgba(34,35,40,.6)}
.rot{display:inline-grid}
.rot>span{grid-area:1/1;opacity:0;animation:rotw 6.6s cubic-bezier(.3,.7,.3,1) infinite}
.rot>span:nth-child(2){animation-delay:2.2s}
.rot>span:nth-child(3){animation-delay:4.4s}
@keyframes rotw{0%{opacity:0;transform:translateY(.32em)}4%,29%{opacity:1;transform:none}33%,100%{opacity:0;transform:translateY(-.26em)}}

/* ---- reveal ---- */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .65s cubic-bezier(.2,.7,.3,1),transform .65s cubic-bezier(.2,.7,.3,1)}
[data-rv].rv-on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  [data-rv]{opacity:1;transform:none;transition:none}
  .tick-t,.pulse{animation:none}
  .rot>span{animation:none}
  .rot>span:first-child{opacity:1}
  html{scroll-behavior:auto}
}

/* ---- footer ---- */
.ft{border-top:1px solid rgba(34,35,40,.14);padding:clamp(40px,5vw,64px) var(--pad) 26px}
.ft a{color:var(--mute);font-size:14.5px}
.ft a:hover{color:var(--blue)}
.ft-b{max-width:var(--max);margin:26px auto 0;padding-top:20px;border-top:1px solid rgba(34,35,40,.1);
  display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;font-size:13px;color:#7A7C83}

/* ---- barra móvil ---- */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:45;display:none;gap:10px;padding:10px 14px;
  background:rgba(34,35,40,.97);backdrop-filter:blur(10px)}
.bar .i-btn{flex:1;justify-content:center;padding:13px 12px;font-size:15.5px}
@media(max-width:720px){.bar{display:flex}body{padding-bottom:72px}}

/* ---- cookies ---- */
#ck{position:fixed;z-index:60;left:14px;right:14px;bottom:14px;max-width:460px;
  max-height:calc(100vh - 28px);overflow-y:auto;
  background:var(--white);border-radius:6px;padding:22px;box-shadow:0 30px 70px -20px rgba(34,35,40,.6);
  display:none;flex-direction:column;gap:14px;animation:ckup .45s cubic-bezier(.2,.7,.3,1)}
#ck.on{display:flex}
@keyframes ckup{from{opacity:0;transform:translateY(22px)}}
#ck h2{font-family:var(--f);font-size:19px;margin:0;letter-spacing:-.015em}
#ck p{margin:0;font-size:14px;line-height:1.5;color:var(--mute)}
#ck .ck-r{display:flex;gap:9px;flex-wrap:wrap}
#ck .ck-r .i-btn{flex:1;justify-content:center;padding:12px 14px;font-size:15px}
.ck-cat{display:flex;gap:11px;align-items:flex-start;padding:12px 0;border-top:1px solid rgba(34,35,40,.1)}
.ck-cat input{width:17px;height:17px;accent-color:var(--blue);margin-top:3px}
.ck-cat b{font-family:var(--f);font-size:14.5px;display:block}
.ck-cat span{font-size:13px;color:var(--mute);line-height:1.45}
.ck-link{background:none;border:none;padding:0;font:inherit;font-size:14.5px;color:var(--mute);
  cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.ck-link:hover{color:var(--blue)}

/* ---- legal ---- */
.leg{max-width:76ch;display:flex;flex-direction:column;gap:16px}
.leg h2{font-family:var(--f);font-size:clamp(25px,2.6vw,34px);letter-spacing:-.022em;margin:34px 0 0}
.leg h3{font-family:var(--f);font-size:19px;letter-spacing:-.012em;margin:22px 0 0}
.leg p,.leg li{color:var(--mute);font-size:16px;line-height:1.65;margin:0}
.leg ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.leg .tbd{background:var(--acid);color:var(--ink);padding:0 5px;border-radius:2px;
  font-family:var(--m);font-size:.88em;font-weight:500}
.leg table{width:100%;border-collapse:collapse;font-size:14.5px}
.leg th,.leg td{font-family:var(--f);text-align:left;padding:11px 12px;border-bottom:1px solid rgba(34,35,40,.13);vertical-align:top;color:var(--mute)}
.leg th{color:var(--ink);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.toc{display:flex;flex-wrap:wrap;gap:9px}
.toc a{font-family:var(--m);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;
  padding:9px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--gray);color:var(--mute)}
.toc a:hover{box-shadow:inset 0 0 0 1px var(--blue);color:var(--blue)}

/* ══ capa moderna ══════════════════════════════════════════════ */
:root{--r:6px;--r-lg:14px}

/* grano de película sobre superficies oscuras */
.grain{position:relative;isolation:isolate}
.grain::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.16;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
.grain>*{position:relative;z-index:2}

/* titular a sangre, escala cine */
.d0{font-family:var(--f);font-size:clamp(46px,9vw,132px);line-height:.88;letter-spacing:-.05em;
  font-weight:700;margin:0;margin-inline:0;text-wrap:balance}
.d0 em{font-style:normal;color:var(--acid)}

/* revelado palabra a palabra */
.words span{display:inline-block;opacity:0;transform:translateY(.5em) rotate(1.5deg);
  transition:opacity .62s cubic-bezier(.2,.7,.3,1),transform .62s cubic-bezier(.2,.7,.3,1)}
.words.rv-on span{opacity:1;transform:none}

/* héroe a pantalla completa con vídeo detrás */
.hero{position:relative;min-height:clamp(560px,88vh,940px);display:flex;align-items:flex-end;
  padding:clamp(28px,5vw,72px) var(--pad) clamp(36px,5vw,68px);overflow:hidden;background:var(--ink);color:#fff}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg video,.hero-bg img,.hero-bg img.ph{width:100%;height:100%;object-fit:cover;display:block}
.hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(34,35,40,.72) 0%,rgba(34,35,40,.5) 42%,rgba(34,35,40,.94) 100%)}
.hero-in{position:relative;z-index:3;max-width:var(--max);margin:0 auto;width:100%;
  display:flex;flex-direction:column;gap:clamp(18px,2.4vw,30px)}
.scroll-cue{position:absolute;left:var(--pad);bottom:14px;z-index:3;font-family:var(--m);font-size:11px;
  letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.62);display:flex;align-items:center;gap:9px}
.scroll-cue::before{content:"";width:1px;height:26px;background:rgba(255,255,255,.45);animation:cue 2.2s ease-in-out infinite}
@keyframes cue{0%,100%{transform:scaleY(.3);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}

/* vídeo a sangre, sin marco ni controles */
.vstage{position:relative;overflow:hidden;border-radius:var(--r-lg);background:#17181c}
.vstage video{width:100%;height:100%;display:block;object-fit:cover}
.vstage.tall{aspect-ratio:16/9}
.vdrop{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;text-align:center;padding:28px;color:rgba(255,255,255,.72);font-size:14.5px;background:#17181c}
.vdrop b{font-size:17px;color:#fff;font-weight:600}
.vdrop code{font-family:var(--m);font-size:12.5px;background:rgba(255,255,255,.1);padding:4px 8px;border-radius:3px;color:#fff}
.vdrop.corner{inset:auto 16px 16px auto;background:rgba(23,24,28,.62);backdrop-filter:blur(6px);
  align-items:flex-start;text-align:left;padding:13px 15px;border-radius:var(--r);max-width:270px;
  gap:5px;font-size:12.5px;z-index:4}
.vdrop.corner b{font-size:13.5px}
.vdrop.corner code{font-size:11px}
.vcap{display:flex;gap:14px;align-items:baseline;margin-top:14px;font-size:14.5px;color:var(--mute)}
.on-dark .vcap,.on-navy .vcap{color:var(--mute-d)}
.vcap .mono{flex:none}

/* muro de logos */
.logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:1px;background:rgba(34,35,40,.12)}
.logos>div{background:var(--paper);display:flex;align-items:center;justify-content:center;
  padding:clamp(18px,2.4vw,30px);min-height:104px;transition:background .25s ease}
.logos>div:hover{background:var(--white)}
.logos img.ph{width:100%;max-width:132px;height:46px;filter:grayscale(1);opacity:.72;
  transition:filter .3s ease,opacity .3s ease}
.logos>div:hover img.ph{filter:none;opacity:1}
.on-dark .logos,.on-navy .logos{background:rgba(255,255,255,.14)}
.on-dark .logos>div{background:var(--ink)}
.on-dark .logos>div:hover{background:#2b2d33}
.on-dark .logos img.ph{filter:grayscale(1) invert(1) brightness(1.7);opacity:.62}
.on-dark .logos>div:hover img.ph{filter:grayscale(1) invert(1) brightness(2);opacity:1}
.logos-note{font-family:var(--m);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#8A8C93}

/* retratos de equipo */
/* .people{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(12px,1.6vw,22px)} */
.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,260px));justify-content:center;gap:clamp(12px,1.6vw,22px)}
.person{position:relative;overflow:hidden;border-radius:var(--r);background:#e7e6e4}
.person img.ph{width:100%;aspect-ratio:4/5;display:block;filter:grayscale(1) contrast(1.06);
  transition:filter .45s ease,transform .6s cubic-bezier(.2,.7,.3,1)}
.person:hover img.ph{filter:none;transform:scale(1.035)}
.person-tag{position:absolute;left:0;right:0;bottom:0;padding:16px 15px 14px;color:#fff;
  background:linear-gradient(180deg,rgba(23,24,28,0) 0%,rgba(23,24,28,.88) 62%);
  display:flex;flex-direction:column;gap:2px}
.person-tag b{font-size:16px;font-weight:600;letter-spacing:-.012em}
.person-tag span{font-family:var(--m);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.82)}

/* sección anclada: media fija, texto que pasa */
.scrolly{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.scrolly-media{position:sticky;top:12vh;height:min(70vh,620px);border-radius:var(--r-lg);overflow:hidden;background:#17181c}
.scrolly-media>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transform:scale(1.04);transition:opacity .7s ease,transform .9s ease}
.scrolly-media>*.live{opacity:1;transform:none}
.scrolly-steps{display:flex;flex-direction:column}
.scrolly-step{min-height:64vh;display:flex;flex-direction:column;justify-content:center;gap:14px}
.scrolly-step{opacity:.32;transition:opacity .45s ease}
.scrolly-step.live{opacity:1}
@media(max-width:900px){
  .scrolly{grid-template-columns:1fr}
  .scrolly-media{position:relative;top:0;height:300px;order:-1}
  .scrolly-step{min-height:0;padding:20px 0;opacity:1}
}

/* tarjeta con inclinación al pasar el ratón */
[data-tilt]{transition:transform .3s cubic-bezier(.2,.7,.3,1);transform-style:preserve-3d;will-change:transform}

/* flujo de tickets */
.flow{background:var(--white);border-radius:var(--r-lg);overflow:hidden;box-shadow:0 34px 80px -46px rgba(34,35,40,.6)}
.flow-head{display:flex;gap:0;border-bottom:1px solid rgba(34,35,40,.12)}
.flow-head>div{flex:1;padding:15px 16px;display:flex;flex-direction:column;gap:3px;position:relative;opacity:.45;transition:opacity .3s ease}
.flow-head>div.live,.flow-head>div.done{opacity:1}
.flow-head>div::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--blue);transition:width .4s ease}
.flow-head>div.live::after,.flow-head>div.done::after{width:100%}
.flow-head b{font-size:14.5px;font-weight:600}
.flow-head span{font-family:var(--m);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.flow-body{padding:clamp(22px,2.6vw,34px)}
.flow-panel{display:none;flex-direction:column;gap:16px}
.flow-panel.live{display:flex}
.flow-ok{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.flow-ok .tkt{font-family:var(--m);font-size:clamp(24px,3vw,36px);letter-spacing:-.02em;color:var(--ink)}
.sev{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.sev label{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--gray);
  border-radius:var(--r);cursor:pointer;transition:border-color .2s ease,background .2s ease}
.sev label:hover{border-color:var(--blue)}
.sev label:has(input:checked){border-color:var(--blue);background:rgba(0,98,155,.06);box-shadow:inset 0 0 0 1px var(--blue)}
.sev input{position:absolute;opacity:0;pointer-events:none}
.sev b{font-size:15px;font-weight:600}
.sev span{font-size:12.5px;color:var(--mute);line-height:1.4}
.err{font-size:13.5px;color:#B3003C;margin:0;display:none}
.err.live{display:block}

/* redes sociales */
.social{display:flex;gap:9px;flex-wrap:wrap}
.social a{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  box-shadow:inset 0 0 0 1px rgba(34,35,40,.22);color:var(--ink);transition:background .22s ease,color .22s ease,transform .22s ease}
.social a:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
.social svg{width:19px;height:19px;display:block}
.on-dark .social a,.on-navy .social a{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);color:#fff}
.on-dark .social a:hover,.on-navy .social a:hover{background:var(--acid);color:var(--ink)}

/* datos de contacto grandes */
.big-link{font-family:var(--f);font-size:clamp(21px,2.4vw,32px);font-weight:600;letter-spacing:-.025em;
  color:inherit;display:inline-flex;align-items:center;gap:12px}
.big-link:hover{color:var(--blue)}
.on-dark .big-link:hover,.on-navy .big-link:hover{color:var(--acid)}
.big-link .ar{transition:transform .22s ease}
.big-link:hover .ar{transform:translateX(5px)}

/* cifra enorme de apoyo */
.mega{font-family:var(--f);font-size:clamp(64px,12vw,180px);line-height:.82;letter-spacing:-.06em;
  font-weight:700;font-variant-numeric:tabular-nums}

@media(prefers-reduced-motion:reduce){
  .words span{opacity:1;transform:none}
  .scroll-cue::before{animation:none}
  .scrolly-step{opacity:1}
  .scrolly-media>*{opacity:1}
}

/* ══ autoridad y actividad social ══════════════════════════════ */
.quote{font-family:var(--f);font-size:clamp(22px,2.9vw,40px);line-height:1.18;letter-spacing:-.026em;
  font-weight:500;margin:0;max-width:30ch}
.quote-by{font-family:var(--m);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute)}
.on-dark .quote-by,.on-navy .quote-by{color:var(--mute-d)}

.creds{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;background:rgba(34,35,40,.12)}
.creds>div{background:var(--paper);padding:clamp(18px,2.2vw,26px);display:flex;flex-direction:column;gap:6px}
.creds b{font-family:var(--f);font-size:15.5px;font-weight:600;letter-spacing:-.012em}
.creds span{font-size:13.5px;line-height:1.45;color:var(--mute)}
.creds .n{font-family:var(--m);font-size:11px;letter-spacing:.14em;color:var(--blue)}
.on-dark .creds{background:rgba(255,255,255,.14)}
.on-dark .creds>div{background:var(--ink)}
.on-dark .creds span{color:var(--mute-d)}
.on-dark .creds .n{color:var(--acid)}

.feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:clamp(12px,1.5vw,18px)}
.post{background:var(--white);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;
  text-decoration:none;color:inherit;box-shadow:0 1px 0 rgba(34,35,40,.08);
  transition:transform .24s ease,box-shadow .24s ease}
.post:hover{transform:translateY(-5px);box-shadow:0 20px 44px -24px rgba(34,35,40,.5);color:inherit}
.post img.ph{width:100%;aspect-ratio:4/3;display:block}
.post-body{padding:16px 17px 18px;display:flex;flex-direction:column;gap:9px;flex:1}
.post-net{display:flex;align-items:center;gap:7px;font-family:var(--m);font-size:10.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.post-net svg{width:14px;height:14px;display:block}
.post-body p{margin:0;font-size:14.5px;line-height:1.5}
.post-meta{margin-top:auto;font-family:var(--m);font-size:11px;letter-spacing:.08em;color:#8A8C93}
.follow{display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* selector de idioma */
.lang{display:flex;gap:2px;font-family:var(--m);font-size:11.5px;letter-spacing:.1em}
.lang a{padding:6px 8px;border-radius:3px;color:var(--mute);text-decoration:none}
.lang a:hover{color:var(--ink);background:rgba(34,35,40,.08)}
.lang a[aria-current]{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(34,35,40,.28)}
@media(max-width:520px){.lang{display:none}}

/* imágenes: sustituya cada archivo de assets/ manteniendo el nombre */
img.ph{width:100%;height:100%;object-fit:cover;display:block;background:#e7e6e4}
img.ph-contain{object-fit:contain;background:none}
