:root{--n0:#050916;--n1:#080e22;--n2:#0b1430;--ink:#eaf0ff;--mut:#a9b4d4;--dim:#8490b5;--ln:rgba(160,180,255,.17);--ln2:rgba(160,180,255,.32);--g:#9df07a;--gd:#06130a;--warm:#ffd9a0;--code:#03060f;--disp:"Krona One","Reddit Sans",system-ui,sans-serif;--txt:"Reddit Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"Noto Sans Mono",ui-monospace,Consolas,monospace;--w:1200px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--n0);color:var(--ink);font:400 17px/1.65 var(--txt);overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--g)}
h1,h2,h3,p,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:2px solid var(--g);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:12px;top:-80px;z-index:99;background:var(--g);color:var(--gd);padding:12px 18px;border-radius:999px;font-weight:700}
.skip:focus{top:12px}
.wrap{width:100%;max-width:var(--w);margin:0 auto;padding:0 28px;position:relative}

/* ---------- header: nav riding one horizon line */
.hd{position:sticky;top:0;z-index:40;background:rgba(5,9,22,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.hd::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(157,240,122,.75) 14%,rgba(234,240,255,.4) 55%,rgba(234,240,255,.12) 86%,transparent)}
.hd-in{max-width:var(--w);margin:0 auto;padding:0 28px;height:72px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
.logo{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;min-height:44px;min-width:0}
.logo span{font:400 12.5px/1.25 var(--disp);letter-spacing:.02em}
.mark{width:32px;height:32px;flex:none;fill:none;stroke-linecap:round}
.mark .m1{stroke:var(--g);stroke-width:2.2}.mark .m2{stroke:var(--ink);stroke-width:1.8}.mark .m3{fill:var(--warm);stroke:none}
.nav{display:flex;justify-content:center;gap:6px;height:100%}
.nav a{position:relative;display:flex;align-items:center;padding:0 18px;color:var(--mut);text-decoration:none;font:500 15px/1 var(--txt);letter-spacing:.01em}
.nav a:hover{color:var(--ink)}
.nav a::after{content:"";position:absolute;left:50%;bottom:-3px;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 4px rgba(157,240,122,.18),0 0 14px 2px rgba(157,240,122,.8);opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}
.nav a:hover::after{opacity:.5;transform:none}
.nav a[aria-current]{color:var(--ink)}
.nav a[aria-current]::after{opacity:1;transform:none}
.burger{display:none;width:46px;height:46px;border:1px solid var(--ln2);border-radius:50%;background:none;padding:0;cursor:pointer;place-items:center;align-content:center;gap:5px}
.burger i{display:block;width:18px;height:1.5px;background:var(--ink);border-radius:2px}
.burger i:nth-child(2){width:11px;background:var(--g);justify-self:end;margin-right:13px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border:1px solid var(--g);border-radius:999px;background:var(--g);color:var(--gd);font:700 15.5px/1 var(--txt);text-decoration:none;cursor:pointer;transition:box-shadow .2s,transform .2s,background .2s}
.btn:hover{box-shadow:0 0 0 5px rgba(157,240,122,.16),0 0 30px rgba(157,240,122,.45);transform:translateY(-1px)}
.btn.sm{min-height:44px;padding:0 18px;font-size:14.5px}
.btn.big{min-height:56px;padding:0 32px;font-size:16.5px}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ln2)}
.btn.ghost:hover{border-color:var(--g);box-shadow:none}
.btn[disabled]{opacity:.55;cursor:wait}

/* ---------- bands */
.band{position:relative;padding:92px 0;overflow:hidden}
.b0{background:var(--n0)}.b1{background:var(--n1)}.b2{background:var(--n2)}
.band+.band{border-top:1px solid var(--ln)}
.sky{background:radial-gradient(120% 90% at 78% 0%,#0d1838 0%,var(--n0) 62%)}
.sky::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.9;background-image:radial-gradient(1.2px 1.2px at 22px 34px,#fff,transparent 60%),radial-gradient(1px 1px at 118px 172px,rgba(255,255,255,.75),transparent 60%),radial-gradient(1.6px 1.6px at 246px 78px,rgba(255,217,160,.9),transparent 60%),radial-gradient(1px 1px at 301px 262px,rgba(255,255,255,.6),transparent 60%),radial-gradient(1px 1px at 64px 290px,rgba(190,210,255,.8),transparent 60%),radial-gradient(1.3px 1.3px at 186px 318px,rgba(157,240,122,.75),transparent 60%),radial-gradient(1px 1px at 402px 44px,rgba(255,255,255,.55),transparent 60%),radial-gradient(1.2px 1.2px at 458px 206px,rgba(255,255,255,.8),transparent 60%),radial-gradient(1px 1px at 90px 420px,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 350px 400px,rgba(190,210,255,.7),transparent 60%);background-size:340px 340px,340px 340px,520px 430px,340px 340px,430px 380px,610px 470px,520px 430px,520px 430px,470px 510px,470px 510px}
.trails{position:absolute;width:1200px;height:1200px;max-width:none;pointer-events:none}
.trails .tw{stroke:#dfe7ff}.trails .tg{stroke:var(--g)}.trails .ta{stroke:var(--warm)}
.trails .polestar{fill:#fff}.trails .polehalo{fill:none;stroke:rgba(255,217,160,.5);stroke-width:1}
.spin{transform-origin:0 0;animation:turn 900s linear infinite}
@keyframes turn{to{transform:rotate(-360deg)}}
.bh{display:flex;align-items:flex-end;gap:14px;margin-bottom:46px;padding-bottom:18px;border-bottom:1px solid var(--ln);flex-wrap:wrap}
.bh h2{font:400 clamp(21px,2.5vw,31px)/1.2 var(--disp);letter-spacing:-.01em;flex:1 1 300px;min-width:0}
.fr{font:600 12px/1 var(--mono);color:var(--g);letter-spacing:.12em;padding:6px 9px;border:1px solid rgba(157,240,122,.4);border-radius:5px}
.arc{width:44px;height:18px;flex:none;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;margin-bottom:5px}
.arc circle{fill:var(--warm);stroke:none}
.eyebrow{font:600 12.5px/1.4 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--g);display:flex;align-items:center;gap:12px;margin-bottom:22px}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--g);box-shadow:0 0 8px var(--g)}
h1{font:400 clamp(27px,4.1vw,54px)/1.13 var(--disp);letter-spacing:-.02em;overflow-wrap:break-word;text-wrap:balance}
.lead{font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:var(--mut);margin-top:22px;max-width:60ch}
.acts2{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
h3{font:700 19px/1.3 var(--txt);letter-spacing:-.005em}

/* ---------- home hero */
.hero{padding:76px 0 0}
.hgrid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:56px;align-items:center}
.htext{position:relative;z-index:2;min-width:0}
.bul{margin-top:28px;display:grid;gap:11px}
.bul li{position:relative;padding-left:38px;color:var(--ink);font-weight:500}
.bul li::before{content:"";position:absolute;left:0;top:.2em;width:24px;height:12px;border:1.5px solid var(--g);border-bottom:0;border-left-color:transparent;border-radius:24px 24px 0 0;transform:rotate(18deg)}
.bul li::after{content:"";position:absolute;left:21px;top:.78em;width:5px;height:5px;border-radius:50%;background:var(--warm)}
.hcode{position:relative;min-width:0}
.hcode .trails{right:-540px;top:-628px}
.hcode .codebox,.hcode .cap{position:relative;z-index:2}
.cap{display:flex;align-items:center;gap:12px;font:400 13px/1.3 var(--mono);color:var(--mut);margin-bottom:12px;letter-spacing:.04em}
.codebox{border:1px solid var(--ln2);border-radius:16px;background:rgba(3,6,15,.84);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);overflow:hidden;box-shadow:0 30px 80px -30px #000,0 0 0 1px rgba(157,240,122,.06)}
.codetabs{display:flex;gap:0;padding:0 10px;border-bottom:1px solid var(--ln);overflow-x:auto}
.codetabs button{position:relative;min-height:48px;padding:0 18px;border:0;background:none;color:var(--mut);font:600 13px/1 var(--mono);letter-spacing:.06em;cursor:pointer;white-space:nowrap}
.codetabs button:hover{color:var(--ink)}
.codetabs button[aria-selected="true"]{color:var(--g)}
.codetabs button[aria-selected="true"]::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--g);box-shadow:0 0 10px var(--g);border-radius:2px}
.codebox pre.code{border:0;border-radius:0;margin:0;background:none}
pre.code{position:relative;margin:26px 0;padding:54px 22px 22px;background:var(--code);border:1px solid var(--ln);border-radius:14px;overflow-x:auto;max-width:100%;font:400 13.5px/1.7 var(--mono);color:#dbe4ff;-moz-tab-size:2;tab-size:2}
pre.code code{font:inherit;background:none;border:0;padding:0;color:inherit;white-space:pre}
pre.code .k{color:var(--g)}pre.code .s{color:var(--warm)}pre.code .c{color:#8792b8;font-style:italic}
.copy{position:absolute;right:8px;top:6px;min-height:44px;min-width:64px;padding:0 14px;border:1px solid var(--ln2);border-radius:999px;background:rgba(11,20,48,.9);color:var(--ink);font:600 12px/1 var(--mono);letter-spacing:.06em;cursor:pointer;background-clip:padding-box;transform:scale(.86);transform-origin:100% 0}
.copy:hover{border-color:var(--g);color:var(--g)}

.facts{display:grid}
.facts dt{font:400 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.facts dd{font:400 clamp(20px,2.2vw,28px)/1.1 var(--disp);color:var(--ink)}
.facts div{display:flex;flex-direction:column-reverse;gap:8px;min-width:0}
.facts.strip{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:76px;border-top:1px solid var(--ln2);position:relative;z-index:2}
.facts.strip div{padding:26px 22px 30px;border-left:1px solid var(--ln);position:relative}
.facts.strip div:first-child{border-left:0;padding-left:0}
.facts.strip div::before{content:"";position:absolute;left:22px;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--ink);box-shadow:0 0 10px 1px rgba(234,240,255,.7)}
.facts.strip div:first-child::before{left:0;background:var(--g);box-shadow:0 0 12px 2px var(--g)}
.facts.strip div:first-child dd{color:var(--g)}

/* ---------- lists */
.feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));counter-reset:f;border-top:1px solid var(--ln);border-left:1px solid var(--ln)}
.feats article{counter-increment:f;padding:34px 30px 38px;border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);position:relative;min-width:0;transition:background .25s}
.feats article:hover{background:rgba(157,240,122,.04)}
.feats article::before{content:"0" counter(f);display:block;font:600 12px/1 var(--mono);letter-spacing:.14em;color:var(--dim);margin-bottom:26px}
.feats article::after{content:"";position:absolute;right:22px;top:26px;width:30px;height:30px;border:1.5px solid var(--g);border-color:var(--g) transparent transparent transparent;border-radius:50%;transform:rotate(calc(counter(f)*1deg));opacity:.9}
.feats article:nth-child(2n)::after{transform:rotate(70deg)}.feats article:nth-child(3n)::after{transform:rotate(150deg);border-top-color:var(--warm)}.feats article:nth-child(5)::after{transform:rotate(230deg)}
.feats p,.uses p,.steps p,.exs p,.kben p{color:var(--mut);margin-top:10px;font-size:16px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding:44px 34px 0 0;border-top:1px solid var(--ln2);min-width:0}
.steps li::before{content:"";position:absolute;left:0;top:-6px;width:11px;height:11px;border-radius:50%;background:var(--g);box-shadow:0 0 0 5px rgba(157,240,122,.15),0 0 18px var(--g)}
.steps li::after{content:counter(s);position:absolute;right:30px;top:20px;font:400 64px/1 var(--disp);color:transparent;-webkit-text-stroke:1px rgba(160,180,255,.3)}
.steps h3{max-width:calc(100% - 70px)}
.uses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 64px}
.uses article{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;padding:30px 0;border-top:1px solid var(--ln);min-width:0}
.uses p{margin-top:0}
.uses h3{position:relative;padding-left:22px}
.uses h3::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--warm);box-shadow:0 0 10px rgba(255,217,160,.8)}

/* ---------- prose */
.prose{max-width:780px;min-width:0}
.band>.wrap>.prose{margin-left:clamp(0px,9vw,150px)}
.prose h2{font:400 clamp(20px,2.3vw,27px)/1.25 var(--disp);letter-spacing:-.01em;margin:64px 0 20px;padding-top:26px;position:relative;scroll-margin-top:96px}
.prose h2::before{content:"";position:absolute;left:0;top:0;width:72px;height:1px;background:var(--g);box-shadow:0 0 8px var(--g)}
.prose h2::after{content:"";position:absolute;left:72px;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--ink)}
.prose>h2:first-child{margin-top:0}
.prose h3{margin:34px 0 10px}
.prose p{margin:0 0 18px;color:#d3dbf3}
.prose strong{color:var(--ink)}
.prose ul,.prose ol{margin:0 0 22px;display:grid;gap:9px}
.prose li{position:relative;padding-left:26px;color:#d3dbf3}
.prose ul>li::before{content:"";position:absolute;left:4px;top:.72em;width:10px;height:1px;background:var(--g)}
.prose ol{counter-reset:o}
.prose ol>li{counter-increment:o;padding-left:34px}
.prose ol>li::before{content:counter(o);position:absolute;left:0;top:.2em;font:600 12px/1.6 var(--mono);color:var(--g)}
.prose a{text-underline-offset:3px}
.prose code,.keyout code{font:400 .86em var(--mono);background:rgba(160,180,255,.12);border:1px solid var(--ln);border-radius:5px;padding:.1em .38em;overflow-wrap:anywhere}
.prose table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:26px 0;font-size:15.5px;border:1px solid var(--ln2);border-radius:12px}
.prose th,.prose td{padding:13px 18px;text-align:left;border-bottom:1px solid var(--ln);vertical-align:top;min-width:120px}
.prose th{font:600 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--g);background:rgba(157,240,122,.06);white-space:nowrap}
.prose tr:last-child td{border-bottom:0}
.prose blockquote{margin:24px 0;padding:6px 0 6px 22px;border-left:2px solid var(--g);color:var(--mut)}
.prose.long{font-size:18px;line-height:1.75}

/* ---------- faq */
.faq{max-width:900px;border-top:1px solid var(--ln2)}
.faq details{border-bottom:1px solid var(--ln)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:14px 0;cursor:pointer;list-style:none;font:700 18px/1.4 var(--txt)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--g)}
.faq summary i{flex:none;position:relative;width:34px;height:34px;border:1px solid var(--ln2);border-radius:50%}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:var(--g);transition:transform .2s}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i::after{transform:none}
.faq details[open] summary i{border-color:var(--g)}
.faq details p{color:var(--mut);padding:0 60px 26px 0;max-width:74ch}

/* ---------- closing band: airglow horizon */
.glow{background:linear-gradient(180deg,var(--n0) 0%,#07151c 55%,#0c2b1c 100%);padding:104px 0 112px}
.glow::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-120px;height:240px;background:radial-gradient(50% 100% at 50% 100%,rgba(157,240,122,.5),transparent 70%);pointer-events:none}
.glow .trails{left:50%;margin-left:-600px;bottom:-640px;opacity:.75}
.ctab{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;z-index:2}
.ctat{position:relative;z-index:2;min-width:0;flex:1 1 420px}
.ctab .btn{position:relative;z-index:2}
.ctat h2{font:400 clamp(24px,3.2vw,40px)/1.18 var(--disp);letter-spacing:-.015em;text-wrap:balance}
.ctat p{color:#cfe0d6;margin-top:16px;max-width:52ch;font-size:18px}

/* ---------- page head (docs, pricing, article, legal) */
.ph{padding:64px 0 70px}
.ph .trails{right:-440px;bottom:-600px;opacity:.5}
.pht{position:relative;z-index:2;max-width:820px}
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font:400 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:26px;color:var(--mut)}
.crumbs a{color:var(--mut);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.crumbs a:hover{color:var(--g)}
.crumbs span{width:26px;height:1px;background:var(--ln2);position:relative}
.crumbs span::after{content:"";position:absolute;right:-2px;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--g)}
.crumbs b{font-weight:600;color:var(--ink)}
.facts.mini{grid-template-columns:repeat(5,auto);justify-content:start;gap:14px 40px;margin-top:38px;padding-top:24px;border-top:1px solid var(--ln)}
.facts.mini dd{font-size:18px}
.meta{margin-top:26px;font:400 13px/1.4 var(--mono);letter-spacing:.06em;color:var(--mut)}
.meta time{color:var(--ink)}

/* ---------- docs */
.dshell{padding-top:64px}
.dgrid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:72px;align-items:start}
.dgrid>.prose{margin:0;max-width:800px}
.toc-h{font:600 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--g);margin-bottom:16px}
.toc ol{counter-reset:t;border-left:1px solid var(--ln2)}
.toc li{counter-increment:t}
.toc a{display:flex;gap:12px;align-items:baseline;min-height:44px;padding:10px 0 10px 18px;margin-left:-1px;border-left:1px solid transparent;color:var(--mut);text-decoration:none;font-size:15px;line-height:1.4}
.toc a::before{content:"0" counter(t);font:400 11px/1 var(--mono);color:var(--dim)}
.toc a:hover{color:var(--ink);border-left-color:var(--g)}
.toc.side{position:sticky;top:104px}

/* ---------- pricing */
.pph{padding-bottom:0}
.facts.big{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:60px;border-top:1px solid var(--ln2);position:relative;z-index:2}
.facts.big div{padding:30px 22px 38px;border-left:1px solid var(--ln)}
.facts.big div:first-child{border-left:0;padding-left:0}
.facts.big dd{font-size:clamp(22px,2.45vw,33px)}
.facts.big div:nth-child(-n+2) dd{color:var(--g)}
.pgrid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:72px;align-items:start}
.pgrid>div{min-width:0}
.pgrid .bh{margin-bottom:30px}
.calc{display:grid;gap:18px;padding:30px;border:1px solid rgba(157,240,122,.35);border-radius:18px;background:linear-gradient(160deg,rgba(11,20,48,.9),rgba(5,9,22,.9));box-shadow:0 0 60px -20px rgba(157,240,122,.3)}
.calc>div{display:grid;gap:8px;min-width:0}
.calc label,.form label{font:600 12px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.calc input,.form input{width:100%;min-height:52px;padding:0 16px;border:1px solid var(--ln2);border-radius:10px;background:rgba(3,6,15,.75);color:var(--ink);font:400 17px/1 var(--mono);min-width:0}
.calc input:focus,.form input:focus{outline:2px solid var(--g);outline-offset:1px;border-color:var(--g)}
.calc>div:last-child{margin-top:8px;padding-top:22px;border-top:1px dashed var(--ln2)}
.calc output{font:400 clamp(34px,5vw,54px)/1 var(--disp);color:var(--g);text-shadow:0 0 30px rgba(157,240,122,.4);overflow-wrap:anywhere}
.exs{display:grid;counter-reset:x}
.exs article{counter-increment:x;position:relative;padding:24px 0 24px 58px;border-top:1px solid var(--ln);min-width:0}
.exs article:first-child{border-top:0;padding-top:0}
.exs article::before{content:"0" counter(x);position:absolute;left:0;top:28px;font:600 12px/1 var(--mono);color:var(--g);letter-spacing:.1em}
.exs article:first-child::before{top:5px}

/* ---------- article */
.ashell{padding-top:64px}
.agrid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:76px;align-items:start}
.acol{min-width:0;grid-column:1;grid-row:1}
.aside{grid-column:2;grid-row:1;position:sticky;top:104px;display:grid;gap:34px}
.acol .prose{max-width:740px}
.tk{max-width:740px;margin-bottom:56px;padding:30px 32px 32px;border:1px solid rgba(157,240,122,.35);border-radius:18px;background:linear-gradient(160deg,rgba(157,240,122,.07),rgba(11,20,48,.5))}
.tk h2{font:600 12px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--g);margin-bottom:20px}
.tk ol{counter-reset:k;display:grid;gap:14px}
.tk li{counter-increment:k;position:relative;padding-left:44px;font-size:17px;line-height:1.55}
.tk li::before{content:counter(k);position:absolute;left:0;top:-1px;width:28px;height:28px;border:1px solid var(--g);border-radius:50%;display:grid;place-items:center;font:600 12px/1 var(--mono);color:var(--g)}
.sidecta{padding:24px;border:1px solid var(--ln2);border-radius:16px;background:var(--n1)}
.sc-h{font:400 15px/1.35 var(--disp);margin-bottom:10px}
.sidecta p{color:var(--mut);font-size:15px}
.sidecta .btn{margin-top:18px;width:100%}
.legalp{margin-left:auto!important;margin-right:auto}

/* ---------- key page */
.khero{padding:64px 0 92px}
.kgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,470px);grid-template-areas:"head form" "ben form";gap:44px 76px;align-items:start}
.khead{grid-area:head;position:relative;z-index:2;min-width:0}
.kform{grid-area:form;position:relative;min-width:0}
.kform .trails{right:-560px;top:-590px}
.kben{grid-area:ben;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px;position:relative;z-index:2}
.kben li{padding-top:20px;border-top:1px solid var(--ln2);position:relative;min-width:0}
.kben li::before{content:"";position:absolute;left:0;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--g);box-shadow:0 0 10px var(--g)}
.kben h2{font:700 18px/1.3 var(--txt)}
.kben p{font-size:15.5px}
.form{position:relative;z-index:2;padding:30px 30px 32px;border:1px solid rgba(157,240,122,.45);border-radius:22px;background:linear-gradient(170deg,rgba(13,24,56,.94),rgba(5,9,22,.95));box-shadow:0 40px 90px -40px #000,0 0 70px -24px rgba(157,240,122,.45)}
.tabs2{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--ln2);border-radius:999px;margin-bottom:22px}
.tabs2 button{min-height:44px;border:0;border-radius:999px;background:none;color:var(--mut);font:700 15px/1 var(--txt);cursor:pointer}
.tabs2 button[aria-selected="true"]{background:rgba(157,240,122,.14);color:var(--g);box-shadow:inset 0 0 0 1px rgba(157,240,122,.5)}
.msg{font-size:15px;line-height:1.45}
.msg:empty{display:none}
.msg.err{margin-bottom:18px;padding:12px 16px;border:1px solid #ff8f7d;border-radius:10px;background:rgba(255,110,90,.12);color:#ffc9bf}
.form .row{display:grid;gap:8px;margin-bottom:18px}
.note{font-size:13.5px;line-height:1.5;color:var(--mut);margin-top:2px}
.form form>.btn{width:100%;min-height:56px;font-size:17px;margin-top:6px}
.form form>.note{margin-top:14px;text-align:center}
[hidden]{display:none!important}
.keyout{display:none}
.keyout.on{display:block}
.keyout h3{font:400 17px/1.3 var(--disp);margin-bottom:16px}
.keybox{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 16px;border:1px dashed var(--g);border-radius:12px;background:var(--code);margin-bottom:12px}
.keybox span{flex:1;min-width:0;font:400 14px/1.5 var(--mono);color:var(--g);overflow-wrap:anywhere}
.keyout p{margin:14px 0;font-size:15px;line-height:1.9}
.keyout p.note{line-height:1.5;margin:0 0 6px}
.mut{color:var(--mut)}
.acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}

/* ---------- 404 */
.nf{min-height:74vh;display:flex;align-items:center}
.nf .trails{left:50%;top:50%;margin:-600px 0 0 -220px;opacity:.8}
.nft{position:relative;z-index:2;max-width:640px}
.nfl{display:flex;flex-wrap:wrap;gap:6px 26px;margin-top:30px}
.nfl a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-underline-offset:4px}

/* ---------- footer */
.ft{background:#0c2b1c;padding:56px 0 44px;position:relative;border-top:1px solid rgba(157,240,122,.5);box-shadow:0 -1px 30px rgba(157,240,122,.25)}
.ft .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 60px;align-items:start}
.ft-tag{color:#cfe0d6;margin-top:10px;font-size:15.5px}
.ft-nav{display:grid;grid-template-columns:repeat(2,auto);gap:0 44px}
.ft-nav a{display:flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;font-size:15px}
.ft-nav a:hover{color:var(--g);text-decoration:underline;text-underline-offset:4px}
.legal{grid-column:1/-1;padding-top:24px;border-top:1px solid rgba(207,224,214,.22);font:400 12.5px/1.6 var(--mono);color:#cfe0d6;letter-spacing:.02em}

/* ---------- responsive */
@media (max-width:1040px){
.hgrid{grid-template-columns:minmax(0,1fr);gap:48px}
.feats{grid-template-columns:repeat(2,minmax(0,1fr))}
.uses{grid-template-columns:minmax(0,1fr)}
.facts.strip,.facts.big{grid-template-columns:repeat(3,minmax(0,1fr))}
.facts.strip div:nth-child(4),.facts.big div:nth-child(4){border-left:0;padding-left:0}
.facts.strip div:nth-child(4)::before{left:0}
.facts.strip div:nth-child(n+4),.facts.big div:nth-child(n+4){border-top:1px solid var(--ln)}
.kgrid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "form" "ben";gap:36px}
.kform{max-width:520px}
.pgrid{grid-template-columns:minmax(0,1fr);gap:64px}
.dgrid{grid-template-columns:minmax(0,1fr);gap:40px}
.toc.side,.aside{position:static}
.agrid{grid-template-columns:minmax(0,1fr);gap:44px}
.acol,.aside{grid-column:1;grid-row:auto}
.aside .sidecta{display:none}
.band>.wrap>.prose{margin-left:0}
}
@media (max-width:860px){
.hd-in{grid-template-columns:minmax(0,1fr) auto auto;gap:10px;height:66px;padding:0 16px}
.burger{display:grid}
.nav{display:none;position:absolute;left:0;right:0;top:100%;height:auto;flex-direction:column;gap:0;padding:8px 16px 18px;background:#070c1e;border-bottom:1px solid rgba(157,240,122,.5);box-shadow:0 30px 50px -10px #000}
.nav.open{display:flex}
.nav a{min-height:52px;padding:0 6px 0 26px;border-bottom:1px solid var(--ln);font-size:17px}
.nav a::after{left:4px;bottom:auto;top:50%;margin:-3.5px 0 0;transform:none}
.logo span{font-size:10.5px;max-width:132px}
.mark{width:28px;height:28px}
.hd-cta{padding:0 14px;font-size:13.5px;white-space:nowrap}
}
@media (max-width:700px){
body{font-size:16.5px}
.wrap{padding:0 16px}
.band{padding:62px 0}
.hero{padding:44px 0 0}
.bh{margin-bottom:32px}
.feats{grid-template-columns:minmax(0,1fr)}
.feats article{padding:26px 22px 28px}
.steps{grid-template-columns:minmax(0,1fr);gap:0;border-left:1px solid var(--ln2);margin-left:5px}
.steps li{border-top:0;padding:0 0 34px 28px}
.steps li:last-child{padding-bottom:0}
.steps li::before{left:-6px;top:6px}
.steps li::after{right:0;top:-6px;font-size:44px}
.uses article{grid-template-columns:minmax(0,1fr);gap:8px;padding:24px 0}
.facts.strip,.facts.big{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:50px}
.facts.strip div,.facts.big div{padding:20px 12px 22px 16px;border-top:1px solid var(--ln)}
.facts.strip div:nth-child(-n+2),.facts.big div:nth-child(-n+2){border-top:0}
.facts.strip div:nth-child(odd),.facts.big div:nth-child(odd){border-left:0;padding-left:0}
.facts.strip div:nth-child(even),.facts.big div:nth-child(even){border-left:1px solid var(--ln);padding-left:16px}
.facts.strip div::before{display:none}
.facts.mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.hcode .trails{width:900px;height:900px;right:-420px;top:-470px;opacity:.5}
.ph{padding:36px 0 50px}
.ph .trails{width:760px;height:760px;right:-380px;bottom:-380px;opacity:.38}
.khero{padding:30px 0 62px}
.khead .lead{margin-top:14px;font-size:16.5px}
.kgrid{gap:26px}
.kform .trails{width:900px;height:900px;right:-430px;top:-440px;opacity:.32}
.form{padding:22px 18px 24px;border-radius:18px}
.kben{grid-template-columns:minmax(0,1fr);margin-top:14px}
.calc{padding:22px 18px}
.tk{padding:24px 20px;margin-bottom:44px}
.prose.long{font-size:17px}
.prose h2{margin-top:50px}
.faq summary{font-size:17px;min-height:60px}
.faq details p{padding-right:0}
.glow{padding:70px 0 84px}
.ctab .btn{width:100%}
.ft .wrap{grid-template-columns:minmax(0,1fr)}
.ft-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
pre.code{padding:54px 16px 18px;font-size:12.8px;border-radius:12px}
.acts2 .btn{flex:1 1 100%}
.khead .crumbs,.ph .crumbs{margin-bottom:12px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
