/* TU SOCIA — v1.1 rebrand
   Geist como única familia (Geist Mono para etiquetas). Tinta cálida + travertino + lima ácido.
   Motivo gráfico: el cuello (FLOW → CONSTRAINT → RELEASE) y el marco que se abre. Una sola curva de movimiento. */

@property --o{syntax:'<number>';inherits:true;initial-value:1}

:root{
  --paper:#f2efe9; --paper-2:#e9e3d9; --stone:#d9d0c2; --ink:#131209; --ink-2:#3b3830;
  --muted:#6f695f; --line:rgba(19,18,9,.14); --dark:#131209; --dark-2:#1b1a14;
  --on-dark:#f4f1ea; --on-dark-muted:#a39d92; --line-dark:rgba(244,241,234,.14);
  --acid:#c8eb00; --acid-ink:#6f8400; --bronze:#8c7357;

  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-6:24px; --s-8:32px; --s-10:40px;
  --s-12:48px; --s-16:64px; --s-20:80px; --s-24:96px;
  --gutter:var(--s-16); --maxw:1440px;

  --r-lg:8px; --r-xl:12px; --r-2xl:16px; --r-3xl:24px;
  --ease:cubic-bezier(.22,1,.36,1);
  --font:'Geist',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--dark);color:var(--ink);font-family:var(--font);font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img{display:block;max-width:100%}
h1,h2,h3{text-wrap:balance;margin:0;font-weight:600}
p,li,small{text-wrap:pretty}
em{font-style:normal}
a{color:inherit}
::selection{background:var(--acid);color:var(--ink)}
.shell{width:100%;max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.skip{position:fixed;left:var(--s-4);top:-80px;z-index:200;background:var(--acid);color:var(--ink);padding:var(--s-2) var(--s-3);border-radius:var(--r-lg);font-weight:600;text-decoration:none;transition:top .3s var(--ease)}
.skip:focus{top:var(--s-4)}
:focus-visible{outline:2px solid var(--acid);outline-offset:3px;border-radius:4px}
main{background:var(--paper)}

/* ---------- Type ---------- */
.eyebrow{font-family:var(--mono);font-size:12px;line-height:16px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin:0 0 var(--s-6);display:flex;align-items:center;gap:var(--s-3);color:var(--muted)}
.eyebrow:before{content:"";width:var(--s-6);height:2px;background:var(--acid);border-radius:2px;flex:none}
.dark .eyebrow{color:var(--on-dark-muted)}
h2{font-size:clamp(40px,5.6vw,88px);line-height:.98;letter-spacing:-.045em}
h2 em{color:var(--acid-ink)}
.dark h2 em{color:var(--acid)}

/* ---------- Buttons ---------- */
.cta{display:inline-flex;align-items:center;gap:var(--s-3);text-decoration:none;font-size:14px;line-height:20px;font-weight:600;padding:var(--s-2) var(--s-4);border-radius:999px;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .5s var(--ease),background-color .3s var(--ease),box-shadow .5s var(--ease)}
.cta.acid{background:var(--acid);color:var(--ink)}
.cta.acid:hover{box-shadow:0 12px 40px rgba(200,235,0,.34)}
.cta:active{scale:.97}
.cta.large{font-size:16px;line-height:24px;padding:var(--s-4) var(--s-8)}
.cta span{transition:transform .5s var(--ease)}
.cta:hover span{transform:translate(3px,-3px)}
.text-link{text-decoration:none;font-size:16px;font-weight:500;display:inline-flex;gap:var(--s-2);align-items:center;padding:var(--s-2) 0;position:relative}
.text-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:right;transition:transform .6s var(--ease)}
.text-link:hover:after{transform:scaleX(0)}

/* ---------- Grain, cursor, intro ---------- */
.grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%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");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}

.cursor{position:fixed;left:0;top:0;z-index:150;pointer-events:none;display:none}
.cursor i{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:var(--acid);mix-blend-mode:difference;transition:width .5s var(--ease),height .5s var(--ease),left .5s var(--ease),top .5s var(--ease),opacity .3s}
.has-cursor .cursor{display:block;opacity:0;transition:opacity .4s}
.has-cursor .cursor.is-on{opacity:1}
.cursor.is-link i{width:56px;height:56px;left:-28px;top:-28px;opacity:.9}

.intro{display:none}
.js .intro{display:grid;place-items:center;position:fixed;inset:0;z-index:120;background:var(--dark);transition:opacity .8s var(--ease) .1s,visibility 0s .9s}
.intro-line{width:min(560px,70vw);height:2px;position:relative}
.intro-line i{position:absolute;inset:0;background:var(--acid);transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease)}
.intro-line:before,.intro-line:after{content:"";position:absolute;left:50%;width:2px;height:22px;background:var(--on-dark);opacity:.4;transform:translateX(-50%);transition:height .6s var(--ease) .7s}
.intro-line:before{bottom:8px}.intro-line:after{top:8px}
.intro-count{position:absolute;bottom:var(--s-8);right:var(--gutter);font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--on-dark-muted)}
.is-loading .intro-line i{transform:scaleX(1)}
.is-loading .intro-line:before,.is-loading .intro-line:after{height:2px}
.is-ready .intro{opacity:0;visibility:hidden;pointer-events:none}

/* ---------- Nav ---------- */
.nav-wrap{position:fixed;top:var(--s-4);left:0;right:0;z-index:60;display:flex;justify-content:center;pointer-events:none;padding:0 var(--s-4)}
.nav{pointer-events:auto;position:relative;display:flex;align-items:center;gap:var(--s-6);padding:var(--s-2) var(--s-2) var(--s-2) var(--s-6);border-radius:999px;background:rgba(19,18,9,.5);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(244,241,234,.12);color:var(--on-dark);box-shadow:0 16px 48px rgba(19,18,9,.18);transition:background-color .5s var(--ease),translate .8s var(--ease),opacity .8s var(--ease)}
.js .nav{translate:0 -24px;opacity:0}
.is-ready .nav{translate:0 0;opacity:1;transition-delay:.9s}
.nav.is-solid{background:rgba(19,18,9,.8)}
.nav-progress{position:absolute;left:var(--s-6);right:var(--s-6);bottom:-1px;height:1px;overflow:hidden;border-radius:2px}
.nav-progress i{display:block;height:100%;background:var(--acid);transform-origin:left;transform:scaleX(var(--p,0))}
.brand{display:flex;align-items:center;gap:var(--s-3);text-decoration:none}
.brand-mark,.footer-brand{font-size:20px;line-height:28px;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.brand-accent{color:var(--acid)}
.brand-sub{font-size:12px;line-height:16px;color:var(--on-dark-muted);border-left:1px solid var(--line-dark);padding-left:var(--s-3)}
.nav-links{display:flex;gap:var(--s-6)}
.nav-links a{font-size:14px;line-height:20px;text-decoration:none;color:var(--on-dark-muted);position:relative;padding:var(--s-1) 0;transition:color .3s var(--ease)}
.nav-links a:hover,.nav-links a.is-current{color:var(--on-dark)}
.nav-links a.is-current:after{content:"";position:absolute;left:50%;bottom:-6px;width:4px;height:4px;border-radius:50%;background:var(--acid);translate:-50% 0}
.menu-toggle{display:none;width:40px;height:40px;border-radius:999px;border:0;background:rgba(244,241,234,.1);cursor:pointer;position:relative}
.menu-toggle i{position:absolute;left:12px;right:12px;height:2px;background:var(--on-dark);border-radius:2px;transition:transform .5s var(--ease)}
.menu-toggle i:first-child{transform:translateY(-4px)}
.menu-toggle i:last-child{transform:translateY(4px)}
.menu-open .menu-toggle i:first-child{transform:rotate(45deg)}
.menu-open .menu-toggle i:last-child{transform:rotate(-45deg)}

/* ---------- Frames que se abren ---------- */
.frame,.media-reveal{--hide:1;position:relative;overflow:hidden;margin:0;clip-path:inset(calc(var(--hide)*46%) calc(var(--hide)*48%) round calc(var(--r-3xl) + var(--hide)*200px))}
.frame img,.media-reveal img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1 + var(--hide)*.35))}
.frame:after,.media-reveal:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(244,241,234,.18);border-radius:inherit}
.frame-corners{position:absolute;inset:var(--s-4);pointer-events:none;opacity:calc(1 - var(--hide)*2)}
.frame-corners i{position:absolute;width:18px;height:18px;border:2px solid var(--acid)}
.frame-corners i:nth-child(1){left:0;top:0;border-right:0;border-bottom:0}
.frame-corners i:nth-child(2){right:0;top:0;border-left:0;border-bottom:0}
.frame-corners i:nth-child(3){left:0;bottom:0;border-right:0;border-top:0}
.frame-corners i:nth-child(4){right:0;bottom:0;border-left:0;border-top:0}

.frame,.media-reveal{transition:clip-path 1.6s var(--ease) .35s}
.frame img,.media-reveal img{transition:transform 1.9s var(--ease) .35s}
.frame-corners{transition:opacity .8s var(--ease) 1.2s}
.slide.is-shown .frame,.no-deck .frame{--hide:0}

/* ---------- Deck: una pantalla por gesto ---------- */
.slide{position:relative;min-height:100svh;box-sizing:border-box;display:flex;align-items:center;padding:112px 0 48px;background:var(--paper);color:var(--ink);isolation:isolate}
.slide.dark{background:var(--dark);color:var(--on-dark)}
.slide.dark .eyebrow{color:var(--on-dark-muted)}
.slide.dark h2 em{color:var(--acid)}
#main{display:contents}
.deck-mode{overflow:hidden;height:100%}
.deck-mode body{overflow:hidden;height:100%;overscroll-behavior:none}
.deck-mode .deck{position:fixed;inset:0;overflow:hidden;background:#0b0a06;touch-action:pinch-zoom}
.deck-mode .slide{position:absolute;inset:0;height:100dvh;min-height:0;overflow:hidden;transform:translate3d(0,100%,0);visibility:hidden;will-change:transform;backface-visibility:hidden;transition:transform 1.05s var(--ease),visibility 0s linear 1.05s}
.deck-mode .slide:after{content:"";position:absolute;inset:0;z-index:30;background:#000;opacity:0;pointer-events:none;transition:opacity 1.05s var(--ease)}
.deck-mode .slide.is-current{transform:translate3d(0,0,0);visibility:visible;transition:transform 1.05s var(--ease),visibility 0s}
.deck-mode .slide.is-past{transform:translate3d(0,-8%,0) scale(.9)}
.deck-mode .slide.is-past:after{opacity:.7}
.deck-mode .slide.is-moving{visibility:visible;transition:transform 1.05s var(--ease),visibility 0s}
/* Mientras una pantalla se mueve no se recalcula ningún desenfoque de cristal */
.deck-moving .slide .glass{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(19,18,9,.9)}
.deck-moving .flow-lab{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(27,26,20,.94)}
.frame img,.media-reveal img,.freedom-media img,.selection-media img{will-change:transform}

/* Entrada de contenido en el tiempo (no con el scroll) */
.deck-mode .slide [data-in]{opacity:0;translate:0 28px;filter:blur(6px);transition:opacity .9s var(--ease),translate .9s var(--ease),filter .9s var(--ease)}
.deck-mode .slide.is-shown [data-in]{opacity:1;translate:0 0;filter:none;transition-delay:calc(var(--d,0)*1ms + 380ms)}

/* Fases: lo que no cabe se alterna en el tiempo */
.has-phases [data-phase]{opacity:0;visibility:hidden;translate:0 -12px;filter:blur(4px);transition:opacity .38s ease-in,translate .38s ease-in,filter .38s ease-in,visibility 0s linear .4s}
.has-phases[data-ph="1"] [data-phase="1"],.has-phases[data-ph="2"] [data-phase="2"],.has-phases[data-ph="3"] [data-phase="3"]{opacity:1;visibility:visible;translate:0 0;filter:none;transition:opacity .9s var(--ease) .45s,translate 1.1s var(--ease) .45s,filter .9s var(--ease) .45s,visibility 0s linear .45s}
.phase-bar{position:absolute;left:50%;bottom:20px;translate:-50% 0;z-index:20;display:flex;gap:6px}
.phase-bar[hidden]{display:none}
.phase-bar button{width:40px;height:16px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.slide.dark .phase-bar{color:var(--on-dark)}
.has-phases{cursor:pointer}
.has-phases a,.has-phases button{cursor:pointer}
.phase-bar button:before,.phase-bar button i{content:"";position:absolute;left:0;right:0;top:7px;height:2px;border-radius:2px;background:currentColor;opacity:.35}
.phase-bar button i{opacity:1;background:var(--acid);transform:scaleX(0);transform-origin:left}
.phase-bar button.is-done i{transform:scaleX(1)}
.phase-bar button.is-on i{animation:phase var(--dur,7000ms) linear forwards}
@keyframes phase{to{transform:scaleX(1)}}

.deck-index{display:none}
.deck-mode .deck-index{display:flex;flex-direction:column;align-items:center;gap:8px;position:fixed;right:24px;top:50%;translate:0 -50%;z-index:45;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--on-dark-muted);mix-blend-mode:difference;pointer-events:none}
.deck-index b{font-weight:500;color:#fff}
.idx-off .deck-index{opacity:0}
.deck-mode .deck-index{transition:opacity .6s var(--ease)}
.deck-index i{width:1px;height:48px;background:currentColor;opacity:.5}

/* ---------- 00 Portada ---------- */
.hero{padding:0;align-items:stretch}
.hero-frame{position:absolute;inset:0;margin:0;overflow:hidden;--o:1;clip-path:inset(calc(var(--o)*49.4%) calc(var(--o)*50%) round calc(var(--o)*2px));transition:--o 1.6s var(--ease) .15s}
.is-ready .hero-frame{--o:0}
.hero-frame img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.18 - (1 - var(--o))*.12)) translate3d(var(--mx,0px),var(--my,0px),0);transition:transform 1.2s var(--ease)}
.hero-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,18,9,.86) 0%,rgba(19,18,9,.55) 36%,rgba(19,18,9,.05) 70%),linear-gradient(0deg,rgba(19,18,9,.7) 0%,rgba(19,18,9,0) 40%)}
.hero-ui{position:relative;z-index:2;min-height:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-8);padding-bottom:var(--s-16);padding-top:120px}
.hero-copy{max-width:760px}
.hero h1{font-size:clamp(56px,min(8.4vw,13vh),136px);line-height:.92;letter-spacing:-.055em;font-weight:600;margin-bottom:var(--s-8)}
.hero h1 em{color:var(--acid)}
.line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.line>span{display:inline-block}
.js .hero h1 .line>span{transform:translateY(105%);transition:transform 1.2s var(--ease)}
.is-ready .hero h1 .line>span{transform:none;transition-delay:1s}
.is-ready .hero h1 .line:nth-child(2)>span{transition-delay:1.1s}
.js .hero .eyebrow,.js .hero .lede,.js .hero-actions,.js .selection-note,.js .hero-caption,.js .scroll-cue{opacity:0;translate:0 16px;transition:opacity 1s var(--ease),translate 1s var(--ease)}
.is-ready .hero .eyebrow{opacity:1;translate:0 0;transition-delay:.9s}
.is-ready .hero .lede{opacity:1;translate:0 0;transition-delay:1.25s}
.is-ready .hero-actions{opacity:1;translate:0 0;transition-delay:1.35s}
.is-ready .selection-note,.is-ready .hero-caption,.is-ready .scroll-cue{opacity:1;translate:0 0;transition-delay:1.5s}
.hero .eyebrow{color:rgba(244,241,234,.75)}
.lede{font-size:20px;line-height:30px;max-width:620px;margin:0 0 var(--s-8);color:rgba(244,241,234,.86)}
.marker-highlight{background:linear-gradient(transparent 62%,rgba(200,235,0,.42) 62%);color:var(--on-dark)}
.hero-actions{display:flex;align-items:center;gap:var(--s-8);flex-wrap:wrap}
.selection-note{display:flex;align-items:center;gap:var(--s-2);font-size:14px;line-height:20px;color:rgba(244,241,234,.66);margin:var(--s-8) 0 0}
.selection-note i{width:8px;height:8px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 4px rgba(200,235,0,.18);animation:pulse 2.4s var(--ease) infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(200,235,0,0)}}
.hero-caption{text-align:right;font-family:var(--mono);font-size:12px;line-height:20px;letter-spacing:.14em;text-transform:uppercase;display:grid;gap:var(--s-1);padding-bottom:var(--s-2)}
.hero-caption span{color:rgba(244,241,234,.55)}
.hero-caption strong{font-weight:500;color:var(--on-dark)}
.scroll-cue{position:absolute;left:50%;bottom:var(--s-6);z-index:2;width:1px;height:48px;background:rgba(244,241,234,.2);overflow:hidden}
.scroll-cue span{position:absolute;left:0;top:0;width:1px;height:16px;background:var(--acid);animation:cue 2s var(--ease) infinite}
@keyframes cue{0%{transform:translateY(-16px)}100%{transform:translateY(48px)}}

/* ---------- 01 Frase ---------- */
.statement-sec{align-items:center}
.statement-gl{position:absolute;left:-4%;width:108%;top:50%;height:min(44vh,360px);translate:0 -50%;opacity:var(--to,.42);pointer-events:none;transition:opacity 1.5s var(--ease)}
.statement-inner{position:relative;z-index:1;width:100%}
.statement{font-size:clamp(48px,min(8.4vw,13vh),136px);line-height:.95;letter-spacing:-.055em;font-weight:600;margin:0}
.statement-line{display:block}
.statement-line.accent{color:var(--acid)}
.deck-mode .statement .w{opacity:.12;transition:opacity .5s var(--ease)}
.deck-mode .is-shown .statement .w{opacity:1;transition-delay:calc(var(--i)*110ms + 450ms)}
.statement-note{max-width:520px;font-size:20px;line-height:30px;color:var(--on-dark-muted);margin:var(--s-12) 0 0 auto}

/* ---------- Motores ---------- */
.slide[data-hud]{padding-bottom:236px}
.motors-head-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s-6) var(--s-16);align-items:end}
.motors-head-inner>.eyebrow{grid-column:1/-1}
.motors-head-side{padding-bottom:var(--s-3)}
.motors-head h2{font-size:clamp(56px,min(7vw,12vh),120px);line-height:.92}
.motors-lede{font-size:22px;line-height:32px;color:rgba(244,241,234,.8);margin:0 0 var(--s-6)}
.motors-lede strong{color:var(--on-dark);font-weight:600}
.flow-caption{font-size:14px;line-height:20px;color:var(--on-dark-muted);margin:0}
.flow-caption strong{color:var(--acid);font-weight:500}

.motor-slide{align-items:stretch}
.motor-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--s-16);align-items:center;height:100%}
.motor-slide.is-flip .motor-panel{grid-template-columns:360px minmax(0,1fr)}
.motor-slide.is-flip .motor-frame{order:2}
.motor-frame{height:100%;border-radius:var(--r-3xl)}
.motor-num{position:absolute;z-index:0;top:0;right:calc(var(--gutter) - 12px);font-size:clamp(140px,min(15vw,25vh),240px);line-height:.8;font-weight:700;letter-spacing:-.06em;color:rgba(200,235,0,.06);-webkit-text-stroke:1px rgba(200,235,0,.5);pointer-events:none;opacity:0;translate:0 40px;transition:opacity 1.2s var(--ease),translate 1.4s var(--ease)}
.motor-slide.is-flip .motor-num{right:auto;left:calc(var(--gutter) - 16px)}
.motor-slide.is-shown .motor-num{opacity:1;translate:0 0;transition-delay:.6s}
.motor-card{position:relative;z-index:1;align-self:end}
.motor-card>span{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--acid)}
.motor-card h3{font-size:clamp(44px,min(4.4vw,8vh),72px);line-height:1;letter-spacing:-.045em;margin:var(--s-3) 0 var(--s-4)}
.motor-card p{font-size:20px;line-height:28px;margin:0 0 var(--s-3);color:var(--on-dark)}
.motor-card small{display:block;font-size:14px;line-height:20px;color:var(--on-dark-muted);margin-bottom:var(--s-6)}
.motor-card>p.motor-msg{font-size:15px;line-height:22px;color:rgba(244,241,234,.8);border-top:1px solid var(--line-dark);padding-top:var(--s-4);margin:0}
.motor-msg strong{color:var(--acid);font-weight:600}

.release-slide{justify-content:center;text-align:center}
.release-msg{font-size:clamp(32px,min(4.2vw,7vh),64px);line-height:1.1;letter-spacing:-.035em;font-weight:500;margin:0 auto;max-width:1000px;color:var(--on-dark)}
.release-msg strong{display:block;color:var(--acid);font-weight:700;font-size:clamp(72px,min(11vw,18vh),176px);letter-spacing:-.055em;line-height:.9;margin-bottom:var(--s-6)}
.deck-mode .release-msg .w{opacity:.12;transition:opacity .5s var(--ease)}
.deck-mode .is-shown .release-msg .w{opacity:1;transition-delay:250ms}
.release-slide.is-shown .release-msg strong{animation:impact 1.1s var(--ease) .2s both}
@keyframes impact{0%{transform:scale(1.12);text-shadow:0 0 0 rgba(200,235,0,0)}30%{text-shadow:0 0 60px rgba(200,235,0,.6)}100%{transform:scale(1);text-shadow:0 0 0 rgba(200,235,0,0)}}
.flow-lab.is-release{animation:hudFlash 1.2s var(--ease) .2s}
@keyframes hudFlash{0%{box-shadow:0 0 0 0 rgba(200,235,0,0)}25%{box-shadow:0 0 80px 8px rgba(200,235,0,.35);border-color:rgba(200,235,0,.6)}100%{box-shadow:0 0 0 0 rgba(200,235,0,0)}}

/* HUD del tubo */
.flow-lab{position:relative;z-index:40;margin:0 var(--gutter) var(--s-16);padding:var(--s-4) var(--s-6) var(--s-2);border-radius:var(--r-3xl);background:rgba(27,26,20,.78);-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);border:1px solid var(--line-dark);color:var(--on-dark)}
.deck-mode .flow-lab{position:fixed;left:50%;bottom:var(--s-6);margin:0;width:calc(100% - var(--gutter)*2);max-width:1120px;translate:-50% calc(100% + 40px);opacity:0;transition:translate 1.05s var(--ease),opacity .6s var(--ease)}
.deck-mode.hud-on .flow-lab{translate:-50% 0;opacity:1}
.flow-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;line-height:16px;letter-spacing:.18em;color:var(--on-dark-muted)}
.flow-meta span{transition:color .6s var(--ease)}
.flow-meta span:nth-child(2){color:var(--acid)}
.flow-lab.is-release .flow-meta span:nth-child(2){color:var(--on-dark-muted)}
.flow-lab.is-release .flow-meta span:nth-child(3){color:var(--acid)}
.tube-wrap{position:relative;height:136px}
.tube,.tube-gl{position:absolute;left:0;top:0;width:100%;height:96px}
.tube path{stroke:rgba(244,241,234,.45)}
.has-gl .tube{display:none}
.motor-nodes{position:absolute;left:0;right:0;bottom:0;height:40px}
.motor-nodes button{position:absolute;left:var(--x);bottom:0;translate:-50% 0;border:0;background:none;color:var(--on-dark-muted);font:500 13px/20px var(--font);display:flex;flex-direction:column;align-items:center;gap:var(--s-1);cursor:pointer;padding:var(--s-1) var(--s-2);transition:color .3s var(--ease)}
.motor-nodes i{width:8px;height:8px;border-radius:50%;border:1px solid currentColor;transition:background-color .3s var(--ease),transform .5s var(--ease)}
.motor-nodes button:hover,.motor-nodes button.is-active{color:var(--on-dark)}
.motor-nodes button.is-active i{background:var(--acid);border-color:var(--acid);transform:scale(1.4)}
.flow-lab.is-release .motor-nodes i{background:var(--acid);border-color:var(--acid);transition-delay:calc(var(--n)*.12s + .4s)}
.flow-lab.is-release .motor-nodes button{color:var(--on-dark)}

/* ---------- 09 Mover el foco ---------- */
.focus-grid h2{font-size:clamp(44px,min(6vw,10vh),96px);margin-bottom:var(--s-12)}
.string-lab{position:relative;height:150px;margin-bottom:var(--s-8)}
.string-lab svg{width:100%;height:110px}
.string-lab path{fill:none;stroke:var(--acid);stroke-width:2;vector-effect:non-scaling-stroke}
.string-nodes{position:absolute;left:0;right:0;top:44px;height:100px}
.string-nodes button{position:absolute;left:var(--x);translate:-50% 0;border:0;background:none;color:var(--on-dark-muted);font:500 14px/20px var(--font);display:flex;flex-direction:column;align-items:center;gap:var(--s-6);cursor:pointer;padding:0 var(--s-2)}
.string-nodes i{width:14px;height:14px;border-radius:50%;background:var(--dark);border:2px solid var(--acid);transition:transform .5s var(--ease),background-color .3s}
.string-nodes button:hover,.string-nodes button.is-active{color:var(--on-dark)}
.string-nodes button.is-active i{background:var(--acid);transform:scale(1.3)}
.focus-copy{font-size:24px;line-height:32px;max-width:720px;color:var(--on-dark-muted);margin:0}
.focus-copy strong{color:var(--on-dark);font-weight:500}

/* ---------- 10–11 Codo con codo ---------- */
.hands-title h2{font-size:clamp(56px,min(8.6vw,15vh),148px);line-height:.92;letter-spacing:-.055em}
.hands-on{align-items:stretch}
.hands-grid{display:flex}
.hands-stage{position:relative;flex:1;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--s-8)}
.hands-media{border-radius:var(--r-3xl);min-height:0}
.hands-media img{object-position:60% 62%}
.role-stage{position:absolute;left:var(--s-6);top:var(--s-6);width:min(440px,42%);padding:var(--s-6);border-radius:var(--r-3xl);opacity:0;translate:0 -16px;transition:opacity .9s var(--ease),translate .9s var(--ease)}
.slide.is-shown .role-stage{opacity:1;translate:0 0;transition-delay:1.5s}
.glass{background:rgba(19,18,9,.74);-webkit-backdrop-filter:blur(24px) saturate(1.3);backdrop-filter:blur(24px) saturate(1.3);border:1px solid rgba(244,241,234,.14);box-shadow:0 32px 80px rgba(0,0,0,.35);color:var(--on-dark)}
.role-label{font-size:14px;line-height:20px;color:var(--on-dark-muted);margin:0 0 var(--s-2)}
.role-label span{color:var(--on-dark)}
.role-word{font-size:clamp(22px,2.2vw,32px);line-height:1.05;font-weight:700;letter-spacing:-.03em;color:var(--acid);min-height:2.1em;transition:opacity .22s var(--ease),filter .22s var(--ease)}
.role-detail{display:grid;grid-template-columns:32px 1fr;gap:var(--s-3);border-top:1px solid var(--line-dark);padding-top:var(--s-4);margin-top:var(--s-3);min-height:88px}
.role-detail span{font-family:var(--mono);font-size:12px;color:var(--acid)}
.role-detail p{margin:0;font-size:14px;line-height:20px;color:rgba(244,241,234,.86);transition:opacity .22s var(--ease)}
.role-word,.role-detail p{transition:transform .3s var(--ease),opacity .16s linear}
.is-changing{opacity:0!important;transform:translateY(-35%)}
.is-entering{opacity:0;transform:translateY(35%);transition:none!important}
.role-word,.role-detail{overflow:hidden}
.role-chips{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-4)}
.role-chips button{border:1px solid var(--line-dark);background:transparent;color:var(--on-dark-muted);font:500 12px/16px var(--font);padding:var(--s-2) var(--s-3);border-radius:999px;cursor:pointer;transition:all .3s var(--ease)}
.role-chips button:hover{color:var(--on-dark);border-color:rgba(244,241,234,.4)}
.role-chips button.is-active{background:var(--acid);border-color:var(--acid);color:var(--ink)}
.hands-text{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s-16);align-items:end}
.hands-lede{font-size:20px;line-height:30px;margin:0;color:rgba(244,241,234,.86)}
.hands-lede strong{color:var(--acid);font-weight:500}
.hands-note{font-size:16px;line-height:24px;margin:0;color:var(--on-dark-muted);border-left:2px solid var(--acid);padding-left:var(--s-6)}

/* ---------- 12 Tecnología ---------- */
.tech-layer{align-items:stretch}
.tech-grid{display:grid;grid-template-columns:5fr 7fr;grid-template-rows:minmax(0,1fr) auto;gap:var(--s-8) var(--s-16);align-items:center}
.tech-title h2{margin-bottom:var(--s-8);font-size:clamp(40px,min(4.6vw,8.4vh),76px)}
.tech-lede{font-size:20px;line-height:30px;color:var(--ink-2);margin:0}
.tech-media{height:100%;min-height:0;border-radius:var(--r-3xl);background:var(--dark)}
.tech-media:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(19,18,9,0) 50%,rgba(19,18,9,.35));pointer-events:none}
.intel{position:absolute;inset:0;width:100%;height:100%;z-index:2}
.intel-links path{fill:none;stroke:var(--acid);stroke-width:5;stroke-dasharray:4200;stroke-dashoffset:4200;transition:stroke-dashoffset 2.6s var(--ease) 1.4s;filter:drop-shadow(0 0 6px rgba(200,235,0,.7))}
.intel-nodes circle{fill:var(--dark);stroke:var(--acid);stroke-width:6;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .8s var(--ease)}
.intel-scan{fill:var(--acid);opacity:0;filter:blur(3px)}
.is-shown .intel-links path{stroke-dashoffset:0}
.is-shown .intel-nodes circle{transform:scale(1);animation:node 2.8s var(--ease) 3.5s infinite}
.is-shown .intel-nodes circle:nth-child(1){transition-delay:1.4s}.is-shown .intel-nodes circle:nth-child(2){transition-delay:1.7s}.is-shown .intel-nodes circle:nth-child(3){transition-delay:2s}.is-shown .intel-nodes circle:nth-child(4){transition-delay:2.3s}.is-shown .intel-nodes circle:nth-child(5){transition-delay:2.6s}.is-shown .intel-nodes circle:nth-child(6){transition-delay:2.8s}.is-shown .intel-nodes circle:nth-child(7){transition-delay:3s}
@keyframes node{50%{stroke-width:14}}
.is-shown .intel-scan{animation:scan 4.5s linear 2s infinite}
@keyframes scan{0%{transform:translateY(0);opacity:0}10%{opacity:.55}90%{opacity:.55}100%{transform:translateY(1074px);opacity:0}}
.tech-core{grid-column:1/-1;font-size:clamp(20px,min(2vw,3.6vh),30px);line-height:1.25;letter-spacing:-.02em;color:var(--muted);margin:0;max-width:1240px}
.tech-core strong{color:var(--ink);font-weight:600}

/* ---------- 13 Growth Partnership ---------- */
.partnership{background:var(--paper-2);align-items:center}
.partnership-inner{display:grid;grid-template-rows:auto auto;gap:var(--s-8)}
.partnership-headline{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s-12);align-items:end}
.partnership-headline h2{font-size:clamp(48px,min(6.4vw,11vh),104px);line-height:.94}
.partnership-side{font-size:clamp(26px,min(2.8vw,5vh),44px);line-height:1.1;letter-spacing:-.03em;margin:0;color:var(--acid-ink);font-weight:500}
.phase-stack{display:grid;align-items:start;align-content:start;min-height:0;padding-top:var(--s-6)}
.phase-stack>*{grid-area:1/1}
.partnership-text{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-12)}
.partnership-text p{font-size:clamp(20px,min(2vw,3.6vh),30px);line-height:1.3;letter-spacing:-.015em;margin:0;color:var(--ink-2)}
.fee-definition strong{color:var(--ink)}
.fee-rail{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:var(--s-4);align-items:end;height:clamp(220px,34vh,340px);padding-bottom:var(--s-4);border-bottom:1px solid var(--line)}
.fee-rail>i{display:none}
.fee{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--s-4);border-radius:var(--r-2xl);isolation:isolate}
.fee:before{content:"";position:absolute;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--r-2xl);background:var(--dark);height:calc(var(--bar,0)*1%);transition:height 1.6s var(--ease)}
.fee:nth-of-type(2):before{transition-delay:.12s}.fee:nth-of-type(3):before{transition-delay:.24s}.fee:nth-of-type(4):before{transition-delay:.36s}.fee:nth-of-type(5):before{transition-delay:.48s}
.fee-rail.is-in .fee:nth-of-type(1){--bar:100}.fee-rail.is-in .fee:nth-of-type(2){--bar:80}.fee-rail.is-in .fee:nth-of-type(3){--bar:62}.fee-rail.is-in .fee:nth-of-type(4){--bar:48}.fee-rail.is-in .fee:nth-of-type(5){--bar:0}
.fee b{font-size:clamp(40px,min(5vw,8vh),84px);line-height:.9;letter-spacing:-.05em;font-weight:600;color:var(--ink);transition:color .6s var(--ease) .6s}
.fee b sup{font-size:.4em;vertical-align:top;margin-left:2px}
.fee span{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--acid-ink);margin-top:var(--s-3);transition:color .6s var(--ease) .6s}
.fee small{font-size:14px;line-height:20px;color:var(--ink-2);margin-top:var(--s-1);transition:color .6s var(--ease) .6s}
.fee-rail.is-in .fee:not(.zero) b{color:var(--on-dark)}
.fee-rail.is-in .fee:not(.zero) span{color:var(--acid)}
.fee-rail.is-in .fee:not(.zero) small{color:var(--on-dark-muted)}
.fee-rail.is-in .fee:not(.zero):before{min-height:150px}
.fee.zero{border:1px dashed rgba(19,18,9,.3)}
.fee.zero b{color:var(--acid-ink)}
.fee-meter{position:absolute;left:0;right:0;bottom:-1px;height:2px}
.fee-meter i{display:block;height:100%;background:var(--acid);transform:scaleX(0);transform-origin:left;transition:transform 2.4s var(--ease) .4s}
.fee-rail.is-in .fee-meter i{transform:scaleX(1)}
.fee-line{font-size:22px;line-height:30px;margin:var(--s-6) 0 var(--s-2);font-weight:500}
.fee-tax{font-size:14px;line-height:20px;color:var(--muted);margin:0}
.growth-target{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2) var(--s-16);background:var(--dark);color:var(--on-dark);border-radius:var(--r-3xl);padding:var(--s-12);align-items:end;position:relative;overflow:hidden}
.growth-target:after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(200,235,0,.22),transparent 70%);pointer-events:none}
.growth-target .eyebrow{grid-column:1/-1;color:var(--on-dark-muted)}
.growth-target h3{font-size:clamp(36px,min(4.4vw,8vh),72px);line-height:.98;letter-spacing:-.045em;max-width:720px}
.growth-target p:last-child{margin:0;font-size:16px;line-height:26px;color:var(--on-dark-muted);max-width:460px}

/* ---------- 14 Autonomía: una sola animación ---------- */
.autonomy{align-items:center}
.freedom{position:absolute;inset:0;z-index:0;opacity:0;transition:opacity 1s var(--ease)}
.autonomy[data-ph="2"] .freedom,.autonomy[data-ph="3"] .freedom,.no-deck .freedom{opacity:1}
.autonomy[data-ph="1"] .freedom{opacity:1}
.autonomy[data-ph="1"] .freedom-knock{opacity:0}
.autonomy[data-ph="1"] .freedom-scrim{opacity:1;background:linear-gradient(90deg,rgba(19,18,9,.94),rgba(19,18,9,.78) 55%,rgba(19,18,9,.6))}
.freedom-media{position:absolute;inset:0;margin:0}
.freedom-media img{width:100%;height:100%;object-fit:cover;object-position:30% 50%;transform:scale(1.12);transition:transform 6s var(--ease)}
.autonomy[data-ph="2"] .freedom-media img,.autonomy[data-ph="3"] .freedom-media img{transform:scale(1)}
.freedom-knock{position:absolute;inset:0;background:var(--dark);mix-blend-mode:multiply;display:grid;place-items:center}
.freedom-word{font-size:18vw;line-height:1;font-weight:800;letter-spacing:-.06em;color:#fff;transform-origin:40% 52%;white-space:nowrap}
.autonomy[data-ph="2"] .freedom-word{animation:elegir 4.4s cubic-bezier(.7,0,.84,0) .5s both}
.autonomy[data-ph="2"] .freedom-knock{animation:knock 4.4s linear .5s both}
.autonomy[data-ph="3"] .freedom-knock,.no-deck .freedom-knock{opacity:0}
@keyframes elegir{0%,36%{transform:scale(1)}100%{transform:scale(60)}}
@keyframes knock{0%,86%{opacity:1}100%{opacity:0}}
.freedom-scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(19,18,9,.88),rgba(19,18,9,.2) 60%);opacity:0;transition:opacity 1s var(--ease)}
.autonomy[data-ph="2"] .freedom-scrim{opacity:.8;transition-delay:4.2s}
.autonomy[data-ph="3"] .freedom-scrim{opacity:1;background:linear-gradient(0deg,rgba(19,18,9,.94),rgba(19,18,9,.55))}
.autonomy-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:var(--s-16);align-items:end}
.autonomy-title h2{font-size:clamp(44px,min(5.6vw,10vh),88px)}
.big-quote{font-size:clamp(28px,min(3vw,5.4vh),44px);line-height:1.1;letter-spacing:-.03em;margin:0 0 var(--s-6)}
.big-quote strong{color:var(--acid);font-weight:600}
.autonomy-copy>p:last-child{font-size:18px;line-height:28px;color:var(--on-dark-muted);margin:0}
.autonomy-copy strong{color:var(--on-dark);font-weight:500}
.freedom-sub{position:absolute;z-index:1;left:0;right:0;bottom:var(--s-16);font-size:clamp(24px,min(2.6vw,4.6vh),40px);line-height:1.15;letter-spacing:-.025em;margin:0;color:var(--on-dark);max-width:var(--maxw)}
.has-phases[data-ph="2"] .freedom-sub[data-phase="2"]{transition-delay:4.4s,4.4s,4.4s,4.4s}
.autonomy-cards{position:absolute;z-index:1;left:0;right:0;bottom:var(--s-12);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-8)}
.autonomy-cards article{border-top:1px solid rgba(244,241,234,.3);padding-top:var(--s-6)}
.autonomy-cards span{font-family:var(--mono);font-size:12px;color:var(--acid)}
.autonomy-cards h3{font-size:clamp(32px,min(3vw,5.4vh),48px);letter-spacing:-.04em;margin:var(--s-4) 0}
.autonomy-cards p{margin:0;color:rgba(244,241,234,.8);font-size:16px;line-height:26px}

/* ---------- 15 Sobre nosotros ---------- */
.about-inner{display:grid;gap:var(--s-12)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-16);align-items:center}
.about-grid h2{font-size:clamp(48px,min(6vw,11vh),96px)}
.about-list{list-style:none;margin:0;padding:0}
.about-list li{position:relative;display:grid;grid-template-columns:64px 1fr;align-items:center;border-top:1px solid var(--line);padding:clamp(14px,2.6vh,28px) 0;overflow:hidden}
.about-list li:last-child{border-bottom:1px solid var(--line)}
.about-list li:before{content:"";position:absolute;inset:0;background:var(--dark);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--ease)}
.about-list li:hover:before{transform:scaleY(1)}
.about-list span{position:relative;font-family:var(--mono);font-size:12px;color:var(--acid-ink);padding-left:var(--s-2);transition:color .4s}
.about-list p{position:relative;margin:0;font-size:clamp(22px,min(2.4vw,4.4vh),38px);line-height:1.1;letter-spacing:-.03em;font-weight:500;transition:color .4s var(--ease),translate .6s var(--ease)}
.about-list li:hover p{color:var(--on-dark);translate:var(--s-4) 0}
.about-list li:hover span{color:var(--acid)}
.international{display:grid;grid-template-columns:1fr 2fr;gap:var(--s-16);padding-top:var(--s-8);border-top:1px solid var(--line)}
.international span{font-size:clamp(24px,2.4vw,36px);line-height:1.1;letter-spacing:-.03em;font-weight:600}
.international p{margin:0;font-size:18px;line-height:28px;color:var(--ink-2)}
.international strong{color:var(--ink)}
.about.has-phases .about-inner>*{grid-area:1/1}
.about.has-phases .international{border-top:0;padding-top:0;align-self:center}

/* ---------- 16 Selección ---------- */
.selection{overflow:hidden}
.selection-media{position:absolute;inset:0;margin:0;z-index:-1}
.selection-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 8s var(--ease)}
.selection.is-shown .selection-media img{transform:scale(1)}
.selection-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,18,9,.9),rgba(19,18,9,.62) 50%,rgba(19,18,9,.42))}
.selection-grid{position:relative;display:grid;grid-template-columns:1fr 520px;gap:var(--s-16);align-items:center}
.selection h2{font-size:clamp(56px,min(8vw,14vh),128px);line-height:.92}
.selection-copy{padding:var(--s-10);border-radius:var(--r-3xl)}
.selection-mini{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-bottom:var(--s-6)}
.selection-mini span{font-family:var(--mono);font-size:12px;letter-spacing:.12em;padding:var(--s-1) var(--s-3);border:1px solid rgba(200,235,0,.5);color:var(--acid);border-radius:999px}
.selection-copy p{font-size:16px;line-height:26px;color:rgba(244,241,234,.84);margin:0 0 var(--s-4)}
.selection-copy strong{color:var(--on-dark)}
.selection-copy .cta{margin:var(--s-4) 0}
.selection-copy small{display:block;color:var(--on-dark-muted);font-size:14px}

/* ---------- 17 Cierre ---------- */
.footer{flex-direction:column;justify-content:center;align-items:stretch;color:var(--on-dark-muted)}
.footer-giant{font-size:21.6vw;line-height:.8;font-weight:700;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(244,241,234,.22);text-align:center;margin-bottom:var(--s-16);white-space:nowrap;user-select:none;transition:color 1.6s var(--ease) .6s,-webkit-text-stroke-color 1.6s var(--ease) .6s}
.footer.is-shown .footer-giant{color:rgba(244,241,234,.08);-webkit-text-stroke-color:rgba(244,241,234,.4)}
.footer-giant span{color:var(--acid);-webkit-text-stroke:0}
.footer-inner{display:flex;flex-wrap:wrap;gap:var(--s-4) var(--s-8);align-items:center;justify-content:space-between;font-size:14px;line-height:20px}
.footer-brand{color:var(--on-dark)}
.footer-legal{display:flex;gap:var(--s-6)}
.footer-legal a{text-decoration:none}
.footer-legal a:hover{color:var(--on-dark)}

/* ---------- Responsive ---------- */
@media (max-width:1279px){
  :root{--gutter:var(--s-10)}
  .nav-links{gap:var(--s-4)}
  .brand-sub{display:none}
  .motor-panel{grid-template-columns:minmax(0,1fr) 320px}
  .motor-slide.is-flip .motor-panel{grid-template-columns:320px minmax(0,1fr)}
}
@media (max-width:1023px){
  .menu-toggle{display:block}
  .nav{gap:var(--s-3)}
  .nav-links{position:fixed;inset:0;z-index:-1;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--s-6);padding:0 var(--s-10);background:rgba(19,18,9,.96);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;pointer-events:none;transition:opacity .5s var(--ease)}
  .nav-links a{font-size:36px;line-height:40px;color:var(--on-dark);letter-spacing:-.03em;translate:0 16px;transition:translate .6s var(--ease)}
  .menu-open .nav-links{opacity:1;pointer-events:auto}
  .menu-open .nav-links a{translate:0 0}
  .nav-links a.is-current:after{display:none}
  .hero-caption{display:none}
  .motors-head-inner,.partnership-headline,.autonomy-grid,.selection-grid,.international{grid-template-columns:1fr;gap:var(--s-6)}
}
@media (max-width:767px){
  :root{--gutter:var(--s-6)}
  .slide{padding:92px 0 40px}
  .nav{padding-left:var(--s-4)}
  .top-cta{font-size:0;gap:0;width:40px;height:40px;justify-content:center;padding:0}
  .top-cta span{font-size:16px}
  .deck-mode .deck-index{right:8px}
  .deck-index i{height:28px}
  .hero{padding:0}
  .hero h1{font-size:48px;line-height:.98}
  .hero-ui{padding-bottom:var(--s-10)}
  .hero-frame:after{background:linear-gradient(0deg,rgba(19,18,9,.94) 0%,rgba(19,18,9,.72) 52%,rgba(19,18,9,.2) 100%)}
  .hero-frame img{object-position:40% 50%}
  .lede{font-size:18px;line-height:28px}
  .hero-actions{gap:var(--s-6)}
  .scroll-cue{display:none}
  h2{font-size:40px}
  .statement{font-size:46px}
  .statement-note{font-size:18px;line-height:28px;margin-top:var(--s-8)}
  .statement-gl{top:auto;bottom:24px;height:110px;translate:none}

  .slide[data-hud]{padding-bottom:156px}
  .motors-head h2{font-size:52px}
  .motors-lede{font-size:18px;line-height:28px}
  .motor-panel,.motor-slide.is-flip .motor-panel{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:var(--s-6);align-items:stretch}
  .motor-slide.is-flip .motor-frame{order:0}
  .motor-frame{height:auto;min-height:0}
  .motor-num{font-size:110px;bottom:auto;top:-8px;right:var(--gutter);left:auto!important;z-index:2;mix-blend-mode:normal}
  .motor-card h3{font-size:40px;margin:var(--s-2) 0}
  .motor-card p{font-size:18px;line-height:26px;margin-bottom:var(--s-2)}
  .motor-card small{margin-bottom:var(--s-4)}
  .motor-card>p.motor-msg{font-size:14px;line-height:20px;padding-top:var(--s-3)}
  .release-msg strong{font-size:72px}
  .release-msg{font-size:30px}
  .deck-mode .flow-lab{bottom:var(--s-3);width:calc(100% - 24px);padding:var(--s-2) var(--s-3) 0}
  .tube-wrap{height:100px}
  .tube,.tube-gl{height:64px}
  .motor-nodes button{font-size:11px;padding:var(--s-1) 2px}
  .flow-meta{font-size:10px}

  .focus-grid h2{font-size:40px;margin-bottom:var(--s-8)}
  .string-nodes button span{font-size:11px}
  .focus-copy{font-size:20px;line-height:30px}
  .hands-title h2{font-size:48px}

  .hands-stage{grid-template-rows:minmax(0,1fr) auto;gap:var(--s-4)}
  .hands-on.has-phases .role-stage,.hands-on.has-phases .hands-text{grid-area:2/1;position:relative;left:auto;top:auto;width:auto}
  .role-stage{padding:var(--s-4)}
  .role-chips{display:none}
  .role-detail{min-height:0}
  .hands-text{grid-template-columns:1fr;gap:var(--s-4)}
  .hands-lede{font-size:18px;line-height:27px}
  .hands-note{font-size:15px;line-height:22px;padding-left:var(--s-4)}

  .tech-grid{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:var(--s-6)}
  .tech-media{grid-area:1/1}
  .tech-layer.has-phases .tech-title,.tech-layer.has-phases .tech-core{grid-area:2/1}
  .tech-title h2{font-size:34px;margin-bottom:var(--s-4)}
  .tech-lede{font-size:17px;line-height:26px}
  .tech-core{font-size:20px}

  .partnership-headline h2{font-size:44px}
  .partnership-side{font-size:24px}
  .partnership-text{grid-template-columns:1fr;gap:var(--s-6)}
  .partnership-text p{font-size:20px}
  .fee-rail{height:auto;grid-template-columns:1fr;gap:var(--s-2);border:0;padding:0}
  .fee{flex-direction:row;justify-content:flex-start;align-items:baseline;flex-wrap:wrap;gap:0 var(--s-3);padding:var(--s-2) var(--s-4)}
  .fee:before{top:0;right:auto;width:calc(var(--bar,0)*1%);height:auto;transition:width 1.6s var(--ease)}
  .fee-rail.is-in .fee:nth-of-type(n){--bar:0}
  .fee-rail.is-in .fee:not(.zero):before{min-height:0}
  .fee-rail.is-in .fee:not(.zero){background:var(--dark);transition:background-color .6s var(--ease) .3s}
  .fee b{font-size:34px}
  .fee span{margin:0}
  .fee small{flex-basis:100%;margin:0;font-size:13px;line-height:18px}
  .fee-meter{display:none}
  .fee-line{font-size:17px;line-height:24px;margin-top:var(--s-3)}
  .fee-tax{font-size:12px;line-height:17px}
  .growth-target{grid-template-columns:1fr;padding:var(--s-8) var(--s-6)}

  .freedom-word{font-size:19vw;transform-origin:73% 52%}
  .autonomy-title h2{font-size:38px}
  .big-quote{font-size:26px;margin-bottom:var(--s-4)}
  .autonomy-copy>p:last-child{font-size:16px;line-height:25px}
  .autonomy-cards{grid-template-columns:1fr;gap:var(--s-4);bottom:var(--s-10)}
  .autonomy-cards article{padding-top:var(--s-3)}
  .autonomy-cards h3{font-size:26px;margin:var(--s-1) 0}
  .autonomy-cards p{font-size:14px;line-height:21px}
  .freedom-sub{font-size:26px}

  .about-grid{grid-template-columns:1fr;gap:var(--s-6)}
  .about-grid h2{font-size:40px}
  .about-list li{grid-template-columns:44px 1fr;padding:14px 0}
  .about-list p{font-size:22px}
  .international p{font-size:17px;line-height:27px}

  .selection-copy{padding:var(--s-6)}
  .selection h2{font-size:48px}
  .selection-copy p{font-size:15px;line-height:23px}
  .footer-giant{font-size:22vw}
  .footer-legal{flex-wrap:wrap}
}
@media (max-width:767px) and (max-height:740px){
  .motor-frame{max-height:30dvh}
  .motor-card small{font-size:12px;line-height:17px;margin-bottom:var(--s-2)}
  .motor-card>p.motor-msg{font-size:13px;line-height:18px;padding-top:var(--s-2)}
}

/* ---------- Movimiento reducido ---------- */
@media (prefers-reduced-motion:reduce){
  .grain{animation:none}
  .js .intro{display:none}
  .js .nav{translate:0 0;opacity:1}
  .hero-frame{--o:0;transition:none}
  .js .hero h1 .line>span,.js .hero .eyebrow,.js .hero .lede,.js .hero-actions,.js .selection-note,.js .hero-caption,.js .scroll-cue{transform:none;translate:none;opacity:1;transition:none}
  .deck-mode .slide,.deck-mode .slide.is-current,.deck-mode .slide:after{transition-duration:.01s}
  .deck-mode .slide [data-in],.deck-mode .statement .w,.deck-mode .release-msg .w{transition:none;filter:none}
  .frame,.media-reveal,.frame img,.media-reveal img{transition:none}
  .autonomy[data-ph="2"] .freedom-word,.autonomy[data-ph="2"] .freedom-knock{animation:none;opacity:0}
}

@media (pointer:coarse){.flow-caption{display:none}}
@media (max-width:767px){
  .deck-mode .deck-index{display:none}
  .motor-num{display:none}
  .hands-on.has-phases .role-stage{align-self:start}
  .phase-bar{bottom:10px}
  .fee-block .fee-line{margin-top:var(--s-2)}
}

@media (max-height:800px){.motor-num{display:none}}
/* Pantallas bajas (p. ej. 375×667): todo cabe sin recortes */
@media (max-width:767px) and (max-height:740px){
  .slide{padding:84px 0 32px}
  .partnership-inner{gap:var(--s-4)}
  .partnership-headline{gap:var(--s-2)}
  .partnership-headline h2{font-size:36px}
  .partnership-side{font-size:20px}
  .partnership-text{gap:var(--s-4)}
  .partnership-text p{font-size:17px;line-height:24px}
  .fee-rail{grid-template-columns:1fr 1fr;gap:6px}
  .fee{padding:6px 10px}
  .fee b{font-size:26px}
  .fee span{font-size:10px}
  .fee small{font-size:11px;line-height:15px}
  .fee-line{font-size:15px;line-height:21px}
  .fee-tax{font-size:11px;line-height:15px}
  .growth-target{padding:var(--s-6) var(--s-4);gap:var(--s-2)}
  .growth-target h3{font-size:28px}
  .growth-target p:last-child{font-size:14px;line-height:21px}
  .selection-grid{gap:var(--s-4)}
  .selection h2{font-size:34px}
  .selection .eyebrow{margin-bottom:var(--s-3)}
  .selection-copy{padding:var(--s-4)}
  .selection-mini{margin-bottom:var(--s-3)}
  .selection-copy p{font-size:13px;line-height:19px;margin-bottom:var(--s-2)}
  .selection-copy .cta{margin:var(--s-2) 0}
  .selection-copy small{font-size:12px}
  .hero h1{font-size:42px}
  .lede{font-size:16px;line-height:24px;margin-bottom:var(--s-6)}
  .selection-note{margin-top:var(--s-4)}
  .statement{font-size:40px}
  .motors-head h2{font-size:44px}
  .motor-card h3{font-size:32px}
  .motor-card p{font-size:16px;line-height:22px}
  .slide[data-hud]{padding-bottom:140px}
  .hands-lede{font-size:16px;line-height:24px}
  .hands-note{font-size:13px;line-height:19px}
  .tech-title h2{font-size:28px}
  .tech-lede{font-size:15px;line-height:22px}
  .tech-core{font-size:17px}
  .autonomy-title h2{font-size:32px}
  .big-quote{font-size:22px}
  .autonomy-copy>p:last-child{font-size:14px;line-height:21px}
  .autonomy-cards h3{font-size:22px}
  .autonomy-cards p{font-size:13px;line-height:19px}
  .about-grid h2{font-size:34px}
  .about-list li{padding:10px 0}
  .about-list p{font-size:19px}
  .focus-grid h2{font-size:34px;margin-bottom:var(--s-4)}
  .focus-copy{font-size:17px;line-height:25px}
  .hands-title h2{font-size:42px}
  .release-msg strong{font-size:60px}
  .release-msg{font-size:26px}
}

.slide:not(.dark) .phase-bar button:before{opacity:.45}
@media (max-width:767px){
  .partnership-inner{height:100%;grid-template-rows:auto minmax(0,1fr)}
  .partnership .phase-stack{align-content:center;padding-top:0;padding-bottom:var(--s-8)}
  .partnership .phase-stack>*{align-self:center}
  .partnership-text p{font-size:18px;line-height:27px}
  .about-inner{height:100%;align-content:center}
  .about.has-phases .international{align-self:center;gap:var(--s-6)}
  .about.has-phases .international span{font-size:34px;line-height:1.05}
  .about.has-phases .international p{font-size:18px;line-height:28px}
}
@media (max-width:767px) and (max-height:740px){
  .partnership-text p{font-size:16px;line-height:23px}
  .about.has-phases .international span{font-size:28px}
  .about.has-phases .international p{font-size:16px;line-height:24px}
}
@media (max-width:767px){
  .partnership .partnership-text{margin-bottom:80px}
  .about.has-phases .international{margin-bottom:10vh}
}
/* Rendimiento: las cajas de cristal entran sin desenfoque propio (blur + backdrop-filter a la vez bloquea el navegador) */
.deck-mode .slide .glass[data-in]{filter:none!important;transition-property:opacity,translate}

/* ---------- 14 Honorarios: pantalla propia ---------- */
.fees{background:var(--paper-2)}
.fees-inner{display:grid;gap:var(--s-6)}
.fees .fee-rail{height:clamp(300px,52vh,520px)}
.fees .fee b{font-size:clamp(56px,min(7vw,11vh),120px)}
.fees .fee small{font-size:15px;line-height:21px}
.fees .fee-line{font-size:clamp(24px,min(2.6vw,4.4vh),40px);line-height:1.15;letter-spacing:-.025em;margin:var(--s-4) 0 0;max-width:900px}
.fees .fee-tax{font-size:14px}
.fees .fee-line,.fees .fee-tax{opacity:0;translate:0 20px;transition:opacity .9s var(--ease),translate .9s var(--ease)}
.fees .fee-rail.is-in~.fee-line{opacity:1;translate:0 0;transition-delay:1.6s}
.fees .fee-rail.is-in~.fee-tax{opacity:1;translate:0 0;transition-delay:1.9s}
@media (max-width:767px){
  .fees .fee-rail{height:auto}
  .fees .fee b{font-size:38px}
  .fees .fee small{font-size:13px;line-height:18px}
  .fees .fee-line{font-size:22px}
}
@media (max-width:767px) and (max-height:740px){
  .fees .fee b{font-size:28px}
  .fees .fee-line{font-size:18px}
}

/* ---------- Repertorio de transiciones entre pantallas ---------- */
.deck-mode .slide{transition:transform 1.05s var(--ease),opacity .95s var(--ease),clip-path 1.1s var(--ease),visibility 0s linear 1.1s}
.deck-mode .slide.is-current,.deck-mode .slide.is-moving{transition:transform 1.05s var(--ease),opacity .95s var(--ease),clip-path 1.1s var(--ease),visibility 0s}
/* fundido: la nueva aparece sobre la anterior, que se aleja un poco */
.deck-mode .deck[data-tr="fade"] .slide:not(.is-current){transform:scale(1.035);opacity:0}
.deck-mode .deck[data-tr="fade"] .slide.is-past:not(.is-current){transform:scale(.97);opacity:1}
.deck-mode .deck[data-tr="fade"] .slide.is-past:after{opacity:.55}
/* lateral: el contenido avanza de lado y el fondo se mantiene */
.deck-mode .deck[data-tr="sides"] .slide:not(.is-current){transform:translate3d(14%,0,0);opacity:0}
.deck-mode .deck[data-tr="sides"] .slide.is-past:not(.is-current){transform:translate3d(-14%,0,0);opacity:0}
.deck-mode .deck[data-tr="sides"] .slide.is-past:after{opacity:0}
/* zoom: la que sale se acerca y se desvanece; la nueva llega desde el fondo */
.deck-mode .deck[data-tr="zoom"] .slide:not(.is-current){transform:scale(.86);opacity:0}
.deck-mode .deck[data-tr="zoom"] .slide.is-past:not(.is-current){transform:scale(1.14);opacity:0}
.deck-mode .deck[data-tr="zoom"] .slide.is-past:after{opacity:0}
/* cortina: la nueva se descubre de abajo arriba sobre la anterior, que se oscurece */
.deck-mode .deck[data-tr="wipe"] .slide:not(.is-current){transform:none;clip-path:inset(100% 0 0 0)}
.deck-mode .deck[data-tr="wipe"] .slide.is-current{clip-path:inset(0 0 0 0)}
.deck-mode .deck[data-tr="wipe"] .slide.is-past:not(.is-current){transform:translate3d(0,-6%,0);clip-path:inset(0 0 0 0)}
.deck-mode .deck[data-tr="wipe"] .slide.is-past:after{opacity:.6}
@media (prefers-reduced-motion:reduce){.deck-mode .slide,.deck-mode .slide.is-current,.deck-mode .slide.is-moving{transition-duration:.01s!important}}
/* Móvil: las filas se acortan con la variable para que se lea el descenso 15 → 0 */
@media (max-width:767px) and (min-height:741px){
  .fees .fee{transition:width 1.4s var(--ease),background-color .6s var(--ease) .3s}
  .fees .fee-rail.is-in .fee:nth-of-type(2){width:86%}
  .fees .fee-rail.is-in .fee:nth-of-type(3){width:72%}
  .fees .fee-rail.is-in .fee:nth-of-type(4){width:58%}
  .fees .fee-rail.is-in .fee:nth-of-type(5){width:58%}
}

/* ---------- Ajustes v1.3 ---------- */
/* Tecnología → Partnership: mismo fondo; la foto se cierra hacia dentro y entra la nueva pantalla por opacidad */
.partnership,.fees{background:var(--paper)}
.deck-mode .slide.is-shown.is-closing .frame{--hide:1;transition:clip-path .65s cubic-bezier(.6,0,.8,.2)}
.deck-mode .slide.is-shown.is-closing .frame img{transition:transform .65s cubic-bezier(.6,0,.8,.2)}
.deck-mode .slide.is-shown.is-closing [data-in],.deck-mode .slide.is-closing .frame-corners{opacity:0;translate:0 -10px;transition:opacity .4s ease-in,translate .4s ease-in;transition-delay:0s}
.deck-mode .deck[data-tr="close"] .slide:not(.is-current),.deck-mode .deck[data-tr="close"] .slide.is-past:not(.is-current){transform:none;opacity:0}
.deck-mode .deck[data-tr="close"] .slide.is-past:after{opacity:0}

/* Porcentajes año a año: cada columna aparece entera, con su número ya en blanco */
.fees .fee{opacity:0;translate:0 32px;transition:opacity .7s var(--ease),translate .9s var(--ease)}
.fees .fee:before{transform:scaleY(0);transform-origin:bottom;transition:transform .9s var(--ease)}
.fees .fee-rail .fee:not(.zero) b{color:var(--on-dark);transition:none}
.fees .fee-rail .fee:not(.zero) span{color:var(--acid);transition:none}
.fees .fee-rail .fee:not(.zero) small{color:var(--on-dark-muted);transition:none}
.fees .fee-rail.is-in .fee{opacity:1;translate:0 0}
.fees .fee-rail.is-in .fee:before{transform:scaleY(1)}
.fees .fee-rail.is-in .fee:nth-of-type(1),.fees .fee-rail.is-in .fee:nth-of-type(1):before{transition-delay:.2s}
.fees .fee-rail.is-in .fee:nth-of-type(2),.fees .fee-rail.is-in .fee:nth-of-type(2):before{transition-delay:.75s}
.fees .fee-rail.is-in .fee:nth-of-type(3),.fees .fee-rail.is-in .fee:nth-of-type(3):before{transition-delay:1.3s}
.fees .fee-rail.is-in .fee:nth-of-type(4),.fees .fee-rail.is-in .fee:nth-of-type(4):before{transition-delay:1.85s}
.fees .fee-rail.is-in .fee:nth-of-type(5){transition-delay:2.4s}
.fees .fee-rail.is-in .fee-meter i{transition-duration:2.6s;transition-delay:.2s}
.fees .fee-rail.is-in~.fee-line{transition-delay:3s}
.fees .fee-rail.is-in~.fee-tax{transition-delay:3.3s}
@media (max-width:767px){
  .fees .fee-rail .fee:not(.zero){background:var(--dark)}
  .fees .fee:before{display:none}
  .fees .fee{transition:opacity .7s var(--ease),translate .9s var(--ease)}
}
@media (prefers-reduced-motion:reduce){.fees .fee,.fees .fee:before{transition:none}}
.deck-mode .deck[data-tr="close"] .slide.is-past:not(.is-current){opacity:1}
.fees .fee-rail .fee{transition-property:opacity,translate!important;transition-duration:.7s,.9s!important;transition-timing-function:var(--ease)!important}

/* ---------- v1.4 · Lectura: textos secundarios más grandes, sobretítulos marcados ---------- */
/* Sobretítulos: lo primero que se lee */
.eyebrow{font-size:15px;line-height:20px;letter-spacing:.16em;font-weight:600;color:var(--ink)}
.eyebrow:before{width:32px;height:3px}
.slide.dark .eyebrow,.dark .eyebrow,.hero .eyebrow,.growth-target .eyebrow{color:var(--acid)}

.lede{font-size:23px;line-height:34px;max-width:660px}
.statement-note{font-size:24px;line-height:34px;max-width:600px;color:rgba(244,241,234,.78)}
.motors-lede{font-size:26px;line-height:37px;margin:0}

/* Motores: número grande centrado sobre su columna, tarjeta más arriba y más legible */
.motor-panel{grid-template-columns:minmax(0,1fr) 440px}
.motor-slide.is-flip .motor-panel{grid-template-columns:440px minmax(0,1fr)}
.motor-num{right:var(--gutter);width:440px;text-align:center;top:2%}
.motor-slide.is-flip .motor-num{left:var(--gutter);right:auto}
.motor-card{margin-bottom:clamp(8px,4vh,48px)}
.motor-card h3{margin-top:0}
.motor-card p{font-size:25px;line-height:33px}
.motor-card small{font-size:18px;line-height:27px}
.motor-card>p.motor-msg{font-size:19px;line-height:28px}

.hands-lede{font-size:22px;line-height:33px}
.hands-note{font-size:18px;line-height:28px}
.tech-lede{font-size:23px;line-height:34px;color:var(--ink)}

.fees .fee small{font-size:17px;line-height:23px}
.fees .fee-tax{font-size:17px;line-height:24px;color:var(--ink-2)}

.autonomy-copy>p:last-child{font-size:21px;line-height:32px}
.autonomy-cards h3{font-size:clamp(34px,min(3.3vw,6vh),54px)}
.autonomy-cards p{font-size:19px;line-height:29px}
/* Dirigir → Delegar → Vivir: cada columna sube a su tiempo */
.autonomy-cards article{opacity:0;translate:0 48px;transition:opacity .9s var(--ease),translate 1.1s var(--ease)}
.autonomy[data-ph="3"] .autonomy-cards article,.no-deck .autonomy-cards article{opacity:1;translate:0 0}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(1){transition-delay:.6s}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(2){transition-delay:1.6s}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(3){transition-delay:2.6s}

/* Método: el paso activo se marca solo, uno por segundo (igual que al pasar el puntero) */
.about-list li.is-hot:before{transform:scaleY(1)}
.about-list li.is-hot p{color:var(--on-dark);translate:var(--s-4) 0}
.about-list li.is-hot span{color:var(--acid)}
.about-list span{font-size:14px}
.international p{font-size:21px;line-height:32px}
/* Tubo: el motor activo se lee claramente mientras el recorrido avanza solo */
.motor-nodes button{font-size:15px}
.motor-nodes button.is-active{color:var(--acid)}

.selection-grid{grid-template-columns:1fr 580px}
.selection-tag{margin:var(--s-6) 0 0;max-width:520px;font-size:clamp(22px,min(2.2vw,3.8vh),32px);line-height:1.2;letter-spacing:-.02em;color:rgba(244,241,234,.86)}
.selection-mini span{font-size:15px;padding:var(--s-2) var(--s-4)}
.selection-copy p{font-size:19px;line-height:29px}
.selection-copy small{font-size:17px;line-height:24px}

@media (max-width:1279px){
  .motor-panel{grid-template-columns:minmax(0,1fr) 400px}
  .motor-slide.is-flip .motor-panel{grid-template-columns:400px minmax(0,1fr)}
  .motor-num{width:400px}
  .selection-grid{grid-template-columns:1fr 520px}
}
@media (max-width:767px){
  .eyebrow{font-size:13px;line-height:18px;letter-spacing:.14em}
  .eyebrow:before{width:24px}
  .lede{font-size:19px;line-height:29px}
  .statement-note{font-size:19px;line-height:29px}
  .motors-lede{font-size:19px;line-height:29px}
  .motor-panel,.motor-slide.is-flip .motor-panel{grid-template-columns:1fr}
  .motor-num{width:auto;text-align:right}
  .motor-card{margin-bottom:0}
  .motor-card p{font-size:20px;line-height:28px}
  .motor-card small{font-size:15px;line-height:22px}
  .motor-card>p.motor-msg{font-size:15px;line-height:22px}
  .hands-lede{font-size:19px;line-height:28px}
  .hands-note{font-size:16px;line-height:24px}
  .tech-lede{font-size:18px;line-height:27px}
  .fees .fee small{font-size:14px;line-height:19px}
  .fees .fee-tax{font-size:14px;line-height:20px}
  .autonomy-copy>p:last-child{font-size:17px;line-height:26px}
  .autonomy-cards h3{font-size:28px}
  .autonomy-cards p{font-size:15px;line-height:22px}
  .international p{font-size:18px;line-height:28px}
  .selection-grid{grid-template-columns:1fr}
  .motor-nodes button{font-size:12px}
  .selection-tag{font-size:16px;line-height:22px;margin-top:var(--s-2)}
  .selection-mini span{font-size:12px;padding:var(--s-1) var(--s-3)}
  .selection-copy p{font-size:15px;line-height:22px;margin-bottom:var(--s-3)}
  .selection-copy small{font-size:14px}
  .selection h2{font-size:42px}
}
@media (max-width:767px) and (max-height:740px){
  .eyebrow{font-size:12px}
  .lede{font-size:17px;line-height:25px}
  .motors-lede{font-size:17px;line-height:25px}
  .motor-card p{font-size:17px;line-height:23px}
  .motor-card small{font-size:13px;line-height:18px}
  .motor-card>p.motor-msg{font-size:13px;line-height:19px}
  .hands-lede{font-size:17px;line-height:25px}
  .hands-note{font-size:14px;line-height:20px}
  .tech-lede{font-size:16px;line-height:23px}
  .fees .fee small{font-size:12px;line-height:16px}
  .fees .fee-tax{font-size:12px;line-height:16px}
  .autonomy-copy>p:last-child{font-size:15px;line-height:22px}
  .autonomy-cards h3{font-size:23px}
  .autonomy-cards p{font-size:14px;line-height:20px}
  .international p{font-size:16px;line-height:24px}
  .selection-tag{font-size:14px;line-height:19px}
  .selection h2{font-size:32px}
  .selection-copy p{font-size:13px;line-height:19px;margin-bottom:var(--s-2)}
  .selection-copy small{font-size:12px}
}
@media (prefers-reduced-motion:reduce){.autonomy-cards article{opacity:1;translate:none;transition:none}}

/* ---------- v1.5 ---------- */
/* Codo con codo: caja de roles dos puntos más grande */
.role-stage{width:min(500px,46%)}
.role-label{font-size:16px;line-height:22px}
.role-word{font-size:clamp(24px,2.4vw,34px)}
.role-detail{grid-template-columns:36px 1fr;min-height:100px}
.role-detail span{font-size:14px}
.role-detail p{font-size:16px;line-height:23px}
.role-chips button{font-size:14px;line-height:18px}

/* Partnership: sin titular; los dos textos arriba y el objetivo entra pronto en la misma pantalla */
.partnership:not(.has-phases) .phase-stack{gap:clamp(24px,4.4vh,48px);padding-top:var(--s-4)}
.partnership:not(.has-phases) .phase-stack>*{grid-area:auto}
.partnership:not(.has-phases) .partnership-inner{height:100%;align-content:center;padding-bottom:var(--s-8)}
.partnership-inner{gap:var(--s-4)}
.partnership .growth-target{padding:clamp(28px,5vh,48px)}

/* Autonomía: cada columna sube despacio desde abajo hasta el centro, una a una */
.autonomy-cards{top:50%;bottom:auto;transform:translateY(-50%)}
.autonomy-cards h3{line-height:1.05;margin:var(--s-3) 0 var(--s-4)}
.autonomy-cards article{translate:0 42vh;transition:opacity 1.6s var(--ease),translate 2.4s var(--ease)}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(1){transition-delay:.5s}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(2){transition-delay:2.9s}
.autonomy[data-ph="3"] .autonomy-cards article:nth-child(3){transition-delay:5s}
@media (max-width:767px){
  .role-stage{width:auto}
  .role-label{font-size:14px;line-height:20px}
  .role-word{font-size:24px}
  .role-detail p{font-size:15px;line-height:21px}
  .autonomy-cards{gap:var(--s-6)}
}
@media (max-width:767px) and (max-height:740px){
  .role-detail p{font-size:13px;line-height:19px}
  .role-word{font-size:21px}
}
