/* ==========================================================================
   FIRMA AGENCY — sistema de diseño
   ========================================================================== */
:root{
  /* Neutros */
  --ink:#0B0E14;
  --ink-soft:#11151E;
  --paper:#FFFFFF;
  --paper-2:#F6F7F9;
  --line:#E6E8EE;
  --line-dark:rgba(255,255,255,.10);
  --line-strong:#D8DBE3;

  /* Azul de marca */
  --navy:#0A1230;
  --navy-2:#111C45;
  --blue:#3D63FF;
  --blue-soft:rgba(61,99,255,.10);
  --blue-glow:0 0 80px rgba(61,99,255,.28);

  /* Acento escaso: solo metricas y momentos de autoridad */
  --gold:#C9A227;
  --gold-hi:#E3C368;

  /* Texto */
  --t-hi:#0B0E14;
  --t-mid:rgba(11,14,20,.62);
  --t-low:rgba(11,14,20,.40);
  --t-inv:#FFFFFF;
  --t-inv-mid:rgba(255,255,255,.66);

  /* soporte */
  --radius:14px;
  --shadow-sm:0 1px 2px rgba(10,14,30,.05);
  --shadow-md:0 6px 20px -8px rgba(10,14,30,.12);
  --shadow-lg:0 20px 48px -16px rgba(10,14,30,.22);
  --ease:cubic-bezier(.16,1,.3,1);
  --sans:'Archivo',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --serif:'Archivo',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--paper);color:var(--t-hi);font-family:var(--sans);font-weight:400;font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;}
p{max-width:64ch;}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.wrap-narrow{max-width:760px;margin:0 auto;padding:0 24px;}
section{padding:112px 0;position:relative;}
@media(max-width:640px){section{padding:72px 0;}}
::selection{background:var(--blue);color:#fff;}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px;}

h1,h2{font-family:var(--serif);font-weight:800;color:var(--t-hi);}
h1{font-size:clamp(2.7rem,6.4vw,5.6rem);line-height:.98;letter-spacing:-.02em;}
h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.06;letter-spacing:-.015em;margin-bottom:16px;}
em,.accent{font-style:italic;font-family:var(--serif);font-weight:800;color:var(--blue);}
.on-dark em,.on-dark .accent{color:#8FA6FF;}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--t-mid);}
.on-dark .eyebrow{color:var(--t-inv-mid);}
.eyebrow .num{color:var(--blue);}
.on-dark .eyebrow .num{color:#8FA6FF;}
.tnum{font-variant-numeric:tabular-nums;}

/* ---------- reveal system ---------- */
[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .68s var(--ease),transform .68s var(--ease);}
[data-reveal].in{opacity:1;transform:none;}
[data-reveal].from-left{transform:translate(-30px,0);}
[data-reveal].from-left.in{transform:none;}
[data-reveal].from-right{transform:translate(30px,0);}
[data-reveal].from-right.in{transform:none;}
@media(prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1;transform:none;transition:none;}
}

/* ---------- scroll progress ---------- */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--blue);z-index:300;}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:150;height:88px;display:flex;align-items:center;transition:height .4s var(--ease),background-color .4s ease,backdrop-filter .4s ease,border-color .4s ease;}
.nav-bar{position:relative;width:100%;display:flex;align-items:center;justify-content:center;}
.nav-logo{display:inline-flex;text-decoration:none;line-height:1;}
.nav-logo .name{font-family:var(--sans);font-weight:800;font-size:22px;letter-spacing:-.3px;color:var(--navy-2);transition:color .3s ease;}
.nav-logo .name em{font-style:italic;font-weight:800;font-family:var(--sans);color:var(--blue);}
.nav-links{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:30px;opacity:0;pointer-events:none;transition:opacity .3s ease;font-size:13.5px;font-weight:500;}
.nav-links a:not(.btn){color:var(--t-inv-mid);text-decoration:none;position:relative;padding-bottom:3px;}
.nav-links a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:#fff;transition:right .3s var(--ease);}
.nav-links a:not(.btn):hover{color:#fff;}
.nav-links a:not(.btn):hover::after{right:0;}
.nav.is-scrolled{height:60px;background:rgba(11,14,20,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line-dark);}
.nav.is-scrolled .nav-bar{justify-content:flex-start;}
.nav.is-scrolled .nav-logo .name{color:#fff;}
.nav.is-scrolled .nav-links{opacity:1;pointer-events:auto;}
.btn-sm{padding:9px 18px;font-size:12.5px;}
@media(max-width:760px){.nav-links{display:none;}}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;font-size:14.5px;padding:16px 30px;border-radius:100px;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s ease;cursor:pointer;border:none;font-family:var(--sans);overflow:hidden;}
.btn-primary{background:var(--navy-2);color:#fff;}
.btn-primary:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(61,99,255,.45);}
.btn-primary::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);}
.btn-primary:hover::after,.btn-primary.shine-intro::after{animation:btnShine 1s ease;}
@keyframes btnShine{0%{left:-60%;}100%{left:130%;}}
.btn-ghost{background:none;color:var(--t-hi);border:1px solid var(--line-strong);}
.on-dark .btn-ghost{color:#fff;border-color:var(--line-dark);}
.btn-ghost .arrow{transition:transform .3s var(--ease);}
.btn-ghost:hover .arrow{transform:translateX(4px);}
.btn-ghost .u{position:relative;}
.btn-ghost .u::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:currentColor;transition:right .3s var(--ease);}
.btn-ghost:hover .u::after{right:0;}
@media(prefers-reduced-motion:reduce){
  .btn-primary:hover{transform:none;}
  .btn-primary:hover::after,.btn-primary.shine-intro::after{animation:none;}
}

/* ---------- header/hero ---------- */
.hero{min-height:92vh;display:flex;align-items:center;padding:150px 0 40px;text-align:center;position:relative;overflow:hidden;}
.hero-mesh{position:absolute;inset:-40px;background-image:radial-gradient(var(--t-low) 1px,transparent 1px);background-size:26px 26px;opacity:.05;pointer-events:none;will-change:transform;}
.hero-glow{position:absolute;top:-10%;left:50%;transform:translateX(-50%);width:900px;max-width:160vw;height:900px;background:radial-gradient(circle,var(--blue-soft),transparent 60%);pointer-events:none;}
.hero .wrap{position:relative;z-index:1;}
.hero-eyebrow{margin-bottom:22px;}
.gold-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0;}
h1{max-width:900px;margin:0 auto 22px;}
h1 .line{display:block;overflow:hidden;}
h1 .line span{display:block;transform:translateY(110%);opacity:0;transition:transform .6s var(--ease),opacity .6s var(--ease);}
h1 .line span.in{transform:none;opacity:1;}
@media(prefers-reduced-motion:reduce){h1 .line span{transform:none;opacity:1;}}
.hero-sub{font-size:17px;color:var(--t-mid);max-width:600px;margin:0 auto 34px;}
@media(max-width:640px){.hero-sub{font-size:15.5px;}}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:12px;}
.hero-trust{font-size:12.5px;color:var(--t-low);margin-top:6px;}

/* fuentes de leads */
.sources-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:36px;}
.sources-row .lbl{font-size:11.5px;font-weight:600;color:var(--t-low);letter-spacing:.04em;margin-right:4px;}
.source-pill{font-size:12px;font-weight:600;color:var(--t-mid);border:1px solid var(--line-strong);border-radius:100px;padding:6px 14px;opacity:.55;transition:opacity .3s ease,border-color .3s ease;}
.source-pill:hover{opacity:.9;border-color:var(--t-low);}

/* ---------- VSL / demo en directo ---------- */
.vsl-wrap{max-width:1080px;margin:48px auto 0;}
.step-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--navy-2);margin-bottom:14px;font-family:var(--sans);}
.step-tag .n{width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;}
.demo-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:radial-gradient(130% 100% at 20% 0%,rgba(61,99,255,.30),transparent 55%),var(--navy);border-radius:24px;overflow:hidden;}
@media(max-width:900px){.demo-grid{grid-template-columns:1fr;}}
.video-frame{position:relative;padding:48px 20px 36px;display:flex;flex-direction:column;align-items:center;}
.live-badge{position:relative;display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--t-inv-mid);margin-bottom:22px;}
.live-badge .dot{width:5px;height:5px;border-radius:50%;background:#4ADE80;box-shadow:0 0 0 3px rgba(74,222,128,.25);}
.phone{position:relative;width:280px;max-width:82vw;border-radius:38px;padding:10px;background:#111319;box-shadow:0 0 0 1px rgba(255,255,255,.07),0 40px 70px -24px rgba(0,0,0,.55);z-index:1;opacity:0;transform:translateY(40px) rotateX(8deg);transition:opacity .8s ease,transform .8s var(--ease);}
.phone.in{opacity:1;transform:none;}
.live-counter{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.08);border:1px solid var(--line-dark);border-radius:100px;padding:6px 12px;font-size:10.5px;font-weight:600;color:var(--t-inv-mid);display:flex;align-items:center;gap:6px;}
.live-counter .n{color:#fff;font-family:var(--sans);}
.live-counter .star{color:var(--t-inv-mid);}
.phone-notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:80px;height:18px;background:#111319;border-radius:0 0 12px 12px;z-index:2;}
.phone-screen{position:relative;border-radius:30px;overflow:hidden;background-color:#E9EEF3;background-image:radial-gradient(rgba(11,14,20,.045) 1px,transparent 1px);background-size:14px 14px;}
.wa-head{position:relative;background:var(--navy-2);color:#fff;padding:20px 16px 12px;display:flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700;}
.wa-head .avatar-wrap{position:relative;flex-shrink:0;}
.wa-head .avatar{width:26px;height:26px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;}
.wa-head .verified-badge{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;background:#4ADE80;border:2px solid var(--navy-2);}
.wa-head .status{font-size:10px;font-weight:500;color:#B9E6C9;display:flex;align-items:center;gap:5px;}
.wa-head .status .dot2{width:5px;height:5px;border-radius:50%;background:#4ADE80;}
.wa-head .wa-head-icons{margin-left:auto;display:flex;gap:14px;color:rgba(255,255,255,.55);}
.wa-body{padding:14px;display:flex;flex-direction:column;gap:8px;height:380px;overflow:hidden;}
.wa-bubble{max-width:84%;padding:8px 11px;border-radius:13px;font-size:12px;line-height:1.4;box-shadow:0 1px 2px rgba(0,0,0,.06);opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease;}
.wa-bubble.show{opacity:1;transform:none;}
.wa-in{background:#fff;border-bottom-left-radius:4px;align-self:flex-start;color:var(--ink);}
.wa-out{background:#DCEBFF;border-bottom-right-radius:4px;align-self:flex-end;color:var(--navy);}
.wa-time{font-size:9px;color:var(--t-low);margin-top:2px;display:block;text-align:right;}
.wa-typing{align-self:flex-end;background:#DCEBFF;border-radius:13px;border-bottom-right-radius:4px;padding:9px 12px;display:none;box-shadow:0 1px 2px rgba(0,0,0,.06);}
.wa-typing.show{display:inline-flex;gap:4px;align-items:center;}
.wa-typing span{width:5px;height:5px;border-radius:50%;background:#6E7A94;animation:waTyping 1.2s ease-in-out infinite;}
.wa-typing span:nth-child(2){animation-delay:.15s;}
.wa-typing span:nth-child(3){animation-delay:.3s;}
@keyframes waTyping{0%,60%,100%{transform:translateY(0);opacity:.4;}30%{transform:translateY(-4px);opacity:1;}}
.video-frame p.vf-caption{font-size:12.5px;color:var(--t-inv-mid);max-width:320px;text-align:center;margin-top:22px;}
.replay-mini{margin-top:16px;background:none;border:1px solid var(--line-dark);color:var(--t-inv-mid);border-radius:100px;padding:8px 16px;font-family:var(--sans);font-weight:600;font-size:11.5px;cursor:pointer;transition:border-color .2s ease,color .2s ease;}
.replay-mini:hover{border-color:rgba(255,255,255,.4);color:#fff;}

/* tech log */
.tech-log{border-left:1px solid var(--line-dark);padding:48px 32px;display:flex;flex-direction:column;justify-content:center;gap:22px;}
@media(max-width:900px){.tech-log{border-left:none;border-top:1px solid var(--line-dark);padding:28px 24px;flex-direction:row;flex-wrap:wrap;gap:10px;}}
.tech-log .log-head{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--t-inv-mid);margin-bottom:4px;}
@media(max-width:900px){.tech-log .log-head{width:100%;}}
.log-line{display:flex;align-items:center;gap:10px;font-family:'SFMono-Regular',ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;color:rgba(255,255,255,.32);transition:color .4s ease;}
@media(max-width:900px){.log-line{border:1px solid var(--line-dark);border-radius:100px;padding:6px 12px;font-size:11px;}}
.log-line .dot3{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.18);flex-shrink:0;transition:background .4s ease,box-shadow .4s ease;}
.log-line.active{color:rgba(255,255,255,.92);}
.log-line.active .dot3{background:#4ADE80;box-shadow:0 0 0 3px rgba(74,222,128,.2);}

/* ---------- section heads ---------- */
.s-head{max-width:640px;margin:0 auto 48px;text-align:center;}
.s-head-left{max-width:720px;margin:0 0 56px;text-align:left;}
h2 em{color:var(--blue);}
.on-dark h2{color:#fff;}
.on-dark h2 em{color:#8FA6FF;}
.s-sub{font-size:15.5px;color:var(--t-mid);}
.on-dark .s-sub{color:var(--t-inv-mid);}
.section-alt{background:var(--paper-2);}
.divider{height:1px;background:var(--line);max-width:1180px;margin:0 auto;}

/* ---------- seccion 3: es para ti (navy progresivo) ---------- */
.section-navy{background:var(--navy);position:relative;overflow:hidden;}
.section-navy::before{content:"";position:absolute;top:-20%;right:-10%;width:60%;height:80%;background:radial-gradient(circle,rgba(61,99,255,.22),transparent 65%);pointer-events:none;}
.section-navy .fit-card{border:none;box-shadow:var(--shadow-lg);}
.section-navy .fit-card.yes{background:#fff;}
.section-navy .fit-card.no{background:rgba(255,255,255,.06);border:1px dashed var(--line-dark);box-shadow:none;}
.section-navy .fit-card.no h3{color:var(--t-inv-mid);}
.section-navy .fit-card.no li{color:rgba(255,255,255,.8);border-top-color:var(--line-dark);}
.section-navy .accordion{background:#fff;border-radius:18px;padding:6px 24px;box-shadow:var(--shadow-lg);}
.section-navy .acc-item:last-child{border-bottom:none;}

/* ---------- paso 2: agendar ---------- */
.cal-wrap{max-width:640px;margin:0 auto;}
.cal-card{border:1px solid var(--line);border-radius:20px;padding:48px 40px;text-align:center;}
.cal-card--interactive{display:flex;align-items:center;gap:38px;text-align:left;padding:38px;}
@media(max-width:680px){.cal-card--interactive{flex-direction:column;text-align:center;padding:34px 26px;}}
.cal-ic{width:44px;height:44px;border-radius:12px;background:var(--blue-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;color:var(--navy-2);}
.cal-card--interactive .cal-ic{margin:0 0 16px;}
@media(max-width:680px){.cal-card--interactive .cal-ic{margin:0 auto 16px;}}
.cal-card h3{font-family:var(--sans);font-size:19px;font-weight:700;margin-bottom:10px;letter-spacing:-.3px;}
.cal-card p{font-size:14px;color:var(--t-mid);margin-bottom:26px;}
.cal-info{flex:1;min-width:0;}
.cal-info .btn{width:100%;justify-content:center;}
.cal-widget{flex-shrink:0;width:220px;background:var(--blue-soft);border-radius:16px;padding:22px 18px;}
@media(max-width:680px){.cal-widget{width:100%;max-width:260px;}}
.cal-widget-head{font-size:10.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy-2);text-align:center;margin-bottom:16px;}
.cal-days{display:flex;gap:5px;justify-content:center;margin-bottom:18px;}
.cal-day{width:25px;height:25px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:var(--t-mid);position:relative;background:#fff;border:1px solid var(--line);transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease;}
.cal-day .cal-dot{position:absolute;bottom:3px;width:3px;height:3px;border-radius:50%;background:var(--blue);transition:background .3s ease;}
.cal-day--off{opacity:.35;background:transparent;border-color:transparent;}
.cal-day--next{border-color:var(--blue);transform:scale(1.08);}
.cal-day--sel{background:var(--navy-2);color:#fff;border-color:var(--navy-2);}
.cal-day--sel .cal-dot{background:#fff;}
.cal-slots{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;}
.cal-slot{font-size:10.5px;font-weight:700;padding:6px 10px;border-radius:100px;background:#fff;border:1px solid var(--line);color:var(--t-mid);}
.cal-slot--sel{background:var(--blue);border-color:var(--blue);color:#fff;animation:calPulse 2.4s ease-in-out infinite;}
@keyframes calPulse{0%,100%{box-shadow:0 0 0 4px rgba(61,99,255,.16);}50%{box-shadow:0 0 0 8px rgba(61,99,255,.05);}}
.trust-row{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:32px;}
.trust-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--t-mid);}
.trust-item svg{flex-shrink:0;color:var(--t-low);}
.trust-item path[data-draw]{stroke-dasharray:40;stroke-dashoffset:40;transition:stroke-dashoffset .5s var(--ease);}
.trust-item.in path[data-draw]{stroke-dashoffset:0;}

/* ---------- paso 3: es para ti ---------- */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:960px;margin:0 auto 56px;transition:opacity .3s ease;}
@media(max-width:700px){.fit-grid{grid-template-columns:1fr;}}
.fit-card{border-radius:18px;padding:30px 28px;border:1px solid var(--line);transition:border-color .3s ease,transform .3s var(--ease),opacity .3s ease,box-shadow .3s ease;}
.fit-card.yes{background:var(--paper-2);}
.fit-card.no{background:#fff;border:1px dashed var(--line-strong);}
.fit-grid:has(.fit-card.yes:hover) .fit-card.yes{border-color:var(--blue);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.fit-grid:has(.fit-card.yes:hover) .fit-card.no{opacity:.55;}
.fit-grid:has(.fit-card.no:hover) .fit-card.no{border-color:var(--t-low);transform:translateY(-4px);}
.fit-grid:has(.fit-card.no:hover) .fit-card.yes{opacity:.55;}
.fit-card h3{font-family:var(--sans);font-size:15px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.fit-card.yes h3{color:var(--blue);}
.fit-card.no h3{color:var(--t-low);}
.fit-card ul{list-style:none;}
.fit-card li{font-size:14.5px;padding:9px 0 9px 30px;position:relative;color:var(--t-hi);border-top:1px solid rgba(0,0,0,.05);opacity:0;transform:translateX(-8px);transition:opacity .5s var(--ease),transform .5s var(--ease);}
.fit-card.no li{color:rgba(255,255,255,.82);}
.fit-card li:first-child{border-top:none;}
.fit-card li.in{opacity:1;transform:none;}
.fit-card li svg{position:absolute;left:0;top:11px;}
.fit-card li path[data-draw]{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .4s var(--ease) .15s;}
.fit-card li.in path[data-draw]{stroke-dashoffset:0;}

.accordion{max-width:720px;margin:0 auto;}
.acc-item{border-bottom:1px solid var(--line);border-left:2px solid transparent;transition:border-color .3s ease,padding-left .3s ease;}
.acc-item.open{border-left-color:var(--blue);padding-left:14px;}
.acc-q{width:100%;text-align:left;background:none;border:none;padding:20px 4px;font-family:var(--sans);font-size:15px;font-weight:600;color:var(--t-hi);display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;transition:color .2s ease;}
.acc-q:hover{color:var(--blue);}
.acc-q .plus{font-size:20px;color:var(--blue);transition:transform .3s var(--ease);flex-shrink:0;font-weight:400;}
.acc-item.open .plus{transform:rotate(45deg);}
.acc-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease);}
.acc-a p{font-size:14.5px;color:var(--t-mid);padding:0 4px 20px;max-width:640px;}

/* ---------- paso 4: transformacion ---------- */
#paso4{background:var(--paper-2);transition:background-color 1.2s ease;}
#paso4.climax{background:var(--ink);}
#paso4.climax .s-head-left h2,#paso4.climax .s-head-left .eyebrow,#paso4.climax .s4-disclaimer{color:var(--t-inv);}
#paso4.climax .s-head-left .s-sub{color:var(--t-inv-mid);}
#paso4.climax .hito h4{color:var(--t-inv-mid);}
#paso4.climax .hito p{color:rgba(255,255,255,.55);}
#paso4.climax .hito.is-active h4{color:#fff;}
#paso4.climax .mit-box{background:rgba(255,255,255,.05);border-color:var(--line-dark);}
#paso4.climax .mit-box p{color:var(--t-inv-mid);}
#paso4.climax .mit-box strong{color:#fff;}
.s4-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;max-width:1080px;margin:0 auto;}
@media(max-width:900px){.s4-grid{grid-template-columns:1fr;gap:32px;}}
.s4-hitos{display:flex;flex-direction:column;}
.hito{min-height:190px;display:flex;flex-direction:column;justify-content:center;padding:18px 0;opacity:.35;transition:opacity .5s ease;border-left:2px solid var(--line-strong);padding-left:24px;}
#paso4.climax .hito{border-left-color:var(--line-dark);}
.hito.is-active{opacity:1;border-left-color:var(--blue);}
@media(max-width:900px){.hito{min-height:0;}}
.hito h4{font-family:var(--sans);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--navy-2);margin-bottom:8px;transition:color .4s ease;}
.hito p{font-size:15px;color:var(--t-mid);max-width:420px;}
.s4-graph-wrap{position:relative;}
@media(min-width:901px){.s4-graph-sticky{position:sticky;top:110px;}}
.s4-panel{background:var(--navy);border-radius:22px;padding:40px 32px;text-align:center;position:relative;overflow:hidden;}
.s4-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(61,99,255,.22),transparent 60%);pointer-events:none;}
.s4-num{position:relative;font-family:var(--serif);font-weight:800;font-size:clamp(3rem,7vw,5.5rem);line-height:1;color:var(--gold);font-variant-numeric:tabular-nums;margin-bottom:20px;transition:color .6s ease;}
#paso4.climax .s4-num,.s4-panel.climax .s4-num{color:var(--gold-hi);text-shadow:0 0 40px rgba(227,195,104,.35);}
.s4-curve{position:relative;width:100%;height:auto;max-width:320px;margin:0 auto;}
.s4-curve-track{fill:none;stroke:rgba(255,255,255,.12);stroke-width:3;}
.s4-curve-fill{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;transition:stroke .6s ease,filter .6s ease;}
.s4-panel.climax .s4-curve-fill{stroke:var(--blue);filter:drop-shadow(0 0 10px rgba(61,99,255,.7));}
.s4-caption{position:relative;font-size:11.5px;color:var(--t-inv-mid);margin-top:18px;letter-spacing:.02em;}
.s4-disclaimer{text-align:center;font-size:11.5px;color:var(--t-low);margin-top:40px;transition:color 1.2s ease;}
.mit-box{max-width:680px;margin:32px auto 0;background:var(--paper-2);border:1px solid var(--line);border-radius:16px;padding:26px 30px;display:flex;gap:16px;align-items:flex-start;transition:background-color 1.2s ease,border-color 1.2s ease;}
.mit-box .ic{font-size:22px;flex-shrink:0;}
.mit-box p{font-size:13.5px;color:var(--t-mid);transition:color 1.2s ease;}
.mit-box strong{color:var(--t-hi);}
.mit-box .src{display:block;margin-top:6px;font-size:11.5px;color:var(--t-low);}

/* ---------- paso 5: metodo (pin horizontal) ---------- */
#paso5{background:var(--ink);color:var(--t-inv);padding-top:112px;padding-bottom:0;}
#paso5 .s-head-left{color:#fff;}
.s5-pin-outer{position:relative;}
@media(min-width:1024px){
  #paso5{padding-bottom:0;}
  .s5-pin-outer{height:300vh;}
  .s5-pin-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;}
  .s5-track{display:flex;height:auto;will-change:transform;}
  .s5-step{width:100vw;flex-shrink:0;display:flex;flex-direction:column;justify-content:center;padding:0 max(24px,(100vw - 1180px)/2 + 24px);position:relative;min-height:60vh;}
}
@media(max-width:1023px){
  .s5-track{display:block;}
  .s5-step{width:100%;padding:0 0 64px;opacity:0;transform:translateY(20px);transition:opacity .68s var(--ease),transform .68s var(--ease);}
  .s5-step.in{opacity:1;transform:none;}
  .s5-step:last-child{padding-bottom:0;}
}
.s5-watermark{position:absolute;top:-4vw;right:2vw;font-family:var(--serif);font-weight:800;font-size:min(32vw,340px);line-height:1;color:#fff;opacity:.06;pointer-events:none;z-index:0;}
@media(max-width:1023px){.s5-watermark{font-size:34vw;top:-2vw;}}
.s5-step-inner{position:relative;z-index:1;max-width:1180px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
@media(max-width:1023px){.s5-step-inner{grid-template-columns:1fr;gap:32px;padding:0 24px;}}
.s5-step-text h4{font-family:var(--serif);font-weight:800;font-size:clamp(1.7rem,3vw,2.4rem);margin-bottom:14px;color:#fff;}
.s5-step-text p{font-size:15.5px;color:var(--t-inv-mid);margin-bottom:20px;}
.s5-time{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--t-inv-mid);border:1px solid var(--line-dark);border-radius:100px;padding:7px 14px;}
.s5-time svg{flex-shrink:0;}
.s5-viz{background:rgba(255,255,255,.04);border:1px solid var(--line-dark);border-radius:20px;height:280px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}

/* viz 1: conexion de fuentes */
.viz-connect{position:relative;width:100%;height:100%;}
.viz-connect .center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-weight:800;font-size:11px;color:#fff;z-index:2;box-shadow:0 0 0 8px rgba(61,99,255,.12);}
.viz-connect .node{position:absolute;background:rgba(255,255,255,.08);border:1px solid var(--line-dark);border-radius:100px;padding:7px 13px;font-size:11px;font-weight:600;color:var(--t-inv-mid);z-index:2;}
.viz-connect svg{position:absolute;inset:0;width:100%;height:100%;}
.viz-connect path{fill:none;stroke:var(--blue);stroke-width:1.5;opacity:.55;}

/* viz 2: cualificacion */
.viz-qualify{display:flex;flex-direction:column;gap:10px;padding:24px;width:100%;}
.viz-qualify .qbub{display:flex;align-items:center;gap:10px;background:#fff;color:var(--ink);border-radius:12px;padding:10px 14px;font-size:12.5px;font-weight:600;max-width:82%;opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease);}
.s5-step.is-active .viz-qualify .qbub{opacity:1;transform:none;}
.viz-qualify .qbub:nth-child(2){transition-delay:.15s;}
.viz-qualify .qbub:nth-child(3){transition-delay:.3s;}
.viz-qualify .qbub .check{width:16px;height:16px;border-radius:50%;background:#DFF6E4;color:#22A557;flex-shrink:0;display:flex;align-items:center;justify-content:center;}

/* viz 3: agenda */
.viz-cal{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:28px;width:100%;max-width:260px;}
.viz-cal .cell{aspect-ratio:1;border-radius:6px;background:rgba(255,255,255,.06);border:1px solid var(--line-dark);transition:background .4s ease,border-color .4s ease;}
.s5-step.is-active .viz-cal .cell.fill{background:var(--blue);border-color:var(--blue);}

.s5-progress{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:2;}
@media(max-width:1023px){.s5-progress{display:none;}}
.s5-dot{width:26px;height:3px;border-radius:3px;background:var(--line-dark);transition:background .4s ease;}
.s5-dot.active{background:var(--blue);}
@media(min-width:1024px){#paso5 .s5-step[data-reveal]{opacity:1!important;transform:none!important;}}
@media(prefers-reduced-motion:reduce){
  .s5-pin-outer{height:auto!important;}
  .s5-pin-sticky{position:static!important;height:auto!important;}
  .s5-track{display:block!important;}
  .s5-step{width:100%!important;padding:0 0 48px!important;opacity:1!important;transform:none!important;min-height:0!important;}
  .hero-mesh{display:none;}
}

/* prueba de sector + fundador */
.cases-head{text-align:center;margin-bottom:32px;padding-top:96px;}
@media(max-width:640px){.cases-head{padding-top:64px;}}
.cases-head span{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--t-low);}
.case-feature{max-width:820px;margin:0 auto;background:var(--navy-2);color:#fff;border-radius:20px;padding:44px 40px;position:relative;overflow:hidden;}
.case-feature::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 0%,rgba(61,99,255,.25),transparent 55%);pointer-events:none;}
.case-feature .quote{position:relative;font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:500;line-height:1.45;margin-bottom:24px;letter-spacing:0;}
.case-who{position:relative;display:flex;align-items:center;gap:14px;margin-bottom:28px;}
.case-avatar{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid var(--line-dark);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0;}
.case-who .n{font-size:14px;font-weight:700;color:#fff;}
.case-who .r{font-size:12.5px;color:var(--t-inv-mid);}
.case-stats{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;border-top:1px solid var(--line-dark);padding-top:24px;}
@media(max-width:560px){.case-stats{grid-template-columns:1fr;gap:16px;}}
.case-stats>div{position:relative;}
.case-stats>div+div::before{content:"";position:absolute;left:-7px;top:2px;bottom:2px;width:1px;background:var(--line-dark);}
@media(max-width:560px){.case-stats>div+div::before{display:none;}}
.case-stats .v{font-family:var(--serif);font-weight:800;font-size:clamp(1.7rem,3vw,2.2rem);color:var(--gold);letter-spacing:0;font-variant-numeric:tabular-nums;}
.case-stats .l{font-size:11.5px;color:var(--t-inv-mid);margin-top:2px;}
.case-src{text-align:center;font-size:11.5px;color:var(--t-low);margin-top:20px;max-width:640px;margin-left:auto;margin-right:auto;}
.case-src a{color:var(--blue);text-decoration:underline;}

.founder{max-width:640px;margin:56px auto 0;display:flex;align-items:center;gap:22px;text-align:left;}
@media(max-width:560px){.founder{flex-direction:column;text-align:center;}}
.founder-avatar{width:72px;height:72px;border-radius:50%;border:2px solid var(--gold);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:800;font-size:26px;color:var(--navy-2);background:var(--paper-2);}
.founder-name{font-family:var(--sans);font-weight:700;font-size:15px;color:var(--t-hi);}
.founder-role{font-size:12.5px;color:var(--t-low);margin-bottom:8px;}
.founder-quote{font-size:14px;color:var(--t-mid);font-style:italic;}

/* ---------- CTA final ---------- */
.final-cta{text-align:center;padding:110px 0 120px;background:var(--navy);position:relative;overflow:hidden;}
.final-cta::before{content:"";position:absolute;top:50%;left:50%;width:900px;height:900px;transform:translate(-50%,-50%) scale(1);background:radial-gradient(circle,rgba(61,99,255,.35),transparent 62%);animation:ctaBreathe 6s ease-in-out infinite;pointer-events:none;}
@keyframes ctaBreathe{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.8;}50%{transform:translate(-50%,-50%) scale(1.06);opacity:1;}}
.final-wordmark{position:absolute;bottom:-6%;left:50%;transform:translateX(-50%);font-family:var(--sans);font-weight:800;font-size:min(18vw,220px);color:#fff;opacity:.06;white-space:nowrap;pointer-events:none;letter-spacing:-.02em;}
.final-cta .wrap-narrow{position:relative;z-index:1;}
.final-cta h2{color:#fff;max-width:600px;margin-left:auto;margin-right:auto;}
.final-cta h2 em{color:#8FA6FF;}
.final-cta .s-sub{color:var(--t-inv-mid);}
.final-cta .cal-card{background:rgba(255,255,255,.04);border-color:var(--line-dark);margin-top:36px;}
.final-cta .cal-card h3{color:#fff;}
.final-cta .cal-card p{color:var(--t-inv-mid);}
.final-cta .cal-widget{background:rgba(255,255,255,.06);}
.final-cta .cal-widget-head{color:#fff;}
.final-cta .cal-day{background:rgba(255,255,255,.05);border-color:var(--line-dark);color:var(--t-inv-mid);}
.final-cta .cal-slot{background:rgba(255,255,255,.05);border-color:var(--line-dark);color:var(--t-inv-mid);}
.final-escasez{font-size:13px;color:var(--t-inv-mid);margin-top:22px;}
@media(prefers-reduced-motion:reduce){.final-cta::before{animation:none;}}

/* ---------- footer ---------- */
footer{background:var(--ink);color:var(--t-inv-mid);padding:44px 0 100px;text-align:center;}
footer .logo-text .name{font-family:var(--sans);font-weight:800;font-size:18px;color:#fff;}
footer .logo-text .name em{font-style:italic;color:var(--blue);}
footer .legal{font-size:12px;color:var(--t-inv-mid);margin-top:10px;}
footer .legal a{text-decoration:underline;color:var(--t-inv-mid);}

/* ---------- mobile sticky cta ---------- */
.mcta{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line-strong);padding:12px 16px;display:none;z-index:60;transform:translateY(100%);transition:transform .3s ease;}
.mcta.show{transform:translateY(0);}
.mcta a{display:block;text-align:center;background:var(--navy-2);color:#fff;font-weight:700;font-size:14px;padding:14px;border-radius:100px;text-decoration:none;}
@media(max-width:760px){.mcta{display:block;}}
