/* Kushim.cl 2.0 — capa visual sobre el sistema original */
:root{--v2-green:#00d6a2;--v2-cyan:#45d9ff;--v2-violet:#9b8cff;--v2-coral:#ff7187;--v2-panel:#10161c;--v2-panel-2:#151d24;--v2-line:rgba(255,255,255,.1);--v2-copy:#a8b4bd}
html{scroll-behavior:smooth}body{overflow-x:hidden}.v2-hero{min-height:900px;padding:155px 0 100px;display:flex;align-items:center;background:#071018;isolation:isolate}.v2-hero .gt-grid{opacity:.58}.v2-orb{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:-1}.v2-orb-a{width:520px;height:520px;background:rgba(0,214,162,.13);right:-120px;top:80px}.v2-orb-b{width:420px;height:420px;background:rgba(69,217,255,.08);left:-180px;bottom:-80px}.v2-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);gap:70px;align-items:center}.v2-hero-copy{position:relative;z-index:2}.v2-hero-copy h1{font-family:var(--font-display,'Chivo',sans-serif);font-size:clamp(3.4rem,6.2vw,6.8rem);line-height:.91;letter-spacing:-.065em;margin:26px 0 30px;color:#f8faf9;max-width:900px}.v2-outline{display:block;color:transparent;-webkit-text-stroke:1.5px var(--v2-green);filter:drop-shadow(0 0 24px rgba(0,214,162,.2))}.v2-hero-copy>p{font-family:'Sora',sans-serif;font-size:clamp(1.02rem,1.35vw,1.25rem);line-height:1.72;color:var(--v2-copy);max-width:720px}.v2-hero-copy>p strong{color:#f7faf9;font-weight:500}.v2-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:38px 0 27px}.v2-btn-secondary{border:1px solid rgba(255,255,255,.19);background:rgba(255,255,255,.035);color:#fff}.v2-btn-secondary:hover{border-color:var(--v2-green);color:var(--v2-green)}.v2-trust-row{display:flex;gap:24px;flex-wrap:wrap;color:#7f8d96;font-family:'Chivo Mono',monospace;font-size:.69rem;letter-spacing:.04em;text-transform:uppercase}.v2-trust-row span{display:flex;align-items:center;gap:8px}.v2-trust-row i{width:5px;height:5px;border-radius:50%;background:var(--v2-green);box-shadow:0 0 10px var(--v2-green)}
.v2-command{position:relative;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:linear-gradient(145deg,rgba(20,30,38,.94),rgba(7,12,17,.98));box-shadow:0 35px 100px rgba(0,0,0,.42),0 0 80px rgba(0,214,162,.06);overflow:hidden;transform:perspective(1200px) rotateY(-3deg)}.v2-command:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,255,255,.06),transparent 28%);pointer-events:none}.v2-command-head{height:62px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--v2-line);font:500 .66rem 'Chivo Mono',monospace;letter-spacing:.09em;color:#7f8d96}.v2-command-head div{color:#dce6e2}.v2-live{display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:50%;background:var(--v2-green);box-shadow:0 0 12px var(--v2-green);animation:v2Pulse 1.8s infinite}.v2-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--v2-line);border-bottom:1px solid var(--v2-line)}.v2-kpis article{padding:24px 20px;background:rgba(10,17,22,.96);display:flex;flex-direction:column}.v2-kpis span,.v2-chart-label span{font:500 .61rem 'Chivo Mono',monospace;letter-spacing:.1em;color:#73818a}.v2-kpis strong{font:500 1.85rem 'Chivo',sans-serif;margin:8px 0 3px;color:#eef5f2}.v2-kpis small{color:#65737c;font-size:.65rem}.v2-chart{padding:25px 24px 10px}.v2-chart-label{display:flex;align-items:center;justify-content:space-between}.v2-chart-label b{font:400 .7rem 'Sora',sans-serif;color:#a8b4bd}.v2-chart svg{width:100%;height:auto;margin-top:10px;overflow:visible}.v2-gridline{stroke:rgba(255,255,255,.06);stroke-width:1}.v2-area{fill:url(#chartFill)}.v2-line{fill:none;stroke:var(--v2-green);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 7px rgba(0,214,162,.55))}.v2-point{fill:#081018;stroke:var(--v2-green);stroke-width:4}.v2-flow-mini{padding:15px 20px 22px;display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap;font:500 .64rem 'Chivo Mono',monospace;text-transform:uppercase;letter-spacing:.05em;color:#87949c}.v2-flow-mini span{border:1px solid var(--v2-line);background:rgba(255,255,255,.03);padding:8px 10px;border-radius:5px}.v2-flow-mini b{color:var(--v2-green)}
.v2-route-section,.v2-pillars,.v2-integrations{background:#091016}.v2-routes{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--v2-line);border-radius:22px;overflow:hidden}.v2-route{min-height:430px;padding:48px;position:relative;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.01))}.v2-route+ .v2-route{border-left:1px solid var(--v2-line)}.v2-route-primary{background:radial-gradient(circle at 0 100%,rgba(0,214,162,.11),transparent 52%),rgba(255,255,255,.028)}.v2-route-num,.v2-pillar-top>span{font:500 .66rem 'Chivo Mono',monospace;letter-spacing:.08em;color:#63717a}.v2-route-icon,.v2-pillar-icon{width:62px;height:62px;border:1px solid rgba(0,214,162,.28);border-radius:15px;display:grid;place-items:center;margin:42px 0 25px;background:rgba(0,214,162,.07)}.v2-route-icon svg,.v2-pillar-icon svg{width:28px;fill:none;stroke:var(--v2-green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.v2-kicker{font:500 .68rem 'Chivo Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--v2-green);margin-bottom:12px}.v2-route h3,.v2-pillar h3{font:600 clamp(1.5rem,2.1vw,2rem) 'Chivo',sans-serif;letter-spacing:-.035em;color:#f2f5f4;margin-bottom:16px}.v2-route>p:not(.v2-kicker),.v2-pillar>p:not(.v2-kicker){font:400 .94rem/1.7 'Sora',sans-serif;color:#8e9ba4;max-width:580px}.v2-route>a,.v2-pillar>a{display:inline-block;margin-top:25px;color:#dbe7e2;font:500 .8rem 'Sora',sans-serif;text-decoration:none}.v2-route>a:hover,.v2-pillar>a:hover{color:var(--v2-green)}
.v2-foundation{background:#0d151b}.v2-foundation-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.v2-checks{list-style:none;padding:0;margin:30px 0 35px;display:grid;gap:13px}.v2-checks li{display:flex;align-items:center;gap:12px;color:#c5d0cc;font:400 .88rem 'Sora',sans-serif}.v2-checks span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:rgba(0,214,162,.1);color:var(--v2-green);font-size:.7rem}.v2-browser{border:1px solid rgba(255,255,255,.13);border-radius:20px;overflow:hidden;background:#080e13;box-shadow:0 40px 90px rgba(0,0,0,.35)}.v2-browser-bar{height:54px;display:flex;align-items:center;gap:7px;padding:0 18px;border-bottom:1px solid var(--v2-line)}.v2-browser-bar i{width:8px;height:8px;border-radius:50%;background:#39444b}.v2-browser-bar i:first-child{background:#ff7187}.v2-browser-bar i:nth-child(2){background:#ffc857}.v2-browser-bar i:nth-child(3){background:var(--v2-green)}.v2-browser-bar span{margin-left:14px;color:#63717a;font:400 .62rem 'Chivo Mono',monospace}.v2-browser-body{padding:30px;display:grid;grid-template-columns:1.25fr .75fr;gap:22px}.v2-site-preview{min-height:370px;border-radius:14px;padding:40px 30px;background:radial-gradient(circle at 80% 10%,rgba(69,217,255,.16),transparent 37%),linear-gradient(145deg,#111c23,#0a1116);display:flex;flex-direction:column;justify-content:center}.v2-site-preview>span{font:500 .58rem 'Chivo Mono',monospace;letter-spacing:.13em;color:var(--v2-green)}.v2-site-preview h3{font:600 2.25rem/1.05 'Chivo',sans-serif;color:#f5f8f7;letter-spacing:-.05em;margin:18px 0 25px}.v2-site-preview button{align-self:flex-start;border:0;border-radius:6px;padding:13px 16px;background:var(--v2-green);color:#06100d;font:700 .7rem 'Sora',sans-serif}.v2-connectors{display:flex;flex-direction:column;justify-content:center;gap:13px}.v2-connectors span{position:relative;padding:14px 12px 14px 28px;border:1px solid var(--v2-line);border-radius:8px;color:#839099;font:500 .65rem 'Chivo Mono',monospace}.v2-connectors span:before{content:"";position:absolute;left:12px;top:50%;width:6px;height:6px;border-radius:50%;background:#445058;transform:translateY(-50%)}.v2-connectors span.is-active{border-color:rgba(0,214,162,.27);color:#cfe4dc}.v2-connectors span.is-active:before{background:var(--v2-green);box-shadow:0 0 9px var(--v2-green)}
.v2-pillar-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--v2-line);border-radius:22px;overflow:hidden}.v2-pillar{min-height:520px;padding:42px;background:linear-gradient(145deg,rgba(255,255,255,.026),rgba(255,255,255,.008));position:relative}.v2-pillar:nth-child(even){border-left:1px solid var(--v2-line)}.v2-pillar:nth-child(n+3){border-top:1px solid var(--v2-line)}.v2-pillar-top{display:flex;justify-content:space-between}.v2-pillar-top i{width:8px;height:8px;border-radius:50%;box-shadow:0 0 12px currentColor}.v2-pillar-top .cyan{background:var(--v2-cyan);color:var(--v2-cyan)}.v2-pillar-top .lime{background:#c6f24e;color:#c6f24e}.v2-pillar-top .coral{background:var(--v2-coral);color:var(--v2-coral)}.v2-pillar-top .violet{background:var(--v2-violet);color:var(--v2-violet)}.v2-pillar-icon{margin:35px 0 23px}.v2-versions{display:grid;gap:8px;margin-top:23px}.v2-versions span{padding:11px 13px;border:1px solid var(--v2-line);border-radius:7px;color:#829099;font:400 .72rem 'Sora',sans-serif}.v2-versions b{color:#e4ece8;margin-right:6px}.v2-pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:23px}.v2-pipeline span{display:flex;flex-direction:column;gap:8px;padding:10px 7px;border-radius:6px;background:rgba(255,255,255,.035);color:#75828b;font:400 .56rem 'Chivo Mono',monospace;text-transform:uppercase}.v2-pipeline b{color:#dfe8e4;font-size:.9rem}.v2-flow-list{display:flex;align-items:center;gap:7px;margin-top:23px}.v2-flow-list span{border:1px solid var(--v2-line);padding:9px;border-radius:6px;color:#87949d;font:400 .61rem 'Chivo Mono',monospace}.v2-flow-list b{color:var(--v2-coral)}.v2-chat-demo{display:flex;gap:12px;margin-top:23px;padding:14px;border:1px solid rgba(155,140,255,.25);border-radius:10px;background:rgba(155,140,255,.055)}.v2-chat-demo>span{width:30px;height:30px;flex:0 0 30px;border-radius:50%;display:grid;place-items:center;background:var(--v2-violet);color:#0b0a12;font:700 .72rem 'Chivo',sans-serif}.v2-chat-demo p{margin:0;color:#a8b0c4;font:400 .68rem/1.55 'Sora',sans-serif}
.v2-system{background:#070d12}.v2-system-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch}.v2-system-flow article{border:1px solid var(--v2-line);border-radius:14px;padding:26px;background:rgba(255,255,255,.02)}.v2-system-flow>i{align-self:center;padding:0 10px;color:var(--v2-green);font-style:normal}.v2-system-flow article>span{font:500 .62rem 'Chivo Mono',monospace;color:#63717a}.v2-system-flow article>b{display:block;margin-top:30px;font:500 .6rem 'Chivo Mono',monospace;letter-spacing:.1em;color:var(--v2-green)}.v2-system-flow h3{font:600 1.18rem 'Chivo',sans-serif;color:#edf3f0;margin:9px 0}.v2-system-flow p{font:400 .73rem/1.55 'Sora',sans-serif;color:#7f8b94;margin:0}.v2-integral-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px;padding:38px;border:1px solid rgba(0,214,162,.25);border-radius:18px;background:radial-gradient(circle at 0 50%,rgba(0,214,162,.1),transparent 45%),rgba(255,255,255,.02)}.v2-integral-cta h3{font:600 2.1rem 'Chivo',sans-serif;color:#f2f7f5;margin:8px 0}.v2-integral-cta p{color:#89969e;margin:0}.v2-diagnostic{background:#0d151b}.v2-diagnostic-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.v2-privacy-note{margin-top:18px;color:#69777f;font:400 .67rem/1.5 'Sora',sans-serif}.v2-score-card{border:1px solid var(--v2-line);border-radius:18px;padding:28px;background:#091016;box-shadow:0 30px 70px rgba(0,0,0,.26)}.v2-score-head{display:flex;justify-content:space-between;padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid var(--v2-line);font:500 .63rem 'Chivo Mono',monospace;letter-spacing:.08em;color:#75828a}.v2-score-head b{color:var(--v2-green)}.v2-score-row{display:grid;grid-template-columns:130px 1fr 28px;gap:15px;align-items:center;margin:18px 0;color:#9aa7af;font:400 .7rem 'Sora',sans-serif}.v2-score-row>i{height:5px;background:#202a30;border-radius:10px;overflow:hidden}.v2-score-row>i b{display:block;height:100%;background:linear-gradient(90deg,var(--v2-green),var(--v2-cyan));border-radius:10px}.v2-score-row strong{font:500 .7rem 'Chivo Mono',monospace;color:#e4ece8}.v2-score-next{margin-top:26px;padding:18px;border-radius:9px;border:1px solid rgba(0,214,162,.2);background:rgba(0,214,162,.05)}.v2-score-next span{display:block;margin-bottom:7px;color:var(--v2-green);font:500 .57rem 'Chivo Mono',monospace;letter-spacing:.1em}.v2-score-next b{color:#dfe8e4;font:500 .76rem 'Sora',sans-serif}.v2-manifesto{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden}.v2-manifesto .wrap{position:relative;z-index:2}.v2-manifesto-lead{color:#9aa6ad;font:400 .85rem 'Chivo Mono',monospace;max-width:600px}.v2-manifesto h2{font:700 clamp(3rem,6vw,6rem)/.97 'Chivo',sans-serif;letter-spacing:-.06em;color:#f5f8f7;margin:35px 0}.v2-manifesto h2 span{color:var(--v2-green)}.v2-manifesto .wrap>p:last-child{max-width:700px;color:#abb6bd;font:400 1rem/1.8 'Sora',sans-serif}.v2-logo-cloud{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--v2-line);border-radius:18px;overflow:hidden}.v2-logo-cloud span{min-height:100px;display:grid;place-items:center;border-right:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line);color:#98a4ab;font:500 .75rem 'Chivo Mono',monospace;transition:.25s}.v2-logo-cloud span:nth-child(4n){border-right:0}.v2-logo-cloud span:nth-last-child(-n+4){border-bottom:0}.v2-logo-cloud span:hover{color:var(--v2-green);background:rgba(0,214,162,.045)}.v2-contact{background:#0b1218}.v2-consent{display:flex;align-items:flex-start;gap:10px;margin:15px 0;color:#8d9aa2;font:400 .68rem/1.5 'Sora',sans-serif}.v2-consent input{accent-color:var(--v2-green);margin-top:3px}.v2-consent a{color:var(--v2-green)}.v2-consent-optional{margin-top:9px}.v2-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.v2-form-status{min-height:20px;margin:13px 0 0;color:#9ca9b0;font:.75rem 'Sora',sans-serif}.v2-form-status.is-error{color:#ff7187}.v2-form-status.is-success{color:var(--v2-green)}
@keyframes v2Pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media(max-width:1050px){.v2-hero{min-height:auto}.v2-hero-grid{grid-template-columns:1fr;gap:55px}.v2-command{max-width:760px;transform:none}.v2-foundation-grid,.v2-diagnostic-grid{grid-template-columns:1fr;gap:55px}.v2-system-flow{grid-template-columns:1fr 1fr;gap:12px}.v2-system-flow>i{display:none}.v2-logo-cloud{grid-template-columns:repeat(3,1fr)}.v2-logo-cloud span:nth-child(n){border-right:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}.v2-logo-cloud span:nth-child(3n){border-right:0}.v2-logo-cloud span:nth-last-child(-n+3){border-bottom:0}}
@media(max-width:760px){.v2-hero{padding:130px 0 75px}.v2-hero-copy h1{font-size:clamp(3.05rem,16vw,4.8rem)}.v2-hero-actions{flex-direction:column}.v2-hero-actions .btn{justify-content:center;width:100%}.v2-trust-row{gap:11px 18px}.v2-command{margin:0 -8px}.v2-kpis{grid-template-columns:1fr}.v2-kpis article{padding:15px 18px}.v2-kpis article+article{border-top:1px solid var(--v2-line)}.v2-chart{padding:20px 15px 8px}.v2-flow-mini{display:none}.v2-routes,.v2-pillar-grid{grid-template-columns:1fr}.v2-route{min-height:0;padding:34px 25px}.v2-route+.v2-route{border-left:0;border-top:1px solid var(--v2-line)}.v2-pillar{min-height:0;padding:32px 24px}.v2-pillar:nth-child(even){border-left:0}.v2-pillar:nth-child(n+2){border-top:1px solid var(--v2-line)}.v2-browser-body{grid-template-columns:1fr;padding:18px}.v2-site-preview{min-height:300px}.v2-connectors{display:grid;grid-template-columns:1fr 1fr}.v2-pipeline{grid-template-columns:1fr 1fr}.v2-flow-list{flex-wrap:wrap}.v2-system-flow{grid-template-columns:1fr}.v2-integral-cta{align-items:flex-start;flex-direction:column;padding:28px}.v2-score-row{grid-template-columns:105px 1fr 25px;gap:10px}.v2-logo-cloud{grid-template-columns:1fr 1fr}.v2-logo-cloud span:nth-child(n){border-right:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}.v2-logo-cloud span:nth-child(2n){border-right:0}.v2-logo-cloud span:nth-last-child(-n+2){border-bottom:0}.v2-manifesto{min-height:580px}.v2-manifesto h2{font-size:clamp(2.75rem,13vw,4.5rem)}}
[data-theme="light"] .v2-hero,[data-theme="light"] .v2-route-section,[data-theme="light"] .v2-pillars,[data-theme="light"] .v2-integrations{background:#f2f4f2}[data-theme="light"] .v2-foundation,[data-theme="light"] .v2-diagnostic,[data-theme="light"] .v2-contact{background:#e9eeeb}[data-theme="light"] .v2-command,[data-theme="light"] .v2-browser,[data-theme="light"] .v2-score-card{background:#f9fbfa;border-color:rgba(10,30,25,.14)}[data-theme="light"] .v2-hero-copy h1,[data-theme="light"] .v2-route h3,[data-theme="light"] .v2-pillar h3,[data-theme="light"] .v2-integral-cta h3{color:#101a16}[data-theme="light"] .v2-hero-copy>p,[data-theme="light"] .v2-route>p:not(.v2-kicker),[data-theme="light"] .v2-pillar>p:not(.v2-kicker){color:#51615b}[data-theme="light"] .v2-hero-copy>p strong{color:#101a16}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v2-live{animation:none}}
.v2-legal{min-height:70vh;padding:175px 0 100px;background:#091016}.v2-legal .wrap{max-width:900px}.v2-legal h1{font:700 clamp(2.8rem,6vw,5rem) 'Chivo',sans-serif;letter-spacing:-.055em;color:#f5f8f7;margin:25px 0 10px}.v2-legal-date{color:#6e7c84;font:400 .7rem 'Chivo Mono',monospace;margin-bottom:55px}.v2-legal section{padding:28px 0;border-top:1px solid var(--v2-line)}.v2-legal h2{font:600 1.25rem 'Chivo',sans-serif;color:#eaf1ee;margin:0 0 13px}.v2-legal p{font:400 .92rem/1.8 'Sora',sans-serif;color:#9ba7ae;margin:0}.v2-legal a{color:var(--v2-green)}
.v2-diag-dimensions{display:grid;gap:11px;margin:0 auto 26px;max-width:560px;padding:20px;border:1px solid var(--v2-line);border-radius:12px;background:rgba(255,255,255,.025)}.v2-diag-dimensions>div{display:grid;grid-template-columns:120px 1fr 28px;gap:12px;align-items:center}.v2-diag-dimensions span{color:#98a5ad;font:400 .68rem 'Sora',sans-serif}.v2-diag-dimensions i{height:5px;border-radius:9px;background:#202a30;overflow:hidden}.v2-diag-dimensions i b{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--v2-green),var(--v2-cyan))}.v2-diag-dimensions strong{color:#e5ede9;font:500 .65rem 'Chivo Mono',monospace}

/* ============================================================
   KUSHIM 2.1 — sistema visual vivo, responsive y dual theme
   ============================================================ */
:root {
    --v21-ink: #071018;
    --v21-ink-soft: #0b151d;
    --v21-surface: rgba(14, 24, 31, .82);
    --v21-surface-solid: #0e181f;
    --v21-line: rgba(187, 221, 211, .13);
    --v21-copy: #91a1aa;
    --v21-white: #f4f7f5;
    --v21-green: #00d6a2;
    --v21-green-deep: #00a67e;
    --v21-shadow: 0 32px 90px rgba(0, 0, 0, .35);
}

.reveal {
    transition-delay: var(--reveal-delay, 0ms);
}

.v21-live-section,
.v21-plans,
.v21-integrations,
.v21-origin,
.v21-method {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.v21-live-section::after {
    content: '';
    position: absolute;
    z-index: -1;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    right: -350px;
    top: 18%;
    background: rgba(0, 214, 162, .055);
    filter: blur(85px);
    pointer-events: none;
    animation: v21Ambient 11s ease-in-out infinite alternate;
}

/* Hero */
.v21-hero {
    min-height: max(780px, 100svh);
    padding: 132px 0 72px;
    overflow: hidden;
}

.v21-hero .v2-hero-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
    gap: clamp(38px, 4.4vw, 76px);
}

.v21-hero-copy h1 {
    max-width: 820px;
    font-size: clamp(3.65rem, 6.15vw, 6.9rem);
    line-height: .89;
    text-wrap: balance;
}

.v21-sola {
    display: inline-block;
    color: transparent;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: 1.3px rgba(119, 144, 151, .72);
    background-image: linear-gradient(105deg, transparent 28%, #006f59 39%, #00e8ae 49%, #68ffd6 53%, #00a982 61%, transparent 72%);
    background-size: 260% 100%;
    background-position: 190% 0;
    -webkit-background-clip: text;
    background-clip: text;
    filter: drop-shadow(0 0 22px rgba(0, 214, 162, .17));
    animation: v21SolaSweep 5.8s cubic-bezier(.65, 0, .35, 1) infinite;
}

.v21-scan {
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    opacity: .22;
    background: linear-gradient(90deg, transparent 0 48%, rgba(0, 214, 162, .18) 50%, transparent 52%);
    transform: translateX(-65%);
    animation: v21HeroScan 10s linear infinite;
}

.v21-hero-tech {
    margin-top: 30px;
    padding-top: 21px;
}

.v21-hero-tech p {
    margin-bottom: 13px;
    color: #60717b;
}

.v21-hero-tech .hero-tech-logos {
    gap: clamp(17px, 2vw, 28px);
}

.v21-hero-tech .hero-tech-logos img {
    height: 24px;
    opacity: .48;
    filter: grayscale(1) brightness(1.22);
}

.v21-hero-tech .hero-tech-logos img:hover {
    opacity: 1;
    filter: grayscale(0) brightness(1);
    transform: translateY(-4px) scale(1.04);
}

.v21-action {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    gap: 12px;
}

.v21-action::before {
    content: '';
    position: absolute;
    z-index: -1;
    inset: -2px;
    background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, .28) 48%, transparent 70%);
    transform: translateX(-130%);
    animation: v21ButtonShine 4.8s ease-in-out infinite;
}

.v21-action > span,
.v21-text-link > span {
    display: inline-block;
    transition: transform .3s ease;
}

.v21-action:hover > span,
.v21-text-link:hover > span {
    transform: translateX(5px);
}

.v21-command {
    transform: perspective(1300px) rotateY(-3deg) rotateX(1deg);
    animation: v21PanelFloat 7s ease-in-out infinite;
}

.v21-command.reveal { transform: perspective(1300px) rotateY(-3deg) rotateX(1deg) translateY(34px); }
.v21-command.reveal.in { transform: perspective(1300px) rotateY(-3deg) rotateX(1deg) translateY(0); }

.v21-command::after {
    content: '';
    position: absolute;
    inset: -80% -30%;
    pointer-events: none;
    background: linear-gradient(115deg, transparent 40%, rgba(0, 214, 162, .08) 50%, transparent 60%);
    transform: translateX(-65%) rotate(8deg);
    animation: v21PanelGlint 8s ease-in-out infinite;
}

.v21-chart-path {
    stroke-dasharray: 920;
    stroke-dashoffset: 920;
    animation: v21ChartDraw 2.4s .45s cubic-bezier(.2, .7, .2, 1) forwards, v21ChartGlow 3.5s 3s ease-in-out infinite;
}

/* Dos puntos de partida */
.v21-section-beam {
    position: absolute;
    z-index: -1;
    left: -20%;
    right: -20%;
    top: 47%;
    height: 1px;
    opacity: .45;
    background: linear-gradient(90deg, transparent, rgba(0, 214, 162, .55), transparent);
    box-shadow: 0 0 40px rgba(0, 214, 162, .2);
    animation: v21Beam 7s ease-in-out infinite;
}

.v21-routes {
    position: relative;
    box-shadow: var(--v21-shadow);
}

.v21-routes::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(100deg, transparent 20%, rgba(255, 255, 255, .07) 50%, transparent 80%);
    transform: translateX(-110%);
    animation: v21RoutesGlint 9s ease-in-out infinite;
}

.v21-routes .v2-route {
    transition: background .4s ease, transform .4s cubic-bezier(.16, 1, .3, 1);
}

.v21-routes .v2-route:hover {
    z-index: 2;
    transform: translateY(-7px);
    background-color: rgba(0, 214, 162, .045);
}

.v21-routes .v2-route-icon {
    position: relative;
    overflow: visible;
}

.v21-routes .v2-route-icon::after {
    content: '';
    position: absolute;
    width: 78px;
    height: 78px;
    border: 1px dashed rgba(0, 214, 162, .25);
    border-radius: 50%;
    animation: v21Rotate 12s linear infinite;
}

.v21-text-link {
    position: relative;
    z-index: 3;
}

/* Web viva y agente simulado */
.v21-orbit {
    position: absolute;
    z-index: -1;
    width: 520px;
    height: 520px;
    left: -360px;
    top: 17%;
    border: 1px solid rgba(0, 214, 162, .09);
    border-radius: 50%;
    box-shadow: 0 0 80px rgba(0, 214, 162, .05), inset 0 0 80px rgba(0, 214, 162, .035);
    animation: v21Breath 8s ease-in-out infinite;
}

.v21-browser {
    position: relative;
    box-shadow: var(--v21-shadow), 0 0 0 1px rgba(0, 214, 162, .04);
}

.v21-browser::after {
    content: '';
    position: absolute;
    pointer-events: none;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(125deg, rgba(255, 255, 255, .055), transparent 23% 72%, rgba(0, 214, 162, .05));
}

.v2-browser-bar b {
    margin-left: auto;
    color: #7e918a;
    font: 500 .56rem var(--font-mono);
    letter-spacing: .09em;
}

.v2-browser-bar b span {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin-right: 4px;
    border-radius: 50%;
    background: var(--v21-green);
    box-shadow: 0 0 10px var(--v21-green);
    animation: v21Status 1.7s ease-in-out infinite;
}

.v21-browser-stage {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(170px, .75fr);
    gap: 20px;
    padding: 24px;
    min-height: 432px;
    background: radial-gradient(circle at 18% 110%, rgba(0, 214, 162, .09), transparent 40%);
}

.v21-agent-panel {
    min-width: 0;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 15px;
    background: linear-gradient(155deg, rgba(20, 35, 44, .98), rgba(8, 15, 20, .98));
}

.v21-agent-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.v21-agent-avatar {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 214, 162, .42);
    border-radius: 12px;
    color: var(--v21-green);
    background: rgba(0, 214, 162, .08);
    font: 700 1rem var(--font-display);
    box-shadow: 0 0 25px rgba(0, 214, 162, .12);
}

.v21-agent-head div {
    display: grid;
    gap: 2px;
}

.v21-agent-head strong {
    color: #edf5f1;
    font: 600 .78rem var(--font-body);
}

.v21-agent-head small {
    color: #71818a;
    font: 400 .6rem var(--font-mono);
}

.v21-agent-head > i {
    width: 7px;
    height: 7px;
    margin-left: auto;
    border-radius: 50%;
    background: var(--v21-green);
    box-shadow: 0 0 12px var(--v21-green);
}

.v21-agent-messages {
    min-height: 282px;
    padding-top: 22px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.v21-chat-msg {
    max-width: 88%;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 12px 12px 12px 3px;
    color: #bdcac5;
    background: rgba(255, 255, 255, .035);
    font: 400 .72rem/1.55 var(--font-body);
    opacity: 0;
    transform: translateY(12px) scale(.98);
    transition: opacity .45s ease, transform .45s ease;
}

.v21-chat-msg.user {
    align-self: flex-end;
    border-color: rgba(0, 214, 162, .18);
    border-radius: 12px 12px 3px 12px;
    color: #d8e5e0;
    background: rgba(0, 214, 162, .08);
}

.v21-chat-msg.is-visible {
    opacity: 1;
    transform: none;
}

.v21-typing {
    display: flex;
    gap: 4px;
    width: max-content;
    padding: 10px 13px;
    opacity: 0;
    transition: opacity .3s;
}

.v21-typing.is-visible { opacity: 1; }
.v21-typing span { width: 5px; height: 5px; border-radius: 50%; background: #75878f; animation: typing 1.2s infinite; }
.v21-typing span:nth-child(2) { animation-delay: .16s; }
.v21-typing span:nth-child(3) { animation-delay: .32s; }

.v21-browser-stage .v2-connectors {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
}

.v21-browser-stage .v2-connectors span {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    transition: color .35s, border-color .35s, background .35s, transform .35s;
}

.v21-browser-stage .v2-connectors span::before { display: none; }

.v21-browser-stage .v2-connectors span i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #3a474e;
    transition: inherit;
}

.v21-browser-stage .v2-connectors span.is-active {
    transform: translateX(-6px);
    color: #dff9ef;
    border-color: rgba(0, 214, 162, .38);
    background: rgba(0, 214, 162, .065);
    box-shadow: 0 0 24px rgba(0, 214, 162, .06);
}

.v21-browser-stage .v2-connectors span.is-active i {
    background: var(--v21-green);
    box-shadow: 0 0 11px var(--v21-green);
}

.v21-browser-stage .v2-connectors span.is-done {
    color: #8ba69d;
    border-color: rgba(0, 214, 162, .14);
}

.v21-browser-stage .v2-connectors span.is-done i {
    background: rgba(0, 214, 162, .55);
}

/* Cuatro pilares con identidad */
.v21-pillar {
    --pillar-accent: var(--v21-green);
    position: relative;
    isolation: isolate;
    transition: transform .5s cubic-bezier(.16, 1, .3, 1), background .4s, box-shadow .4s;
}

.v21-analytics { --pillar-accent: #45d9ff; }
.v21-crm { --pillar-accent: #c6f24e; }
.v21-automation { --pillar-accent: #ff7187; }
.v21-ai { --pillar-accent: #9b8cff; }

.v21-pillar::before {
    content: '';
    position: absolute;
    z-index: -1;
    width: 230px;
    height: 230px;
    right: -150px;
    top: -150px;
    border-radius: 50%;
    background: var(--pillar-accent);
    filter: blur(75px);
    opacity: .06;
    transition: opacity .45s, transform .65s;
}

.v21-pillar::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--pillar-accent), transparent);
    box-shadow: 0 0 16px var(--pillar-accent);
    opacity: .75;
    transition: width .55s cubic-bezier(.16, 1, .3, 1);
}

.v21-pillar:hover {
    z-index: 3;
    transform: translateY(-8px);
    background: rgba(255, 255, 255, .032);
    box-shadow: 0 28px 70px rgba(0, 0, 0, .24);
}

.v21-pillar:hover::before { opacity: .14; transform: scale(1.28); }
.v21-pillar:hover::after { width: 100%; }
.v21-pillar .v2-pillar-icon { border-color: color-mix(in srgb, var(--pillar-accent) 34%, transparent); background: color-mix(in srgb, var(--pillar-accent) 8%, transparent); }
.v21-pillar .v2-pillar-icon svg { stroke: var(--pillar-accent); }

.v21-analytics-mini {
    position: relative;
    height: 74px;
    margin: 22px 0 17px;
    padding: 10px 12px 0;
    display: flex;
    gap: 7px;
    align-items: flex-end;
    border: 1px solid rgba(69, 217, 255, .11);
    border-radius: 9px;
    background: rgba(69, 217, 255, .025);
    overflow: hidden;
}

.v21-analytics-mini span {
    flex: 1;
    height: var(--h);
    border-radius: 3px 3px 0 0;
    background: linear-gradient(180deg, #45d9ff, rgba(69, 217, 255, .14));
    transform-origin: bottom;
    animation: v21Bar 2.8s ease-in-out infinite alternate;
}

.v21-analytics-mini span:nth-child(2) { animation-delay: .16s; }
.v21-analytics-mini span:nth-child(3) { animation-delay: .3s; }
.v21-analytics-mini span:nth-child(4) { animation-delay: .45s; }
.v21-analytics-mini span:nth-child(5) { animation-delay: .6s; }
.v21-analytics-mini i { position: absolute; left: 0; right: 0; top: 48%; height: 1px; background: linear-gradient(90deg, transparent, rgba(69, 217, 255, .55), transparent); animation: v21MiniScan 3s linear infinite; }

.v21-crm .v2-pipeline span {
    animation: v21Pipeline 4.8s ease-in-out infinite;
}
.v21-crm .v2-pipeline span:nth-child(2) { animation-delay: .6s; }
.v21-crm .v2-pipeline span:nth-child(3) { animation-delay: 1.2s; }
.v21-crm .v2-pipeline span:nth-child(4) { animation-delay: 1.8s; }

.v21-automation .v2-flow-list b { animation: v21Arrow 1.25s ease-in-out infinite; }
.v21-automation .v2-flow-list b:nth-of-type(2) { animation-delay: .35s; }
.v21-ai .v2-chat-demo > span { animation: v21AiGlow 2.4s ease-in-out infinite; }

/* Kushim Integral */
.v21-flow-light {
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: .38;
    background: radial-gradient(circle at 0 50%, rgba(0, 214, 162, .18), transparent 28%), radial-gradient(circle at 100% 50%, rgba(69, 217, 255, .09), transparent 32%);
    animation: v21FlowBg 9s ease-in-out infinite alternate;
}

.v21-system-flow article {
    position: relative;
    opacity: .42;
    transform: translateY(10px);
    transition: opacity .5s, transform .5s, border-color .5s, box-shadow .5s, background .5s;
}

.v21-system-flow article.is-active {
    opacity: 1;
    transform: none;
    border-color: rgba(0, 214, 162, .34);
    background: rgba(0, 214, 162, .055);
    box-shadow: 0 17px 45px rgba(0, 0, 0, .18), 0 0 25px rgba(0, 214, 162, .045);
}

.v21-system-flow > i {
    overflow: hidden;
    min-width: 34px;
    text-align: center;
}

.v21-system-flow > i span {
    display: inline-block;
    animation: v21FlowArrow 1.35s ease-in-out infinite;
}

.v21-system-flow > i:nth-of-type(2) span { animation-delay: .22s; }
.v21-system-flow > i:nth-of-type(3) span { animation-delay: .44s; }

.v21-integral-cta {
    position: relative;
    overflow: hidden;
}

.v21-integral-cta::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(100deg, transparent 35%, rgba(0, 214, 162, .09), transparent 65%);
    transform: translateX(-100%);
    animation: v21RoutesGlint 6.5s ease-in-out infinite;
}

/* Diagnóstico animado */
.v21-radar {
    position: absolute;
    z-index: -1;
    right: -180px;
    top: 50%;
    width: 560px;
    height: 560px;
    border-radius: 50%;
    transform: translateY(-50%);
    opacity: .17;
    background: repeating-radial-gradient(circle, transparent 0 54px, rgba(0, 214, 162, .28) 55px 56px), conic-gradient(from 0deg, transparent 0 76%, rgba(0, 214, 162, .35) 88%, transparent 100%);
    animation: v21Rotate 14s linear infinite;
}

.v21-score-card {
    position: relative;
    overflow: hidden;
}

.v21-score-card::before {
    content: '';
    position: absolute;
    left: -20%;
    right: -20%;
    top: -30%;
    height: 45%;
    background: radial-gradient(ellipse, rgba(0, 214, 162, .1), transparent 65%);
    animation: v21ScoreGlow 4s ease-in-out infinite;
}

.v21-score-card .v2-score-row > i b {
    width: 0;
    transition: width 1.35s cubic-bezier(.16, 1, .3, 1);
}

.v21-score-card.is-animated .v2-score-row > i b { width: var(--score, 0%); }

/* Metodología */
.v21-method {
    background: linear-gradient(180deg, #080f14, #0b1218);
}

.v21-method .metodo-logo {
    margin-bottom: 38px;
}

.v21-method .metodo-logo-img {
    height: clamp(76px, 7vw, 112px);
    filter: drop-shadow(0 18px 42px rgba(0, 0, 0, .5)) drop-shadow(0 0 23px rgba(201, 168, 76, .08));
    animation: v21LogoFloat 6s ease-in-out infinite;
}

.v21-process .proc-line {
    overflow: hidden;
    background: rgba(255, 255, 255, .08);
}

.v21-process .proc-line::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, var(--v21-green), transparent);
    transform: translateX(-100%);
}

.v21-process.is-animated .proc-line::after { animation: v21ProcessLine 2.8s cubic-bezier(.16, 1, .3, 1) forwards; }
.v21-process .pstep { transition: transform .55s cubic-bezier(.16, 1, .3, 1), opacity .55s; }
.v21-process.is-animated .pstep { animation: v21StepIn .65s both; }
.v21-process.is-animated .pstep:nth-child(2) { animation-delay: .16s; }
.v21-process.is-animated .pstep:nth-child(3) { animation-delay: .32s; }
.v21-process.is-animated .pstep:nth-child(4) { animation-delay: .48s; }
.v21-process.is-animated .pstep:nth-child(5) { animation-delay: .64s; }

/* Origen del nombre */
.v21-origin {
    min-height: 100svh;
    padding: 110px 0;
    display: flex;
    align-items: center;
}

.v21-origin .manifesto-video {
    opacity: .58;
    filter: saturate(.85) contrast(1.05);
}

.v21-origin .manifesto-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(4, 8, 11, .82) 0%,
            rgba(4, 8, 11, .50) 45%,
            rgba(4, 8, 11, .20) 100%
        ),
        radial-gradient(
            circle at 80% 50%,
            rgba(201, 168, 76, .10),
            transparent 42%
        );
}

.v21-origin-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .82fr);
    gap: clamp(50px, 8vw, 130px);
    align-items: center;
}

.v21-origin-watermark {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    color: rgba(255, 255, 255, .018);
    font: 900 clamp(8rem, 21vw, 24rem)/1 var(--font-display);
    letter-spacing: -.08em;
    pointer-events: none;
}

.v21-origin h2 { margin-bottom: 0; }

.v21-origin-story {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

.v21-origin-story article {
    padding: 26px 28px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 15px;
    background: rgba(8, 14, 18, .58);
    backdrop-filter: blur(14px);
}

.v21-origin-story article > span {
    color: var(--gold-soft);
    font: 500 .62rem var(--font-mono);
    letter-spacing: .12em;
}

.v21-origin-story h3 {
    margin: 8px 0;
    color: #eef3f0;
    font: 600 1.2rem var(--font-display);
}

.v21-origin-story p {
    margin: 0;
    color: #8f9aa0;
    font: 400 .8rem/1.65 var(--font-body);
}

.v21-origin-story > i {
    justify-self: center;
    color: var(--v21-green);
    font-style: normal;
    transform: rotate(90deg);
    animation: v21OriginArrow 1.8s ease-in-out infinite;
}

/* Planes */
.v21-plans {
    padding: 120px 0;
    background: #081118;
}

.v21-plans::before {
    content: '';
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: .34;
    background-image: linear-gradient(rgba(0, 214, 162, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 214, 162, .055) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: radial-gradient(circle at 50% 34%, #000, transparent 72%);
}

.v21-plans-toggle {
    position: relative;
    width: max-content;
    max-width: 100%;
    margin: 0 auto 46px;
    padding: 5px;
    border: 1px solid var(--v21-line);
    border-radius: 10px;
    background: rgba(255, 255, 255, .025);
}

.v21-plans-toggle .tg {
    border: 0;
    border-radius: 7px;
    padding: .82rem 1.45rem;
}

.v21-plan-grid.active {
    gap: 18px;
    animation: v21PlansIn .55s cubic-bezier(.16, 1, .3, 1);
}

.v21-web-plans.active { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v21-module-plans.active { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.v21-plan {
    min-width: 0;
    padding: 31px;
    background: linear-gradient(155deg, rgba(18, 29, 36, .98), rgba(10, 17, 22, .98));
    overflow: hidden;
}

.v21-plan::after {
    content: '';
    position: absolute;
    width: 220px;
    height: 220px;
    right: -160px;
    top: -160px;
    border-radius: 50%;
    background: var(--v21-green);
    filter: blur(70px);
    opacity: .06;
    transition: opacity .4s, transform .55s;
}

.v21-plan:hover::after { opacity: .15; transform: scale(1.25); }
.v21-plan-code { display: block; margin-bottom: 27px; color: #65757e; font: 500 .6rem var(--font-mono); letter-spacing: .12em; }
.v21-plan .plan-name { margin-bottom: 8px; color: #f0f5f2; font-size: 1.5rem; }
.v21-plan .plan-tag { min-height: 61px; margin-bottom: 22px; padding-bottom: 20px; }
.v21-plan .plan-price { margin: 0; padding-top: 2px; }
.v21-plan .plan-price .amt { font-size: clamp(2rem, 3.2vw, 2.75rem); letter-spacing: -.05em; }
.v21-tax { display: block; margin: -2px 0 24px; color: #64747d; font: 500 .61rem var(--font-mono); letter-spacing: .08em; }
.v21-plan .plan-feats { padding-top: 21px; border-top: 1px solid var(--v21-line); }
.v21-plan .plan-feats li::before { content: '✓'; flex: 0 0 auto; color: var(--v21-green); font: 600 .75rem var(--font-mono); }
.v21-plan-integral { border-color: rgba(201, 168, 76, .3); }
.v21-plan-integral::after { background: var(--gold); }
.v21-plan-ai::after { background: var(--v2-violet); }

.v21-price-note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: start;
    margin-top: 22px;
    padding: 22px 25px;
    border: 1px solid var(--v21-line);
    border-radius: 12px;
    color: #84949d;
    background: rgba(255, 255, 255, .02);
}

.v21-price-note span {
    color: var(--v21-green);
    font: 500 .65rem var(--font-mono);
    letter-spacing: .1em;
    text-transform: uppercase;
}

.v21-price-note p { margin: 0; font: 400 .75rem/1.65 var(--font-body); }

/* Planes 2.2: selector por ruta comercial */
.v22-route-selector {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: min(100%, 850px);
    margin-bottom: 38px;
    padding: 6px;
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .2);
}

.v22-route-selector .tg {
    position: relative;
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 11px;
    align-items: center;
    min-width: 0;
    padding: 13px 15px;
    text-align: left;
    text-transform: none;
    letter-spacing: 0;
    color: #71808a;
    background: transparent;
    cursor: pointer;
    isolation: isolate;
    overflow: hidden;
}

.v22-route-selector .tg::before {
    content: '';
    position: absolute;
    z-index: -1;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(0, 214, 162, .15), rgba(69, 217, 255, .055));
    opacity: 0;
    transform: scale(.94);
    transition: opacity .35s, transform .45s cubic-bezier(.16, 1, .3, 1);
}

.v22-route-selector .tg::after {
    content: '';
    position: absolute;
    left: 18%;
    right: 18%;
    bottom: 0;
    height: 1px;
    background: var(--v21-green);
    box-shadow: 0 0 18px var(--v21-green);
    opacity: 0;
    transform: scaleX(.2);
    transition: opacity .35s, transform .5s cubic-bezier(.16, 1, .3, 1);
}

.v22-route-selector .tg.active {
    color: #eff8f4;
    background: transparent;
    box-shadow: none;
}

.v22-route-selector .tg.active::before,
.v22-route-selector .tg.active::after { opacity: 1; transform: none; }
.v22-route-selector .tg:focus-visible { outline: 2px solid var(--v21-green); outline-offset: 3px; }

.v22-tab-icon {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 9px;
    color: #667780;
    font: 500 .58rem var(--font-mono);
    transition: color .35s, border-color .35s, background .35s, box-shadow .35s;
}

.v22-route-selector .tg.active .v22-tab-icon {
    color: #06100d;
    border-color: var(--v21-green);
    background: var(--v21-green);
    box-shadow: 0 0 22px rgba(0, 214, 162, .3);
}

.v22-route-selector strong,
.v22-route-selector small { display: block; }
.v22-route-selector strong { color: inherit; font: 600 .82rem var(--font-body); }
.v22-route-selector small { margin-top: 3px; color: #607079; font: 400 .62rem var(--font-body); }
.v22-route-selector .tg.active small { color: #8fa19a; }

.v22-plan-stage {
    position: relative;
    min-height: 510px;
    transition: height .55s cubic-bezier(.16, 1, .3, 1);
}

.v22-plan-grid.active { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plans-set.is-leaving { pointer-events: none; animation: v22PlansOut .22s ease both; }
.v22-plan-grid.active .v22-plan { animation: v22CardIn .65s cubic-bezier(.16, 1, .3, 1) both; animation-delay: calc(var(--card-index, 0) * 85ms); }

.v22-plan {
    --plan-accent: var(--v21-green);
    border-top-color: color-mix(in srgb, var(--plan-accent) 48%, transparent);
}

.v22-plan::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 52%;
    height: 1px;
    background: linear-gradient(90deg, var(--plan-accent), transparent);
    box-shadow: 0 0 17px color-mix(in srgb, var(--plan-accent) 55%, transparent);
    transform-origin: left;
    animation: v22PlanSignal 3.8s ease-in-out infinite;
}

.v22-plan::after { background: var(--plan-accent); }
.v22-plan-audience {
    display: inline-flex;
    align-self: flex-start;
    margin: -11px 0 16px;
    padding: 6px 9px;
    border: 1px solid color-mix(in srgb, var(--plan-accent) 23%, transparent);
    border-radius: 999px;
    color: color-mix(in srgb, var(--plan-accent) 78%, #d9e2de);
    background: color-mix(in srgb, var(--plan-accent) 7%, transparent);
    font: 500 .58rem var(--font-mono);
    letter-spacing: .035em;
}

.v22-plan .plan-price .cur,
.v22-plan .plan-feats li::before { color: var(--plan-accent); }

.v22-plan-specs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    margin: 0 0 22px;
}

.v22-plan-specs span {
    min-width: 0;
    padding: 10px 8px;
    border: 1px solid rgba(255, 255, 255, .065);
    border-radius: 8px;
    color: #697a83;
    background: rgba(255, 255, 255, .018);
    font: 400 .58rem/1.3 var(--font-body);
}

.v22-plan-specs b {
    display: block;
    margin-bottom: 2px;
    color: #eaf3ef;
    font: 600 .72rem var(--font-mono);
}

.v22-plan-connected { box-shadow: 0 25px 65px rgba(0, 0, 0, .2), 0 0 38px rgba(168, 147, 255, .055); }
.v22-plan-connected .plan-badge { white-space: nowrap; }

.v22-integral-plan {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, .85fr) minmax(420px, 1.35fr);
    gap: clamp(34px, 6vw, 90px);
    align-items: center;
    margin-top: 26px;
    padding: clamp(34px, 5vw, 66px);
    border: 1px solid rgba(201, 168, 76, .28);
    border-radius: 22px;
    background: radial-gradient(circle at 0 50%, rgba(201, 168, 76, .075), transparent 34%), linear-gradient(145deg, rgba(18, 27, 31, .98), rgba(8, 14, 18, .98));
    box-shadow: 0 34px 100px rgba(0, 0, 0, .28);
    overflow: hidden;
}

.v22-integral-plan::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 35%, rgba(201, 168, 76, .08), transparent 65%);
    transform: translateX(-110%);
    animation: v21RoutesGlint 7s ease-in-out infinite;
}

.v22-integral-glow {
    position: absolute;
    right: -180px;
    top: -220px;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: repeating-radial-gradient(circle, transparent 0 48px, rgba(201, 168, 76, .08) 49px 50px);
    opacity: .75;
    animation: v21Rotate 28s linear infinite;
}

.v22-integral-copy,
.v22-integral-system { position: relative; z-index: 1; }
.v22-integral-copy .plan-name { margin-bottom: 12px; color: #f5f0e3; font-size: clamp(2rem, 3.6vw, 3.35rem); }
.v22-integral-copy > p { max-width: 570px; color: #8c9994; font-size: .92rem; line-height: 1.72; }
.v22-integral-copy .plan-price { margin-top: 26px; }
.v22-integral-copy .plan-price .cur { color: var(--gold); }
.v22-integral-copy .plan-price .amt { font-size: clamp(2.4rem, 4.5vw, 4.15rem); letter-spacing: -.06em; }
.v22-integral-copy .btn { margin-top: 19px; }

.v22-integral-system {
    padding: 25px;
    border: 1px solid rgba(201, 168, 76, .15);
    border-radius: 16px;
    background: rgba(4, 9, 12, .42);
}

.v22-integral-flow {
    display: grid;
    grid-template-columns: repeat(9, auto);
    gap: 8px;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
}

.v22-integral-flow span {
    display: grid;
    place-items: center;
    min-width: 52px;
    min-height: 40px;
    border: 1px solid rgba(201, 168, 76, .18);
    border-radius: 8px;
    color: #d8c997;
    background: rgba(201, 168, 76, .045);
    font: 500 .6rem var(--font-mono);
    animation: v22IntegralNode 4.5s ease-in-out infinite;
}

.v22-integral-flow span:nth-of-type(2) { animation-delay: .3s; }
.v22-integral-flow span:nth-of-type(3) { animation-delay: .6s; }
.v22-integral-flow span:nth-of-type(4) { animation-delay: .9s; }
.v22-integral-flow span:nth-of-type(5) { animation-delay: 1.2s; }
.v22-integral-flow i { color: var(--v21-green); font-style: normal; animation: v21FlowArrow 1.3s ease-in-out infinite; }

.v22-integral-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 20px 0;
}

.v22-integral-metrics span {
    padding: 13px;
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 9px;
    color: #71817a;
    font-size: .68rem;
}

.v22-integral-metrics b { display: block; margin-bottom: 2px; color: #f0f4f1; font: 600 .9rem var(--font-mono); }
.v22-integral-system .plan-feats { display: grid; grid-template-columns: 1fr 1fr; gap: 9px 18px; margin: 0; }
.v22-integral-system .plan-feats li { font-size: .76rem; }
.v22-integral-system .plan-feats li::before { content: '✓'; color: var(--gold); }

/* Integraciones */
.v21-integrations { padding: 120px 0 104px; }
.v21-integrations .integ-rows { margin-top: 32px; }
.v21-integrations .integ-row { padding: 4px 0; }
.v21-integrations .integ-row:hover .integ-track { animation-play-state: paused; }
.v21-integrations .integ-cell { position: relative; overflow: hidden; }
.v21-integrations .integ-cell::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(115deg, transparent 35%, rgba(255, 255, 255, .7) 50%, transparent 65%); transform: translateX(-130%); transition: transform .65s; }
.v21-integrations .integ-cell:hover::after { transform: translateX(130%); }
.v21-integration-note { max-width: 680px; margin: 30px auto 0; padding: 0 24px; text-align: center; color: #6d7c84; font: 400 .68rem/1.6 var(--font-body); }

/* Tema claro completo */
html[data-theme="light"] .v21-live-section::after { background: rgba(0, 166, 126, .08); }
html[data-theme="light"] .v21-hero,
html[data-theme="light"] .v2-route-section,
html[data-theme="light"] .v2-pillars,
html[data-theme="light"] .v21-plans,
html[data-theme="light"] .v21-integrations { background: #f3f5f2; }
html[data-theme="light"] .v2-foundation,
html[data-theme="light"] .v2-diagnostic,
html[data-theme="light"] .v21-method,
html[data-theme="light"] .v2-system,
html[data-theme="light"] .v2-contact { background: #e9eeea; }
html[data-theme="light"] .v21-sola { -webkit-text-stroke-color: rgba(20, 46, 39, .55); filter: drop-shadow(0 0 18px rgba(0, 166, 126, .13)); }
html[data-theme="light"] .v21-hero-tech p { color: #65756f; }
html[data-theme="light"] .v21-hero-tech .hero-tech-logos img { opacity: .6; filter: grayscale(1) contrast(.95); }
html[data-theme="light"] .v21-hero-tech .hero-tech-logos img:hover { opacity: 1; filter: grayscale(0); }
html[data-theme="light"] .v21-routes,
html[data-theme="light"] .v21-browser,
html[data-theme="light"] .v21-score-card,
html[data-theme="light"] .v21-plan { box-shadow: 0 28px 68px rgba(32, 58, 49, .1); }
html[data-theme="light"] .v21-routes .v2-route { background-color: rgba(255, 255, 255, .48); }
html[data-theme="light"] .v21-routes .v2-route:hover { background-color: rgba(0, 166, 126, .07); }
html[data-theme="light"] .v21-agent-panel { border-color: rgba(21, 49, 41, .12); background: linear-gradient(155deg, #fbfdfb, #edf3ef); }
html[data-theme="light"] .v21-agent-head { border-bottom-color: rgba(21, 49, 41, .1); }
html[data-theme="light"] .v21-agent-head strong { color: #18251f; }
html[data-theme="light"] .v21-agent-head small { color: #6c7b74; }
html[data-theme="light"] .v21-chat-msg { color: #46564f; border-color: rgba(21, 49, 41, .11); background: rgba(27, 52, 44, .04); }
html[data-theme="light"] .v21-chat-msg.user { color: #193a30; border-color: rgba(0, 166, 126, .2); background: rgba(0, 166, 126, .09); }
html[data-theme="light"] .v21-browser-stage .v2-connectors span.is-active { color: #15382d; }
html[data-theme="light"] .v2-checks li { color: #344a42; }
html[data-theme="light"] .v2-checks span { color: #007c60; background: rgba(0, 166, 126, .11); }
html[data-theme="light"] .v2-versions span,
html[data-theme="light"] .v2-flow-list span { color: #5c6b65; border-color: rgba(20, 48, 39, .12); }
html[data-theme="light"] .v2-versions b,
html[data-theme="light"] .v2-pipeline b { color: #1c3029; }
html[data-theme="light"] .v2-pipeline span { color: #64736d; background: rgba(26, 50, 42, .045); }
html[data-theme="light"] .v2-chat-demo p { color: #52605b; }
html[data-theme="light"] .v21-pillar:hover { background: rgba(255, 255, 255, .5); box-shadow: 0 26px 60px rgba(28, 52, 44, .1); }
html[data-theme="light"] .v2-system-flow article { border-color: rgba(18, 50, 40, .13); background: rgba(255, 255, 255, .35); }
html[data-theme="light"] .v2-system-flow h3 { color: #17231e; }
html[data-theme="light"] .v2-system-flow p { color: #5b6a64; }
html[data-theme="light"] .v2-system-flow article > span { color: #6a7973; }
html[data-theme="light"] .v21-system-flow article.is-active { background: rgba(0, 166, 126, .08); box-shadow: 0 15px 35px rgba(32, 58, 49, .08); }
html[data-theme="light"] .v2-integral-cta { background: radial-gradient(circle at 0 50%, rgba(0, 166, 126, .1), transparent 45%), rgba(255, 255, 255, .38); }
html[data-theme="light"] .v2-integral-cta h3 { color: #17231e; }
html[data-theme="light"] .v2-integral-cta p { color: #5b6a64; }
html[data-theme="light"] .v2-score-head { color: #65756e; border-bottom-color: rgba(18, 50, 40, .12); }
html[data-theme="light"] .v2-score-row { color: #53635c; }
html[data-theme="light"] .v2-score-row > i { background: rgba(29, 53, 45, .11); }
html[data-theme="light"] .v2-score-row strong,
html[data-theme="light"] .v2-score-next b { color: #1b3028; }
html[data-theme="light"] .v2-score-next { border-color: rgba(0, 166, 126, .2); background: rgba(0, 166, 126, .07); }
html[data-theme="light"] .v2-privacy-note { color: #687870; }
html[data-theme="light"] .v21-method .metodo-logo-img { filter: drop-shadow(0 16px 32px rgba(31, 52, 45, .16)); }
html[data-theme="light"] .v21-process .proc-line { background: rgba(15, 42, 34, .14); }
html[data-theme="light"] .v21-origin .manifesto-video { opacity: .11; filter: grayscale(.2) saturate(.65); }
html[data-theme="light"] .v21-origin .manifesto-overlay { background: linear-gradient(90deg, rgba(242, 239, 229, .97), rgba(242, 239, 229, .88)), radial-gradient(circle at 80% 50%, rgba(201, 168, 76, .12), transparent 38%); }
html[data-theme="light"] .v21-origin-watermark { color: rgba(47, 52, 48, .026); }
html[data-theme="light"] .v21-origin h2 { color: #17211d; }
html[data-theme="light"] .v21-origin .v2-manifesto-lead { color: #52615b; }
html[data-theme="light"] .v21-origin-story article { border-color: rgba(30, 50, 43, .13); background: rgba(255, 255, 255, .46); }
html[data-theme="light"] .v21-origin-story h3 { color: #17211d; }
html[data-theme="light"] .v21-origin-story p { color: #53625c; }
html[data-theme="light"] .v21-plans::before { opacity: .5; }
html[data-theme="light"] .v21-plans-toggle { border-color: rgba(18, 50, 40, .13); background: rgba(255, 255, 255, .52); }
html[data-theme="light"] .v21-plan { border-color: rgba(18, 50, 40, .13); background: linear-gradient(155deg, #fff, #eef3ef); }
html[data-theme="light"] .v21-plan .plan-name { color: #17211d; }
html[data-theme="light"] .v21-plan .plan-tag,
html[data-theme="light"] .v21-plan .plan-feats li { color: #586761; }
html[data-theme="light"] .v21-plan-code,
html[data-theme="light"] .v21-tax { color: #687871; }
html[data-theme="light"] .v21-plan .plan-feats { border-top-color: rgba(18, 50, 40, .12); }
html[data-theme="light"] .v21-price-note { color: #586761; border-color: rgba(18, 50, 40, .13); background: rgba(255, 255, 255, .45); }
html[data-theme="light"] .v22-route-selector { background: rgba(255, 255, 255, .62); box-shadow: 0 22px 60px rgba(32, 58, 49, .08); }
html[data-theme="light"] .v22-route-selector .tg { color: #66766f; }
html[data-theme="light"] .v22-route-selector .tg.active { color: #17352b; }
html[data-theme="light"] .v22-route-selector small { color: #7b8983; }
html[data-theme="light"] .v22-route-selector .tg.active small { color: #557168; }
html[data-theme="light"] .v22-tab-icon { border-color: rgba(19, 48, 39, .13); }
html[data-theme="light"] .v22-plan-audience { color: color-mix(in srgb, var(--plan-accent) 72%, #19372d); }
html[data-theme="light"] .v22-plan-specs span { color: #63736c; border-color: rgba(18, 50, 40, .11); background: rgba(255, 255, 255, .45); }
html[data-theme="light"] .v22-plan-specs b { color: #1d332b; }
html[data-theme="light"] .v22-integral-plan { border-color: rgba(154, 119, 33, .28); background: radial-gradient(circle at 0 50%, rgba(201, 168, 76, .12), transparent 36%), linear-gradient(145deg, #fffdf6, #eaf0ec); box-shadow: 0 30px 80px rgba(39, 58, 50, .12); }
html[data-theme="light"] .v22-integral-copy .plan-name { color: #242a24; }
html[data-theme="light"] .v22-integral-copy > p { color: #5b6a64; }
html[data-theme="light"] .v22-integral-system { border-color: rgba(154, 119, 33, .18); background: rgba(255, 255, 255, .5); }
html[data-theme="light"] .v22-integral-flow { border-bottom-color: rgba(19, 48, 39, .1); }
html[data-theme="light"] .v22-integral-flow span { color: #765e20; border-color: rgba(154, 119, 33, .22); background: rgba(201, 168, 76, .08); }
html[data-theme="light"] .v22-integral-metrics span { color: #63736c; border-color: rgba(18, 50, 40, .1); }
html[data-theme="light"] .v22-integral-metrics b { color: #1d332b; }
html[data-theme="light"] .v22-integral-system .plan-feats li { color: #586761; }
html[data-theme="light"] .v21-integration-note { color: #66756e; }

/* Animaciones */
@keyframes v21SolaSweep { 0%, 16% { background-position: 190% 0; } 62%, 100% { background-position: -95% 0; } }
@keyframes v21HeroScan { 0%, 16% { transform: translateX(-70%); } 70%, 100% { transform: translateX(70%); } }
@keyframes v21ButtonShine { 0%, 58% { transform: translateX(-130%); } 82%, 100% { transform: translateX(130%); } }
@keyframes v21PanelFloat { 0%, 100% { translate: 0 0; } 50% { translate: 0 -9px; } }
@keyframes v21PanelGlint { 0%, 55% { transform: translateX(-65%) rotate(8deg); } 82%, 100% { transform: translateX(65%) rotate(8deg); } }
@keyframes v21ChartDraw { to { stroke-dashoffset: 0; } }
@keyframes v21ChartGlow { 0%, 100% { filter: drop-shadow(0 0 5px rgba(0, 214, 162, .4)); } 50% { filter: drop-shadow(0 0 12px rgba(0, 214, 162, .8)); } }
@keyframes v21Beam { 0%, 100% { transform: translateX(-22%); opacity: .1; } 50% { transform: translateX(22%); opacity: .5; } }
@keyframes v21RoutesGlint { 0%, 58% { transform: translateX(-110%); } 82%, 100% { transform: translateX(110%); } }
@keyframes v21Rotate { to { rotate: 360deg; } }
@keyframes v21Breath { 0%, 100% { transform: scale(.92); opacity: .35; } 50% { transform: scale(1.06); opacity: .7; } }
@keyframes v21Status { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }
@keyframes v21Ambient { to { transform: translate(-80px, 80px) scale(1.12); } }
@keyframes v21Bar { from { transform: scaleY(.62); opacity: .55; } to { transform: scaleY(1); opacity: 1; } }
@keyframes v21MiniScan { from { transform: translateY(-28px); } to { transform: translateY(28px); } }
@keyframes v21Pipeline { 0%, 70%, 100% { border-color: var(--v2-line); transform: translateY(0); } 16%, 38% { border-color: rgba(198, 242, 78, .38); transform: translateY(-3px); } }
@keyframes v21Arrow { 0%, 100% { transform: translateX(0); opacity: .38; } 50% { transform: translateX(5px); opacity: 1; } }
@keyframes v21AiGlow { 0%, 100% { box-shadow: 0 0 0 rgba(155, 140, 255, 0); } 50% { box-shadow: 0 0 26px rgba(155, 140, 255, .32); } }
@keyframes v21FlowBg { to { transform: translateX(5%) scale(1.05); } }
@keyframes v21FlowArrow { 0%, 100% { transform: translateX(-5px); opacity: .25; } 50% { transform: translateX(6px); opacity: 1; } }
@keyframes v21ScoreGlow { 0%, 100% { transform: translateX(-28%); opacity: .45; } 50% { transform: translateX(28%); opacity: 1; } }
@keyframes v21LogoFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes v21ProcessLine { to { transform: translateX(100%); } }
@keyframes v21StepIn { from { opacity: .28; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes v21OriginArrow { 0%, 100% { translate: 0 -4px; opacity: .35; } 50% { translate: 0 5px; opacity: 1; } }
@keyframes v21PlansIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes v22PlansOut { to { opacity: 0; transform: translateY(-9px) scale(.99); } }
@keyframes v22CardIn { from { opacity: 0; transform: translateY(24px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes v22PlanSignal { 0%, 100% { transform: scaleX(.25); opacity: .35; } 50% { transform: scaleX(1); opacity: 1; } }
@keyframes v22IntegralNode { 0%, 70%, 100% { box-shadow: 0 0 0 rgba(201, 168, 76, 0); transform: translateY(0); } 15%, 35% { box-shadow: 0 0 22px rgba(201, 168, 76, .12); transform: translateY(-3px); } }

/* Responsive */
@media (max-width: 1180px) {
    .nav-links { gap: 1.15rem; margin-left: 1.5rem; }
    .nav-area-btn { margin-right: .7rem; }
    .v21-hero .v2-hero-grid { gap: 38px; }
    .v21-hero-copy h1 { font-size: clamp(3.5rem, 6.3vw, 5.6rem); }
    .v21-module-plans.active { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1050px) {
    .v21-hero { min-height: auto; padding-bottom: 96px; }
    .v21-hero .v2-hero-grid { grid-template-columns: 1fr; }
    .v21-hero-copy h1 { max-width: 920px; font-size: clamp(4rem, 10vw, 7.2rem); }
    .v21-command { width: min(100%, 820px); animation-name: v21PanelFloat; }
    .v21-command.reveal,
    .v21-command.reveal.in { transform: none; }
    .v21-browser-stage { min-height: 410px; }
    .v21-origin-grid { grid-template-columns: 1fr; gap: 45px; }
    .v21-origin-story { grid-template-columns: 1fr 44px 1fr; align-items: stretch; }
    .v21-origin-story > i { align-self: center; transform: none; }
    .v21-system-flow article { opacity: 1; transform: none; }
}

@media (max-width: 980px) {
    .v21-web-plans.active,
    .v21-module-plans.active { grid-template-columns: 1fr 1fr; max-width: none; }
    .v22-plan-grid.active { grid-template-columns: 1fr 1fr; max-width: none; }
    .v22-plan-grid.active .v22-plan:last-child { grid-column: 1 / -1; }
    .v22-integral-plan { grid-template-columns: 1fr; }
    .v21-method .proc-steps { max-width: 760px; margin: 0 auto; }
    .v21-process.is-animated .pstep { animation-name: v21StepIn; }
}

@media (max-width: 760px) {
    .v21-hero { padding: 118px 0 70px; }
    .v21-hero-copy h1 { font-size: clamp(3.05rem, 15.5vw, 5rem); line-height: .91; }
    .v21-hero-copy > p { font-size: .98rem; line-height: 1.65; }
    .v21-hero-tech { margin-top: 24px; }
    .v21-hero-tech .hero-tech-logos { gap: 16px 21px; }
    .v21-hero-tech .hero-tech-logos img { height: 22px; }
    .v21-command { animation: none; }
    .v21-routes .v2-route:hover,
    .v21-pillar:hover { transform: none; }
    .v21-browser-stage { grid-template-columns: 1fr; min-height: 0; padding: 16px; }
    .v21-agent-panel { padding: 20px; }
    .v21-agent-messages { min-height: 260px; }
    .v21-browser-stage .v2-connectors { display: grid; grid-template-columns: 1fr 1fr; }
    .v21-browser-stage .v2-connectors span.is-active { transform: none; }
    .v21-origin { min-height: auto; padding: 88px 0; }
    .v21-origin-grid { gap: 34px; }
    .v21-origin-story { grid-template-columns: 1fr; }
    .v21-origin-story > i { transform: rotate(90deg); }
    .v21-plans { padding: 90px 0; }
    .v21-web-plans.active,
    .v21-module-plans.active { grid-template-columns: 1fr; max-width: 540px; margin-inline: auto; }
    .v22-plan-grid.active { grid-template-columns: 1fr; max-width: 540px; margin-inline: auto; }
    .v22-plan-grid.active .v22-plan:last-child { grid-column: auto; }
    .v22-integral-plan { padding: 35px 27px; }
    .v22-integral-flow { gap: 5px; }
    .v22-integral-flow span { min-width: 44px; }
    .v21-plan .plan-tag { min-height: 0; }
    .v21-price-note { grid-template-columns: 1fr; gap: 7px; }
    .v21-integrations { padding: 90px 0 80px; }
    .v21-integrations .integ-row:hover .integ-track { animation-play-state: running; }
    .v21-integrations .integ-cell { width: 154px; height: 92px; padding: 17px; }
}

@media (max-width: 520px) {
    .v21-hero-copy h1 { font-size: clamp(2.9rem, 15vw, 4.2rem); }
    .v21-sola { -webkit-text-stroke-width: 1px; }
    .v21-hero-tech .hero-tech-logos { gap: 14px 18px; }
    .v21-hero-tech .hero-tech-logos img { height: 20px; }
    .v2-browser-bar { padding: 0 13px; }
    .v2-browser-bar > span { max-width: 155px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .v2-browser-bar b { font-size: 0; }
    .v2-browser-bar b span { margin: 0; }
    .v21-agent-panel { padding: 16px; }
    .v21-chat-msg { max-width: 94%; }
    .v21-browser-stage .v2-connectors { grid-template-columns: 1fr; }
    .v21-plans-toggle { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
    .v21-plans-toggle .tg { padding: .75rem .55rem; font-size: .7rem; }
    .v22-route-selector {
        grid-template-columns: repeat(3, minmax(150px, 1fr));
        justify-content: start;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
        scroll-snap-type: inline mandatory;
    }
    .v22-route-selector .tg { grid-template-columns: 28px 1fr; min-width: 150px; padding: 11px 9px; scroll-snap-align: start; }
    .v22-route-selector .v22-tab-icon { width: 28px; height: 28px; }
    .v22-route-selector strong { font-size: .7rem; }
    .v22-route-selector small { font-size: .55rem; }
    .v21-plan { padding: 28px 23px; }
    .v21-plan .plan-price .amt { font-size: 2.15rem; }
    .v22-plan-specs { gap: 5px; }
    .v22-plan-specs span { padding: 9px 6px; }
    .v22-integral-flow { grid-template-columns: repeat(5, 1fr); }
    .v22-integral-flow i { display: none; }
    .v22-integral-flow span { min-width: 0; min-height: 37px; }
    .v22-integral-metrics,
    .v22-integral-system .plan-feats { grid-template-columns: 1fr; }
    .v21-origin-story article { padding: 22px; }
    .v21-score-card .v2-score-row { grid-template-columns: 94px 1fr 25px; }
}

@media (hover: none) {
    .v21-pillar:hover,
    .v21-routes .v2-route:hover,
    .v21-plan:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .v21-sola {
        background-position: 50% 0;
        -webkit-text-fill-color: var(--v21-green);
    }
    .v21-chart-path { stroke-dashoffset: 0; }
    .v21-system-flow article { opacity: 1; transform: none; }
    .v21-score-card .v2-score-row > i b { width: var(--score, 0%); }
    .v22-plan-grid.active .v22-plan,
    .plans-set.is-leaving,
    .v22-plan::before,
    .v22-integral-plan::before,
    .v22-integral-glow,
    .v22-integral-flow span { animation: none; }
    .v22-plan-stage { transition: none; }
}


/* Badge destacado en esquina */
.v21-plan.feat > .plan-badge.v22-corner-badge {
    top: 17px;
    right: 17px;
    left: auto;
    z-index: 6;

    display: inline-flex;
    align-items: center;
    gap: 7px;

    width: auto;
    max-width: calc(100% - 34px);
    padding: 7px 12px;

    color: #03110d;
    background: linear-gradient(135deg, #00d6a2, #00b98d);
    border: 1px solid rgba(109, 255, 213, 0.5);
    border-radius: 7px 10px 7px 7px;

    box-shadow:
        0 8px 24px rgba(0, 214, 162, 0.22),
        0 0 18px rgba(0, 214, 162, 0.12);

    font-family: var(--font-mono);
    font-size: 0.56rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;

    transform: none;
    animation: v22CornerBadge 3s ease-in-out infinite;
}

/* Pequeño indicador tecnológico */
.v21-plan.feat > .plan-badge.v22-corner-badge::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: #03241b;
    box-shadow: 0 0 0 3px rgba(3, 36, 27, 0.12);
}

/* Pliegue inferior de la etiqueta */
.v21-plan.feat > .plan-badge.v22-corner-badge::after {
    content: "";
    position: absolute;
    right: 4px;
    bottom: -6px;

    width: 0;
    height: 0;

    border-top: 6px solid #007b61;
    border-left: 6px solid transparent;
}

/* Evita que el código del plan pase detrás del badge */
.v21-plan.feat > .v21-plan-code {
    min-height: 22px;
    padding-right: clamp(135px, 47%, 175px);
}

@keyframes v22CornerBadge {
    0%,
    100% {
        box-shadow:
            0 8px 24px rgba(0, 214, 162, 0.18),
            0 0 14px rgba(0, 214, 162, 0.1);
    }

    50% {
        box-shadow:
            0 10px 30px rgba(0, 214, 162, 0.3),
            0 0 24px rgba(0, 214, 162, 0.18);
    }
}

@media (prefers-reduced-motion: reduce) {
    .v21-plan.feat > .plan-badge.v22-corner-badge {
        animation: none;
    }
}


/* ============================================================
   KUSHIM · ECOSISTEMAS EN FUNCIONAMIENTO
   ============================================================ */
.kx-cases{
    --kx-gap:clamp(18px,2.2vw,38px);
    --kx-card-w:min(calc(100vw - 12rem),calc(var(--maxw,1320px) - 4rem));
    position:relative;width:100vw;min-height:100vh;height:100vh;
    margin-left:calc(50% - 50vw);overflow:hidden;
    display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;
    align-items:stretch;padding:clamp(88px,9vh,118px) 0 clamp(24px,3.3vh,38px);
    background:radial-gradient(circle at 50% 50%,rgba(0,214,162,.065),transparent 42%),
               linear-gradient(180deg,#071018 0%,#070d12 100%);
    isolation:isolate;
}
.kx-cases:before{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
               linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
    background-size:72px 72px;
    mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);
    opacity:.5}
.kx-cases-ambient{position:absolute;width:54vw;height:54vw;left:50%;top:50%;
    transform:translate(-50%,-42%);border-radius:50%;
    background:radial-gradient(circle,rgba(0,214,162,.12),rgba(0,214,162,.035) 35%,transparent 70%);
    filter:blur(55px);pointer-events:none}
.kx-cases-head{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;
    column-gap:40px;align-items:end;z-index:6;padding-bottom:clamp(18px,2.5vh,30px)}
.kx-cases-head .sec-tag{grid-column:1/2;margin-bottom:10px}
.kx-cases-head .sec-title{grid-column:1/2;font-size:clamp(2rem,3.15vw,3.65rem);line-height:.98;margin:0}
.kx-cases-head .sec-intro{grid-column:1/2;margin-top:14px;max-width:720px;font-size:clamp(.86rem,1vw,.98rem)}
.kx-case-counter{grid-column:2/3;grid-row:1/4;align-self:end;display:flex;align-items:center;gap:12px;
    padding-bottom:3px;color:#73818a;font:500 .67rem 'Chivo Mono',monospace;letter-spacing:.1em}
.kx-case-counter span:first-child{color:var(--v2-green);font-size:.82rem}
.kx-case-counter i{width:82px;height:1px;background:rgba(255,255,255,.15);position:relative;overflow:hidden}
.kx-case-counter i:after{content:"";position:absolute;inset:0;background:var(--v2-green);
    transform-origin:left;transform:scaleX(var(--case-progress,.3333));
    transition:transform .6s cubic-bezier(.2,.75,.2,1)}

.kx-cases-stage{position:relative;width:100vw;min-height:0;display:flex;align-items:center;z-index:4;touch-action:pan-y}
.kx-cases-track{display:flex;align-items:center;gap:var(--kx-gap);width:max-content;will-change:transform;
    transition:transform .78s cubic-bezier(.16,.84,.24,1)}
.kx-cases-stage.is-dragging .kx-cases-track{transition:none}
.kx-case{position:relative;flex:0 0 var(--kx-card-w);width:var(--kx-card-w);
    height:min(62vh,650px);min-height:500px;overflow:hidden;
    border:1px solid rgba(255,255,255,.1);border-radius:26px;background:#0a1015;
    opacity:.34;filter:saturate(.55) brightness(.72);transform:scale(.885);transform-origin:center;
    transition:transform .78s cubic-bezier(.16,.84,.24,1),opacity .65s ease,filter .65s ease,
               border-color .55s ease,box-shadow .65s ease;
    box-shadow:0 24px 80px rgba(0,0,0,.32)}
.kx-case.is-active{opacity:1;filter:none;transform:scale(1);
    border-color:color-mix(in srgb,var(--case-accent) 46%,rgba(255,255,255,.08));
    box-shadow:0 42px 115px rgba(0,0,0,.5),
               0 0 0 1px color-mix(in srgb,var(--case-accent) 18%,transparent),
               0 0 85px color-mix(in srgb,var(--case-accent) 9%,transparent)}
.kx-case-bg{position:absolute;inset:-6%;background-image:var(--case-bg);background-size:cover;background-position:center;
    filter:blur(15px) saturate(1.08);transform:scale(1.08);opacity:.52;
    transition:transform 1.2s cubic-bezier(.16,.84,.24,1),opacity .6s ease}
.kx-case.is-active .kx-case-bg{transform:scale(1.025);opacity:.68}
.kx-case-shade{position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(5,9,13,.95) 0%,rgba(5,9,13,.87) 42%,rgba(5,9,13,.44) 72%,rgba(5,9,13,.7) 100%),
               linear-gradient(180deg,rgba(5,9,13,.12),rgba(5,9,13,.66))}
.kx-case-shade:after{content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 76% 42%,color-mix(in srgb,var(--case-accent) 16%,transparent),transparent 35%)}
.kx-case-inner{position:relative;z-index:2;height:100%;display:grid;
    grid-template-columns:minmax(0,.96fr) minmax(420px,1.04fr);
    gap:clamp(28px,3vw,55px);align-items:center;padding:clamp(26px,3vw,48px)}
.kx-case-copy{max-height:100%;display:flex;flex-direction:column;align-items:flex-start}
.kx-case-brand{display:flex;align-items:center;gap:13px;margin-bottom:19px}
.kx-case-brand-mark{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;
    border:1px solid color-mix(in srgb,var(--case-accent) 55%,rgba(255,255,255,.14));
    background:color-mix(in srgb,var(--case-accent) 13%,rgba(8,14,18,.7));color:var(--case-accent);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);font:700 .95rem 'Chivo',sans-serif}
.kx-case-brand div{display:flex;flex-direction:column}
.kx-case-brand strong{color:#f5f8f6;font:600 1rem 'Chivo',sans-serif;letter-spacing:-.02em}
.kx-case-brand small{color:#7e8b93;font:400 .61rem 'Chivo Mono',monospace;letter-spacing:.035em;margin-top:3px}
.kx-case-kicker{color:var(--case-accent);font:500 .62rem 'Chivo Mono',monospace;letter-spacing:.12em;
    text-transform:uppercase;margin:0 0 11px}
.kx-case h3{color:#f5f7f6;font:600 clamp(1.45rem,2vw,2.15rem)/1.08 'Chivo',sans-serif;
    letter-spacing:-.04em;max-width:650px;margin:0 0 22px}
.kx-case-story{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
    border-top:1px solid rgba(255,255,255,.09);border-left:1px solid rgba(255,255,255,.09);
    border-radius:12px;overflow:hidden;background:rgba(8,13,17,.34);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.kx-case-story>div{min-height:91px;padding:14px 15px 13px;border-right:1px solid rgba(255,255,255,.09);
    border-bottom:1px solid rgba(255,255,255,.09)}
.kx-case-story span{display:block;color:#849198;font:500 .56rem 'Chivo Mono',monospace;
    letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px}
.kx-case-story p{color:#b7c0c4;font:400 .72rem/1.45 'Sora',sans-serif}
.kx-case-story .kx-case-now{background:linear-gradient(135deg,color-mix(in srgb,var(--case-accent) 12%,transparent),rgba(255,255,255,.015))}
.kx-case-story .kx-case-now span{color:var(--case-accent)}
.kx-case-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.kx-case-tags span{padding:6px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;
    color:#aeb9bd;background:rgba(255,255,255,.035);font:500 .56rem 'Chivo Mono',monospace;
    text-transform:uppercase;letter-spacing:.045em}
.kx-case-tags span:first-child{color:var(--case-accent);
    border-color:color-mix(in srgb,var(--case-accent) 30%,rgba(255,255,255,.08));
    background:color-mix(in srgb,var(--case-accent) 8%,transparent)}
.kx-case-actions{display:flex;align-items:center;gap:10px;margin-top:17px}
.kx-case-actions .btn{padding:11px 18px;font-size:.72rem}
.kx-case-detail{color:#bec7ca;padding:10px 4px;font:500 .7rem 'Sora',sans-serif;transition:color .25s ease}
.kx-case-detail:hover{color:var(--case-accent)}
.kx-case-detail span{display:inline-block;margin-left:5px;transition:transform .25s ease}
.kx-case-detail:hover span{transform:translateX(4px)}

.kx-case-browser{width:100%;max-width:650px;justify-self:end;overflow:hidden;
    border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(7,11,15,.62);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    box-shadow:0 30px 80px rgba(0,0,0,.42),0 0 55px color-mix(in srgb,var(--case-accent) 8%,transparent);
    transform:perspective(1200px) rotateY(-3deg) translateZ(0);
    transition:transform .8s cubic-bezier(.16,.84,.24,1)}
.kx-case.is-active .kx-case-browser:hover{transform:perspective(1200px) rotateY(0deg) translateY(-4px)}
.kx-browser-top{height:40px;display:flex;align-items:center;gap:7px;padding:0 14px;
    background:rgba(5,9,13,.82);border-bottom:1px solid rgba(255,255,255,.08)}
.kx-browser-top i{width:7px;height:7px;border-radius:50%;background:#556068}
.kx-browser-top i:first-child{background:var(--case-accent)}
.kx-browser-top span{margin-left:auto;margin-right:auto;transform:translateX(-14px);
    color:#68757d;font:400 .54rem 'Chivo Mono',monospace}

/* Pantalla panorámica: coincide con los videos ~1920x910 */
.kx-browser-screen{position:relative;width:100%;height:auto;aspect-ratio:1920 / 910;overflow:hidden;background:#05090d}
.kx-browser-screen-static{background-size:cover;background-position:center top}
.kx-case-video{position:absolute;inset:0;width:100%;height:100%;display:block;
    object-fit:cover;object-position:center top;background:#05090d}
.kx-browser-screen:after{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,transparent 74%,rgba(5,9,13,.16));z-index:2}
.kx-video-state{position:absolute;left:13px;bottom:12px;z-index:3;
    opacity:0;transform:translateY(4px);color:var(--case-accent);
    font:500 .48rem 'Chivo Mono',monospace;letter-spacing:.11em;
    transition:opacity .3s ease,transform .3s ease}
.kx-case.is-playing .kx-video-state{opacity:.86;transform:none}
.kx-case.is-playing .kx-video-state:before{content:"";display:inline-block;width:5px;height:5px;
    border-radius:50%;margin-right:6px;background:var(--case-accent);
    box-shadow:0 0 9px var(--case-accent);vertical-align:1px}

.kx-browser-caption{min-height:58px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.kx-browser-caption span{color:var(--case-accent);font:500 .54rem 'Chivo Mono',monospace;letter-spacing:.08em}
.kx-browser-caption b{color:#c4ced1;font:500 .67rem 'Sora',sans-serif}

.kx-case-arrow{position:absolute;z-index:10;top:50%;transform:translateY(-50%);
    width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
    border:1px solid rgba(255,255,255,.16);background:rgba(6,11,15,.62);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#dbe5e1;
    transition:background .25s ease,border-color .25s ease,transform .25s ease,color .25s ease}
.kx-case-arrow:hover{background:rgba(0,214,162,.12);border-color:rgba(0,214,162,.5);color:var(--v2-green)}
.kx-case-arrow:active{transform:translateY(-50%) scale(.94)}
.kx-case-arrow svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kx-case-prev{left:clamp(14px,2vw,34px)}.kx-case-next{right:clamp(14px,2vw,34px)}

.kx-case-nav{display:flex;align-items:center;justify-content:center;gap:7px;padding-top:clamp(14px,1.8vh,22px);z-index:6}
.kx-case-nav button{width:7px;height:7px;border-radius:999px;background:#485258;
    transition:width .35s ease,background .35s ease,box-shadow .35s ease}
.kx-case-nav button.is-active{width:28px;background:var(--v2-green);box-shadow:0 0 14px rgba(0,214,162,.58)}
.kx-case-hint{z-index:6;margin:8px auto 0;color:#56636b;font:400 .55rem 'Chivo Mono',monospace;
    letter-spacing:.07em;text-transform:uppercase}

@media (max-width:1180px){
    .kx-cases{--kx-card-w:calc(100vw - 7rem);height:auto;min-height:100vh;padding-bottom:38px}
    .kx-case{height:auto;min-height:610px}
    .kx-case-inner{grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:25px}
    .kx-case-browser{max-width:500px}
}
@media (max-width:900px){
    .kx-cases{--kx-card-w:calc(100vw - 3.5rem);height:auto;min-height:0;
        grid-template-rows:auto auto auto auto;padding:90px 0 34px}
    .kx-cases-head{display:block;padding-bottom:22px}
    .kx-case-counter{margin-top:15px}.kx-case-counter i{width:65px}
    .kx-cases-stage{align-items:flex-start}
    .kx-case{min-height:0;height:auto;border-radius:21px}
    .kx-case-inner{grid-template-columns:1fr;padding:26px}
    .kx-case-browser{justify-self:stretch;max-width:none;order:-1}
    .kx-case-story>div{min-height:0}
    .kx-case-arrow{width:42px;height:42px;top:210px}
}
@media (max-width:620px){
    .kx-cases{--kx-card-w:calc(100vw - 2rem);padding-top:82px}
    .kx-cases-head{padding-left:1rem;padding-right:1rem}
    .kx-cases-head .sec-title{font-size:clamp(2rem,11vw,3rem)}
    .kx-cases-head .sec-intro{font-size:.84rem}
    .kx-case-inner{padding:18px}.kx-case{border-radius:18px}
    .kx-case h3{font-size:1.45rem}.kx-case-story{grid-template-columns:1fr}
    .kx-case-story>div{padding:13px 14px}.kx-case-brand small{display:none}
    .kx-case-actions{width:100%;flex-wrap:wrap}
    .kx-case-actions .btn{flex:1;text-align:center;justify-content:center}
    .kx-case-arrow{top:165px;width:38px;height:38px}
    .kx-case-prev{left:7px}.kx-case-next{right:7px}.kx-case-hint{display:none}
}
@media (prefers-reduced-motion:reduce){
    .kx-cases-track,.kx-case,.kx-case-bg,.kx-case-browser{transition:none!important}
}
html[data-theme="light"] .kx-cases{
    background:radial-gradient(circle at 50% 50%,rgba(0,184,148,.08),transparent 42%),
               linear-gradient(180deg,#071018 0%,#070d12 100%)}
html[data-theme="light"] .kx-cases .sec-title{color:#f4f7f6}
html[data-theme="light"] .kx-cases .sec-intro{color:#8f9ca4}
