*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#0a0f1a;--bg2:#0e1524;--ink:#ece7dc;--mu:#9aa3b4;--line:rgba(236,231,220,.12);--gold:#d4b06a;--teal:#7dd3c0;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Noto Serif","Songti SC",serif;
--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{background:var(--bg);color:var(--ink);font:16.5px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.sr,.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:12px;z-index:99;background:var(--gold);color:#111;padding:8px 14px;border-radius:6px}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(10,15,26,.78);backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid var(--line)}
.nav-in{height:70px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;font:600 19px var(--serif);letter-spacing:.2px}
.brand em{color:var(--gold);font-style:italic}
.brand svg{width:30px;height:30px;fill:none;stroke:var(--gold);stroke-width:2}.brand circle{fill:var(--teal);stroke:none}
nav{display:flex;align-items:center;gap:30px}nav a{font-size:14.5px;color:var(--mu);transition:color .2s}nav a:hover{color:var(--ink)}
.pill{color:var(--ink)!important;border:1px solid rgba(212,176,106,.5);padding:7px 15px;border-radius:999px}.pill:hover{background:rgba(212,176,106,.12)}
.menu{display:none;background:none;border:0;width:40px;height:40px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.menu span:not(.sr){display:block;width:22px;height:2px;background:var(--ink)}
/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.grid-bg{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 70% 70% at 70% 40%,#000 20%,transparent 75%);opacity:.5}
.hero-in{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding:110px 28px 96px}
.kicker{display:flex;align-items:center;gap:10px;font:500 12.5px var(--mono);letter-spacing:1.4px;text-transform:uppercase;color:var(--mu);margin-bottom:26px}
.live{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(125,211,192,.18);animation:p 2.4s infinite}
@keyframes p{50%{box-shadow:0 0 0 8px rgba(125,211,192,0)}}
h1{font:500 clamp(40px,6vw,74px)/1.04 var(--serif);letter-spacing:-1.2px;margin-bottom:26px}
h1 i{color:var(--gold)}
.lead{color:var(--mu);font-size:18.5px;max-width:580px}
.cta{display:flex;flex-wrap:wrap;gap:14px;margin:36px 0 34px}
.btn{display:inline-flex;align-items:center;gap:8px;font:600 15px var(--sans);padding:13px 24px;border-radius:8px;background:var(--gold);color:#16120a;border:1px solid var(--gold);cursor:pointer;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-1px);background:#e0bf7c}
.btn.line{background:transparent;color:var(--ink);border-color:var(--line)}.btn.line:hover{border-color:var(--gold);background:rgba(212,176,106,.06)}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.tags li{font:12.5px var(--mono);color:var(--mu);border:1px solid var(--line);padding:5px 11px;border-radius:5px}
.viz{margin:0}.viz svg{width:100%;height:auto}
.viz figcaption{text-align:center;font:italic 15px var(--serif);color:var(--mu);margin-top:6px}
.rings circle{fill:none;stroke:var(--line);stroke-dasharray:2 6}
.wires path{fill:none;stroke:url(#lg);stroke-width:1.4;opacity:.55}
.node circle{fill:var(--bg2);stroke:rgba(236,231,220,.35);stroke-width:1.2}
.node text{fill:var(--ink);font:10.5px var(--mono);text-anchor:middle}
.core path{fill:var(--bg2);stroke:var(--gold);stroke-width:2}.core .tick{fill:none;stroke:var(--teal);stroke-width:3;stroke-linecap:round}
.pkt{fill:var(--teal);filter:drop-shadow(0 0 5px var(--teal))}.pkt.b{fill:var(--gold);filter:drop-shadow(0 0 5px var(--gold))}
/* strip */
.strip{background:var(--bg2);border-bottom:1px solid var(--line)}
.strip-in{display:grid;grid-template-columns:repeat(4,1fr)}
.strip-in div{padding:30px 26px;border-left:1px solid var(--line)}.strip-in div:first-child{border-left:0;padding-left:0}
.strip b{display:block;font:600 17px var(--serif);margin-bottom:4px}.strip span{color:var(--mu);font-size:14.5px}
/* sections */
.sec{padding:110px 28px}
.sec-head{display:grid;grid-template-columns:90px 1fr;gap:20px;margin-bottom:54px}
.num{font:500 14px var(--mono);color:var(--gold);padding-top:14px;letter-spacing:1px}
h2{font:500 clamp(32px,4vw,46px)/1.15 var(--serif);letter-spacing:-.5px;margin-bottom:12px}
.sec-head p:not(.num){color:var(--mu);max-width:640px}
.dark{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.svc{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.svc article{padding:34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s}
.svc article:hover{background:rgba(212,176,106,.04)}
h3{font:600 21px/1.3 var(--serif);margin-bottom:12px}
.svc p,.s p,.cases p{color:var(--mu);font-size:15.5px}
.svc ul{list-style:none;margin-top:18px}.svc li{font:13px var(--mono);color:var(--ink);opacity:.8;padding:5px 0 5px 18px;position:relative}
.svc li:before{content:"";position:absolute;left:0;top:13px;width:8px;height:1px;background:var(--gold)}
.sol{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.s{padding:30px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);transition:border-color .25s,transform .25s}
.s:hover{border-color:rgba(125,211,192,.45);transform:translateY(-3px)}
.ic{display:grid;place-items:center;width:46px;height:46px;border-radius:10px;border:1px solid rgba(125,211,192,.35);margin-bottom:20px}
.ic svg{width:22px;height:22px;fill:none;stroke:var(--teal);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cases article{padding:32px;border:1px solid var(--line);border-radius:12px;position:relative}
.cases p{margin-top:10px}.cases b{color:var(--ink);font-weight:600}
.lbl{display:inline-block;font:11.5px var(--mono);letter-spacing:1.2px;text-transform:uppercase;color:var(--gold);border:1px solid rgba(212,176,106,.4);border-radius:4px;padding:2px 8px;margin-bottom:16px}
.flow{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);counter-reset:f;position:relative}
.flow:before{content:"";position:absolute;top:19px;left:20px;right:20px;height:1px;background:linear-gradient(90deg,var(--gold),var(--teal))}
.flow li{counter-increment:f;padding-right:22px;position:relative}
.flow li:before{content:counter(f);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--bg2);border:1px solid var(--gold);font:500 14px var(--mono);color:var(--gold);margin-bottom:20px;position:relative}
.flow b{display:block;font:600 18px var(--serif);margin-bottom:6px}.flow span{color:var(--mu);font-size:15px}
.faq{max-width:860px;margin-left:110px;border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:24px 40px 24px 0;font:500 19px var(--serif);position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:4px;top:20px;font:300 26px var(--sans);color:var(--gold);transition:transform .25s}
details[open] summary:after{transform:rotate(45deg)}
details p{color:var(--mu);padding:0 40px 24px 0}
.contact{background:radial-gradient(800px 400px at 85% 50%,rgba(212,176,106,.1),transparent),var(--bg2);border-top:1px solid var(--line)}
.contact-in{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;padding:110px 28px}
.contact p:not(.num){color:var(--mu);max-width:560px}
.tg{border:1px solid rgba(212,176,106,.35);border-radius:16px;padding:36px;background:rgba(10,15,26,.6)}
.tg-label{font:12px var(--mono);letter-spacing:1.4px;text-transform:uppercase;color:var(--mu)}
.tg-handle{display:block;font:500 40px var(--serif);color:var(--gold);margin:8px 0 24px}
.tg-act{display:flex;flex-wrap:wrap;gap:12px}
.copied{display:block;min-height:22px;margin-top:12px;font:13px var(--mono);color:var(--teal)}
.foot{border-top:1px solid var(--line)}.foot-in{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:28px;color:var(--mu);font-size:14px}
.foot a{color:var(--gold)}
@media (max-width:980px){.hero-in,.contact-in{grid-template-columns:1fr}.viz{max-width:460px;margin:0 auto}
.svc,.sol,.cases{grid-template-columns:1fr 1fr}.strip-in{grid-template-columns:1fr 1fr}.strip-in div:nth-child(3){border-left:0;padding-left:0}
.flow{grid-template-columns:1fr;gap:26px}.flow:before{display:none}.flow li{padding-left:60px}.flow li:before{position:absolute;left:0;top:0}
.faq{margin-left:0}}
@media (max-width:760px){.menu{display:flex}
nav{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:10px 28px 20px}
nav.open{display:flex}nav a{padding:12px 0;font-size:16px}.pill{margin-top:8px}
.svc,.sol,.cases,.strip-in{grid-template-columns:1fr}.strip-in div{border-left:0;padding:20px 0;border-top:1px solid var(--line)}
.sec-head{grid-template-columns:1fr;gap:0}.sec,.hero-in,.contact-in{padding-top:72px;padding-bottom:72px}.tg-handle{font-size:32px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.pkt{display:none}}
