/* Trade Sky · web pública (tradesky.pro)
   Tokens copiados del journal (reference/propdesk-single-file-latest.html, bloque :root).
   Regla de marca: negro, blanco y grises. Color solo cuando SIGNIFICA algo:
   verde = beneficio, rojo = pérdida, dorado = Funded, colores de liga = ligas.
   Movimiento: transform/opacity, nada de librerías; todo se apaga con «reducir movimiento». */

@font-face{font-family:'Geist';src:url('/assets/fonts/Geist-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap;}
@font-face{font-family:'Geist Fallback';src:local('Arial'),local('Helvetica');size-adjust:104%;}

:root{
  color-scheme:dark;
  --bg:#000000;
  --surface:#111114;--surface-2:#16161a;--raised:#1b1b20;--raised-2:#232329;
  --text:#f5f5f6;--text-dim:#a8a8b0;--text-faint:#8b8b93;
  --line:rgba(255,255,255,.09);--line-2:rgba(255,255,255,.14);--line-3:rgba(255,255,255,.26);
  --on-accent:#0a0a0b;
  --grad-accent:linear-gradient(180deg,#ffffff,#e4e4e7);
  --green:#22c55e;--red:#ef4444;--gold:#e7c36a;
  --r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:30px;--r-pill:999px;
  --sh-1:0 1px 2px rgba(0,0,0,.35),0 6px 16px -10px rgba(0,0,0,.55);
  --sh-2:0 2px 4px rgba(0,0,0,.3),0 18px 40px -18px rgba(0,0,0,.75);
  --sh-3:0 4px 10px rgba(0,0,0,.35),0 32px 70px -24px rgba(0,0,0,.85);
  --inset-hi:inset 0 1px 0 rgba(255,255,255,.06);
  --glass-bg:rgba(17,17,20,.72);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --t-fast:160ms;--t-med:240ms;
  --wrap:1180px;
  --gutter:max(16px,env(safe-area-inset-left));
  --font:'Geist','Geist Fallback',system-ui,-apple-system,'Segoe UI',sans-serif;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px;}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;}
h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.1;text-wrap:balance;}
p{margin:0;}
.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"zero" 0;}
.pos{color:var(--green);} .neg{color:var(--red);}
:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:6px;}
.skip{position:absolute;left:16px;top:-60px;z-index:100;padding:10px 16px;border-radius:var(--r-pill);background:#fff;color:#000;font-weight:700;text-decoration:none;}
.skip:focus{top:12px;}
[data-d="1"]{--d:1}[data-d="2"]{--d:2}[data-d="3"]{--d:3}[data-d="4"]{--d:4}[data-d="5"]{--d:5}[data-d="6"]{--d:6}[data-d="7"]{--d:7}

/* Fondo: halo blanco muy suave + retícula de puntos */
.bg{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:linear-gradient(180deg,#0a0a0b 0%,#050506 40%,#000 100%);}
.bg::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;
  -webkit-mask-image:radial-gradient(70% 60% at 50% 0%,#000 30%,transparent 80%);mask-image:radial-gradient(70% 60% at 50% 0%,#000 30%,transparent 80%);}
.bg span{position:absolute;border-radius:50%;opacity:.55;will-change:transform;background:radial-gradient(circle,rgba(255,255,255,.13),rgba(255,255,255,0) 70%);}
.bg span:nth-child(1){width:900px;height:600px;left:50%;top:-320px;transform:translateX(-50%);animation:drift1 52s ease-in-out infinite alternate;}
.bg span:nth-child(2){width:520px;height:520px;left:-180px;top:40%;animation:drift2 46s ease-in-out infinite alternate;opacity:.3;}
.bg span:nth-child(3){width:560px;height:560px;right:-220px;top:70%;animation:drift1 60s ease-in-out infinite alternate-reverse;opacity:.25;}
@keyframes drift1{to{transform:translate(-44%,40px) scale(1.08);}}
@keyframes drift2{to{transform:translate(80px,-60px) scale(1.1);}}

/* Barra de progreso de lectura */
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:70;pointer-events:none;}
.progress span{display:block;height:100%;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,rgba(255,255,255,.2),#fff);}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter);}

/* Botones */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;
  border-radius:var(--r-pill);border:1px solid var(--line-2);background:rgba(245,245,246,.05);color:var(--text);
  font:700 14px/1 var(--font);text-decoration:none;white-space:nowrap;cursor:pointer;overflow:hidden;
  transition:background var(--t-fast),transform var(--t-fast) var(--ease-out),filter var(--t-fast),opacity var(--t-fast),box-shadow var(--t-med);}
.btn:hover{background:rgba(245,245,246,.09);transform:translateY(-1px);}
.btn:active{transform:scale(.97);}
.btn svg{width:17px;height:17px;flex:none;transition:transform var(--t-med) var(--ease-out);}
.btn:hover svg{transform:translateX(3px);}
.btn-primary{background:var(--grad-accent);color:var(--on-accent);border-color:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 10px 28px -12px rgba(255,255,255,.4);}
.btn-primary:hover{background:var(--grad-accent);filter:brightness(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 14px 36px -10px rgba(255,255,255,.55);}
.btn-shine::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);mix-blend-mode:soft-light;transform:translateX(-120%);animation:shine 4.5s var(--ease-out) 1.8s infinite;}
@keyframes shine{0%{transform:translateX(-120%);}30%,100%{transform:translateX(120%);}}
.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim);}
.btn-ghost:hover{color:var(--text);background:rgba(245,245,246,.06);}
.btn-lg{min-height:52px;padding:0 28px;font-size:15px;}
.btn[disabled]{opacity:.6;cursor:progress;transform:none;}

/* Cabecera de cristal */
.top{position:sticky;top:0;z-index:50;padding:12px 0;transition:padding var(--t-med) var(--ease-out);}
.top-in{position:relative;display:flex;align-items:center;gap:12px;height:60px;padding:0 10px 0 20px;border-radius:var(--r-pill);
  background:var(--glass-bg);-webkit-backdrop-filter:blur(26px) saturate(185%);backdrop-filter:blur(26px) saturate(185%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--sh-2),0 0 0 1px var(--line);transition:height var(--t-med) var(--ease-out),background var(--t-med);}
.top.scrolled{padding:8px 0;}
.top.scrolled .top-in{height:54px;background:rgba(12,12,14,.86);}
.logo{display:flex;align-items:center;flex:none;min-height:44px;text-decoration:none;}
.logo img{height:22px;width:auto;}
.logo .logo-star{display:none;}
.nav{display:flex;gap:2px;margin-left:18px;}
.nav a{position:relative;padding:8px 12px;border-radius:var(--r-pill);color:var(--text-dim);font-size:14px;font-weight:600;text-decoration:none;transition:color var(--t-fast),background var(--t-fast);}
.nav a:hover{color:var(--text);background:rgba(245,245,246,.06);}
.nav a.active{color:var(--text);background:rgba(245,245,246,.08);}
.top-actions{display:flex;align-items:center;gap:6px;margin-left:auto;}
.lang{display:inline-flex;padding:3px;border-radius:var(--r-pill);background:rgba(245,245,246,.06);border:1px solid var(--line);}
.lang button{border:0;background:transparent;color:var(--text-faint);font:800 11px/1 var(--font);letter-spacing:.08em;padding:9px 11px;border-radius:var(--r-pill);cursor:pointer;min-width:38px;min-height:34px;}
.lang button[aria-pressed="true"]{background:linear-gradient(180deg,rgba(245,245,246,.16),rgba(245,245,246,.06));color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 0 1px rgba(245,245,246,.10);}
.menu-btn{display:none;position:relative;width:44px;height:44px;flex:none;border:1px solid var(--line-2);border-radius:50%;background:rgba(245,245,246,.05);cursor:pointer;}
.menu-btn span{position:absolute;left:13px;right:13px;height:2px;border-radius:2px;background:var(--text);transition:transform var(--t-med) var(--ease-out),top var(--t-med) var(--ease-out);}
.menu-btn span:nth-child(1){top:17px;}
.menu-btn span:nth-child(2){top:24px;}
.menu-btn[aria-expanded="true"] span:nth-child(1){top:20.5px;transform:rotate(45deg);}
.menu-btn[aria-expanded="true"] span:nth-child(2){top:20.5px;transform:rotate(-45deg);}
.menu{margin-top:8px;padding:10px;border-radius:24px;background:rgba(14,14,16,.95);-webkit-backdrop-filter:blur(26px) saturate(185%);backdrop-filter:blur(26px) saturate(185%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--sh-3),0 0 0 1px var(--line);animation:menuIn 280ms var(--ease-out);}
.menu[hidden]{display:none;}
.menu > a{display:flex;align-items:center;min-height:50px;padding:0 16px;border-radius:14px;color:var(--text);font-size:17px;font-weight:700;text-decoration:none;animation:menuItem 380ms var(--ease-out) backwards;}
.menu > a:nth-child(2){animation-delay:30ms}.menu > a:nth-child(3){animation-delay:60ms}.menu > a:nth-child(4){animation-delay:90ms}.menu > a:nth-child(5){animation-delay:120ms}
.menu > a:active{background:rgba(245,245,246,.08);}
.menu-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:12px 6px 4px;border-top:1px solid var(--line);}
@keyframes menuIn{from{opacity:0;transform:translateY(-8px) scale(.98);}}
@keyframes menuItem{from{opacity:0;transform:translateX(-8px);}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.top-in,.menu{background:var(--surface);}}
@media (prefers-reduced-transparency:reduce){.top-in,.menu{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;}}

/* ===== Portada ===== */
.hero{padding:72px 0 0;text-align:center;}
.intro{animation:fadeUp 900ms var(--ease-out) backwards;animation-delay:calc(var(--d,0) * 90ms + 100ms);}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px);}}
.kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 13px;border-radius:var(--r-pill);
  background:rgba(245,245,246,.05);border:1px solid var(--line-2);color:var(--text);font-size:13px;font-weight:700;}
.kicker .dot{position:relative;width:8px;height:8px;border-radius:50%;background:#fff;}
.kicker .dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid rgba(255,255,255,.6);animation:ping 2.2s var(--ease-out) infinite;}
@keyframes ping{from{transform:scale(.5);opacity:1;}to{transform:scale(1.9);opacity:0;}}
.hero-title{margin:24px auto 0;max-width:15ch;font-size:clamp(42px,7.4vw,84px);font-weight:800;letter-spacing:-.048em;line-height:1.0;}
.hero-title .w{display:inline-block;background:linear-gradient(180deg,#fff 30%,#b9b9c0);-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:wordIn 1000ms var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 60ms + 160ms);padding-bottom:.06em;}
@keyframes wordIn{from{opacity:0;transform:translateY(.45em) rotate(2deg);}}
.no-js .hero-title,.hero-title:not(.split){background:linear-gradient(180deg,#fff 30%,#b9b9c0);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero-title.split{background:none;color:inherit;}
.hero .lead{margin:24px auto 0;max-width:600px;color:var(--text-dim);font-size:clamp(16px,2.1vw,19px);}
.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:32px;}
.hero-note{margin-top:16px;color:var(--text-faint);font-size:13px;line-height:2;}
.hero-note a{color:var(--text);font-weight:700;}

.stage{position:relative;margin:64px auto 0;max-width:1120px;perspective:1800px;}
.stage-glow{position:absolute;left:10%;right:10%;top:12%;height:70%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.14),rgba(255,255,255,0));pointer-events:none;}
.hero-shot{transform-origin:50% 0;transform:rotateX(var(--rx,16deg)) scale(var(--sc,.94));transition:transform 120ms linear;will-change:transform;
  animation:shotIn 1400ms var(--ease-out) 450ms backwards;}
@keyframes shotIn{from{opacity:0;transform:rotateX(28deg) scale(.88) translateY(40px);}}

/* Ventana de navegador */
.browser{position:relative;border-radius:16px;overflow:hidden;background:#0b0b0d;box-shadow:0 0 0 1px var(--line-2),var(--sh-3),0 40px 120px -40px rgba(255,255,255,.12);}
.browser-bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;background:linear-gradient(180deg,#18181c,#121215);border-bottom:1px solid var(--line);}
.browser-bar i{width:10px;height:10px;border-radius:50%;background:#2e2e35;}
.browser-bar span{flex:1;max-width:280px;margin:0 auto;padding:4px 12px;border-radius:var(--r-pill);background:rgba(255,255,255,.05);color:var(--text-faint);font-size:11.5px;text-align:center;transform:translateX(-15px);}
.browser img{width:100%;}
.browser picture{display:block;}

/* Tarjetas flotantes de la portada */
.chip-float{position:absolute;z-index:3;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:18px;text-align:left;
  background:rgba(17,17,20,.78);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 0 1px var(--line-2),var(--sh-3);
  transform:translate3d(calc(var(--mx,0) * var(--dp,0) * 1px),calc(var(--my,0) * var(--dp,0) * 1px),0);
  animation:chipIn 900ms var(--ease-spring) backwards;}
@media (hover:hover) and (pointer:fine){.chip-float{animation:chipIn 900ms var(--ease-spring) backwards,bob 6s ease-in-out infinite;}}
.chip-float.c1{left:-26px;top:30%;--dp:18;animation-delay:1100ms,0s;}
.chip-float.c2{right:-30px;top:12%;width:260px;--dp:-14;animation-delay:1250ms,-2s;}
.chip-float.c3{right:6%;bottom:-22px;flex-direction:row;align-items:center;gap:12px;--dp:10;animation-delay:1400ms,-4s;}
@keyframes chipIn{from{opacity:0;scale:.85;}}
@keyframes bob{50%{translate:0 -8px;}}
.cf-k{display:flex;align-items:center;gap:7px;color:var(--text-dim);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.cf-v{font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.1;}
.cf-s{color:var(--text-dim);font-size:12.5px;font-weight:600;}
.cf-big{color:var(--text);font-size:14px;font-weight:700;line-height:1.35;}
.cf-bar{position:relative;height:6px;margin-top:6px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden;}
.cf-bar i{position:absolute;left:0;top:0;bottom:0;width:62%;border-radius:6px;background:linear-gradient(90deg,#16a34a,#22c55e);animation:barGrow 1600ms var(--ease-out) 1500ms backwards;}
@keyframes barGrow{from{width:0;}}
.shield{display:inline-block;width:14px;height:14px;flex:none;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3C/svg%3E") center/contain no-repeat;}
.chip-float.gold{background:linear-gradient(180deg,rgba(32,27,16,.85),rgba(16,14,10,.88));box-shadow:inset 0 1px 0 rgba(255,241,201,.18),0 0 0 1px rgba(231,195,106,.45),0 0 34px -6px rgba(231,195,106,.35),var(--sh-3);}
.chip-float.gold b{color:var(--gold);font-size:16px;}
.chip-float.gold .cf-s{display:block;}
.cf-star{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(231,195,106,.14);color:var(--gold);font-size:18px;box-shadow:inset 0 0 0 1px rgba(231,195,106,.35);}

/* ===== Cinta de empresas ===== */
.firms{padding:96px 0 0;text-align:center;}
.firms-t{color:var(--text-faint);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:0 var(--gutter);}
.marquee{display:flex;overflow:hidden;margin-top:24px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);}
.marquee-track{display:flex;flex:none;gap:56px;margin:0;padding:0 28px;list-style:none;animation:marquee 38s linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee-track li{color:var(--text-dim);font-size:clamp(17px,2.1vw,22px);font-weight:700;letter-spacing:-.02em;white-space:nowrap;transition:color var(--t-fast);}
.marquee-track li:hover{color:var(--text);}
@keyframes marquee{to{transform:translateX(-100%);}}

/* ===== Secciones ===== */
.sec{padding:128px 0 0;}
.sec-head{max-width:740px;}
.sec-head.center{margin:0 auto;text-align:center;}
.eyebrow{display:block;color:var(--text-faint);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.sec h2{margin-top:12px;font-size:clamp(32px,4.6vw,52px);font-weight:800;letter-spacing:-.038em;}
.sec-head p{margin-top:16px;color:var(--text-dim);font-size:clamp(16px,1.8vw,18px);}
.card{position:relative;border-radius:var(--r-lg);padding:24px;background:linear-gradient(180deg,#111114,#0b0b0d);border:1px solid var(--line);box-shadow:var(--inset-hi),var(--sh-1);}
/* Brillo que sigue al ratón */
.spot{isolation:isolate;}
.spot::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;opacity:0;transition:opacity 300ms;pointer-events:none;
  background:radial-gradient(420px circle at var(--sx,50%) var(--sy,50%),rgba(255,255,255,.08),transparent 45%);}
.spot:hover::before{opacity:1;}

/* Aparición al hacer scroll */
.reveal{opacity:0;transform:translateY(26px);transition:opacity 900ms var(--ease-out),transform 900ms var(--ease-out);transition-delay:calc(var(--d,0) * 90ms);}
.reveal.in{opacity:1;transform:none;}
.no-js .reveal{opacity:1;transform:none;}

/* ===== El problema ===== */
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px;}
.pain{padding:28px;}
.pain-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:rgba(245,245,246,.06);box-shadow:inset 0 0 0 1px var(--line-2);}
.pain-ic svg{width:22px;height:22px;fill:none;stroke:var(--text);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.pain-ic.red{background:rgba(239,68,68,.1);box-shadow:inset 0 0 0 1px rgba(239,68,68,.3);}
.pain-ic.red svg{stroke:var(--red);}
.pain h3{margin-top:20px;font-size:19px;font-weight:800;}
.pain p{margin-top:10px;color:var(--text-dim);font-size:15px;}
.pain-answer{margin:44px auto 0;max-width:760px;text-align:center;font-size:clamp(18px,2.2vw,23px);font-weight:700;letter-spacing:-.02em;text-wrap:balance;}
.pain-answer img{display:inline-block;width:18px;height:18px;margin:0 10px 0 0;vertical-align:-2px;}

/* ===== Simulador ===== */
.sim{max-width:860px;margin:52px auto 0;padding:32px;background:radial-gradient(90% 60% at 50% 0%,rgba(255,255,255,.06),rgba(255,255,255,0) 70%),linear-gradient(180deg,#131316,#0b0b0d);border-color:var(--line-2);}
.sim-controls{display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:space-between;}
.ctl{display:flex;flex-direction:column;gap:8px;}
.ctl-l{color:var(--text-faint);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.ctl-l b{color:var(--text);font-size:15px;letter-spacing:0;text-transform:none;margin-left:6px;}
.seg{position:relative;display:inline-flex;padding:4px;border-radius:var(--r-pill);background:rgba(245,245,246,.06);border:1px solid var(--line);}
.seg button{position:relative;z-index:1;min-width:58px;min-height:40px;padding:0 14px;border:0;background:transparent;color:var(--text-dim);font:800 13px/1 var(--font);letter-spacing:.04em;border-radius:var(--r-pill);cursor:pointer;transition:color var(--t-med);}
.seg button[aria-checked="true"]{color:var(--text);}
.seg-pill{position:absolute;z-index:0;top:4px;bottom:4px;left:0;width:var(--w,0);transform:translateX(var(--x,0));border-radius:var(--r-pill);
  background:linear-gradient(180deg,rgba(245,245,246,.18),rgba(245,245,246,.07));box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 0 0 1px rgba(245,245,246,.12);
  transition:transform 420ms var(--ease-spring),width 320ms var(--ease-out);}
.sim-read{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;}
.sim-read div{padding:14px 16px;border-radius:var(--r-md);background:rgba(255,255,255,.03);border:1px solid var(--line);}
.sim-read span{display:block;color:var(--text-faint);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.sim-read b{display:block;margin-top:4px;font-size:clamp(18px,2.6vw,26px);font-weight:800;letter-spacing:-.03em;}
.sim-bar{margin-top:30px;padding:10px 0;}
.sb-track{position:relative;height:12px;border-radius:12px;background:rgba(255,255,255,.07);}
.sb-danger{position:absolute;left:0;top:0;bottom:0;width:var(--floor,30%);border-radius:12px 0 0 12px;
  background:repeating-linear-gradient(135deg,rgba(239,68,68,.55) 0 4px,rgba(239,68,68,.15) 4px 8px);transition:width 380ms var(--ease-out);}
.sb-fill{position:absolute;top:0;bottom:0;left:var(--from,30%);width:var(--len,0%);border-radius:12px;background:linear-gradient(90deg,#16a34a,#22c55e);transition:left 380ms var(--ease-out),width 380ms var(--ease-out),background 300ms;}
.sim.loss .sb-fill{background:linear-gradient(90deg,#ef4444,#b91c1c);}
.sb-floor,.sb-start{position:absolute;top:-6px;bottom:-6px;width:3px;border-radius:3px;transform:translateX(-50%);transition:left 380ms var(--ease-out);}
.sb-floor{left:var(--floor,30%);background:var(--red);box-shadow:0 0 12px rgba(239,68,68,.6);}
.sb-start{left:var(--start,40%);background:rgba(255,255,255,.5);}
.sb-flag{position:absolute;top:-14px;left:var(--target,90%);width:14px;height:24px;transform:translateX(-1px);transition:left 380ms var(--ease-out);
  background:linear-gradient(#fff,#fff) 0 0/2px 100% no-repeat,linear-gradient(#fff,#fff) 2px 0/10px 9px no-repeat;}
.sb-knob{position:absolute;top:50%;left:var(--bal,50%);width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 5px rgba(255,255,255,.14),0 4px 14px rgba(0,0,0,.6);transition:left 380ms var(--ease-out);}
.sim-slider{display:block;margin-top:26px;}
.sim-slider input{display:block;width:100%;height:44px;margin:8px 0 0;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer;}
.sim-slider input::-webkit-slider-runnable-track{height:6px;border-radius:6px;background:rgba(255,255,255,.12);}
.sim-slider input::-moz-range-track{height:6px;border-radius:6px;background:rgba(255,255,255,.12);}
.sim-slider input::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;border-radius:50%;background:var(--grad-accent);border:0;box-shadow:0 0 0 6px rgba(255,255,255,.12),0 6px 16px rgba(0,0,0,.6);}
.sim-slider input::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 6px rgba(255,255,255,.12);}
.sim-msg{display:flex;align-items:center;gap:10px;margin-top:20px;padding:14px 18px;border-radius:var(--r-md);background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.28);color:var(--text);font-weight:700;transition:background 300ms,border-color 300ms;}
.sim-msg .shield{color:var(--green);}
.sim-msg b{color:var(--green);}
.sim.loss .sim-msg{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.32);}
.sim.loss .sim-msg .shield,.sim.loss .sim-msg b{color:var(--red);}
.sim.win .sim-msg{background:rgba(231,195,106,.09);border-color:rgba(231,195,106,.38);}
.sim.win .sim-msg .shield,.sim.win .sim-msg b{color:var(--gold);}
.sim-note{margin-top:14px;color:var(--text-faint);font-size:13px;line-height:1.55;}
.bump{animation:bump 360ms var(--ease-spring);}
@keyframes bump{40%{transform:scale(1.06);}}

/* ===== Funciones: historia con scroll ===== */
.story{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;margin-top:40px;}
.step{display:flex;flex-direction:column;justify-content:center;min-height:78vh;padding:40px 0;}
.step h3,.step .ticks li{transition:color 500ms var(--ease-out);}
.story .step:not(.is-on) h3,.story .step:not(.is-on) .ticks li{color:var(--text-faint);}
.story .step:not(.is-on) .ticks li::before{opacity:.5;}
.step-k{color:var(--text-faint);font-size:14px;font-weight:800;}
.step .eyebrow{margin-top:14px;}
.step h3{margin-top:10px;font-size:clamp(26px,3.2vw,36px);font-weight:800;letter-spacing:-.032em;}
.step .desc{margin-top:14px;color:var(--text-dim);font-size:16.5px;}
.step-media{display:none;margin-top:28px;}
.story-sticky{position:sticky;top:calc(50vh - 210px);}
.story-frames{position:relative;height:340px;background:#09090b;transition:height 600ms var(--ease-out);}
.story-frames .frame{position:absolute;left:0;top:0;width:100%;height:auto;opacity:0;transform:scale(1.04) translateY(10px);filter:blur(4px);
  transition:opacity 600ms var(--ease-out),transform 700ms var(--ease-out),filter 600ms var(--ease-out);}
.story-frames .frame.is-on{opacity:1;transform:none;filter:none;}
.story-dots{display:flex;justify-content:center;gap:8px;margin-top:18px;}
.story-dots i{width:8px;height:8px;border-radius:8px;background:rgba(255,255,255,.2);transition:width 400ms var(--ease-out),background 300ms;}
.story-dots i.is-on{width:28px;background:#fff;}
.ticks{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:12px;}
.ticks li{position:relative;padding-left:30px;font-size:15px;}
.ticks li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;
  background:rgba(245,245,246,.08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;
  box-shadow:inset 0 0 0 1px var(--line-2);}

/* ===== Números ===== */
.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(150px,auto);gap:14px;margin-top:52px;}
.stat{display:flex;flex-direction:column;padding:22px;overflow:hidden;}
.stat-main{grid-column:span 2;grid-row:span 2;padding:28px;}
.stat-k{color:var(--text-faint);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.stat-v{margin-top:10px;font-size:clamp(28px,3.4vw,38px);font-weight:800;letter-spacing:-.04em;line-height:1;}
.stat-main .stat-v{font-size:clamp(46px,6vw,72px);}
.stat-d{margin-top:auto;padding-top:12px;color:var(--text-dim);font-size:13.5px;line-height:1.45;}
.stat-main .stat-d{margin-top:12px;font-size:15px;}
.spark{margin-top:auto;width:100%;height:140px;}
.spark-line{stroke-dasharray:1;stroke-dashoffset:1;}
.spark-area{opacity:0;}
.in .spark-line{animation:draw 2200ms var(--ease-out) 300ms forwards;}
.in .spark-area{animation:fadeIn 1200ms ease 1400ms forwards;}
@keyframes draw{to{stroke-dashoffset:0;}}
@keyframes fadeIn{to{opacity:1;}}
.stats-note{max-width:680px;margin:28px auto 0;text-align:center;color:var(--text-dim);font-size:15px;}

/* ===== Mosaico ===== */
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:52px;}
.tile{display:flex;flex-direction:column;padding:24px;overflow:hidden;transition:transform 400ms var(--ease-out),border-color 300ms;}
.tile:hover{transform:translateY(-3px);border-color:var(--line-2);}
.t-wide{grid-column:span 2;}
.t-full{grid-column:1/-1;flex-direction:row;align-items:center;gap:18px;}
.t-full h3{margin-top:0;}
.t-full p{margin-top:4px;}
.tile .ic{display:grid;place-items:center;width:42px;height:42px;border-radius:var(--r-sm);background:rgba(245,245,246,.06);box-shadow:inset 0 0 0 1px var(--line-2);}
.tile .ic svg{width:20px;height:20px;fill:none;stroke:var(--text);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.tile h3{margin-top:18px;font-size:17px;font-weight:800;}
.tile p{margin-top:8px;color:var(--text-dim);font-size:14.5px;}
.tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--r-pill);vertical-align:2px;background:rgba(245,245,246,.08);color:var(--text-dim);font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.brokers,.sessions,.fan{display:flex;flex-wrap:wrap;gap:8px;margin:auto 0 0;padding:20px 0 0;list-style:none;}
.brokers li,.sessions span,.fan span{padding:7px 12px;border-radius:var(--r-pill);background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text-dim);font-size:12.5px;font-weight:700;}
.in .brokers li{animation:popIn 600ms var(--ease-spring) backwards;}
.in .brokers li:nth-child(2){animation-delay:80ms}.in .brokers li:nth-child(3){animation-delay:160ms}.in .brokers li:nth-child(4){animation-delay:240ms}.in .brokers li:nth-child(5){animation-delay:320ms}
@keyframes popIn{from{opacity:0;transform:translateY(10px) scale(.9);}}
.sessions span.on{color:var(--text);background:rgba(255,255,255,.12);border-color:var(--line-3);}
.fan{position:relative;height:74px;}
.fan span{position:absolute;left:0;bottom:0;transition:transform 500ms var(--ease-spring);}
.fan span:nth-child(1){transform:translateX(0);}
.fan span:nth-child(2){transform:translateX(0);}
.fan span:nth-child(3){transform:translateX(0);}
.in .fan span:nth-child(2),.tile:hover .fan span:nth-child(2){transform:translateX(78px);}
.in .fan span:nth-child(3),.tile:hover .fan span:nth-child(3){transform:translateX(150px);}
.fan span:nth-child(2){transition-delay:300ms}.fan span:nth-child(3){transition-delay:420ms}
.todo{margin:auto 0 0;padding:18px 0 0;list-style:none;display:grid;gap:8px;}
.todo li{position:relative;padding-left:28px;color:var(--text-dim);font-size:13.5px;font-weight:600;}
.todo li::before{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:6px;border:1.5px solid var(--line-3);transition:background 300ms,border-color 300ms;}
.todo li::after{content:"";position:absolute;left:6px;top:3px;width:5px;height:9px;border:solid var(--on-accent);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform 300ms var(--ease-spring);}
.in .todo li::before{background:#fff;border-color:#fff;}
.in .todo li::after{transform:rotate(45deg) scale(1);}
.todo li:nth-child(1)::before,.todo li:nth-child(1)::after{transition-delay:400ms}
.todo li:nth-child(2)::before,.todo li:nth-child(2)::after{transition-delay:800ms}
.todo li:nth-child(3)::before,.todo li:nth-child(3)::after{transition-delay:1200ms}

/* ===== Móvil ===== */
.mobile{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.mobile .desc{margin-top:14px;color:var(--text-dim);}
.mobile h2{margin-top:12px;}
.phones{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:560px;}
.phone{position:relative;width:min(250px,46%);padding:8px;border-radius:42px;background:#0c0c0e;
  box-shadow:inset 0 0 0 1.5px #2e2e35,0 0 0 1px rgba(255,255,255,.06),var(--sh-3),0 30px 100px -30px rgba(255,255,255,.14);
  transition:transform 120ms linear;}
.phone img{border-radius:34px;width:100%;}
.phone.back{transform:translate3d(16%,calc(-40px + var(--py,0px)),0);opacity:.9;}
.phone.front{transform:translate3d(-12%,var(--py,0px),0);z-index:2;}

/* ===== Pasos ===== */
.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:56px 0 0;padding:0;list-style:none;}
.steps::before{content:"";position:absolute;left:16.6%;right:16.6%;top:26px;height:2px;background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,.15));transform-origin:0 50%;transform:scaleX(0);transition:transform 1400ms var(--ease-out) 300ms;}
.steps.in::before{transform:scaleX(1);}
.steps li{position:relative;text-align:center;padding:0 12px;}
.step-n{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;margin:0 auto;border-radius:50%;background:var(--grad-accent);color:var(--on-accent);font-weight:800;font-size:18px;
  box-shadow:0 0 0 8px #050506,0 10px 30px -8px rgba(255,255,255,.5);transform:scale(.6);opacity:0;transition:transform 600ms var(--ease-spring),opacity 400ms;}
.steps.in .step-n{transform:none;opacity:1;}
.steps li:nth-child(2) .step-n{transition-delay:500ms}.steps li:nth-child(3) .step-n{transition-delay:900ms}
.steps h3{margin-top:22px;font-size:19px;font-weight:800;}
.steps p{margin:8px auto 0;max-width:300px;color:var(--text-dim);font-size:15px;}

/* ===== Precios ===== */
.plans{display:grid;gap:14px;max-width:600px;margin:52px auto 0;}
.plan.main{position:relative;isolation:isolate;overflow:hidden;padding:1.5px;border-radius:var(--r-lg);background:rgba(255,255,255,.12);box-shadow:0 30px 90px -40px rgba(255,255,255,.35);}
.plan.main::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:150%;aspect-ratio:1;margin:-75% 0 0 -75%;
  background:conic-gradient(rgba(255,255,255,0),rgba(255,255,255,.9) 12%,rgba(255,255,255,0) 26%,rgba(255,255,255,0) 50%,rgba(255,255,255,.6) 62%,rgba(255,255,255,0) 76%);
  animation:spin 8s linear infinite;will-change:transform;}
@keyframes spin{to{transform:rotate(360deg);}}
.plan-in{position:relative;display:flex;flex-direction:column;height:100%;padding:30px;border-radius:calc(var(--r-lg) - 1.5px);
  background:radial-gradient(90% 60% at 50% 0%,rgba(255,255,255,.08),rgba(255,255,255,0) 70%),linear-gradient(180deg,#16161a,#0b0b0d);}
.plan-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.plan h3{font-size:19px;font-weight:800;}
.badge{padding:5px 11px;border-radius:var(--r-pill);background:rgba(245,245,246,.1);border:1px solid var(--line-2);color:var(--text);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;}
.badge.muted{background:rgba(245,245,246,.05);border-color:var(--line);color:var(--text-dim);}
.price{margin-top:18px;}
.price b{font-size:56px;font-weight:800;letter-spacing:-.045em;line-height:1;}
.plan .pdesc{margin-top:10px;color:var(--text-dim);font-size:15px;}
.plan ul{margin:22px 0 26px;padding:22px 0 0;border-top:1px solid var(--line);list-style:none;display:grid;gap:12px;font-size:15px;}
.plan li{position:relative;padding-left:28px;}
.plan li::before{content:"";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;
  background:rgba(245,245,246,.1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat;}
.plan-in .btn{margin-top:auto;}
.soon-plan{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:var(--r-lg);border:1px dashed var(--line-2);background:linear-gradient(180deg,#0e0e10,#09090a);}
.soon-plan h3{flex:1;color:var(--text-dim);}
.lock{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:12px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line-2);}
.lock svg{width:18px;height:18px;fill:none;stroke:var(--text-faint);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}

/* ===== Comunidad: ligas ===== */
.ladder{position:relative;max-width:980px;margin:60px auto 0;padding-top:4px;}
.ladder-bar{position:absolute;left:8%;right:8%;top:30px;height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;}
.ladder-bar span{display:block;height:100%;transform-origin:0 50%;transform:scaleX(0);
  background:linear-gradient(90deg,#d08a4e,#c3cddd,#f5c451,#ece9e4,#8cc8ff,#ff8fe0);transition:transform 2400ms var(--ease-out) 300ms;}
.ladder.in .ladder-bar span{transform:scaleX(1);}
.ladder-list{position:relative;display:grid;grid-template-columns:repeat(6,1fr);margin:0;padding:0;list-style:none;}
.lg{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;}
.lg b{font-size:14.5px;font-weight:800;color:var(--text-dim);transition:color 400ms;}
.gem{width:40px;height:40px;border-radius:12px;transform:rotate(45deg) scale(0);background:currentColor;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 0 0 6px #050506,0 0 26px -2px currentColor;transition:transform 700ms var(--ease-spring);}
.ladder.in .gem{transform:rotate(45deg) scale(.86);}
.ladder.in .lg b{color:var(--text);}
.lg:nth-child(2) .gem{transition-delay:350ms}.lg:nth-child(3) .gem{transition-delay:700ms}.lg:nth-child(4) .gem{transition-delay:1050ms}
.lg:nth-child(5) .gem{transition-delay:1400ms}.lg:nth-child(6) .gem{transition-delay:1750ms}
.l1{color:#d08a4e}.l2{color:#c3cddd}.l3{color:#f5c451}.l4{color:#ece9e4}.l5{color:#8cc8ff}.l6{color:#ff8fe0}
.l6 .gem{background:linear-gradient(135deg,#ff8fe0,#7cf3c4,#8cc8ff,#ff8fe0);background-size:300% 300%;animation:holo 6s linear infinite;}
@keyframes holo{to{background-position:300% 0;}}
.c-points{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:56px;}
.cp{padding:22px;border-radius:var(--r-lg);background:rgba(255,255,255,.025);border:1px solid var(--line);}
.cp b{display:block;font-size:30px;font-weight:800;letter-spacing:-.04em;}
.cp span{display:block;margin-top:8px;color:var(--text-dim);font-size:14px;line-height:1.45;}

/* ===== FAQ ===== */
.faq{max-width:780px;margin:48px auto 0;display:grid;gap:10px;}
.faq details{border-radius:var(--r-md);background:linear-gradient(180deg,#111114,#0b0b0d);border:1px solid var(--line);box-shadow:var(--inset-hi);transition:border-color 300ms;}
.faq details[open]{border-color:var(--line-2);}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:16px 22px;cursor:pointer;list-style:none;font-weight:700;font-size:16px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"";flex:none;width:22px;height:22px;border-radius:50%;
  background:rgba(255,255,255,.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f6' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/12px no-repeat;
  transition:transform 400ms var(--ease-spring);}
.faq details[open] summary::after{transform:rotate(135deg);}
.faq-a{overflow:hidden;}
.faq-a p{padding:0 22px 20px;color:var(--text-dim);}

/* ===== Invitación ===== */
.final{position:relative;overflow:hidden;margin-top:128px;padding:68px 28px;text-align:center;border-radius:var(--r-xl);
  background:radial-gradient(80% 120% at 50% 0%,rgba(255,255,255,.09),rgba(255,255,255,0) 60%),linear-gradient(180deg,#111114,#08080a);
  border:1px solid var(--line);box-shadow:var(--inset-hi),var(--sh-3);}
.final-glow{position:absolute;left:var(--gx,50%);top:var(--gy,30%);width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,255,255,.1),transparent);transition:left 600ms var(--ease-out),top 600ms var(--ease-out);}
.final > *{position:relative;}
.final img.star{width:44px;height:auto;margin:0 auto 22px;animation:twinkle 5s ease-in-out infinite;}
@keyframes twinkle{50%{transform:rotate(18deg) scale(1.08);filter:drop-shadow(0 0 14px rgba(255,255,255,.5));}}
.final h2{font-size:clamp(32px,4.8vw,54px);font-weight:800;letter-spacing:-.04em;}
.final > p{margin:14px auto 0;max-width:520px;color:var(--text-dim);}
.inv-form{display:grid;gap:14px;max-width:460px;margin:32px auto 0;text-align:left;}
.field label{display:block;margin-bottom:7px;font-size:13px;font-weight:700;}
.field .opt{color:var(--text-faint);font-weight:600;}
.field input{width:100%;height:52px;padding:0 16px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:#1b1b20;color:var(--text);font:500 16px var(--font);
  transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast);}
.field input::placeholder{color:#8b8b93;}
.field input:focus{outline:none;border-color:rgba(245,245,246,.7);box-shadow:0 0 0 4px rgba(245,245,246,.18);background:#1f1f25;}
.field input[aria-invalid="true"]{border-color:rgba(239,68,68,.7);animation:shake 360ms;}
@keyframes shake{25%{transform:translateX(-6px);}75%{transform:translateX(6px);}}
.inv-form .btn{width:100%;margin-top:4px;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-msg{min-height:1.5em;font-size:14px;text-align:center;color:var(--text-dim);}
.form-msg.ok{color:var(--green);font-weight:700;}
.form-msg.err{color:var(--red);}
.form-note{color:var(--text-faint);font-size:12.5px;text-align:center;}
.check{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--text-dim);}
.check input{flex:none;width:22px;height:22px;margin:0;accent-color:#f5f5f6;cursor:pointer;}
.check label{padding-top:1px;cursor:pointer;}
.check a,.legal-links a,.cookie a{color:var(--text);font-weight:700;}
.check input[aria-invalid="true"]{outline:2px solid var(--red);outline-offset:2px;}
.inv-done{max-width:460px;margin:32px auto 0;padding:28px;border-radius:var(--r-lg);background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.3);animation:chipIn 600ms var(--ease-spring);}
.inv-done[hidden]{display:none;}
.done-ic{display:grid;place-items:center;width:56px;height:56px;margin:0 auto;border-radius:50%;background:var(--green);}
.done-ic svg{width:28px;height:28px;fill:none;stroke:#04130a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;animation:drawCheck 600ms var(--ease-out) 250ms forwards;}
@keyframes drawCheck{to{stroke-dashoffset:0;}}
.done-t{margin-top:14px;font-size:22px;font-weight:800;}
.done-d{margin-top:6px;color:var(--text-dim);}
.inv-login{margin-top:22px;color:var(--text-dim);font-size:14px;}
.inv-login a{color:var(--text);font-weight:700;}

/* ===== Pie ===== */
.foot{margin-top:96px;padding:40px 0 calc(40px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--text-faint);font-size:13.5px;}
.foot-in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;}
.foot .logo img{height:20px;}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 20px;}
.foot nav a{color:var(--text-dim);text-decoration:none;padding:4px 0;}
.foot nav a:hover{color:var(--text);}
.disclaimer{margin-top:28px;max-width:860px;line-height:1.6;}
.copy{margin-top:14px;}
.legal-links{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:18px;}
.legal-links a{font-weight:600;color:var(--text-dim);text-decoration:none;padding:6px 0;}
.legal-links a:hover,.linklike:hover{color:var(--text);}
.linklike{border:0;background:none;padding:6px 0;color:var(--text-dim);font:600 13.5px var(--font);cursor:pointer;}

/* ===== Banner de cookies ===== */
.cookie{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;max-width:440px;margin-left:auto;padding:18px;border-radius:20px;
  background:rgba(14,14,16,.96);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--sh-3),0 0 0 1px var(--line-2);
  animation:menuIn 360ms var(--ease-out);}
.cookie[hidden]{display:none;}
.cookie-t{font-weight:800;font-size:15px;}
.cookie-d{margin-top:6px;color:var(--text-dim);font-size:14px;line-height:1.5;}
.cookie-b{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;}
.cookie-b .btn{width:100%;}

/* ===== Páginas legales ===== */
.doc{max-width:760px;margin:0 auto;padding:56px 0 0;}
.doc h1{font-size:clamp(32px,5vw,46px);font-weight:800;letter-spacing:-.035em;}
.doc .updated{margin-top:10px;color:var(--text-faint);font-size:14px;}
.doc h2{margin:40px 0 0;font-size:21px;font-weight:800;letter-spacing:-.02em;}
.doc h3{margin:22px 0 0;font-size:16px;font-weight:800;}
.doc p,.doc li{color:var(--text-dim);font-size:15.5px;}
.doc p{margin-top:12px;}
.doc ul{margin:12px 0 0;padding-left:20px;display:grid;gap:6px;}
.doc a{color:var(--text);}
.doc strong{color:var(--text);}
.doc table{width:100%;margin-top:14px;border-collapse:collapse;font-size:14px;}
.doc th,.doc td{padding:10px 12px;border:1px solid var(--line-2);text-align:left;vertical-align:top;color:var(--text-dim);}
.doc th{color:var(--text);background:rgba(255,255,255,.04);}
.doc .table-wrap{overflow-x:auto;}
.doc .fill{padding:1px 6px;border-radius:6px;background:rgba(245,165,36,.16);color:#f5a524;font-weight:700;}
.doc-back{display:inline-flex;margin-top:28px;}
.doc-note:empty{display:none;}
.doc-note{padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--line);}
.top-simple .top-in{padding-right:10px;}

/* ===== Página 404 ===== */
.nf-wrap{display:flex;justify-content:center;padding:70px 0 0;}
.nf{width:100%;max-width:460px;text-align:center;padding:40px 28px 32px;border-radius:28px;background:var(--glass-bg);
  -webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--sh-3),0 0 0 1px var(--line);}
.nf-code{font-size:72px;font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(180deg,#fff,#a8a8b0);-webkit-background-clip:text;background-clip:text;color:transparent;}
.nf h1{margin:12px 0 8px;font-size:22px;font-weight:800;}
.nf p{color:var(--text-dim);font-size:15px;}
.nf .cta-row{margin-top:24px;}
.nf-links{margin-top:22px;font-size:14px;line-height:2.2;}
.nf-links a{color:var(--text);font-weight:600;}

/* ===== Responsive ===== */
@media (max-width:1100px){
  .chip-float.c1{left:-8px;} .chip-float.c2{right:-8px;}
}
@media (max-width:1040px){
  .nav,.lang-top,.hide-sm{display:none;}
  .menu-btn{display:block;}
}
@media (max-width:980px){
  .pains{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto;}
  .story{grid-template-columns:1fr;gap:0;}
  .story-media{display:none;}
  .step{min-height:0;padding:28px 0;}
  .story .step:not(.is-on) h3,.story .step:not(.is-on) .ticks li{color:inherit;}
  .story .step:not(.is-on) .ticks li::before{opacity:1;}
  .step + .step{border-top:1px solid var(--line);}
  .step-media{display:block;}
  .stats{grid-template-columns:1fr 1fr;}
  .bento{grid-template-columns:1fr 1fr;}
  .mobile{grid-template-columns:1fr;gap:28px;}
  .phones{min-height:0;padding-top:30px;}
  .c-points{grid-template-columns:1fr 1fr;}
  .chip-float.c1{top:auto;bottom:18%;}
}
@media (max-width:640px){
  .top{padding:10px 0;}
  .top-in{height:56px;padding:0 6px 0 16px;gap:8px;background:rgba(12,12,14,.95);}
  .top.scrolled .top-in{height:52px;background:rgba(12,12,14,.97);}
  .logo img{height:19px;}
  .top-actions .btn{min-height:42px;padding:0 15px;font-size:13px;}
  .hero{padding-top:44px;}
  .cta-row .btn{flex:1 1 100%;}
  .stage{margin-top:44px;perspective:none;}
  .hero-shot{transform:none;animation-name:fadeUp;}
  .browser{border-radius:12px;}
  .browser-bar{height:24px;padding:0 10px;gap:5px;}
  .browser-bar i{width:7px;height:7px;}
  .browser-bar span{font-size:9.5px;padding:2px 8px;}
  .chip-float{padding:10px 12px;border-radius:14px;}
  .chip-float.c1{left:-4px;bottom:auto;top:-26px;}
  .chip-float.c2{display:none;}
  .chip-float.c3{right:-4px;bottom:-26px;}
  .cf-v{font-size:19px;}
  .cf-star{width:30px;height:30px;font-size:15px;border-radius:9px;}
  .firms{padding-top:88px;}
  .sec{padding-top:96px;}
  .sim{padding:20px 16px;}
  .sim-controls{flex-direction:column;}
  .seg{display:flex;}
  .seg button{flex:1;min-width:0;padding:0 8px;}
  .sim-read{gap:8px;}
  .sim-read div{padding:10px;}
  .sim-read span{font-size:10.5px;}
  .stats{gap:10px;grid-auto-rows:auto;}
  .stat{padding:16px;}
  .stat-main{grid-column:span 2;grid-row:auto;padding:20px;}
  .stat-v{font-size:26px;}
  .stat-d{font-size:12.5px;}
  .spark{height:90px;margin-top:16px;}
  .bento{grid-template-columns:1fr;gap:10px;}
  .t-wide{grid-column:auto;}
  .tile{display:grid;grid-template-columns:38px 1fr;column-gap:14px;padding:18px;}
  .tile .ic{width:38px;height:38px;grid-row:span 2;}
  .tile h3{margin-top:0;align-self:center;font-size:16px;}
  .tile p{margin-top:4px;font-size:14px;}
  .tile > ul,.tile > div:not(.ic){grid-column:1/-1;}
  .t-full{display:grid;}
  .tile.t-full > div{grid-column:2;grid-row:span 2;}
  .phone{border-radius:32px;padding:6px;}
  .phone img{border-radius:27px;}
  .steps{grid-template-columns:1fr;gap:26px;}
  .steps::before{left:26px;right:auto;top:30px;bottom:110px;width:2px;height:auto;transform:scaleY(0);transform-origin:50% 0;}
  .steps.in::before{transform:scaleY(1);}
  .steps li{display:grid;grid-template-columns:54px 1fr;column-gap:16px;text-align:left;padding:0;}
  .step-n{grid-row:span 2;margin:0;}
  .steps h3{margin-top:4px;}
  .steps p{margin:4px 0 0;max-width:none;}
  .plan-in{padding:24px 20px;}
  .ladder-bar{left:12%;right:12%;top:22px;}
  .gem{width:28px;height:28px;border-radius:8px;}
  .lg b{font-size:11.5px;}
  .lg{gap:10px;}
  .c-points{gap:10px;}
  .cp{padding:16px;}
  .cp b{font-size:24px;}
  .cp span{font-size:13px;}
  .final{margin-top:96px;padding:44px 18px;}
  .cookie{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));padding:16px;}
  .doc{padding-top:32px;}
  .doc table{font-size:13px;}
  .doc table,.doc tbody,.doc tr,.doc td{display:block;width:100%;}
  .doc thead{display:none;}
  .doc tr{margin-top:12px;border:1px solid var(--line-2);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.02);}
  .doc td{border:0;border-top:1px solid var(--line);padding:10px 14px;}
  .doc td:first-child{border-top:0;color:var(--text);font-weight:700;background:rgba(255,255,255,.04);}
  .doc td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--text-faint);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
}
@media (max-width:400px){
  .top .logo-full{display:none;}
  .top .logo-star{display:block;height:22px;}
  .top-actions .btn{padding:0 13px;}
  .menu-foot{flex-wrap:wrap;}
  .menu-foot .btn{flex:1 1 100%;}
  .sim-read b{font-size:16px;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none!important;transition:none!important;}
  .reveal{opacity:1;transform:none;}
  .hero-shot{transform:none;}
  .marquee-track{flex-wrap:wrap;justify-content:center;}
  .marquee{-webkit-mask-image:none;mask-image:none;justify-content:center;}
  .marquee-track[aria-hidden="true"]{display:none;}
  .spark-line{stroke-dashoffset:0;} .spark-area{opacity:1;}
  .steps::before{transform:none;} .step-n{transform:none;opacity:1;}
  .gem{transform:rotate(45deg) scale(.86);} .ladder-bar span{transform:none;}
}
