/* ============ SOS DIGITAL — DESIGN SYSTEM v2 · MIDNIGHT NAVY ============ */
:root{
  --bg:#050b1a; --bg2:#071021; --deep:#081226; --panel:#0c1a38; --panel2:#101f42;
  --line:rgba(96,140,230,.16); --line-2:rgba(96,140,230,.28);
  --tx:#e8eefb; --mut:#8fa0c6; --mut2:#6b7ca6;
  --gold:#d9b566; --gold-d:#b08c45; --gold-soft:rgba(217,181,102,.12);
  --blu:#4f8cff; --cyan:#3fc6ff; --blu-soft:rgba(79,140,255,.12);
  --ok:#3ecf8e; --warn:#e0a24a; --bad:#e06a5a;
  --r:16px;
  /* legacy aliases */
  --ink:#050b1a; --off:#e8eefb; --cream:#0b1830; --mut-d:#8fa0c6; --line-d:rgba(96,140,230,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--tx);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.eyebrow{font-family:'Syne',sans-serif;font-weight:800;font-size:11px;letter-spacing:.45em;text-transform:uppercase;color:var(--cyan)}
h1,h2,h3,.serif{font-family:'DM Serif Display',serif;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:var(--tx)}
h1{font-size:clamp(42px,5.8vw,72px)}
h2{font-size:clamp(30px,3.8vw,48px)}
h3{font-size:clamp(20px,2.4vw,26px)}
.gold{color:var(--gold)}
.blue{color:var(--blu)}
.it{font-style:italic}
.sub{font-size:17px;color:var(--mut);max-width:600px}
section{padding:110px 0;position:relative}
.dk{background:transparent}
.cream-bg{background:var(--bg2)}
.alt{background:var(--bg2)}

/* ambient aurora — global moving background */
.aurora{position:fixed;inset:0;z-index:-2;pointer-events:none;background:
 radial-gradient(ellipse 45% 35% at 15% 12%,rgba(79,140,255,.10),transparent 60%),
 radial-gradient(ellipse 40% 32% at 88% 30%,rgba(63,198,255,.07),transparent 60%),
 radial-gradient(ellipse 42% 36% at 55% 92%,rgba(217,181,102,.05),transparent 62%)}
.aurora::before,.aurora::after{content:'';position:absolute;border-radius:50%;filter:blur(90px)}
.aurora::before{width:52vw;height:52vw;left:-14vw;top:-16vw;background:radial-gradient(circle,rgba(79,140,255,.14),transparent 65%);animation:aur1 26s ease-in-out infinite alternate}
.aurora::after{width:46vw;height:46vw;right:-12vw;bottom:-14vw;background:radial-gradient(circle,rgba(63,198,255,.09),transparent 65%);animation:aur2 32s ease-in-out infinite alternate}
@keyframes aur1{to{transform:translate(9vw,7vh) scale(1.15)}}
@keyframes aur2{to{transform:translate(-8vw,-9vh) scale(1.12)}}
.gridlines{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background:
 linear-gradient(rgba(96,140,230,.05) 1px,transparent 1px),
 linear-gradient(90deg,rgba(96,140,230,.05) 1px,transparent 1px);
 background-size:64px 64px;mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 30%,transparent 75%)}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:90;transition:.35s;padding:20px 0}
.nav.sc{background:rgba(5,11,26,.82);backdrop-filter:blur(16px);padding:12px 0;border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between}
.logo{font-family:'Syne',sans-serif;font-weight:800;font-size:15px;letter-spacing:.28em;color:var(--tx)}
.logo b{color:var(--gold)}
.nlinks{display:flex;gap:30px;align-items:center}
.nlinks a{font-size:13px;font-weight:500;color:var(--mut);letter-spacing:.04em;transition:.25s}
.nlinks a:hover,.nlinks a.act{color:var(--cyan)}
.burger{display:none;background:none;border:0;cursor:pointer;width:30px;height:22px;position:relative}
.burger span{position:absolute;left:0;right:0;height:2px;background:var(--cyan);transition:.3s}
.burger span:nth-child(1){top:0}.burger span:nth-child(2){top:10px}.burger span:nth-child(3){top:20px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:'Inter',sans-serif;font-weight:600;font-size:14px;letter-spacing:.02em;padding:15px 30px;border-radius:60px;cursor:pointer;border:0;transition:.28s;position:relative;overflow:hidden}
.btn-g{background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#0a0f1e;box-shadow:0 0 0 0 rgba(217,181,102,.4)}
.btn-g:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(217,181,102,.35)}
.btn-g::after{content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:sheen 3.6s ease-in-out infinite}
@keyframes sheen{0%,55%{left:-80%}80%,100%{left:130%}}
.btn-o{background:transparent;color:var(--cyan);border:1px solid rgba(63,198,255,.4)}
.btn-o:hover{background:var(--blu-soft);border-color:var(--cyan);box-shadow:0 0 24px rgba(63,198,255,.2)}
.btn-dark{background:linear-gradient(135deg,var(--blu),#2f6ae0);color:#fff}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(79,140,255,.4)}
.btn-sm{padding:10px 20px;font-size:12.5px}

/* reveal */
.rv{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1)}
.rv.on{opacity:1;transform:none}
.rv.d1{transition-delay:.12s}.rv.d2{transition-delay:.24s}.rv.d3{transition-delay:.36s}.rv.d4{transition-delay:.48s}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important}.aurora,.gridlines{display:none}}

/* cards */
.grid{display:grid;gap:26px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.card{background:linear-gradient(160deg,var(--panel),var(--deep));border:1px solid var(--line);border-radius:var(--r);padding:34px;transition:.3s}
.card:hover{border-color:var(--line-2);transform:translateY(-4px);box-shadow:0 20px 50px rgba(3,8,20,.6)}
.pain-num{font-family:'DM Serif Display',serif;font-size:46px;color:var(--gold);line-height:1;text-shadow:0 0 34px rgba(217,181,102,.35)}
.card p{color:var(--mut)}

/* marquee ribbon */
.marq{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(8,18,38,.6);padding:16px 0;position:relative}
.marq-in{display:flex;gap:56px;white-space:nowrap;animation:marq 34s linear infinite;width:max-content}
.marq span{font-family:'Syne',sans-serif;font-weight:800;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--mut2);display:flex;align-items:center;gap:56px}
.marq b{color:var(--gold);font-weight:800}
.marq i{color:var(--cyan);font-style:normal}
@keyframes marq{to{transform:translateX(-50%)}}

/* live ticker */
.ticker{background:linear-gradient(160deg,var(--panel),var(--deep));border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.ticker-hd{display:flex;align-items:center;gap:9px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);font-weight:600}
.ticker-hd::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 12px var(--ok);animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.35}}
.ticker-body{padding:8px 0;height:300px;overflow:hidden;position:relative;display:flex;flex-direction:column}
.tk-row{display:flex;align-items:center;gap:12px;padding:11px 18px;font-size:12.5px;color:var(--mut);border-bottom:1px solid rgba(96,140,230,.06);animation:tkIn .5s cubic-bezier(.2,.8,.3,1)}
.tk-row .tk-ic{width:30px;height:30px;border-radius:9px;background:var(--blu-soft);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.tk-row b{color:var(--tx);font-weight:600}
.tk-row .tk-amt{margin-left:auto;font-family:'DM Serif Display',serif;font-size:15px;color:var(--gold);white-space:nowrap}
.tk-row .tk-t{font-size:10.5px;color:var(--mut2);white-space:nowrap}
@keyframes tkIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}

/* chat ui */
.phone{width:340px;background:linear-gradient(170deg,#0c1a38,#081226);border:1px solid var(--line-2);border-radius:34px;padding:14px;box-shadow:0 40px 100px rgba(2,6,16,.8),0 0 60px rgba(79,140,255,.08)}
.phone-in{background:#040a18;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;height:520px}
.chat-hd{display:flex;align-items:center;gap:11px;padding:14px 16px;background:rgba(79,140,255,.07);border-bottom:1px solid var(--line)}
.av{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-d));display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:12px;color:#0a0f1e;flex-shrink:0}
.chat-hd .nm{font-size:13.5px;font-weight:600;color:var(--tx)}
.chat-hd .st{font-size:11px;color:var(--ok);display:flex;align-items:center;gap:5px}
.chat-hd .st::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ok)}
.chat-body{flex:1;overflow-y:auto;padding:16px 13px;display:flex;flex-direction:column;gap:9px;scrollbar-width:none}
.chat-body::-webkit-scrollbar{display:none}
.bub{max-width:82%;padding:10px 14px;border-radius:15px;font-size:13px;line-height:1.5;animation:pop .32s cubic-bezier(.2,.8,.3,1.2)}
.bub.u{align-self:flex-start;background:#122347;color:#dbe4f7;border-bottom-left-radius:4px}
.bub.a{align-self:flex-end;background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#0a0f1e;border-bottom-right-radius:4px;font-weight:500}
.bub.sys{align-self:center;background:var(--blu-soft);color:var(--cyan);font-size:11px;padding:6px 14px;border-radius:20px;border:1px dashed rgba(63,198,255,.35)}
.bub .tm{display:block;font-size:9.5px;opacity:.55;margin-top:4px;text-align:right}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
.typing{align-self:flex-end;background:rgba(217,181,102,.25);padding:11px 16px;border-radius:15px;display:flex;gap:5px}
.typing.u{align-self:flex-start;background:#122347}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:tp 1.1s infinite}
.typing i:nth-child(2){animation-delay:.18s}.typing i:nth-child(3){animation-delay:.36s}
@keyframes tp{0%,60%,100%{transform:none;opacity:.4}30%{transform:translateY(-5px);opacity:1}}
.quote-card{background:#040a18;border:1px solid rgba(217,181,102,.45);border-radius:12px;padding:12px 14px;font-size:12px;color:#dbe4f7;align-self:flex-end;max-width:86%;animation:pop .35s;box-shadow:0 0 24px rgba(217,181,102,.12)}
.quote-card .qr{display:flex;justify-content:space-between;padding:3px 0;color:#9fb0d4;gap:20px}
.quote-card .qr.t{border-top:1px solid rgba(217,181,102,.35);margin-top:6px;padding-top:8px;color:var(--gold);font-weight:600;font-size:13px}

/* demo shells */
.demo-shell{background:linear-gradient(165deg,var(--panel),var(--deep));border:1px solid var(--line-2);border-radius:22px;overflow:hidden;box-shadow:0 40px 100px rgba(2,6,16,.7),0 0 80px rgba(79,140,255,.06)}
.demo-bar{display:flex;align-items:center;gap:8px;padding:13px 18px;background:rgba(79,140,255,.05);border-bottom:1px solid var(--line)}
.demo-bar i{width:10px;height:10px;border-radius:50%;background:#1a2b52}
.demo-bar i:first-child{background:var(--bad)}.demo-bar i:nth-child(2){background:var(--warn)}.demo-bar i:nth-child(3){background:var(--ok)}
.demo-bar .url{margin-left:12px;font-size:11.5px;color:var(--mut2);font-family:monospace;letter-spacing:.03em}
.demo-tabs{display:flex;gap:4px;padding:12px 18px 0;background:rgba(79,140,255,.02);flex-wrap:wrap}
.dtab{background:none;border:0;color:var(--mut2);font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;padding:10px 18px;cursor:pointer;border-radius:9px 9px 0 0;transition:.25s;letter-spacing:.02em}
.dtab.on{background:var(--panel2);color:var(--gold)}
.demo-stage{background:var(--panel2);min-height:430px;padding:26px}
.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.kpi{background:rgba(79,140,255,.06);border:1px solid var(--line);border-radius:12px;padding:16px;transition:.3s}
.kpi:hover{border-color:var(--line-2);box-shadow:0 0 30px rgba(79,140,255,.1)}
.kpi .kv{font-family:'DM Serif Display',serif;font-size:30px;color:var(--gold)}
.kpi .kl{font-size:10.5px;color:var(--mut2);letter-spacing:.08em;text-transform:uppercase;margin-top:3px}
.kpi .kd{font-size:10.5px;color:var(--ok);margin-top:4px}
.try-hint{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--cyan);background:var(--blu-soft);border:1px dashed rgba(63,198,255,.4);padding:8px 16px;border-radius:30px;margin-bottom:18px;animation:pulse-h 2.4s infinite}
@keyframes pulse-h{0%,100%{box-shadow:0 0 0 0 rgba(63,198,255,.3)}50%{box-shadow:0 0 0 9px rgba(63,198,255,0)}}

/* kanban */
.kb{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.kb-col{background:rgba(3,8,20,.5);border-radius:12px;padding:12px;min-height:240px}
.kb-col h5{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut2);margin-bottom:11px;font-weight:600;display:flex;justify-content:space-between}
.kb-card{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:9px;padding:12px;margin-bottom:9px;cursor:grab;font-size:12px;color:#dbe4f7;transition:.2s}
.kb-card:hover{box-shadow:0 4px 20px rgba(79,140,255,.15)}
.kb-card:active{cursor:grabbing}
.kb-card.drag{opacity:.4;transform:rotate(2deg)}
.kb-card .kn{font-weight:600;font-size:12.5px;margin-bottom:3px}
.kb-card .km{color:var(--mut2);font-size:11px}
.kb-col.over{outline:2px dashed rgba(63,198,255,.55);outline-offset:-4px}

/* testimonials */
.testi{background:linear-gradient(160deg,var(--panel),var(--deep));border:1px solid var(--line);border-radius:var(--r);padding:32px;position:relative;transition:.3s}
.testi:hover{border-color:var(--line-2)}
.testi::before{content:'“';font-family:'DM Serif Display',serif;font-size:70px;color:var(--gold);position:absolute;top:6px;left:22px;opacity:.3;line-height:1}
.testi p{font-size:14.5px;line-height:1.75;color:var(--mut);margin:22px 0 20px;font-style:italic}
.testi .who{display:flex;align-items:center;gap:13px}
.testi .pav{width:44px;height:44px;border-radius:50%;font-family:'Syne',sans-serif;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;color:#0a0f1e;background:linear-gradient(135deg,var(--gold),#eed9a0)}
.testi .wn{font-size:13.5px;font-weight:600;color:var(--tx)}
.testi .wr{font-size:12px;color:var(--mut2)}
.testi .metric{position:absolute;top:26px;right:26px;font-family:'DM Serif Display',serif;font-size:21px;color:var(--gold);text-shadow:0 0 24px rgba(217,181,102,.4)}

/* cta band */
.cta-band{background:linear-gradient(150deg,#0a1734,#050b1a);border:1px solid var(--line-2);border-radius:28px;padding:76px 60px;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;inset:-40%;background:radial-gradient(circle at 28% 38%,rgba(79,140,255,.16),transparent 52%),radial-gradient(circle at 76% 66%,rgba(217,181,102,.12),transparent 48%);animation:drift 12s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate(5%,7%) scale(1.08)}}
.cta-band>*{position:relative}

/* footer */
footer{background:#030812;color:var(--mut2);padding:64px 0 36px;border-top:1px solid var(--line)}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:44px}
footer h6{font-family:'Syne',sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
footer a{display:block;font-size:13px;padding:5px 0;transition:.2s}
footer a:hover{color:var(--cyan)}
.f-bot{border-top:1px solid var(--line);padding-top:26px;display:flex;justify-content:space-between;font-size:12px}

/* popup */
.pop-ov{position:fixed;inset:0;background:rgba(2,6,16,.8);backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:.4s}
.pop-ov.show{opacity:1;pointer-events:auto}
.pop{background:linear-gradient(165deg,var(--panel2),var(--deep));border:1px solid var(--line-2);border-radius:24px;padding:52px 48px;max-width:560px;width:92%;text-align:center;transform:translateY(26px) scale(.97);transition:.45s cubic-bezier(.2,.8,.3,1.1);position:relative;box-shadow:0 40px 120px rgba(2,6,16,.9),0 0 80px rgba(79,140,255,.1)}
.pop-ov.show .pop{transform:none}
.pop-x{position:absolute;top:18px;right:22px;background:none;border:0;font-size:22px;color:var(--mut2);cursor:pointer}
.pop p{color:var(--mut)}
.pop-btns{display:grid;gap:12px;margin-top:30px}
.pop-btn{display:flex;align-items:center;justify-content:space-between;background:rgba(79,140,255,.06);border:1px solid var(--line);border-radius:13px;padding:18px 24px;cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;color:var(--tx);transition:.25s;text-align:left}
.pop-btn:hover{border-color:var(--gold);background:var(--gold-soft);transform:translateX(4px)}
.pop-btn .arr{color:var(--gold);font-size:18px}

/* team strip cards */
.agent-card{background:linear-gradient(160deg,var(--panel),var(--deep));border:1px solid var(--line);border-radius:20px;padding:36px 30px;transition:.3s;position:relative;overflow:hidden}
.agent-card::before{content:'';position:absolute;top:-60%;right:-40%;width:80%;height:120%;background:radial-gradient(circle,rgba(79,140,255,.1),transparent 65%);opacity:0;transition:.4s}
.agent-card:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 26px 60px rgba(2,6,16,.7)}
.agent-card:hover::before{opacity:1}
.agent-card .aav{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,var(--gold),var(--gold-d));display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:17px;color:#0a0f1e;margin-bottom:20px;box-shadow:0 8px 30px rgba(217,181,102,.3)}
.agent-card h3{margin-bottom:4px}
.agent-card .role{font-size:12px;color:var(--cyan);letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:14px}
.agent-card p{font-size:13.5px;color:var(--mut);line-height:1.7;margin-bottom:22px}

/* waveform */
.wave{display:flex;align-items:center;gap:3px;height:44px}
.wave i{width:4px;border-radius:3px;background:var(--cyan);height:8px;transition:.15s;box-shadow:0 0 8px rgba(63,198,255,.4)}
.wave.live i{animation:wv .9s ease-in-out infinite}
@keyframes wv{0%,100%{height:8px}50%{height:var(--h,30px)}}

/* ============ TOOLKIT EXPLORER ============ */
.tk-explorer{display:grid;grid-template-columns:340px 1fr;gap:24px;margin-top:52px}
@media(max-width:960px){.tk-explorer{grid-template-columns:1fr}}
.tk-list{display:flex;flex-direction:column;gap:8px;max-height:560px;overflow-y:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}
.tk-item{display:flex;align-items:center;gap:13px;background:rgba(79,140,255,.04);border:1px solid var(--line);border-radius:13px;padding:15px 17px;cursor:pointer;transition:.22s;width:100%;font-family:'Inter',sans-serif;text-align:left}
.tk-item:hover{border-color:var(--line-2);transform:translateX(4px)}
.tk-item.on{border-color:var(--gold);background:var(--gold-soft);box-shadow:0 0 30px rgba(217,181,102,.1)}
.tk-item .ti-ic{width:38px;height:38px;border-radius:11px;background:var(--blu-soft);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.tk-item.on .ti-ic{background:var(--gold-soft)}
.tk-item .ti-n{font-size:13.5px;font-weight:600;color:var(--tx)}
.tk-item .ti-s{font-size:11px;color:var(--mut2);margin-top:2px}
.tk-detail{background:linear-gradient(165deg,var(--panel),var(--deep));border:1px solid var(--line-2);border-radius:20px;padding:38px;position:relative;overflow:hidden;min-height:480px}
.tk-detail::before{content:'';position:absolute;top:-40%;right:-25%;width:65%;height:110%;background:radial-gradient(circle,rgba(217,181,102,.08),transparent 65%)}
.tk-detail>*{position:relative}
.tkd-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);background:var(--blu-soft);border:1px solid rgba(63,198,255,.3);border-radius:20px;padding:5px 13px;margin-bottom:16px}
.tkd-h{font-family:'DM Serif Display',serif;font-size:28px;color:var(--tx);margin-bottom:12px}
.tkd-p{font-size:14.5px;color:var(--mut);line-height:1.75;margin-bottom:22px}
.tkd-result{display:flex;align-items:center;gap:14px;background:var(--gold-soft);border:1px solid rgba(217,181,102,.35);border-radius:13px;padding:16px 20px;margin-bottom:24px}
.tkd-result .tr-n{font-family:'DM Serif Display',serif;font-size:26px;color:var(--gold);white-space:nowrap;text-shadow:0 0 24px rgba(217,181,102,.35)}
.tkd-result .tr-l{font-size:12.5px;color:var(--mut);line-height:1.5}
.tkd-visual{background:rgba(3,8,20,.55);border:1px solid var(--line);border-radius:14px;padding:20px;min-height:150px}
.tkd-anim{animation:tkdIn .45s cubic-bezier(.2,.8,.3,1)}
@keyframes tkdIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
/* micro-visual primitives */
.mv-row{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:12.5px;color:var(--mut);border-bottom:1px solid rgba(96,140,230,.07);opacity:0;animation:mvIn .4s forwards}
.mv-row:nth-child(1){animation-delay:.1s}.mv-row:nth-child(2){animation-delay:.32s}.mv-row:nth-child(3){animation-delay:.54s}.mv-row:nth-child(4){animation-delay:.76s}.mv-row:nth-child(5){animation-delay:.98s}
@keyframes mvIn{to{opacity:1}}
.mv-row b{color:var(--tx)}
.mv-row .ok{color:var(--ok);margin-left:auto;white-space:nowrap}
.mv-row .gold-t{color:var(--gold);margin-left:auto;font-family:'DM Serif Display',serif;font-size:14px;white-space:nowrap}
.mv-bar{height:9px;background:rgba(96,140,230,.14);border-radius:6px;overflow:hidden;margin:9px 0 16px}
.mv-fill{height:100%;background:linear-gradient(90deg,var(--blu),var(--cyan));width:0;border-radius:6px;animation:mvFill 1.3s .3s cubic-bezier(.2,.8,.3,1) forwards}
.mv-fill.g{background:linear-gradient(90deg,var(--gold-d),var(--gold))}
@keyframes mvFill{to{width:var(--w,70%)}}
.mv-lbl{display:flex;justify-content:space-between;font-size:11px;color:var(--mut2);margin-bottom:4px}
.mv-lbl b{color:var(--tx)}

/* stat wall */
.stat-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:960px){.stat-wall{grid-template-columns:repeat(2,1fr)}}
.stat{background:linear-gradient(160deg,var(--panel),var(--deep));border:1px solid var(--line);border-radius:18px;padding:34px 28px;text-align:center;position:relative;overflow:hidden;transition:.3s}
.stat:hover{border-color:rgba(217,181,102,.4);box-shadow:0 0 50px rgba(217,181,102,.08)}
.stat .sv{font-family:'DM Serif Display',serif;font-size:clamp(36px,4vw,52px);color:var(--gold);line-height:1;text-shadow:0 0 34px rgba(217,181,102,.35)}
.stat .sl{font-size:12px;color:var(--mut);margin-top:10px;line-height:1.5}

/* misc */
.tag{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:20px;background:var(--blu-soft);color:var(--cyan);border:1px solid rgba(63,198,255,.3)}
.check-li{list-style:none}
.check-li li{padding:9px 0 9px 34px;position:relative;font-size:15px;color:var(--mut)}
.check-li li b{color:var(--tx)}
.check-li li::before{content:'';position:absolute;left:0;top:13px;width:19px;height:19px;border-radius:50%;background:var(--gold-soft);border:1.5px solid var(--gold)}
.check-li li::after{content:'';position:absolute;left:5px;top:17px;width:9px;height:5px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.sep{width:64px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);margin:22px 0 26px;box-shadow:0 0 14px rgba(217,181,102,.5)}
.center .sep{margin-left:auto;margin-right:auto;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.center{text-align:center}
.center .sub{margin:0 auto}
.jab{text-align:center;padding:36px 24px;font-family:'DM Serif Display',serif;font-style:italic;font-size:clamp(18px,2.4vw,24px);color:var(--mut)}
.jab b{color:var(--gold);font-weight:400}

@media(max-width:960px){
  .g3,.g2{grid-template-columns:1fr}
  .kpi-row{grid-template-columns:repeat(2,1fr)}
  .kb{grid-template-columns:1fr}
  .f-grid{grid-template-columns:1fr 1fr}
  .nlinks{display:none;position:fixed;top:0;right:0;bottom:0;width:76%;background:#050b1a;flex-direction:column;justify-content:center;gap:26px;z-index:95;border-left:1px solid var(--line)}
  .nlinks.open{display:flex}
  .nlinks a{font-size:19px}
  .burger{display:block;z-index:96}
  section{padding:76px 0}
  .cta-band{padding:56px 28px}
  .hero-flex{flex-direction:column}
  .phone{width:100%;max-width:340px;margin:0 auto}
}

/* ============ v3 JOURNEY ENGINE ============ */
.jprog{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--cyan));width:0;z-index:99;box-shadow:0 0 12px rgba(217,181,102,.6);transition:width .1s linear}
/* cinematic chapter: tall wrapper + sticky stage */
.chap{position:relative}
.chap .stage{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.chap .stage .wrap{width:100%}
/* cinematic lines that light up in sequence */
.cine{font-family:'DM Serif Display',serif;font-size:clamp(30px,4.6vw,58px);line-height:1.22;text-align:center;max-width:900px;margin:0 auto}
.cine .ln{display:block;color:rgba(143,160,198,.22);transition:color .6s,text-shadow .6s,transform .6s;transform:translateY(8px)}
.cine .ln.lit{color:var(--tx);transform:none}
.cine .ln.lit .g{color:var(--gold);text-shadow:0 0 40px rgba(217,181,102,.45)}
.cine .ln.lit .r{color:var(--bad)}
.cine .ln.lit .c{color:var(--cyan)}
.cine-sub{text-align:center;font-size:15px;color:var(--mut);margin-top:30px;opacity:0;transition:.7s;max-width:560px;margin-left:auto;margin-right:auto}
.cine-sub.lit{opacity:1}
/* phone buzz scene */
.buzz-scene{display:flex;flex-direction:column;align-items:center;gap:22px}
.buzz-phone{width:270px;background:linear-gradient(170deg,#0c1a38,#081226);border:1px solid var(--line-2);border-radius:28px;padding:12px;box-shadow:0 40px 100px rgba(2,6,16,.8)}
.buzz-in{background:#040a18;border-radius:19px;padding:16px 14px;min-height:150px;display:flex;flex-direction:column;gap:9px}
.buzz-msg{background:#122347;border-radius:12px;border-bottom-left-radius:4px;padding:10px 13px;font-size:12.5px;color:#dbe4f7;opacity:0;transform:translateY(10px);transition:.5s}
.buzz-msg.show{opacity:1;transform:none}
.buzz-msg .bt{display:block;font-size:9.5px;color:var(--mut2);margin-top:4px}
.buzz-phone.shake{animation:bshake .6s}
@keyframes bshake{0%,100%{transform:none}20%{transform:rotate(-2deg)}40%{transform:rotate(2deg)}60%{transform:rotate(-1.5deg)}80%{transform:rotate(1.5deg)}}
/* leak counter */
.leakbox{text-align:center}
.leakbox .lk-n{font-family:'DM Serif Display',serif;font-size:clamp(54px,8vw,110px);color:var(--bad);line-height:1;text-shadow:0 0 60px rgba(224,106,90,.35);font-variant-numeric:tabular-nums}
.leakbox .lk-l{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-top:14px}
.leakbox.gold .lk-n{color:var(--gold);text-shadow:0 0 60px rgba(217,181,102,.4)}
/* versus split */
.vs-split{display:grid;grid-template-columns:1fr 1fr;gap:2px;max-width:880px;margin:0 auto;border-radius:20px;overflow:hidden;border:1px solid var(--line)}
@media(max-width:760px){.vs-split{grid-template-columns:1fr}}
.vs-side{padding:40px 34px;background:rgba(224,106,90,.05)}
.vs-side.win{background:rgba(217,181,102,.06)}
.vs-side h4{font-family:'DM Serif Display',serif;font-size:21px;margin-bottom:18px;color:var(--mut)}
.vs-side.win h4{color:var(--gold)}
.vs-li{display:flex;gap:10px;font-size:13.5px;color:var(--mut);padding:8px 0;opacity:0;transform:translateX(-12px);transition:.5s}
.vs-side.win .vs-li{transform:translateX(12px)}
.vs-li.show{opacity:1;transform:none}
.vs-li .x{color:var(--bad);flex-shrink:0}
.vs-li .v{color:var(--gold);flex-shrink:0}
/* chapter eyebrow marker */
.chapmark{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:26px}
.chapmark i{width:44px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.chapmark i:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.chapmark span{font-family:'Syne',sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold)}
/* future pace */
.future{max-width:640px;margin:0 auto;background:linear-gradient(165deg,var(--panel),var(--deep));border:1px solid rgba(217,181,102,.3);border-radius:22px;padding:40px;box-shadow:0 0 80px rgba(217,181,102,.06)}
.fu-row{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid rgba(96,140,230,.08);font-size:14px;color:var(--mut);opacity:0;transform:translateY(10px);transition:.5s}
.fu-row.show{opacity:1;transform:none}
.fu-row .ft{font-family:monospace;font-size:12px;color:var(--cyan);min-width:74px;padding-top:2px}
.fu-row b{color:var(--tx)}
.fu-row .fm{margin-left:auto;color:var(--gold);font-family:'DM Serif Display',serif;white-space:nowrap}
/* free-text ARIA composer */
.composer{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line);background:rgba(79,140,255,.04)}
.composer input{flex:1;background:#0a1428;border:1px solid var(--line);border-radius:24px;padding:11px 17px;font-family:'Inter',sans-serif;font-size:13px;color:var(--tx);outline:none;transition:.25s}
.composer input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(63,198,255,.12)}
.composer button{width:42px;height:42px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#0a0f1e;font-size:16px;cursor:pointer;transition:.25s;flex-shrink:0}
.composer button:hover{transform:scale(1.08)}
.sugg{display:flex;gap:7px;padding:9px 12px;overflow-x:auto;scrollbar-width:none;background:rgba(79,140,255,.03)}
.sugg::-webkit-scrollbar{display:none}
.sugg button{flex-shrink:0;background:var(--blu-soft);border:1px solid rgba(63,198,255,.3);color:var(--cyan);border-radius:20px;padding:7px 13px;font-size:11.5px;font-family:'Inter',sans-serif;cursor:pointer;transition:.2s}
.sugg button:hover{border-color:var(--cyan);background:rgba(63,198,255,.15)}

/* ============ VISION DEMO (photo understanding) ============ */
.vision-demo{display:grid;grid-template-columns:1fr 360px;gap:44px;align-items:center;margin-top:52px}
@media(max-width:900px){.vision-demo{grid-template-columns:1fr;justify-items:center}}
.vis-intro{max-width:460px}
.vis-samples{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.vis-thumb{width:132px;border-radius:14px;overflow:hidden;border:1px solid var(--line);cursor:pointer;transition:.25s;background:#0a1428;position:relative}
.vis-thumb:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 16px 40px rgba(2,6,16,.6)}
.vis-thumb svg{display:block;width:100%;height:92px}
.vis-thumb .vt-l{font-size:11px;color:var(--mut);padding:8px 10px;border-top:1px solid var(--line);display:flex;align-items:center;gap:6px}
.vis-thumb .vt-l::before{content:'📷';font-size:11px}
.vis-thumb::after{content:'Tap to send';position:absolute;top:8px;right:8px;background:rgba(5,11,26,.8);color:var(--cyan);font-size:9px;font-weight:600;padding:3px 8px;border-radius:20px;opacity:0;transition:.25s}
.vis-thumb:hover::after{opacity:1}
.bub.img{padding:6px;max-width:76%;background:#122347;align-self:flex-start;border-bottom-left-radius:4px}
.bub.img svg{width:100%;border-radius:10px;display:block}
.bub.img .cap{font-size:12px;color:#dbe4f7;padding:8px 8px 4px}
.analyzing{align-self:flex-end;display:flex;align-items:center;gap:9px;background:var(--blu-soft);border:1px dashed rgba(63,198,255,.4);color:var(--cyan);font-size:12px;padding:9px 15px;border-radius:16px}
.analyzing .scan{width:14px;height:14px;border:2px solid rgba(63,198,255,.3);border-top-color:var(--cyan);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.match-card{align-self:flex-end;max-width:86%;background:#040a18;border:1px solid rgba(217,181,102,.4);border-radius:12px;padding:10px;animation:pop .35s;box-shadow:0 0 24px rgba(217,181,102,.12)}
.match-card svg{width:100%;height:70px;border-radius:8px;display:block;margin-bottom:8px}
.match-card .mc-t{font-size:12px;font-weight:600;color:var(--gold);padding:0 2px}
.match-card .mc-s{font-size:11px;color:var(--mut);padding:2px 2px 0}
.vis-note{font-size:11.5px;color:var(--mut2);margin-top:14px;font-style:italic;text-align:center}

/* ============ LAUNCH MODE: SOON LINKS + SOON PAGE ============ */
.soon-link{position:relative;opacity:.55}
.soon-link em{font-style:normal;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);background:rgba(217,181,102,.12);border:1px solid rgba(217,181,102,.3);padding:2px 6px;border-radius:20px;margin-left:5px;vertical-align:middle}
.soon-link:hover{opacity:.9}

.soon-hero{padding:190px 0 120px;position:relative}
.soon-inner{max-width:1000px;margin:0 auto;text-align:center}
.soon-h1{font-family:'DM Serif Display',serif;font-size:clamp(38px,5.6vw,68px);line-height:1.08;letter-spacing:-1.4px;margin:22px 0 20px;font-weight:400}
.soon-h1 em{font-style:italic;color:var(--cyan)}
.soon-lead{font-size:17px;line-height:1.75;color:var(--dim);max-width:620px;margin:0 auto 60px;font-weight:300}

.soon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:70px;text-align:left}
.soon-card{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:28px 24px;position:relative;transition:.35s}
.soon-card:hover{border-color:rgba(6,182,212,.28);background:rgba(255,255,255,.035)}
.soon-card .sc-ey{font-family:'Syne',sans-serif;font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);margin-bottom:12px}
.soon-card h3{font-family:'DM Serif Display',serif;font-size:20px;line-height:1.3;font-weight:400;margin-bottom:10px;color:#fff}
.soon-card p{font-size:13.5px;line-height:1.65;color:var(--dim);margin-bottom:18px}
.soon-card p strong{color:#fff}
.soon-card .sc-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(217,181,102,.3);background:rgba(217,181,102,.08);padding:5px 12px;border-radius:20px}

.soon-cta{border-radius:20px;overflow:hidden;border:1px solid rgba(6,182,212,.22);background:linear-gradient(135deg,rgba(6,182,212,.09),rgba(27,63,228,.06))}
.soon-cta-in{padding:56px 40px}
.sct-ey{font-family:'Syne',sans-serif;font-size:10px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--cyan);margin-bottom:14px}
.soon-cta h2{font-family:'DM Serif Display',serif;font-size:clamp(28px,3.4vw,42px);font-weight:400;margin-bottom:14px;letter-spacing:-.6px}
.soon-cta p{font-size:15.5px;line-height:1.75;color:var(--dim);max-width:560px;margin:0 auto 30px;font-weight:300}
.soon-cta .btnrow{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

@media(max-width:900px){
  .soon-grid{grid-template-columns:1fr}
  .soon-hero{padding:150px 0 80px}
  .soon-cta-in{padding:40px 24px}
}
.d-res.soon{color:var(--gold);opacity:.75;font-style:italic}

/* ---- demo disclaimer + clickable break-test cards ---- */
.demo-disc{margin-top:14px;padding:14px 16px;border-radius:10px;background:rgba(6,182,212,.06);border:1px solid rgba(6,182,212,.22);font-size:13px;line-height:1.65;color:var(--dim)}
.demo-disc b{color:var(--cyan);font-weight:600}
.ro[data-try]{cursor:pointer;transition:.22s}
.ro[data-try]:hover{border-color:rgba(217,181,102,.45);background:rgba(217,181,102,.07);transform:translateX(3px)}
.ro[data-try]:active{transform:translateX(1px) scale(.99)}

/* ---- FIX: nav WhatsApp button — keep text above the sheen, force contrast ---- */
.btn-g{color:#0a0f1e !important;font-weight:700}
.btn-g > *{position:relative;z-index:2}
.btn-g::after{z-index:1;pointer-events:none}
/* the button's own text node needs lifting too — use a text-shadow-free solid layer */
.nav .btn-g{color:#0a0f1e !important;text-shadow:none;isolation:isolate}
.nav .btn-g::after{opacity:.5}

/* ---- 7 industry pills: allow wrapping ---- */
.ind-pick{flex-wrap:wrap;justify-content:center;gap:10px}
.ind{font-size:13.5px;padding:11px 20px}
@media(max-width:760px){.ind{font-size:12.5px;padding:9px 15px}}
#ariaTests .ro{cursor:pointer;transition:.22s}
#ariaTests .ro:hover{border-color:rgba(217,181,102,.45);background:rgba(217,181,102,.07);transform:translateX(3px)}

/* ---- ARIA / VERA / NOVA team eyebrow (replaces the old wide-tracked one) ---- */
.team-eyebrow{display:inline-flex;align-items:stretch;gap:0;border:1px solid rgba(255,255,255,.10);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.02);margin-bottom:22px}
.team-eyebrow span{display:flex;flex-direction:column;align-items:center;gap:3px;padding:11px 22px;font-family:'Syne',sans-serif;font-weight:800;font-size:13px;letter-spacing:.16em}
.team-eyebrow span + span{border-left:1px solid rgba(255,255,255,.08)}
.team-eyebrow em{font-style:normal;font-family:'Inter',sans-serif;font-weight:500;font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.75}
.team-eyebrow .te-on{background:linear-gradient(135deg,#f0d494,#d9b566);color:#050b1a}
.team-eyebrow .te-on em{opacity:.65}
.team-eyebrow .te-off{color:rgba(255,255,255,.42)}
.team-eyebrow .te-off em{opacity:.5}
@media(max-width:600px){.team-eyebrow span{padding:9px 14px;font-size:11.5px}}
/* tighten the eyebrow — .45em was too wide and read as broken */
.eyebrow{letter-spacing:.24em !important;font-size:10.5px !important}

/* ============ CHAT FIX: correct sides + sender labels ============ */
/* ARIA speaks on the LEFT. You speak on the RIGHT. Like every messaging app. */
.bub.a{align-self:flex-start !important;border-bottom-left-radius:4px !important;border-bottom-right-radius:15px !important}
.bub.u{align-self:flex-end !important;border-bottom-right-radius:4px !important;border-bottom-left-radius:15px !important}

/* sender label above each bubble */
.who-lbl{font-family:'Syne',sans-serif;font-size:8.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;opacity:.55;margin-bottom:-4px}
.who-lbl.a{align-self:flex-start;color:var(--gold)}
.who-lbl.u{align-self:flex-end;color:#8fb2ff}
/* journey "next" buttons — visually distinct from the in-story replies */
.ro-next{border-color:rgba(217,181,102,.42) !important;background:rgba(217,181,102,.08) !important}
.ro-next span{color:var(--gold) !important;font-weight:600}
