@font-face{font-family:"Barlow Condensed";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/BarlowCondensed-600SemiBold.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/BarlowCondensed-700Bold.woff2) format("woff2")}
:root{
  --red:#B3121B;--ink:#14213D;--paper:#FBF7EE;--amber:#F2A900;--green:#2E8B57;
  --line:#E5DDC8;--mute:#5C6478;--amber-ink:#8A5300;
  --num:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  --sys:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sys);color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased}
::selection{background:var(--amber);color:var(--ink)}
input,button{caret-color:var(--amber)}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.pitch :focus-visible,.close :focus-visible,.steps :focus-visible{outline-color:#fff}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
b,dd,.diff{font-variant-numeric:tabular-nums}
h1,h2,h3{font-family:var(--num);text-transform:uppercase;font-weight:700;text-wrap:balance}
em{font-style:normal}
svg{display:inline-block}

/* Hero */
.hero{background:var(--red);color:#fff;display:grid;grid-template-columns:1.05fr 1fr;min-height:100svh;align-items:center;padding:0 clamp(24px,5vw,72px);gap:clamp(24px,4vw,64px)}
.pitch{padding:32px 0}
.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:700 26px var(--num);letter-spacing:.06em}
.mark{width:36px;height:36px;border:2px solid #fff}
h1{font-size:clamp(48px,min(6.2vw,10.5vh),108px);line-height:.92;letter-spacing:-.01em;margin-top:clamp(24px,5vh,56px);max-width:14ch}
h1 em{color:var(--amber)}
.lead{font-size:clamp(18px,1.5vw,22px);line-height:1.45;max-width:520px;margin-top:20px}
.ai{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:var(--ink);color:#fff;padding:6px 14px 6px 10px;font:700 17px var(--num);letter-spacing:.1em;text-transform:uppercase;border:2px solid #fff}
.ai svg{width:18px;height:18px;color:var(--amber)}
.signup{display:flex;flex-wrap:wrap;margin-top:22px;max-width:600px}
.signup input{flex:1 1 240px;min-width:0;height:64px;border:3px solid #fff;border-right:0;padding:0 18px;font:inherit;font-size:20px;background:transparent;color:#fff;border-radius:0}
.signup input::placeholder{color:rgba(255,255,255,.78)}
.signup button{height:64px;padding:0 30px;background:var(--amber);color:var(--ink);border:3px solid var(--amber);font:700 24px var(--num);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:0}
.signup button:hover{background:#fff;border-color:#fff}
.signup button:disabled{opacity:.6;cursor:wait}
.msg{flex-basis:100%;min-height:0;margin-top:8px;font-size:15px;font-weight:600}
.signup.err input{border-color:var(--amber)}
.fine{font-size:14px;margin-top:6px;opacity:.9}

/* Simulador */
.stage{display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:12px}
.phone{font-size:clamp(9px,1.5vh,14px);width:26em;height:54em;background:#111;border-radius:3.6em;padding:.8em;box-shadow:0 0 0 .15em #444;color:var(--ink);flex:none}
.screen{position:relative;width:100%;height:100%;border-radius:2.9em;overflow:hidden;background:var(--paper);display:flex;flex-direction:column}
.sbar{background:var(--red);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:1.1em 2em .3em;font:600 1.15em var(--sys);height:3.4em}
.island{width:7em;height:1.9em;background:#000;border-radius:2em}
.sig{font-size:.8em;letter-spacing:.1em}
.abar{background:var(--red);padding:.7em 1.4em 1em;display:flex;align-items:center;gap:.6em;color:#fff}
.amark{width:2em;height:2em;background:var(--red)}
.abar b{font:700 1.6em var(--num);letter-spacing:.1em}
.views{position:relative;flex:1;min-height:0}
.scene{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(.8em);transition:opacity .45s var(--ease),transform .45s var(--ease),visibility 0s .45s}
.scene.on{opacity:1;visibility:visible;transform:none;transition:opacity .45s var(--ease),transform .45s var(--ease)}
.metrics{position:relative;background:var(--ink);color:#fff;padding:1.2em 1.4em;overflow:hidden}
.metrics .fill{position:absolute;inset:0 auto 0 0;width:98%;background:var(--green)}
.mrow,.chips{position:relative}
.mrow{display:flex;justify-content:space-between;align-items:flex-end;gap:.5em}
.mrow small{display:block;font:400 1.05em var(--sys)}
.mrow b{font:700 2.15em/1 var(--num)}
.mrow .r{text-align:right}
.mrow i{font:600 1.1em var(--num);font-style:normal;padding-bottom:.5em;opacity:.85}
.chips{display:flex;flex-wrap:wrap;gap:.5em;margin-top:.9em}
.chips span{background:rgba(255,255,255,.2);padding:.3em .8em;border-radius:99px;font-size:.95em}
.abody{flex:1;padding:1em 1.2em 5em;position:relative;display:flex;flex-direction:column;gap:.8em;overflow:hidden}
.acoach{background:var(--amber);border:.15em solid var(--ink);padding:.9em 1em;transition:opacity .5s,transform .5s var(--ease)}
.acoach .ch{display:flex;align-items:center;gap:.4em;font:700 .95em var(--sys);letter-spacing:.06em}
.acoach .ch svg{width:1.2em;height:1.2em}
.acoach p{font:600 1.15em/1.3 var(--sys);margin-top:.4em}
.abtns[hidden]{display:none}
.abtns{display:flex;gap:.6em;margin-top:.7em}
.abtns button{flex:1;height:2.9em;font:700 1.05em var(--sys);border:.15em solid var(--ink);cursor:pointer}
.abtns .dark{background:var(--ink);color:#fff}.abtns .ghost{background:transparent;color:var(--ink)}
.abody .th{font:700 1.5em var(--sys);margin-top:.2em}
.atray{list-style:none;display:grid;gap:.6em}
.atray li{display:flex;align-items:center;border:.15em solid var(--ink);background:#fff;overflow:hidden;max-height:5em;transition:max-height .5s var(--ease),opacity .4s,border-width .5s}
.atray li.gone{max-height:0;opacity:0;border-width:0}
.atray li[hidden]{display:none}
.atray .o{width:2.2em;height:2.2em;margin:0 .6em 0 .7em;font:700 1em/2.2em var(--sys)}
.atray span{flex:1;font:500 1.2em var(--sys);padding:.5em 0}
.atray small{display:block;font-size:.8em;color:var(--mute)}
.atray b{font:700 1.8em var(--num);padding:0 .5em}
.atray button{align-self:stretch;background:var(--ink);color:#fff;border:0;padding:0 1.1em;font:700 1em var(--sys);cursor:pointer}
.atray button.press,.abtns button.press,.send.press{background:var(--red);color:#fff}
.adone{font:600 1.15em var(--sys);color:var(--green)}
.adone[hidden]{display:none}
.o{display:inline-block;border-radius:50%;text-align:center;color:#fff;font-style:normal;flex:none}
.o.n{background:var(--amber);color:var(--ink)}.o.t{background:var(--green)}.o.m{background:var(--ink)}
.afab{position:absolute;right:1.1em;bottom:5.6em;z-index:2;width:3.4em;height:3.4em;border-radius:50%;background:var(--amber);color:var(--ink);display:grid;place-items:center}
.tabs{position:absolute;left:0;right:0;bottom:0;background:var(--ink);display:flex;justify-content:space-around;padding:.8em .3em 1.8em;font:600 .85em var(--sys);color:rgba(251,247,238,.72)}
.tabs span{padding:.4em .6em;border-radius:.4em;transition:background .3s,color .3s}
.tabs span.on{background:var(--amber);color:var(--ink)}
.tap{position:absolute;width:3em;height:3em;border-radius:50%;background:rgba(255,255,255,.55);border:.15em solid #fff;left:0;top:0;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.6)}
.tap.go{animation:tap .7s ease-out}
@keyframes tap{0%{opacity:0;transform:translate(-50%,-50%) scale(1.4)}30%{opacity:1;transform:translate(-50%,-50%) scale(.9)}100%{opacity:0;transform:translate(-50%,-50%) scale(.6)}}

/* Escena captura */
.cap{padding:1.6em 1.4em;display:flex;flex-direction:column;align-items:center;gap:1em;height:100%}
.mic{width:5.4em;height:5.4em;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;position:relative;flex:none}
.mic svg{width:2.6em;height:2.6em}
.mic.live::after{content:"";position:absolute;inset:-.5em;border-radius:50%;border:.2em solid var(--red);animation:pulse 1.2s ease-out infinite}
@keyframes pulse{0%{opacity:.8;transform:scale(.85)}100%{opacity:0;transform:scale(1.35)}}
.say{font:600 1.7em/1.25 var(--sys);text-align:center;min-height:2.6em;color:var(--ink)}
.say::after{content:"";display:inline-block;width:.08em;height:1em;background:var(--red);margin-left:.1em;vertical-align:-.1em;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.parsed{width:100%;border:.15em solid var(--ink);background:#fff;padding:.9em 1em;opacity:0;transform:translateY(1em);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.parsed.on{opacity:1;transform:none}
.ia{display:flex;align-items:center;gap:.4em;font:700 .95em var(--sys);letter-spacing:.06em;text-transform:uppercase;color:var(--amber-ink)}
.ia svg{width:1.2em;height:1.2em}
.parsed dl div{display:flex;justify-content:space-between;align-items:center;padding:.5em 0;border-bottom:1px solid var(--line);font-size:1.15em}
.parsed dt{color:var(--mute);font-size:.85em}
.parsed dd{font-weight:600;display:flex;align-items:center;gap:.4em}
.parsed .amt{font:700 1.7em var(--num)}
.parsed .o{width:1.6em;height:1.6em;font:700 .8em/1.6em var(--sys)}
.send{width:100%;height:3em;margin-top:.8em;background:var(--ink);color:#fff;border:0;font:700 1.1em var(--sys);cursor:pointer}

/* Escena metas */
.ghero{background:var(--red);color:#fff;padding:.6em 1.4em 1.1em}
.ghero small{display:block;font:400 1.05em var(--sys)}
.ghero b{font:700 3em/1 var(--num)}
.agoal{border:.15em solid var(--ink);background:#fff}
.agoal .gh{background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:.6em .9em;font:700 .95em var(--sys);letter-spacing:.08em}
.gb{padding:.8em .9em;font-size:1.05em}
.gb p{margin-top:.5em}
.gb .sug{display:flex;align-items:center;gap:.4em;font-weight:600;color:var(--amber-ink)}
.gb .sug svg{width:1.1em;height:1.1em}
.gbar{height:1em;background:var(--line)}
.gbar i{display:block;width:5%;height:100%;background:var(--green);transition:width 1.4s var(--ease)}
.scene.on 
.steps{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.steps button{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.6);padding:8px 16px;font:700 18px var(--num);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:0}
.steps button[aria-pressed="true"]{background:#fff;color:var(--red);border-color:#fff}
.steps button:hover{border-color:#fff}
.caption{min-height:3em;max-width:30em;text-align:center;font-size:16px;line-height:1.4}

/* Qué hacen las parejas */
.doing{padding:clamp(56px,8vw,112px) clamp(24px,5vw,72px);max-width:1440px;margin:0 auto}
.doing h2{font-size:clamp(40px,5vw,80px);line-height:.95;max-width:16ch}
.ledger{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(32px,6vw,96px);margin-top:clamp(28px,4vw,56px);border-top:3px solid var(--ink)}
.ledger li{padding:22px 0;border-bottom:1px solid var(--line);display:grid;gap:6px}
.ledger h3{font-size:clamp(28px,2.4vw,38px);line-height:1;letter-spacing:.02em}
.ledger p{font-size:18px;max-width:48ch}

/* Carriles */
.lanes{display:grid;grid-template-columns:1fr 1.5fr 1fr}
.lane{padding:clamp(32px,5vw,64px) clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:14px;min-height:340px}
.lane h3{font-size:clamp(40px,4.4vw,64px);line-height:1;letter-spacing:.04em}
.lane p{font-size:19px;max-width:42ch}
.lane b{font:700 clamp(56px,6vw,96px)/1 var(--num);margin-top:auto}
.lane small{font-size:13px}
.lane.m{background:var(--ink);color:#fff}.lane.t{background:var(--green);color:#fff}.lane.n{background:var(--amber)}

/* IA */
.ia-sec{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);padding:clamp(48px,7vw,96px) clamp(24px,5vw,72px);max-width:1440px;margin:0 auto;align-items:center}
.ia-sec h2{font-size:clamp(40px,4.6vw,72px);line-height:.95}
.ia-t p{font-size:20px;max-width:46ch;margin-top:18px}
.ia-c{display:grid;gap:14px}
.ia-c small{font-size:13px;color:var(--mute)}
.quote{font:600 clamp(26px,2.4vw,34px)/1.2 var(--sys);border-left:0;padding:0}
.fields{display:grid;grid-template-columns:1fr 1fr;border:3px solid var(--ink);background:#fff}
.fields div{padding:10px 14px;border-bottom:1px solid var(--line)}
.fields div:nth-child(odd){border-right:1px solid var(--line)}
.fields dt{font-size:13px;color:var(--mute)}
.fields dd{font:700 28px var(--num)}
.coach{background:var(--amber);border:3px solid var(--ink);padding:14px 18px}
.coach h3{font:700 15px var(--sys);letter-spacing:.08em}
.coach p{font-weight:600;font-size:19px;margin-top:6px}
.cb{display:flex;gap:10px;margin-top:12px}
.cb span{flex:1;text-align:center;padding:10px;font-weight:700;border:2px solid var(--ink)}
.cb span:first-child{background:var(--ink);color:#fff}

/* Metas */
.goal{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.goal .fillbar{position:absolute;inset:0 auto 0 0;width:5%;background:var(--green);transition:width 1.6s var(--ease)}
.goal.seen .fillbar{width:100%}
.goal .in{position:relative;padding:clamp(48px,7vw,96px) clamp(24px,5vw,72px)}
.goal h2{font-size:clamp(48px,7vw,112px);line-height:.92;max-width:14ch}
.goal p{font-size:20px;max-width:52ch;margin-top:18px}
.gx{display:flex;flex-wrap:wrap;gap:12px 40px;margin-top:30px;align-items:flex-end}
.gx div{font:700 clamp(40px,5vw,64px)/1 var(--num)}
.gx small{display:block;font:400 15px var(--sys);margin-bottom:4px}
.gx i{font:600 22px var(--num);font-style:normal;padding-bottom:8px}

/* Cierre */
.close{background:var(--red);color:#fff;padding:clamp(56px,8vw,112px) clamp(24px,5vw,72px)}
.close h2{font-size:clamp(56px,8vw,128px);line-height:.9;max-width:12ch}
.close h2 em{color:var(--amber)}
.close p:not(.msg){font-size:20px;max-width:52ch;margin-top:20px}
footer{background:var(--ink);color:#fff;padding:22px clamp(24px,5vw,72px);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;font-size:14px}
footer span:first-child{font:700 18px var(--num);letter-spacing:.08em}

/* Responsive */
@media (max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0;padding-bottom:32px}
  .phone{font-size:13px}
  .ledger{grid-template-columns:1fr}
  .lanes{grid-template-columns:1fr}
  .lane{min-height:0}
  .ia-sec{grid-template-columns:1fr}
}
@media (max-width:480px){
  .signup input{flex-basis:100%;border-right:3px solid #fff;height:56px}
  .signup button{width:100%;height:56px}
  .phone{font-size:min(13px,3.3vw)}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.screen[data-s="1"] .afab{opacity:0}
.afab{transition:opacity .3s}
.afab svg{width:1.6em;height:1.6em}
.sig svg{width:3em;height:1.2em}
.chips span{background:rgba(0,0,0,.28);border-radius:.4em}
.screen :focus-visible{outline:.2em solid var(--ink);outline-offset:-.3em}
.adone{color:#1F6B3E}
.lane.t{background:#25774A}
.send:disabled{opacity:.4;cursor:default}
.demo-note{font-size:13px;opacity:.9}
.gb p b{font:700 1.3em var(--num)}
#gpct{font-family:var(--num);font-size:1.2em;font-variant-numeric:tabular-nums;min-width:2.4em;text-align:right}
input:-webkit-autofill{-webkit-text-fill-color:#fff;transition:background-color 9999s;box-shadow:inset 0 0 0 100px var(--red)}
.atray span{font-size:1.1em}.atray b{font-size:1.6em;padding:0 .4em}.atray button{padding:0 .9em}
.doors{list-style:none;border-top:3px solid var(--ink)}
.doors li{padding:16px 0;border-bottom:1px solid var(--line);display:grid;gap:4px}
.doors h3{font-size:30px;line-height:1}
.doors .q{font:600 22px/1.25 var(--sys)}
.doors .res{font-size:17px;color:var(--mute)}
.doors .res b{font:700 26px var(--num);color:var(--ink)}
.doors-note{font-size:13px;color:var(--mute);margin-top:10px}
@media (max-width:900px){h1{max-width:16ch;font-size:clamp(40px,11vw,64px)}}
.acoach[hidden]{display:none}
