
@import url('kushim-home.css');

/* ============================================================
   KUSHIM 3.0 · HOME
   Capa aditiva sobre la identidad visual actual.
   ============================================================ */

:root{
    --k3-jade:#00d6a2;
    --k3-jade-deep:#00a87d;
    --k3-gold:#d4b968;
    --k3-ice:#eaf4f1;
    --k3-muted:#91a09b;
    --k3-panel:rgba(8,13,15,.82);
    --k3-line:rgba(255,255,255,.085);
    --k3-shadow:0 32px 100px rgba(0,0,0,.34);
}

.k3-scene{
    position:relative;
    min-height:100svh;
    display:flex;
    align-items:center;
    padding:clamp(6.5rem,10vw,10rem) 0;
    overflow:hidden;
    isolation:isolate;
}
.k3-scene::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      radial-gradient(circle at 15% 18%,rgba(0,214,162,.07),transparent 32%),
      radial-gradient(circle at 86% 78%,rgba(212,185,104,.045),transparent 28%);
    z-index:-1;
}
.k3-scene:nth-of-type(even)::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:-2;
    background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 18%,transparent 82%,rgba(255,255,255,.012));
}
.k3-split-head{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);
    gap:clamp(2.5rem,7vw,7rem);
    align-items:end;
    margin-bottom:clamp(3rem,6vw,5.5rem);
}
.k3-split-head .sec-title{margin-bottom:0}
.k3-split-head .sec-intro{margin:0 0 .45rem}

/* HERO ======================================================= */
.k3-hero{
    min-height:100svh;
    padding:8.5rem 0 5.5rem;
    display:flex;
    align-items:center;
    overflow:hidden;
}
.k3-hero::after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:34%;
    background:linear-gradient(180deg,transparent,var(--ink));
    pointer-events:none;
    z-index:1;
}
.k3-hero-grid{
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(460px,.82fr);
    align-items:center;
    gap:clamp(3rem,6vw,7rem);
}
.k3-hero-copy{max-width:770px}
.k3-hero-copy .gt-eyebrow{
    display:inline-flex;
    margin-bottom:1.35rem;
}
.k3-hero-copy h1{
    font-family:var(--font-display);
    font-size:clamp(3.45rem,6.25vw,7rem);
    line-height:.92;
    letter-spacing:-.07em;
    font-weight:900;
    max-width:980px;
    margin:0;
    text-wrap:balance;
}
.k3-hero-copy h1 span{
    color:var(--k3-jade);
    text-shadow:0 0 42px rgba(0,214,162,.16);
}
.k3-hero-copy>p{
    margin:2rem 0 0;
    max-width:700px;
    color:rgba(236,244,241,.72);
    font-size:clamp(1rem,1.4vw,1.18rem);
    line-height:1.75;
}
.k3-hero-copy>p strong{color:#eef5f2;font-weight:600}
.k3-hero-copy .v2-hero-actions{margin-top:2rem}
.k3-hero-proof{
    display:flex;
    gap:1rem 1.4rem;
    flex-wrap:wrap;
    margin-top:2rem;
    font:500 .76rem/1.3 var(--font-mono);
    color:rgba(238,244,242,.56);
    text-transform:uppercase;
    letter-spacing:.08em;
}
.k3-hero-proof span{display:inline-flex;align-items:center;gap:.5rem}
.k3-hero-proof i{
    width:6px;height:6px;border-radius:999px;background:var(--k3-jade);
    box-shadow:0 0 16px rgba(0,214,162,.72);
}
.k3-orchestrator{
    position:relative;
    min-height:600px;
    padding:1.15rem;
    border:1px solid rgba(0,214,162,.22);
    border-radius:30px;
    background:
      radial-gradient(circle at 50% 42%,rgba(0,214,162,.10),transparent 30%),
      linear-gradient(150deg,rgba(13,20,22,.94),rgba(5,9,11,.92));
    box-shadow:var(--k3-shadow),inset 0 1px 0 rgba(255,255,255,.04);
    overflow:hidden;
}
.k3-orchestrator::before{
    content:"";
    position:absolute;inset:0;
    background-image:
      linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:44px 44px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 100%);
    opacity:.25;
}
.k3-orchestrator::after{
    content:"";
    position:absolute;
    width:70%;height:70%;
    left:15%;top:15%;
    border:1px solid rgba(0,214,162,.09);
    border-radius:50%;
    animation:k3Spin 26s linear infinite;
    box-shadow:0 0 70px rgba(0,214,162,.05);
}
.k3-orchestrator-head{
    position:relative;z-index:3;
    display:flex;justify-content:space-between;align-items:center;
    padding:.35rem .4rem .9rem;
    border-bottom:1px solid var(--k3-line);
    font:600 .68rem/1 var(--font-mono);
    letter-spacing:.1em;color:rgba(238,244,242,.74);
}
.k3-orchestrator-head>div{display:flex;align-items:center;gap:.55rem}
.k3-orchestrator-head b{font-weight:500;color:rgba(238,244,242,.34)}
.k3-inputs{
    position:relative;z-index:4;
    display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;
    margin-top:1rem;
}
.k3-inputs span{
    min-height:62px;
    display:flex;align-items:center;justify-content:center;gap:.5rem;
    border:1px solid var(--k3-line);
    border-radius:12px;
    background:rgba(255,255,255,.025);
    font:600 .66rem/1 var(--font-mono);
    letter-spacing:.07em;
    color:rgba(238,244,242,.6);
}
.k3-inputs i{
    font-style:normal;color:var(--k3-jade);font-size:.55rem;opacity:.78;
}
.k3-brain{
    position:relative;z-index:4;
    height:270px;
    display:flex;align-items:center;justify-content:center;
}
.k3-brain-ring{
    position:absolute;
    width:218px;height:218px;border-radius:50%;
    border:1px solid rgba(0,214,162,.18);
    box-shadow:0 0 60px rgba(0,214,162,.10),inset 0 0 45px rgba(0,214,162,.05);
    animation:k3Pulse 3.8s ease-in-out infinite;
}
.k3-brain-ring::before,.k3-brain-ring::after{
    content:"";position:absolute;border-radius:50%;border:1px solid rgba(0,214,162,.13)
}
.k3-brain-ring::before{inset:18px}
.k3-brain-ring::after{inset:42px}
.k3-brain-core{
    width:146px;height:146px;border-radius:50%;
    position:relative;z-index:2;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    background:radial-gradient(circle at 50% 28%,rgba(0,214,162,.19),rgba(5,11,12,.98) 66%);
    border:1px solid rgba(0,214,162,.3);
    box-shadow:0 0 50px rgba(0,214,162,.13);
}
.k3-brain-core img{width:42px;height:42px;object-fit:contain;margin-bottom:.45rem}
.k3-brain-core strong{font:800 .86rem/1 var(--font-display);letter-spacing:.08em}
.k3-brain-core small{
    margin-top:.45rem;max-width:105px;text-align:center;
    color:rgba(238,244,242,.42);font:500 .52rem/1.4 var(--font-mono)
}
.k3-system-output{
    position:relative;z-index:4;
    display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;
}
.k3-system-output div{
    padding:.85rem .8rem;
    border:1px solid rgba(0,214,162,.12);
    border-radius:12px;background:rgba(0,214,162,.035);
}
.k3-system-output span{
    display:block;color:var(--k3-jade);font:600 .55rem/1 var(--font-mono);letter-spacing:.08em;margin-bottom:.42rem;
}
.k3-system-output b{
    display:block;color:rgba(238,244,242,.72);font:600 .68rem/1.35 var(--font-body)
}
.k3-live-feed{
    position:relative;z-index:4;
    display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;
    margin-top:1rem;
    color:rgba(238,244,242,.42);
    font:500 .56rem/1 var(--font-mono);
    letter-spacing:.05em;
}
.k3-live-feed span{display:flex;align-items:center;gap:.4rem}
.k3-live-feed i{
    width:5px;height:5px;border-radius:50%;background:var(--k3-jade);
    animation:k3Blink 1.7s infinite;
}
.k3-live-feed span:nth-child(2) i{animation-delay:.4s}
.k3-live-feed span:nth-child(3) i{animation-delay:.8s}
.k3-scroll-cue{
    position:absolute;z-index:5;bottom:1.6rem;left:50%;transform:translateX(-50%);
    display:flex;align-items:center;gap:.7rem;color:rgba(238,244,242,.35);
    font:500 .56rem/1 var(--font-mono);letter-spacing:.18em;
}
.k3-scroll-cue i{
    width:1px;height:38px;background:linear-gradient(var(--k3-jade),transparent);
    animation:k3Scroll 1.8s ease-in-out infinite;
}
.k3-marquee{border-color:rgba(0,214,162,.08)}
.k3-marquee .marquee-item{color:rgba(238,244,242,.4)}

/* DIFFERENCE ================================================= */
.k3-difference{background:linear-gradient(180deg,var(--ink),rgba(8,13,15,.98))}
.k3-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.k3-compare{
    position:relative;
    min-height:500px;
    padding:clamp(1.8rem,3vw,3rem);
    border:1px solid var(--k3-line);
    border-radius:28px;
    background:rgba(255,255,255,.018);
    overflow:hidden;
}
.k3-compare::before{
    content:"";position:absolute;inset:0;pointer-events:none;
    opacity:.45;
}
.k3-compare-normal::before{
    background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.05),transparent 32%);
}
.k3-compare-kushim{
    border-color:rgba(0,214,162,.23);
    background:linear-gradient(150deg,rgba(0,214,162,.045),rgba(255,255,255,.014));
    box-shadow:0 35px 100px rgba(0,0,0,.24);
}
.k3-compare-kushim::before{
    background:radial-gradient(circle at 85% 15%,rgba(0,214,162,.13),transparent 32%);
}
.k3-compare-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}
.k3-compare-top span{font:600 .65rem/1 var(--font-mono);letter-spacing:.12em;color:rgba(238,244,242,.44)}
.k3-compare-kushim .k3-compare-top span{color:var(--k3-jade)}
.k3-compare-top i{font:700 3rem/1 var(--font-display);font-style:normal;color:rgba(255,255,255,.05)}
.k3-compare h3{
    position:relative;z-index:2;
    font:800 clamp(2rem,3.8vw,4rem)/.98 var(--font-display);
    letter-spacing:-.055em;margin:2rem 0 2.4rem;max-width:520px;
}
.k3-chain{
    position:relative;z-index:2;
    display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;
    padding:1rem;border:1px solid var(--k3-line);border-radius:15px;background:rgba(0,0,0,.16);
}
.k3-chain span{
    padding:.55rem .65rem;border-radius:8px;border:1px solid rgba(255,255,255,.07);
    color:rgba(238,244,242,.64);font:600 .62rem/1 var(--font-mono);letter-spacing:.07em;
}
.k3-chain b{color:rgba(238,244,242,.24)}
.k3-chain-loss span:last-child{color:#ff786d;border-color:rgba(255,120,109,.25)}
.k3-chain-live span{transition:all .45s ease}
.k3-chain-live span.is-active{
    color:#06100d;background:var(--k3-jade);border-color:var(--k3-jade);
    box-shadow:0 0 30px rgba(0,214,162,.25)
}
.k3-compare ul{position:relative;z-index:2;list-style:none;margin:2.2rem 0 0;display:grid;gap:.85rem}
.k3-compare li{position:relative;padding-left:1.4rem;color:rgba(238,244,242,.6);font-size:.92rem;line-height:1.55}
.k3-compare li::before{content:"";position:absolute;left:0;top:.55rem;width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.18)}
.k3-compare-kushim li::before{background:var(--k3-jade);box-shadow:0 0 10px rgba(0,214,162,.45)}
.k3-loss-meter,.k3-live-meter{
    position:absolute;left:clamp(1.8rem,3vw,3rem);right:clamp(1.8rem,3vw,3rem);bottom:2rem;
    display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;
    font:500 .55rem/1 var(--font-mono);letter-spacing:.09em;color:rgba(238,244,242,.34);
}
.k3-loss-meter i,.k3-live-meter i{height:2px;background:rgba(255,255,255,.06);overflow:hidden}
.k3-loss-meter b{display:block;width:38%;height:100%;background:#ff786d}
.k3-live-meter b{display:block;width:94%;height:100%;background:var(--k3-jade);box-shadow:0 0 12px rgba(0,214,162,.45)}

/* ORIGIN VIDEO =============================================== */
.k3-origin{
    min-height:100svh;
    padding:0;
    display:flex;
    align-items:stretch;
    border:0;
}
.k3-origin-video{
    opacity:.62;
    filter:saturate(.78) contrast(1.08) brightness(.78);
}
.k3-origin-overlay{
    background:
      linear-gradient(90deg,rgba(4,7,8,.94) 0%,rgba(4,7,8,.63) 42%,rgba(4,7,8,.34) 68%,rgba(4,7,8,.76) 100%),
      linear-gradient(180deg,rgba(4,7,8,.64),transparent 20%,transparent 72%,rgba(4,7,8,.9));
}
.k3-origin-vignette{
    position:absolute;inset:0;z-index:1;pointer-events:none;
    box-shadow:inset 0 0 220px rgba(0,0,0,.55);
}
.k3-origin-content{
    min-height:100svh;
    width:100%;
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.7fr);
    gap:5rem;
    align-items:center;
    position:relative;z-index:3;
}
.k3-origin-copy{max-width:740px}
.k3-origin-copy .mf-eyebrow{text-align:left;margin-bottom:2rem}
.k3-origin-copy>p{
    max-width:610px;color:rgba(239,244,242,.57);
    font:500 .86rem/1.55 var(--font-mono);
}
.k3-origin-copy h2{
    margin-top:2rem;
    font:900 clamp(3.8rem,7vw,7.6rem)/.86 var(--font-display);
    letter-spacing:-.075em;
    text-shadow:0 20px 60px rgba(0,0,0,.35)
}
.k3-origin-copy h2 span{color:var(--k3-jade)}
.k3-origin-caption{
    align-self:center;
    margin-top:5rem;
    min-height:205px;
    padding:1.65rem 1.8rem;
    border:1px solid rgba(0,214,162,.17);
    border-radius:20px;
    background:rgba(5,10,11,.76);
    backdrop-filter:blur(18px);
    box-shadow:0 20px 65px rgba(0,0,0,.25);
}
.k3-origin-caption span{
    color:var(--k3-gold);font:600 .64rem/1 var(--font-mono);letter-spacing:.08em
}
.k3-origin-caption strong{
    display:block;margin:.75rem 0 .65rem;color:#f2f5f4;
    font:800 clamp(1.15rem,2vw,1.55rem)/1.2 var(--font-display)
}
.k3-origin-caption p{color:rgba(239,244,242,.62);font-size:.9rem;line-height:1.65}
.k3-origin-caption.is-changing{animation:k3Caption .42s ease}
.k3-origin-progress{
    position:absolute;left:2rem;right:2rem;bottom:2rem;
    display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;
    color:rgba(239,244,242,.42);font:500 .55rem/1 var(--font-mono);letter-spacing:.16em
}
.k3-origin-progress i{height:1px;background:rgba(255,255,255,.12);overflow:hidden}
.k3-origin-progress b{display:block;width:0;height:100%;background:var(--k3-jade);box-shadow:0 0 12px rgba(0,214,162,.6);transition:width .12s linear}

/* PILLARS ==================================================== */
.k3-pillars{background:linear-gradient(180deg,rgba(7,11,13,.98),var(--ink))}
.k3-pillar-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:4rem
}
.k3-pillar{
    position:relative;min-height:420px;padding:1.6rem;
    border:1px solid var(--k3-line);border-radius:22px;
    background:linear-gradient(165deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
    overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s ease,background .35s ease;
}
.k3-pillar::before{
    content:"";position:absolute;width:180px;height:180px;right:-80px;top:-80px;border-radius:50%;
    background:radial-gradient(circle,rgba(0,214,162,.12),transparent 68%);opacity:0;transition:opacity .35s
}
.k3-pillar:hover{transform:translateY(-8px);border-color:rgba(0,214,162,.28);background:linear-gradient(165deg,rgba(0,214,162,.045),rgba(255,255,255,.014))}
.k3-pillar:hover::before{opacity:1}
.k3-pillar-num{display:block;color:rgba(255,255,255,.06);font:900 4rem/1 var(--font-display);letter-spacing:-.05em}
.k3-pillar-icon{
    width:48px;height:48px;border-radius:14px;display:grid;place-items:center;
    margin:1.5rem 0 1.2rem;border:1px solid rgba(0,214,162,.22);background:rgba(0,214,162,.05);
    color:var(--k3-jade);font-size:1.3rem
}
.k3-pillar .v2-kicker{font-size:.62rem}
.k3-pillar h3{font:800 1.55rem/1.05 var(--font-display);letter-spacing:-.035em;margin:.55rem 0 1rem}
.k3-pillar>p:not(.v2-kicker){color:rgba(239,244,242,.56);font-size:.88rem;line-height:1.65}
.k3-pillar small{
    position:absolute;left:1.6rem;right:1.6rem;bottom:1.55rem;padding-top:1rem;
    border-top:1px solid var(--k3-line);color:rgba(239,244,242,.34);
    font:500 .55rem/1.4 var(--font-mono);letter-spacing:.06em
}

/* PROCESS ==================================================== */
.k3-process::before{
    background:
      radial-gradient(circle at 50% 44%,rgba(0,214,162,.085),transparent 34%),
      radial-gradient(circle at 90% 15%,rgba(212,185,104,.04),transparent 28%);
}
.k3-process-head{max-width:920px;margin-bottom:4rem}
.k3-lifecycle{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;
    align-items:stretch;
}
.k3-lifecycle>article{
    min-height:300px;padding:1.4rem 1.15rem;
    border:1px solid var(--k3-line);
    background:rgba(255,255,255,.018);
    transition:all .5s ease;
}
.k3-lifecycle>article:first-child{border-radius:20px 0 0 20px}
.k3-lifecycle>article:last-child{border-radius:0 20px 20px 0}
.k3-lifecycle>i{
    display:grid;place-items:center;width:34px;color:rgba(239,244,242,.18);font-style:normal
}
.k3-lifecycle article>span{
    display:block;color:rgba(255,255,255,.07);font:900 2.7rem/1 var(--font-display)
}
.k3-lifecycle article>b{
    display:block;color:var(--k3-jade);font:600 .58rem/1 var(--font-mono);letter-spacing:.09em;margin:1.3rem 0 .7rem
}
.k3-lifecycle h3{font:800 1.15rem/1.1 var(--font-display);letter-spacing:-.025em;margin-bottom:.65rem}
.k3-lifecycle p{color:rgba(239,244,242,.46);font-size:.78rem;line-height:1.55}
.k3-lifecycle article.is-active{
    border-color:rgba(0,214,162,.28);
    background:linear-gradient(165deg,rgba(0,214,162,.06),rgba(255,255,255,.014));
    transform:translateY(-7px);
    box-shadow:0 22px 60px rgba(0,0,0,.18)
}
.k3-cycle-line{
    display:flex;align-items:center;justify-content:center;gap:1rem;
    margin:3rem auto 0;padding:1.1rem 1.4rem;max-width:760px;border-top:1px solid var(--k3-line);
    font:700 .69rem/1 var(--font-mono);letter-spacing:.1em;color:rgba(239,244,242,.54)
}
.k3-cycle-line i{font-style:normal;color:var(--k3-jade)}

/* IMPLEMENTATION ============================================= */
.k3-implementation{background:linear-gradient(180deg,var(--ink),rgba(9,14,16,.98))}
.k3-implementation-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.k3-implementation-card{
    position:relative;padding:clamp(2rem,4vw,3.4rem);
    min-height:620px;border:1px solid var(--k3-line);border-radius:30px;
    background:
      radial-gradient(circle at 90% 5%,rgba(0,214,162,.08),transparent 30%),
      rgba(255,255,255,.018);
    overflow:hidden;
}
.k3-implementation-commerce{
    background:
      radial-gradient(circle at 90% 5%,rgba(212,185,104,.09),transparent 30%),
      rgba(255,255,255,.018);
}
.k3-implementation-code{display:flex;justify-content:space-between;align-items:center}
.k3-implementation-code span{color:var(--k3-jade);font:700 .7rem/1 var(--font-mono);letter-spacing:.13em}
.k3-implementation-commerce .k3-implementation-code span{color:var(--k3-gold)}
.k3-implementation-code i{font-style:normal;color:rgba(255,255,255,.06);font:900 4rem/1 var(--font-display)}
.k3-implementation-card h3{
    margin:1.4rem 0 1rem;max-width:640px;
    font:800 clamp(2rem,3vw,3.2rem)/1.02 var(--font-display);letter-spacing:-.052em;
}
.k3-implementation-card>p{max-width:620px;color:rgba(239,244,242,.56);line-height:1.68}
.k3-implementation-price{margin:2.2rem 0;padding:1.3rem 0;border-block:1px solid var(--k3-line)}
.k3-implementation-price>span{display:block;color:rgba(239,244,242,.4);font:600 .58rem/1 var(--font-mono);letter-spacing:.1em;margin-bottom:.6rem}
.k3-implementation-price strong{display:block;font:900 clamp(2.8rem,5vw,5rem)/.95 var(--font-display);letter-spacing:-.06em}
.k3-implementation-price small{display:block;margin-top:.45rem;color:rgba(239,244,242,.35);font:.7rem var(--font-mono)}
.k3-implementation-card ul{list-style:none;display:grid;gap:.7rem;margin-bottom:2rem}
.k3-implementation-card li{color:rgba(239,244,242,.58);font-size:.86rem}
.k3-implementation-card li::before{content:"✓";display:inline-block;width:1.35rem;color:var(--k3-jade);font-weight:800}
.k3-implementation-commerce li::before{color:var(--k3-gold)}
.k3-implementation-note{
    margin-top:1.2rem;padding:1.25rem 1.5rem;border:1px solid rgba(0,214,162,.12);border-radius:16px;
    display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:start;background:rgba(0,214,162,.025)
}
.k3-implementation-note span{color:var(--k3-jade);font:700 .6rem/1 var(--font-mono);letter-spacing:.1em;padding-top:.25rem}
.k3-implementation-note p{margin:0;color:rgba(239,244,242,.54);font-size:.83rem;line-height:1.6}
.k3-implementation-note strong{color:#eef4f2}

/* PLANS ====================================================== */
.k3-plans{background:linear-gradient(180deg,rgba(9,14,16,.98),var(--ink))}
.k3-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:4rem}
.k3-plan{
    position:relative;min-height:650px;padding:2rem;
    border:1px solid var(--k3-line);border-radius:26px;
    background:linear-gradient(165deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
    display:flex;flex-direction:column;transition:transform .4s ease,border-color .35s ease,box-shadow .35s ease;
}
.k3-plan:hover{transform:translateY(-7px);border-color:rgba(0,214,162,.22)}
.k3-plan-featured{
    border-color:rgba(0,214,162,.34);
    background:
      radial-gradient(circle at 50% 0%,rgba(0,214,162,.12),transparent 32%),
      linear-gradient(165deg,rgba(0,214,162,.05),rgba(255,255,255,.012));
    box-shadow:0 30px 85px rgba(0,0,0,.25),0 0 0 1px rgba(0,214,162,.05);
}
.k3-plan-badge{
    position:absolute;right:1.2rem;top:1.2rem;padding:.45rem .65rem;border-radius:999px;
    background:var(--k3-jade);color:#04100c;font:800 .52rem/1 var(--font-mono);letter-spacing:.08em
}
.k3-plan-code{color:rgba(239,244,242,.36);font:600 .62rem/1 var(--font-mono);letter-spacing:.1em}
.k3-plan h3{font:900 2rem/1 var(--font-display);letter-spacing:-.04em;margin:1.2rem 0 .9rem}
.k3-plan>p{min-height:78px;color:rgba(239,244,242,.53);font-size:.85rem;line-height:1.6}
.k3-plan-price{margin:1.5rem 0 1.8rem;padding-bottom:1.6rem;border-bottom:1px solid var(--k3-line)}
.k3-plan-price strong{font:900 clamp(2.6rem,4vw,4.4rem)/.9 var(--font-display);letter-spacing:-.06em}
.k3-plan-price span{display:block;margin-top:.5rem;color:rgba(239,244,242,.37);font:.66rem var(--font-mono)}
.k3-plan ul{list-style:none;display:grid;gap:.76rem;margin-bottom:1.8rem}
.k3-plan li{font-size:.82rem;color:rgba(239,244,242,.58);line-height:1.45}
.k3-plan li::before{content:"✓";color:var(--k3-jade);font-weight:800;display:inline-block;width:1.3rem}
.k3-plan .btn{margin-top:auto}
.k3-plan-fair-use{text-align:center;max-width:900px;margin:2rem auto 0;color:rgba(239,244,242,.35);font-size:.72rem;line-height:1.6}

/* COMPARISON ================================================= */
.k3-comparison{background:linear-gradient(180deg,var(--ink),rgba(8,12,14,.98))}
.k3-table-wrap{
    border:1px solid var(--k3-line);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.014);
    box-shadow:0 30px 90px rgba(0,0,0,.18)
}
.k3-plan-table{width:100%;border-collapse:collapse}
.k3-plan-table th,.k3-plan-table td{padding:1rem 1.2rem;border-bottom:1px solid var(--k3-line);text-align:center}
.k3-plan-table th:first-child,.k3-plan-table td:first-child{text-align:left}
.k3-plan-table th{
    background:rgba(255,255,255,.025);color:rgba(239,244,242,.65);
    font:700 .7rem/1.3 var(--font-mono);letter-spacing:.04em
}
.k3-plan-table th b{display:block;margin-top:.25rem;color:#f1f5f3;font:900 1.1rem/1 var(--font-display)}
.k3-plan-table th.is-featured{background:rgba(0,214,162,.08);color:var(--k3-jade)}
.k3-plan-table td{color:rgba(239,244,242,.58);font-size:.82rem}
.k3-plan-table td:not(:first-child){font-weight:700;color:rgba(239,244,242,.72)}
.k3-plan-table tr:last-child td{border-bottom:0}

/* EXISTING SITE ============================================== */
.k3-existing{background:linear-gradient(180deg,rgba(8,12,14,.98),var(--ink))}
.k3-existing-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,.75fr);gap:6rem;align-items:center}
.k3-existing-panel{
    padding:1.6rem;border:1px solid var(--k3-line);border-radius:24px;background:rgba(255,255,255,.018)
}
.k3-existing-panel>span{display:block;color:var(--k3-jade);font:700 .62rem/1 var(--font-mono);letter-spacing:.12em;margin-bottom:1.5rem}
.k3-existing-panel>div{
    display:grid;grid-template-columns:38px 105px 1fr;align-items:center;gap:.7rem;padding:.78rem 0;border-bottom:1px solid rgba(255,255,255,.05)
}
.k3-existing-panel b{color:rgba(239,244,242,.28);font:.68rem var(--font-mono)}
.k3-existing-panel p{margin:0;color:rgba(239,244,242,.62);font-size:.8rem}
.k3-existing-panel i{display:block;height:3px;background:rgba(255,255,255,.06);overflow:hidden}
.k3-existing-panel em{display:block;height:100%;width:var(--v);background:var(--k3-jade);box-shadow:0 0 10px rgba(0,214,162,.4)}
.k3-existing-panel small{display:block;margin-top:1.2rem;color:rgba(239,244,242,.3);font-size:.66rem}

/* FAQ / CONTACT ============================================== */
.k3-faq{padding-block:8rem}
.k3-contact{min-height:100svh;display:flex;align-items:center;padding:8rem 0}

/* Existing sections, cases and integrations get more breathing */
.kx-cases{min-height:100svh;padding-top:clamp(7rem,10vw,10rem);padding-bottom:clamp(7rem,10vw,10rem)}
.v21-integrations{min-height:80svh;display:flex;flex-direction:column;justify-content:center;padding-block:8rem}

/* Motion ===================================================== */
@keyframes k3Spin{to{transform:rotate(360deg)}}
@keyframes k3Pulse{0%,100%{transform:scale(.96);opacity:.68}50%{transform:scale(1.04);opacity:1}}
@keyframes k3Blink{0%,100%{opacity:.28}50%{opacity:1}}
@keyframes k3Scroll{0%{transform:scaleY(.2);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}100%{transform:scaleY(.2);transform-origin:bottom}}
@keyframes k3Caption{0%{opacity:.35;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}

/* LIGHT THEME ================================================ */
[data-theme="light"] .k3-scene,
[data-theme="light"] .k3-hero{color:#17211e}
[data-theme="light"] .k3-scene{background:#f3f5f2}
[data-theme="light"] .k3-hero-copy>p,
[data-theme="light"] .k3-split-head .sec-intro,
[data-theme="light"] .k3-compare li,
[data-theme="light"] .k3-pillar>p:not(.v2-kicker),
[data-theme="light"] .k3-implementation-card>p,
[data-theme="light"] .k3-plan>p,
[data-theme="light"] .k3-plan li,
[data-theme="light"] .k3-plan-table td,
[data-theme="light"] .k3-existing-panel p{color:rgba(23,33,30,.65)}
[data-theme="light"] .k3-orchestrator,
[data-theme="light"] .k3-compare,
[data-theme="light"] .k3-pillar,
[data-theme="light"] .k3-implementation-card,
[data-theme="light"] .k3-plan,
[data-theme="light"] .k3-table-wrap,
[data-theme="light"] .k3-existing-panel{
    background:rgba(255,255,255,.74);
    border-color:rgba(14,42,35,.12);
    box-shadow:0 30px 80px rgba(31,46,40,.08);
}
[data-theme="light"] .k3-plan-table th{background:rgba(11,72,56,.04);color:#335048}
[data-theme="light"] .k3-plan-table td:not(:first-child){color:#24453c}
[data-theme="light"] .k3-hero-proof,
[data-theme="light"] .k3-plan-code,
[data-theme="light"] .k3-plan-price span{color:rgba(23,33,30,.48)}
[data-theme="light"] .k3-origin{color:#fff}
[data-theme="light"] .k3-origin-copy>p{color:rgba(255,255,255,.66)}
[data-theme="light"] .k3-origin-caption{background:rgba(5,10,11,.77);color:#fff}

/* RESPONSIVE ================================================= */
@media (max-width:1180px){
    .k3-hero-grid{grid-template-columns:1fr .78fr;gap:2.5rem}
    .k3-orchestrator{min-height:550px}
    .k3-pillar-grid{grid-template-columns:repeat(2,1fr)}
    .k3-lifecycle{grid-template-columns:1fr;gap:.6rem}
    .k3-lifecycle>i{width:auto;height:24px}
    .k3-lifecycle>article:first-child,
    .k3-lifecycle>article:last-child{border-radius:18px}
    .k3-lifecycle>article{min-height:auto}
    .k3-existing-grid{gap:3rem}
}
@media (max-width:960px){
    .k3-scene{min-height:auto;padding:7rem 0}
    .k3-hero{min-height:auto;padding:9rem 0 6rem}
    .k3-hero-grid,.k3-origin-content,.k3-split-head,.k3-existing-grid{grid-template-columns:1fr}
    .k3-hero-grid{gap:4rem}
    .k3-orchestrator{max-width:700px;width:100%;margin:0 auto}
    .k3-compare-grid,.k3-implementation-grid{grid-template-columns:1fr}
    .k3-plan-grid{grid-template-columns:1fr;max-width:720px;margin-left:auto;margin-right:auto}
    .k3-plan{min-height:auto}
    .k3-origin-content{padding-top:8rem;padding-bottom:6rem;gap:2rem}
    .k3-origin-caption{margin-top:0;max-width:580px}
    .k3-origin-copy h2{font-size:clamp(3.5rem,12vw,6.5rem)}
    .k3-origin-progress{left:2rem;right:2rem}
    .k3-table-wrap{overflow-x:auto}
    .k3-plan-table{min-width:760px}
}
@media (max-width:720px){
    .k3-hero-copy h1{font-size:clamp(3rem,14vw,5rem)}
    .k3-hero-copy>p{font-size:.96rem}
    .k3-orchestrator{min-height:520px;padding:.8rem;border-radius:22px}
    .k3-inputs{grid-template-columns:repeat(2,1fr)}
    .k3-brain{height:220px}
    .k3-brain-ring{width:176px;height:176px}
    .k3-brain-core{width:122px;height:122px}
    .k3-system-output{grid-template-columns:1fr}
    .k3-live-feed{display:none}
    .k3-compare{min-height:520px;padding:1.45rem}
    .k3-compare h3{font-size:2.4rem}
    .k3-loss-meter,.k3-live-meter{left:1.45rem;right:1.45rem}
    .k3-pillar-grid{grid-template-columns:1fr}
    .k3-pillar{min-height:350px}
    .k3-implementation-card{min-height:auto;padding:1.6rem}
    .k3-implementation-note{grid-template-columns:1fr;gap:.6rem}
    .k3-cycle-line{flex-wrap:wrap;font-size:.58rem}
    .k3-origin-copy h2{font-size:clamp(3.2rem,15vw,5.4rem)}
    .k3-origin-copy>p{font-size:.73rem}
    .k3-origin-caption{padding:1.2rem}
    .k3-origin-progress{left:1rem;right:1rem}
    .k3-existing-panel>div{grid-template-columns:30px 90px 1fr}
}
@media (prefers-reduced-motion:reduce){
    .k3-orchestrator::after,.k3-brain-ring,.k3-live-feed i,.k3-scroll-cue i{animation:none!important}
}

/* ============================================================
   KUSHIM 3.1 · INTEGRACIONES & SOLUCIONES A MEDIDA
   ============================================================ */
.k31-integrations{position:relative;padding-top:clamp(6rem,10vw,9rem)}
.k31-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3.5rem)}
.k31-custom-card{position:relative;min-height:310px;padding:clamp(1.4rem,2.8vw,2.2rem);border:1px solid rgba(255,255,255,.08);border-radius:24px;background:radial-gradient(circle at 85% 10%,rgba(0,214,162,.07),transparent 30%),rgba(255,255,255,.02);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease}
.k31-custom-card:hover{transform:translateY(-5px);border-color:rgba(0,214,162,.22);box-shadow:0 24px 70px rgba(0,0,0,.18)}
.k31-custom-card>span{display:inline-block;margin-bottom:1rem;font:600 .68rem/1 'Chivo Mono',monospace;letter-spacing:.11em;color:#00d6a2}
.k31-custom-card h3{margin:0 0 .85rem;color:#f3f7f5;font:700 clamp(1.45rem,2.6vw,2.15rem)/1.02 'Chivo',sans-serif;letter-spacing:-.035em}
.k31-custom-card p{max-width:620px;margin:0;color:rgba(232,239,236,.62);font:400 .92rem/1.72 'Sora',sans-serif}
.k31-custom-card-featured{background:radial-gradient(circle at 86% 12%,rgba(168,147,255,.13),transparent 34%),radial-gradient(circle at 12% 90%,rgba(0,214,162,.09),transparent 38%),rgba(255,255,255,.024)}
.k31-custom-flow,.k31-custom-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:1.5rem}
.k31-custom-flow i,.k31-custom-tags i{font:600 .64rem/1 'Chivo Mono',monospace;font-style:normal;letter-spacing:.06em;color:rgba(238,244,242,.62);padding:.55rem .68rem;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.k31-custom-flow b{color:#00d6a2;font-weight:500}
.k31-custom-link{display:inline-flex;align-items:center;gap:.55rem;margin-top:1.6rem;color:#eef4f2;text-decoration:none;font:700 .9rem 'Sora',sans-serif}
.k31-custom-link b{color:#00d6a2;transition:transform .25s ease}.k31-custom-link:hover b{transform:translateX(4px)}
.k31-custom-note{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:2rem;align-items:center;margin-top:1rem;padding:1.2rem 1.35rem;border:1px solid rgba(168,147,255,.17);border-radius:18px;background:linear-gradient(115deg,rgba(168,147,255,.055),rgba(0,214,162,.035))}
.k31-custom-note span{display:block;margin-bottom:.3rem;font:600 .66rem 'Chivo Mono',monospace;letter-spacing:.1em;color:#a893ff}.k31-custom-note strong{font:700 1.1rem 'Chivo',sans-serif;color:#eef4f2}.k31-custom-note p{margin:0;color:rgba(238,244,242,.54);font:400 .82rem/1.65 'Sora',sans-serif}
.k31-platforms-head{margin-top:clamp(5rem,8vw,8rem);margin-bottom:1.6rem}.k31-platforms-head h3{margin:.55rem 0 .65rem;font:700 clamp(1.5rem,2.8vw,2.4rem)/1.05 'Chivo',sans-serif;letter-spacing:-.035em;color:#eef4f2}.k31-platforms-head p{max-width:760px;margin:0;color:rgba(238,244,242,.56);font:400 .9rem/1.7 'Sora',sans-serif}
@media(max-width:780px){.k31-custom-grid{grid-template-columns:1fr}.k31-custom-note{grid-template-columns:1fr;gap:.75rem}.k31-custom-card{min-height:auto}}

/* ============================================================
   KUSHIM 3.3 · HOME POLISH
   Correcciones globales de tema claro + Hero wide/responsive.
   Esta capa va AL FINAL para prevalecer sobre theme-light.css y
   sobre los estilos heredados de kushim-home.css / kushim-v2.css.
   ============================================================ */

/* HERO WIDE -------------------------------------------------- */
.k3-hero .wrap.k3-hero-grid{
    width:100%;
    max-width:1880px;
    padding-inline:clamp(2rem,4vw,5.75rem);
}
.k3-hero-grid{
    grid-template-columns:minmax(0,1.14fr) minmax(520px,.78fr);
    gap:clamp(2.75rem,4.5vw,5.5rem);
}
.k3-hero-copy{max-width:1080px}
.k3-hero-copy h1{
    max-width:1120px;
    font-size:clamp(3.55rem,5.35vw,6.85rem);
}
.k3-hero-copy>p{max-width:820px}
.k3-orchestrator{min-height:560px}

/* LIGHT THEME · TOKENS -------------------------------------- */
html[data-theme="light"] .k3-hero,
html[data-theme="light"] .k3-scene{
    --k3-line:rgba(17,38,32,.13);
    --k3-shadow:0 30px 85px rgba(24,45,39,.10);
    color:#111b18;
}
html[data-theme="light"] .k3-scene{
    background-color:#f3f5f2;
}
html[data-theme="light"] .k3-scene .sec-title,
html[data-theme="light"] .k3-scene h2,
html[data-theme="light"] .k3-scene h3,
html[data-theme="light"] .k3-scene strong,
html[data-theme="light"] .k3-hero-copy h1{
    color:#111b18;
}
html[data-theme="light"] .k3-scene .sec-intro,
html[data-theme="light"] .k3-hero-copy>p{
    color:rgba(17,27,24,.68);
}
html[data-theme="light"] .k3-hero-copy>p strong{color:#101b17}

/* Hero: el orquestador se mantiene oscuro también en tema claro.
   Funciona como consola técnica y evita perder microtexto/estado. */
html[data-theme="light"] .k3-orchestrator{
    color:#eef5f2;
    background:
      radial-gradient(circle at 50% 42%,rgba(0,214,162,.12),transparent 31%),
      linear-gradient(150deg,#10191a,#071011 88%) !important;
    border-color:rgba(0,214,162,.28) !important;
    box-shadow:0 34px 90px rgba(25,48,41,.18),inset 0 1px 0 rgba(255,255,255,.045) !important;
}
html[data-theme="light"] .k3-orchestrator::before{
    background-image:
      linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
}
html[data-theme="light"] .k3-orchestrator-head{color:rgba(238,244,242,.78);border-color:rgba(255,255,255,.085)}
html[data-theme="light"] .k3-orchestrator-head b{color:rgba(238,244,242,.38)}
html[data-theme="light"] .k3-inputs span{color:rgba(238,244,242,.68);background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.085)}
html[data-theme="light"] .k3-brain-core strong{color:#eef5f2}
html[data-theme="light"] .k3-brain-core small{color:rgba(238,244,242,.48)}
html[data-theme="light"] .k3-system-output b{color:rgba(238,244,242,.76)}
html[data-theme="light"] .k3-live-feed{color:rgba(238,244,242,.48)}
html[data-theme="light"] .k3-hero-proof{color:rgba(17,27,24,.57)}
html[data-theme="light"] .k3-scroll-cue{color:rgba(17,27,24,.42)}
html[data-theme="light"] .k3-marquee .marquee-item{color:rgba(17,27,24,.48)}

/* DIFERENCIA ------------------------------------------------ */
html[data-theme="light"] .k3-difference{
    background:
      radial-gradient(circle at 16% 20%,rgba(0,168,134,.075),transparent 32%),
      linear-gradient(180deg,#eef3ef,#f6f7f4);
}
html[data-theme="light"] .k3-compare{
    background:rgba(255,255,255,.84) !important;
    border-color:rgba(18,47,39,.13) !important;
    box-shadow:0 28px 75px rgba(28,48,42,.07) !important;
}
html[data-theme="light"] .k3-compare-kushim{
    background:linear-gradient(150deg,rgba(0,168,134,.075),rgba(255,255,255,.90)) !important;
    border-color:rgba(0,168,134,.27) !important;
}
html[data-theme="light"] .k3-compare-top span{color:rgba(20,37,32,.58)}
html[data-theme="light"] .k3-compare-kushim .k3-compare-top span{color:#009f7d}
html[data-theme="light"] .k3-compare-top i{color:rgba(17,37,31,.105)}
html[data-theme="light"] .k3-compare li{color:rgba(17,27,24,.68)}
html[data-theme="light"] .k3-compare li::before{background:rgba(17,27,24,.25)}
html[data-theme="light"] .k3-compare-kushim li::before{background:#00b58e}
html[data-theme="light"] .k3-chain{
    background:#edf1ee;
    border-color:rgba(17,38,31,.12);
}
html[data-theme="light"] .k3-chain span{
    color:#243c35;
    background:rgba(255,255,255,.72);
    border-color:rgba(17,38,31,.12);
}
html[data-theme="light"] .k3-chain b{color:rgba(17,38,31,.34)}
html[data-theme="light"] .k3-chain-loss span:last-child{color:#b54842;border-color:rgba(181,72,66,.24)}
html[data-theme="light"] .k3-chain-live span.is-active{color:#04100c;background:#00d6a2;border-color:#00d6a2}
html[data-theme="light"] .k3-loss-meter,
html[data-theme="light"] .k3-live-meter{color:rgba(17,38,31,.48)}
html[data-theme="light"] .k3-loss-meter i,
html[data-theme="light"] .k3-live-meter i{background:rgba(17,38,31,.10)}

/* ORIGEN: escena cinematográfica SIEMPRE oscura. -------------
   theme-light.css aplica un overlay blanco al manifiesto; aquí lo
   anulamos expresamente para que el video conserve presencia. */
html[data-theme="light"] .k3-origin{
    color:#f2f5f4 !important;
    background:#05090a !important;
}
html[data-theme="light"] .k3-origin .manifesto-video.k3-origin-video{
    opacity:.64 !important;
    filter:saturate(.82) contrast(1.10) brightness(.76) !important;
    visibility:visible !important;
}
html[data-theme="light"] .k3-origin .manifesto-overlay.k3-origin-overlay{
    background:
      linear-gradient(90deg,rgba(4,7,8,.94) 0%,rgba(4,7,8,.63) 42%,rgba(4,7,8,.34) 68%,rgba(4,7,8,.76) 100%),
      linear-gradient(180deg,rgba(4,7,8,.64),transparent 20%,transparent 72%,rgba(4,7,8,.90)) !important;
}
html[data-theme="light"] .k3-origin .k3-origin-copy h2{color:#f2f5f4 !important}
html[data-theme="light"] .k3-origin .k3-origin-copy h2 span{color:#00d6a2 !important}
html[data-theme="light"] .k3-origin .k3-origin-copy>p{color:rgba(239,244,242,.68) !important}
html[data-theme="light"] .k3-origin .mf-eyebrow{color:#00d6a2 !important}
html[data-theme="light"] .k3-origin .k3-origin-caption{
    background:rgba(5,10,11,.80) !important;
    border-color:rgba(0,214,162,.22) !important;
    color:#fff !important;
}
html[data-theme="light"] .k3-origin .k3-origin-caption strong{color:#f2f5f4 !important}
html[data-theme="light"] .k3-origin .k3-origin-caption p{color:rgba(239,244,242,.66) !important}
html[data-theme="light"] .k3-origin .k3-origin-progress{color:rgba(239,244,242,.50) !important}
html[data-theme="light"] .k3-origin .k3-origin-progress i{background:rgba(255,255,255,.16)}

/* ARQUITECTURA / PILARES ------------------------------------ */
html[data-theme="light"] .k3-pillars{
    background:linear-gradient(180deg,#f6f7f4,#eef3ef);
}
html[data-theme="light"] .k3-pillar{
    background:linear-gradient(165deg,#ffffff,rgba(246,249,247,.94)) !important;
    border-color:rgba(17,38,31,.13) !important;
    box-shadow:0 24px 60px rgba(28,48,42,.055) !important;
}
html[data-theme="light"] .k3-pillar:hover{
    background:linear-gradient(165deg,rgba(0,168,134,.065),#fff) !important;
    border-color:rgba(0,168,134,.30) !important;
}
html[data-theme="light"] .k3-pillar-num{color:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-pillar h3{color:#111b18}
html[data-theme="light"] .k3-pillar>p:not(.v2-kicker){color:rgba(17,27,24,.66)}
html[data-theme="light"] .k3-pillar small{color:rgba(17,27,24,.44);border-color:rgba(17,38,31,.11)}

/* CICLO / PROCESO ------------------------------------------- */
html[data-theme="light"] .k3-process{
    background:#f3f5f2;
}
html[data-theme="light"] .k3-lifecycle>article{
    background:rgba(255,255,255,.80);
    border-color:rgba(17,38,31,.13);
}
html[data-theme="light"] .k3-lifecycle article>span{color:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-lifecycle>i{color:rgba(17,38,31,.32)}
html[data-theme="light"] .k3-lifecycle h3{color:#111b18}
html[data-theme="light"] .k3-lifecycle p{color:rgba(17,27,24,.62)}
html[data-theme="light"] .k3-lifecycle article.is-active{
    background:linear-gradient(165deg,rgba(0,168,134,.08),rgba(255,255,255,.94));
    border-color:rgba(0,168,134,.32);
    box-shadow:0 22px 60px rgba(28,48,42,.08);
}
html[data-theme="light"] .k3-cycle-line{color:rgba(17,27,24,.55);border-color:rgba(17,38,31,.13)}

/* IMPLEMENTACIÓN -------------------------------------------- */
html[data-theme="light"] .k3-implementation{
    background:linear-gradient(180deg,#eef3ef,#f6f7f4);
}
html[data-theme="light"] .k3-implementation-card{
    background:radial-gradient(circle at 90% 5%,rgba(0,168,134,.075),transparent 30%),#fff !important;
    border-color:rgba(17,38,31,.13) !important;
}
html[data-theme="light"] .k3-implementation-commerce{
    background:radial-gradient(circle at 90% 5%,rgba(169,136,46,.09),transparent 30%),#fff !important;
}
html[data-theme="light"] .k3-implementation-code i{color:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-implementation-card>p,
html[data-theme="light"] .k3-implementation-card li{color:rgba(17,27,24,.66)}
html[data-theme="light"] .k3-implementation-price{border-color:rgba(17,38,31,.12)}
html[data-theme="light"] .k3-implementation-price>span,
html[data-theme="light"] .k3-implementation-price small{color:rgba(17,27,24,.48)}
html[data-theme="light"] .k3-implementation-price strong{color:#111b18}
html[data-theme="light"] .k3-implementation-note{background:rgba(0,168,134,.045);border-color:rgba(0,168,134,.18)}
html[data-theme="light"] .k3-implementation-note p{color:rgba(17,27,24,.62)}
html[data-theme="light"] .k3-implementation-note strong{color:#111b18}

/* PLANES ----------------------------------------------------- */
html[data-theme="light"] .k3-plans{
    background:linear-gradient(180deg,#f6f7f4,#eef3ef);
}
html[data-theme="light"] .k3-plan{
    background:linear-gradient(165deg,#fff,#f7f9f7) !important;
    border-color:rgba(17,38,31,.13) !important;
    box-shadow:0 22px 60px rgba(28,48,42,.055);
}
html[data-theme="light"] .k3-plan-featured{
    background:radial-gradient(circle at 50% 0%,rgba(0,168,134,.11),transparent 33%),linear-gradient(165deg,#fff,#f4faf7) !important;
    border-color:rgba(0,168,134,.34) !important;
}
html[data-theme="light"] .k3-plan-code{color:rgba(17,27,24,.50)}
html[data-theme="light"] .k3-plan h3,
html[data-theme="light"] .k3-plan-price strong{color:#111b18}
html[data-theme="light"] .k3-plan>p,
html[data-theme="light"] .k3-plan li{color:rgba(17,27,24,.66)}
html[data-theme="light"] .k3-plan-price{border-color:rgba(17,38,31,.12)}
html[data-theme="light"] .k3-plan-price span{color:rgba(17,27,24,.48)}
html[data-theme="light"] .k3-plan-fair-use{color:rgba(17,27,24,.48)}

/* COMPARATIVA DE PLANES ------------------------------------- */
html[data-theme="light"] .k3-comparison{
    background:linear-gradient(180deg,#eef3ef,#f6f7f4);
}
html[data-theme="light"] .k3-table-wrap{
    background:#fff !important;
    border-color:rgba(17,38,31,.13) !important;
    box-shadow:0 28px 75px rgba(28,48,42,.065) !important;
}
html[data-theme="light"] .k3-plan-table th,
html[data-theme="light"] .k3-plan-table td{border-color:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-plan-table th{background:#f0f4f1;color:#3e5750}
html[data-theme="light"] .k3-plan-table th b{color:#111b18 !important}
html[data-theme="light"] .k3-plan-table th.is-featured{background:rgba(0,168,134,.09);color:#008f70}
html[data-theme="light"] .k3-plan-table td{color:rgba(17,27,24,.65)}
html[data-theme="light"] .k3-plan-table td:not(:first-child){color:#1e4037}

/* SITIO EXISTENTE / DIAGNÓSTICO ----------------------------- */
html[data-theme="light"] .k3-existing{
    background:linear-gradient(180deg,#f6f7f4,#eef3ef);
}
html[data-theme="light"] .k3-existing-panel{
    background:#fff !important;
    border-color:rgba(17,38,31,.13) !important;
}
html[data-theme="light"] .k3-existing-panel>div{border-color:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-existing-panel b{color:rgba(17,27,24,.48)}
html[data-theme="light"] .k3-existing-panel p{color:rgba(17,27,24,.65)}
html[data-theme="light"] .k3-existing-panel i{background:rgba(17,38,31,.10)}
html[data-theme="light"] .k3-existing-panel small{color:rgba(17,27,24,.45)}

/* KUSHIM 3.1 · SOLUCIONES A MEDIDA -------------------------- */
html[data-theme="light"] .k31-custom-card{
    background:radial-gradient(circle at 85% 10%,rgba(0,168,134,.07),transparent 30%),#fff;
    border-color:rgba(17,38,31,.13);
    box-shadow:0 22px 60px rgba(28,48,42,.055);
}
html[data-theme="light"] .k31-custom-card h3,
html[data-theme="light"] .k31-platforms-head h3,
html[data-theme="light"] .k31-custom-note strong,
html[data-theme="light"] .k31-custom-link{color:#111b18}
html[data-theme="light"] .k31-custom-card p,
html[data-theme="light"] .k31-platforms-head p,
html[data-theme="light"] .k31-custom-note p{color:rgba(17,27,24,.64)}
html[data-theme="light"] .k31-custom-flow i,
html[data-theme="light"] .k31-custom-tags i{
    color:#355049;
    background:#f0f4f1;
    border-color:rgba(17,38,31,.12);
}
html[data-theme="light"] .k31-custom-note{
    background:linear-gradient(115deg,rgba(136,112,214,.055),rgba(0,168,134,.045));
    border-color:rgba(92,77,143,.14);
}

/* MOBILE ----------------------------------------------------- */
@media (max-width:1180px){
    .k3-hero .wrap.k3-hero-grid{padding-inline:clamp(1.6rem,3vw,2.5rem)}
    .k3-hero-grid{grid-template-columns:minmax(0,1fr) minmax(430px,.72fr);gap:2.5rem}
    .k3-hero-copy h1{font-size:clamp(3.25rem,5.8vw,5.5rem)}
}
@media (max-width:960px){
    .k3-hero .wrap.k3-hero-grid{max-width:820px;padding-inline:2rem}
    .k3-hero-grid{grid-template-columns:1fr;gap:3rem}
    .k3-hero-copy{max-width:none}
    .k3-hero-copy h1{max-width:780px}
    .k3-orchestrator{min-height:500px}
}
@media (max-width:720px){
    .k3-hero{
        min-height:100svh;
        padding:6.6rem 0 2.6rem;
        align-items:center;
    }
    .k3-hero .wrap.k3-hero-grid{padding-inline:1.15rem}
    .k3-hero-grid{display:block}
    .k3-hero-copy h1{
        font-size:clamp(2.65rem,11.6vw,4.15rem);
        line-height:.91;
        letter-spacing:-.06em;
    }
    .k3-hero-copy>p{margin-top:1.35rem;font-size:.9rem;line-height:1.62}
    .k3-hero-copy .v2-hero-actions{margin-top:1.4rem}
    .k3-hero-proof{margin-top:1.35rem;gap:.7rem 1rem;font-size:.62rem}
    /* En teléfono priorizamos el mensaje. La consola completa reaparece
       inmediatamente después en tablet/desktop y evita un Hero de 1400px. */
    .k3-orchestrator{display:none}
    .k3-scroll-cue{display:none}
}


/* ============================================================
   KUSHIM 3.4 · MOBILE FINAL POLISH
   - Evita solapes de pies informativos en cards.
   - Da espacio real al contenido cuando el texto crece.
   - Reemplaza la tabla comparativa por una lectura vertical móvil.
   Desktop permanece sin cambios.
   ============================================================ */

/* La comparativa vertical existe en el HTML pero sólo aparece en móvil. */
.k34-mobile-comparison{display:none}

@media (max-width:720px){
    /* Base móvil: ningún hijo de un grid puede forzar ancho horizontal. */
    .k3-split-head>*{min-width:0}

    /* DIFERENCIA · los medidores dejan de ser absolutos. ------------- */
    .k3-compare-grid{gap:1.15rem}
    .k3-compare{
        min-height:0 !important;
        height:auto;
        padding:1.45rem 1.3rem 1.25rem;
        display:flex;
        flex-direction:column;
    }
    .k3-compare-top{min-height:52px}
    .k3-compare-top i{font-size:3.2rem}
    .k3-compare h3{
        font-size:clamp(2.05rem,10.5vw,2.7rem);
        line-height:.98;
        margin:1.45rem 0 1.65rem;
        max-width:100%;
    }
    .k3-chain{
        gap:.45rem;
        padding:.8rem;
        border-radius:14px;
    }
    .k3-chain span{padding:.52rem .62rem;font-size:.58rem}
    .k3-chain b{font-size:.72rem}
    .k3-compare ul{
        margin:1.55rem 0 0;
        gap:.82rem;
    }
    .k3-compare li{
        font-size:.86rem;
        line-height:1.55;
        padding-left:1.25rem;
    }
    .k3-loss-meter,
    .k3-live-meter{
        position:static !important;
        left:auto;right:auto;bottom:auto;
        width:100%;
        margin-top:1.55rem;
        padding-top:.9rem;
        border-top:1px solid var(--k3-line);
        grid-template-columns:minmax(0,auto) minmax(80px,1fr);
        gap:.8rem;
        font-size:.5rem;
    }

    /* ARQUITECTURA · el meta/footer participa del flujo normal. ------- */
    .k3-pillar{
        min-height:0 !important;
        height:auto;
        padding:1.45rem 1.4rem 1.25rem;
        display:flex;
        flex-direction:column;
    }
    .k3-pillar-num{font-size:3.55rem}
    .k3-pillar-icon{margin:1.05rem 0 1rem}
    .k3-pillar h3{font-size:1.5rem;margin:.5rem 0 .85rem}
    .k3-pillar>p:not(.v2-kicker){margin-bottom:0}
    .k3-pillar small{
        position:static !important;
        left:auto;right:auto;bottom:auto;
        display:block;
        width:100%;
        margin-top:1.35rem;
        padding-top:.9rem;
        border-top:1px solid var(--k3-line);
        line-height:1.45;
    }

    /* COMPARATIVA · texto y layout pensados específicamente para 1 col. */
    .k3-comparison{
        overflow:hidden;
        padding-top:6.7rem;
        padding-bottom:5.5rem;
    }
    .k3-comparison .wrap{
        width:100%;
        max-width:100%;
        padding-inline:1.2rem;
        overflow:visible;
    }
    .k3-comparison .k3-split-head{
        display:block;
        width:100%;
        margin-bottom:2rem;
    }
    .k3-comparison .k3-split-head>div,
    .k3-comparison .k3-split-head .sec-intro{width:100%;max-width:100%}
    .k3-comparison .sec-title{
        width:100%;
        max-width:100%;
        font-size:clamp(2.15rem,10.6vw,3rem);
        line-height:.98;
        letter-spacing:-.055em;
        overflow-wrap:break-word;
        word-break:normal;
        text-wrap:balance;
    }
    .k3-comparison .sec-intro{
        margin-top:1.25rem !important;
        font-size:.92rem;
        line-height:1.65;
    }

    /* La tabla es excelente en desktop, pero no fuerza scroll lateral en móvil. */
    .k3-comparison .k3-table-wrap{display:none !important}
    .k34-mobile-comparison{
        display:grid;
        gap:0;
        width:100%;
    }
    .k34-mobile-plan{
        position:relative;
        width:100%;
        padding:1.35rem 1.2rem 1.2rem;
        border:1px solid var(--k3-line);
        border-radius:22px;
        background:linear-gradient(165deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
        overflow:hidden;
    }
    .k34-mobile-plan::before{
        content:"";
        position:absolute;
        width:180px;height:180px;
        right:-95px;top:-100px;
        border-radius:50%;
        background:radial-gradient(circle,rgba(0,214,162,.12),transparent 68%);
        pointer-events:none;
    }
    .k34-mobile-plan-growth{border-color:rgba(0,214,162,.18)}
    .k34-mobile-plan-intelligence{
        border-color:rgba(0,214,162,.42);
        background:radial-gradient(circle at 85% 5%,rgba(0,214,162,.11),transparent 30%),linear-gradient(165deg,rgba(0,214,162,.055),rgba(255,255,255,.016));
        box-shadow:0 24px 65px rgba(0,0,0,.18);
    }
    .k34-mobile-plan-badge{
        display:inline-flex;
        margin-bottom:.9rem;
        padding:.42rem .62rem;
        border-radius:999px;
        color:#06100d;
        background:var(--k3-jade);
        font:800 .54rem/1 var(--font-mono);
        letter-spacing:.1em;
    }
    .k34-mobile-plan-head{
        position:relative;z-index:1;
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:.9rem;
        align-items:end;
        padding-bottom:1rem;
        border-bottom:1px solid var(--k3-line);
    }
    .k34-mobile-plan-head span{
        display:block;
        margin-bottom:.55rem;
        color:var(--k3-jade);
        font:700 .55rem/1 var(--font-mono);
        letter-spacing:.1em;
    }
    .k34-mobile-plan-head h3{
        margin:0;
        font:900 2rem/.95 var(--font-display);
        letter-spacing:-.045em;
    }
    .k34-mobile-plan-head>strong{
        color:#f2f5f4;
        font:900 1.35rem/1 var(--font-display);
        letter-spacing:-.035em;
        text-align:right;
        white-space:nowrap;
    }
    .k34-mobile-plan-head>strong small{
        display:block;
        margin-top:.38rem;
        color:rgba(239,244,242,.38);
        font:500 .52rem/1 var(--font-mono);
        letter-spacing:.04em;
    }
    .k34-mobile-plan>p{
        position:relative;z-index:1;
        margin:1rem 0 1.15rem;
        color:rgba(239,244,242,.58);
        font-size:.83rem;
        line-height:1.62;
    }
    .k34-mobile-plan-label{
        margin-bottom:.55rem;
        color:rgba(239,244,242,.36);
        font:700 .52rem/1 var(--font-mono);
        letter-spacing:.11em;
    }
    .k34-mobile-plan ul{list-style:none;margin:0;padding:0}
    .k34-mobile-plan li{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:1rem;
        align-items:center;
        min-height:42px;
        padding:.7rem 0;
        border-top:1px solid rgba(255,255,255,.055);
        color:rgba(239,244,242,.66);
        font-size:.78rem;
        line-height:1.35;
    }
    .k34-mobile-plan li b{color:var(--k3-jade);font-size:.92rem}
    .k34-mobile-plan li em{
        padding:.34rem .48rem;
        border-radius:7px;
        background:rgba(0,214,162,.075);
        color:var(--k3-jade);
        font:700 .54rem/1 var(--font-mono);
        font-style:normal;
        letter-spacing:.04em;
    }
    .k34-mobile-step{
        display:grid;
        grid-template-columns:1fr auto 1fr;
        align-items:center;
        gap:.65rem;
        min-height:48px;
        padding-inline:.35rem;
        color:rgba(239,244,242,.36);
        font:700 .48rem/1 var(--font-mono);
        letter-spacing:.12em;
        text-align:center;
    }
    .k34-mobile-step i{height:1px;background:linear-gradient(90deg,transparent,rgba(0,214,162,.38))}
    .k34-mobile-step i:last-child{background:linear-gradient(90deg,rgba(0,214,162,.38),transparent)}

    /* Light mode de la comparativa móvil. */
    html[data-theme="light"] .k34-mobile-plan{
        background:linear-gradient(165deg,#fff,#f7f9f7);
        border-color:rgba(17,38,31,.13);
        box-shadow:0 20px 55px rgba(28,48,42,.055);
    }
    html[data-theme="light"] .k34-mobile-plan-intelligence{
        background:radial-gradient(circle at 85% 5%,rgba(0,168,134,.11),transparent 30%),linear-gradient(165deg,#fff,#f4faf7);
        border-color:rgba(0,168,134,.34);
    }
    html[data-theme="light"] .k34-mobile-plan-head{border-color:rgba(17,38,31,.11)}
    html[data-theme="light"] .k34-mobile-plan-head h3,
    html[data-theme="light"] .k34-mobile-plan-head>strong{color:#111b18}
    html[data-theme="light"] .k34-mobile-plan-head>strong small,
    html[data-theme="light"] .k34-mobile-plan-label,
    html[data-theme="light"] .k34-mobile-step{color:rgba(17,27,24,.45)}
    html[data-theme="light"] .k34-mobile-plan>p,
    html[data-theme="light"] .k34-mobile-plan li{color:rgba(17,27,24,.66)}
    html[data-theme="light"] .k34-mobile-plan li{border-color:rgba(17,38,31,.08)}
}

@media (max-width:390px){
    .k3-compare{padding-inline:1.15rem}
    .k3-pillar{padding-inline:1.2rem}
    .k34-mobile-plan{padding-inline:1rem}
    .k34-mobile-plan-head{grid-template-columns:1fr}
    .k34-mobile-plan-head>strong{text-align:left}
}

/* ============================================================
   KUSHIM 3.5 · SEÑAL SEO LOCAL VISIBLE
   Refuerza contexto geográfico sin convertir el Hero en una
   landing cargada de keywords.
   ============================================================ */
.k3-hero-local{
    max-width: 760px;
    margin: 18px 0 0;
    color: color-mix(in srgb, var(--text-muted, #8f9a98) 88%, transparent);
    font-family: var(--font-body, 'Sora', sans-serif);
    font-size: clamp(.78rem, .72rem + .18vw, .92rem);
    line-height: 1.65;
}
.k3-hero-local strong{
    color: color-mix(in srgb, var(--text-primary, #fff) 86%, var(--jade, #00d6a2));
    font-weight: 600;
}
html[data-theme="light"] .k3-hero-local{
    color: rgba(19,34,29,.62);
}
html[data-theme="light"] .k3-hero-local strong{
    color: #16352c;
}
@media (max-width: 720px){
    .k3-hero-local{
        margin-top: 14px;
        max-width: 34rem;
        font-size: .78rem;
        line-height: 1.55;
    }
}


/* ============================================================
   KUSHIM 3.9.1 · HOME · CASOS REALES
   Evita que título / bajada / contador invadan el carrusel.
   La cabecera y el stage vuelven a ocupar bloques independientes.
   ============================================================ */
.kx-cases{
    display:block;
    overflow:hidden;
}
.kx-cases-head{
    position:relative !important;
    z-index:8 !important;
    margin-bottom:clamp(4rem,6vw,6.5rem) !important;
    padding-bottom:0 !important;
    transform:none !important;
}
.kx-cases-head .sec-tag,
.kx-cases-head .sec-title,
.kx-cases-head .sec-intro,
.kx-cases-head .kx-case-counter{
    position:relative;
    z-index:2;
}
.kx-cases-head .sec-intro{
    margin-bottom:0;
}
.kx-cases-stage{
    position:relative !important;
    z-index:2 !important;
    margin-top:0 !important;
    inset:auto !important;
    clear:both;
}
@media (max-width:760px){
    .kx-cases-head{
        margin-bottom:clamp(2.75rem,11vw,4rem) !important;
    }
}


/* ============================================================
   KUSHIM 3.9.2 · HOME · PORTFOLIO ELÁSTICO
   El carrusel deja de depender de una altura de viewport/fija.
   La sección crece con el proyecto activo y conserva aire inferior.
   ============================================================ */
.kx-cases{
    height:auto !important;
    max-height:none !important;
    min-height:100svh;
    padding-bottom:clamp(7rem,10vw,11rem) !important;
}

.kx-cases-stage{
    height:auto !important;
    max-height:none !important;
    min-height:clamp(620px,46vw,780px);
    padding-bottom:clamp(1.5rem,3vw,3rem);
    box-sizing:border-box;
}

.kx-cases-track{
    min-height:inherit;
    align-items:stretch;
}

.kx-case{
    height:auto !important;
    max-height:none !important;
    min-height:clamp(620px,46vw,780px);
}

.kx-case-inner{
    height:auto !important;
    max-height:none !important;
    min-height:inherit;
    align-items:stretch;
}

.kx-case-copy,
.kx-case-browser{
    min-height:0;
}

/* El contenido nunca debe desaparecer por una altura heredada. */
.kx-case-copy{
    overflow:visible !important;
}

@media (max-width:1180px){
    .kx-cases-stage,
    .kx-case{
        min-height:clamp(600px,62vw,760px);
    }
}

@media (max-width:900px){
    .kx-cases{
        min-height:auto;
        padding-bottom:clamp(5rem,14vw,7rem) !important;
    }
    .kx-cases-stage,
    .kx-cases-track,
    .kx-case,
    .kx-case-inner{
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
    }
    .kx-cases-stage{
        padding-bottom:1.5rem;
    }
}


/* ============================================================
   KUSHIM 3.9.3 · PORTFOLIO · PROPORCIÓN RESTAURADA
   La tarjeta general sigue siendo elástica, pero la ventana del
   sitio conserva su proporción de navegador y NO se estira con
   la altura de la columna de texto.
   ============================================================ */

/* La altura del proyecto la decide su contenido, no el viewport. */
.kx-cases-stage{
    min-height:0 !important;
}

.kx-cases-track{
    min-height:0 !important;
    align-items:flex-start !important;
}

.kx-case{
    min-height:0 !important;
    align-self:flex-start;
}

/* Ambas columnas nacen arriba, pero dejan de forzarse a igual altura. */
.kx-case-inner{
    min-height:0 !important;
    align-items:start !important;
}

/* La información izquierda conserva aire real después de las acciones. */
.kx-case-copy{
    align-self:start;
    padding-bottom:clamp(2.4rem,3vw,3.6rem);
}

.kx-case-actions{
    margin-bottom:0 !important;
}

/* Recuperamos el efecto "ventana de sitio": compacta y proporcionada. */
.kx-case-browser{
    align-self:start !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:hidden;
}

.kx-browser-top,
.kx-browser-caption{
    flex:0 0 auto;
}

.kx-browser-screen{
    position:relative;
    width:100%;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:16 / 9;
    overflow:hidden;
}

.kx-case-video{
    display:block;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover;
}

/* Desktop: la caja completa abraza la columna más alta (normalmente texto)
   y deja un margen inferior elegante sin alargar la ventana del video. */
@media (min-width:901px){
    .kx-case-inner{
        padding-bottom:clamp(2rem,2.6vw,3rem);
    }
}

/* Tablet / mobile: el navegador mantiene igualmente su relación de aspecto. */
@media (max-width:900px){
    .kx-case-copy{
        padding-bottom:clamp(1.8rem,6vw,2.8rem);
    }
    .kx-case-browser{
        width:100%;
    }
    .kx-browser-screen{
        aspect-ratio:16 / 9;
    }
}

/* ============================================================
   KUSHIM 3.17 · HOME → TU ECOSISTEMA
   ============================================================ */
.k317-ecosystem-bridge{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 16% 18%,rgba(0,214,162,.09),transparent 28%),
        radial-gradient(circle at 88% 72%,rgba(212,185,104,.075),transparent 30%),
        linear-gradient(180deg,#09110f 0%,#0b1412 100%);
}
.k317-ecosystem-bridge::before{
    content:'';position:absolute;inset:0;pointer-events:none;opacity:.34;
    background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
}
.k317-bridge-shell{
    position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
    gap:clamp(2.4rem,5vw,6rem);align-items:center;padding:clamp(3rem,7vw,6.5rem) 0;
}
.k317-bridge-copy>p{max-width:760px;margin:1.2rem 0 0;color:rgba(233,241,238,.68);font:400 clamp(.96rem,1.4vw,1.08rem)/1.78 'Sora',sans-serif}
.k317-bridge-copy>p strong{color:#f1f6f4;font-weight:650}
.k317-bridge-actions{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;margin-top:2rem}
.k317-bridge-map{position:relative;display:grid;gap:.85rem;padding:1.1rem;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:rgba(255,255,255,.025);box-shadow:0 30px 90px rgba(0,0,0,.28);backdrop-filter:blur(16px)}
.k317-bridge-map::after{content:'';position:absolute;inset:1px;border-radius:23px;pointer-events:none;background:linear-gradient(145deg,rgba(0,214,162,.055),transparent 42%,rgba(212,185,104,.045));}
.k317-bridge-stage{position:relative;z-index:1;padding:1.25rem 1.35rem;border:1px solid rgba(0,214,162,.18);border-radius:16px;background:linear-gradient(145deg,rgba(0,214,162,.075),rgba(255,255,255,.02));}
.k317-bridge-stage.is-monthly{border-color:rgba(212,185,104,.22);background:linear-gradient(145deg,rgba(212,185,104,.07),rgba(255,255,255,.02))}
.k317-bridge-stage>span,.k317-bridge-result span{display:block;color:#00d6a2;font:700 .68rem/1 'Chivo Mono',monospace;letter-spacing:.14em;text-transform:uppercase}
.k317-bridge-stage.is-monthly>span{color:#d4b968}
.k317-bridge-stage strong{display:block;margin:.55rem 0 .35rem;color:#f0f6f3;font:700 clamp(1.25rem,2.2vw,1.75rem)/1.12 'Chivo',sans-serif;letter-spacing:-.03em}
.k317-bridge-stage strong i{font-style:normal;color:rgba(239,246,243,.28);font-weight:500}
.k317-bridge-stage small{color:rgba(232,240,237,.48);font:500 .78rem/1.45 'Sora',sans-serif}
.k317-bridge-plus{position:relative;z-index:1;justify-self:center;color:rgba(255,255,255,.28);font:500 1.2rem/1 'Chivo Mono',monospace}
.k317-bridge-result{position:relative;z-index:1;display:flex;align-items:center;gap:.55rem;padding:.8rem 1rem;border-radius:13px;background:rgba(0,214,162,.06)}
.k317-bridge-result i{width:8px;height:8px;border-radius:50%;background:#00d6a2;box-shadow:0 0 18px rgba(0,214,162,.75)}

.k317-final-config{position:relative;padding:clamp(5rem,10vw,9rem) 0;background:linear-gradient(180deg,#0a1210,#080d0c);overflow:hidden}
.k317-final-config::before{content:'';position:absolute;width:760px;height:760px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(0,214,162,.09),transparent 62%);pointer-events:none}
.k317-final-config-shell{position:relative;z-index:1;max-width:1050px;margin:auto;text-align:center;padding:clamp(2rem,5vw,4rem);border:1px solid rgba(255,255,255,.08);border-radius:28px;background:linear-gradient(155deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:0 30px 100px rgba(0,0,0,.25)}
.k317-final-eyebrow{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.2rem;color:#00d6a2;font:700 .72rem/1 'Chivo Mono',monospace;letter-spacing:.16em}
.k317-final-eyebrow::before{content:'';width:7px;height:7px;border-radius:50%;background:#00d6a2;box-shadow:0 0 16px rgba(0,214,162,.8)}
.k317-final-config h2{margin:0;color:#f0f6f3;font:700 clamp(2.25rem,5.2vw,5rem)/.98 'Chivo',sans-serif;letter-spacing:-.055em}
.k317-final-config h2 span{font-weight:300;color:rgba(235,243,240,.58)}
.k317-final-config p{max-width:790px;margin:1.35rem auto 2rem;color:rgba(232,240,237,.63);font:400 clamp(.96rem,1.4vw,1.08rem)/1.78 'Sora',sans-serif}

html[data-theme="light"] .k317-ecosystem-bridge{background:radial-gradient(circle at 16% 18%,rgba(0,168,134,.08),transparent 28%),radial-gradient(circle at 88% 72%,rgba(169,136,46,.07),transparent 30%),linear-gradient(180deg,#eef3ef,#f6f7f4)}
html[data-theme="light"] .k317-bridge-copy>p{color:rgba(17,27,24,.64)}
html[data-theme="light"] .k317-bridge-copy>p strong{color:#111b18}
html[data-theme="light"] .k317-bridge-map{background:rgba(255,255,255,.72);border-color:rgba(17,38,31,.1);box-shadow:0 28px 70px rgba(28,48,42,.08)}
html[data-theme="light"] .k317-bridge-stage{background:rgba(0,168,134,.055);border-color:rgba(0,168,134,.18)}
html[data-theme="light"] .k317-bridge-stage.is-monthly{background:rgba(169,136,46,.05);border-color:rgba(169,136,46,.18)}
html[data-theme="light"] .k317-bridge-stage strong{color:#111b18}
html[data-theme="light"] .k317-bridge-stage small{color:rgba(17,27,24,.48)}
html[data-theme="light"] .k317-final-config{background:linear-gradient(180deg,#f6f7f4,#eef3ef)}
html[data-theme="light"] .k317-final-config-shell{background:rgba(255,255,255,.72);border-color:rgba(17,38,31,.1);box-shadow:0 28px 70px rgba(28,48,42,.08)}
html[data-theme="light"] .k317-final-config h2{color:#111b18}
html[data-theme="light"] .k317-final-config h2 span{color:rgba(17,27,24,.48)}
html[data-theme="light"] .k317-final-config p{color:rgba(17,27,24,.62)}

@media(max-width:900px){
    .k317-bridge-shell{grid-template-columns:1fr;gap:2rem}
    .k317-bridge-map{max-width:650px;width:100%}
}
@media(max-width:640px){
    .k317-bridge-actions{display:grid;grid-template-columns:1fr}
    .k317-bridge-actions .btn{width:100%;justify-content:center}
    .k317-bridge-stage{padding:1rem}
    .k317-final-config-shell{padding:2rem 1.25rem;border-radius:22px}
    .k317-final-config .btn{width:100%;justify-content:center}
}

/* ============================================================
   KUSHIM 3.20 · HERO MÓVIL · MENOS RUIDO, MÁS IMPACTO
   Desktop permanece intacto. Sólo cambia <= 720px.
   ============================================================ */
.k320-copy-mobile{display:none}

@media (max-width:720px){
    /* La metadata técnica completa sigue disponible en tablet/desktop.
       En teléfono usamos una sola señal de marca/localización. */
    .k3-hero .gt-meta{display:none}

    .k320-copy-desktop{display:none}
    .k320-copy-mobile{display:inline}

    .k3-hero-copy .gt-eyebrow{
        display:inline-flex;
        margin-bottom:1.15rem;
        font-size:.64rem;
        line-height:1.35;
        letter-spacing:.14em;
        color:rgba(238,244,242,.48);
        gap:0;
    }
    .k3-hero-copy .gt-eyebrow::before{display:none}

    .k3-hero-copy>p.k320-hero-lead{
        max-width:31rem;
        margin-top:1.25rem;
        font-size:.94rem;
        line-height:1.58;
        color:rgba(236,244,241,.72);
    }

    /* Un CTA dominante + una segunda acción liviana. */
    .k3-hero-copy .v2-hero-actions{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:.8rem;
        margin-top:1.45rem;
    }
    .k3-hero-copy .v2-hero-actions .btn-main{
        width:100%;
        justify-content:center;
    }
    .k3-hero-copy .v2-hero-actions .k320-secondary-link{
        width:max-content !important;
        min-height:0 !important;
        padding:.12rem 0 !important;
        margin:0 auto !important;
        border:0 !important;
        border-radius:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        color:rgba(238,244,242,.58) !important;
        justify-content:center !important;
        font:600 .70rem/1.35 var(--font-mono) !important;
        letter-spacing:.07em !important;
        text-transform:uppercase !important;
    }
    .k3-hero-copy .v2-hero-actions .k320-secondary-link:hover,
    .k3-hero-copy .v2-hero-actions .k320-secondary-link:focus-visible{
        color:var(--k3-jade) !important;
        transform:none !important;
    }

    /* En móvil dejamos sólo las dos pruebas más importantes. */
    .k3-hero-proof span:nth-child(3){display:none}
    .k3-hero-proof{
        margin-top:1.2rem;
        gap:.65rem 1rem;
        font-size:.61rem;
    }

    /* La señal SEO local completa se conserva en desktop y en el DOM,
       pero no compite visualmente con el mensaje principal en teléfono. */
    .k3-hero-local{display:none}
}

@media (max-width:390px){
    .k3-hero-copy .gt-eyebrow{font-size:.60rem;letter-spacing:.11em}
    .k3-hero-copy>p.k320-hero-lead{font-size:.91rem}
}

/* ============================================================
   KUSHIM 3.21 · HERO MÓVIL · COMPOSICIÓN VERTICAL
   Marca arriba · mensaje al centro · conversión abajo.
   Desktop permanece intacto. Sólo cambia <= 720px.
   ============================================================ */
@media (max-width:720px){
    /* Aprovechamos todo el viewport móvil en lugar de apilar el contenido. */
    .k3-hero{
        min-height:100svh;
        padding:6.15rem 0 1.7rem;
        align-items:stretch;
    }

    .k3-hero .wrap.k3-hero-grid{
        width:100%;
        flex:1 1 auto;
        min-height:0;
    }

    .k3-hero-copy{
        min-height:calc(100svh - 7.85rem);
        display:grid;
        grid-template-rows:auto minmax(0,1fr) auto auto auto;
        align-content:stretch;
    }

    /* 1 · Señal de marca/localización, cerca de la parte superior. */
    .k3-hero-copy .gt-eyebrow{
        grid-row:1;
        align-self:start;
        margin:0;
    }

    /* 2 · El manifiesto ocupa el centro visual del viewport. */
    .k3-hero-copy h1{
        grid-row:2;
        align-self:center;
        margin:clamp(1.5rem,4.5svh,3.2rem) 0;
    }

    /* 3 · Bloque de conversión anclado visualmente a la zona inferior. */
    .k3-hero-copy>p.k320-hero-lead{
        grid-row:3;
        align-self:end;
        margin:0 0 1.05rem;
        max-width:32rem;
    }

    .k3-hero-copy .v2-hero-actions{
        grid-row:4;
        margin:0;
        gap:.72rem;
    }

    .k3-hero-copy .v2-hero-actions .btn-main{
        min-height:53px;
    }

    .k3-hero-copy .v2-hero-actions .k320-secondary-link{
        margin:.05rem auto 0 !important;
    }

    .k3-hero-proof{
        grid-row:5;
        align-self:end;
        margin:1.05rem 0 0;
        justify-content:flex-start;
    }
}

/* Teléfonos bajos/compactos: conserva la composición sin forzar recortes. */
@media (max-width:720px) and (max-height:700px){
    .k3-hero{
        min-height:100svh;
        padding-top:5.6rem;
        padding-bottom:1.25rem;
    }
    .k3-hero-copy{
        min-height:calc(100svh - 6.85rem);
    }
    .k3-hero-copy h1{
        margin:1.1rem 0;
        font-size:clamp(2.5rem,11vw,3.65rem);
    }
    .k3-hero-copy>p.k320-hero-lead{
        margin-bottom:.8rem;
        line-height:1.5;
    }
    .k3-hero-proof{
        margin-top:.8rem;
    }
}
