:root{--bg:#0d1520;--panel:#111c29;--grid:#1a2735;--line:#26394c;--ink:#dce6ef;--mute:#8fa4b8;--cyan:#62c9e6;--amber:#e7b663;--mono:var(--font-mono), ui-monospace, monospace;--disp:var(--font-disp), var(--font-body), sans-serif;--body:var(--font-body), system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--body);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:32px 32px}a{color:inherit}:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.skip{background:var(--amber);color:var(--bg);z-index:10;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}.lbl{font:500 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cyan)}.lbl.am{color:var(--amber)}.nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 0;display:flex;position:relative}.logo{font:700 20px/1 var(--disp);letter-spacing:.02em;text-decoration:none}.logo b{color:var(--cyan)}.nav ul{font:500 13px var(--mono);color:var(--mute);gap:28px;list-style:none;display:flex}.nav ul a{padding:6px 0;text-decoration:none}.nav ul a:hover{color:var(--ink)}.menu{border:1px solid var(--line);color:var(--ink);font:500 13px var(--mono);cursor:pointer;background:0 0;padding:12px 14px;display:none}.btn{font:500 14px var(--mono);border:1px solid var(--cyan);color:var(--bg);background:var(--cyan);align-items:center;gap:10px;padding:14px 22px;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.btn:hover{color:var(--cyan);background:0 0}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn.ghost:hover{border-color:var(--ink);color:var(--ink)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;padding:80px 0 96px;display:grid}h1{font:700 clamp(38px, 5.2vw, 66px)/1.03 var(--disp);letter-spacing:-.01em;margin:22px 0 24px}h1 em{color:var(--cyan);font-style:normal}.sub{color:var(--mute);max-width:540px;font-size:18px}.ctas{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.draw{background:var(--panel);border:1px solid var(--line);padding:18px}.draw svg{width:100%;height:auto;font-family:var(--mono);font-size:11px;display:block}.draw figcaption{border-top:1px solid var(--line);font:500 11px var(--mono);color:var(--mute);letter-spacing:.08em;justify-content:space-between;margin-top:12px;padding-top:10px;display:flex}.flow{stroke-dasharray:4 6;animation:1.6s linear infinite flow}.gate{animation:4.5s linear infinite gate}.gate.g2{animation-delay:1.5s}.gate.g3{animation-delay:3s}@keyframes flow{to{stroke-dashoffset:-20px}}@keyframes gate{0%,30%{stroke:var(--cyan)}34%,to{stroke:var(--line)}}section{border-top:1px solid var(--line);padding:96px 0}h2{font:700 clamp(30px, 3.6vw, 44px)/1.08 var(--disp);max-width:760px;margin:14px 0 18px}.intro{color:var(--mute);max-width:660px}.grid3{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:48px;display:grid}.cell{background:var(--bg);padding:30px 28px}.cell h3{font:600 22px/1.2 var(--disp);margin:14px 0 10px}.cell p{color:var(--mute);font-size:15.5px}.team{border-collapse:collapse;background:var(--bg);border:1px solid var(--line);width:100%;margin-top:48px}.team thead th{text-align:left;font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);background:var(--panel);border-bottom:1px solid var(--line);padding:14px 20px}.team tbody th,.team td{border-bottom:1px solid var(--line);vertical-align:top;text-align:left;padding:22px 20px}.team tbody tr:last-child th,.team tbody tr:last-child td{border-bottom:0}.team tbody th{font:600 20px/1.2 var(--disp);white-space:nowrap}.team td{color:var(--mute);font-size:15.5px}.team td.uses{font:400 13px/1.7 var(--mono);color:var(--ink);width:28%}.team td.lim{font:400 12.5px/1.6 var(--mono);color:var(--amber);width:17%}.team tr.lead th{color:var(--amber)}.team tr.lead{background:var(--panel)}.sr{position:absolute;left:-9999px}.cmp{border-collapse:collapse;border:1px solid var(--line);background:var(--bg);width:100%;margin-top:48px}.cmp thead th{text-align:left;font:600 18px var(--disp);background:var(--panel);border-bottom:1px solid var(--line);padding:16px 22px}.cmp thead th.us{color:var(--cyan)}.cmp tbody th{text-align:left;font:500 13px var(--mono);color:var(--mute);border-bottom:1px solid var(--line);vertical-align:top;width:20%;padding:20px 22px}.cmp td{border-bottom:1px solid var(--line);vertical-align:top;color:var(--mute);width:40%;padding:20px 22px;font-size:15.5px}.cmp td.us{color:var(--ink);border-left:2px solid var(--cyan);background:var(--panel)}.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}.why-close{max-width:760px;font:600 22px/1.4 var(--disp);margin-top:32px}.guards{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:40px;display:grid}.guards div{background:var(--panel);padding:22px}.guards h3{font:600 17px var(--disp);color:var(--amber);margin-bottom:6px}.guards p{color:var(--mute);font-size:14.5px}.steps{border-top:2px solid var(--cyan);grid-template-columns:repeat(4,1fr);margin-top:48px;list-style:none;display:grid}.steps li{padding:26px 24px 0 0;position:relative}.steps li:before{content:"";background:var(--bg);border:2px solid var(--cyan);width:12px;height:12px;position:absolute;top:-7px;left:0}.steps h3{font:600 20px var(--disp);margin:14px 0 8px}.steps p{color:var(--mute);font-size:15.5px}.tools{border:1px solid var(--line);margin-top:44px}.tools div{border-bottom:1px solid var(--line);grid-template-columns:240px 1fr;display:grid}.tools div:last-child{border-bottom:0}.tools dt{font:500 13px var(--mono);color:var(--cyan);border-right:1px solid var(--line);background:var(--panel);padding:18px 22px}.tools dd{font:400 15px var(--mono);background:var(--bg);padding:18px 22px}.eng{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;display:grid}.eng div{border:1px solid var(--line);background:var(--bg);padding:28px}.eng h3{font:600 22px var(--disp);margin-bottom:10px}.eng p{color:var(--mute);font-size:15.5px}.final{padding:120px 0}.final h2{max-width:none;font-size:clamp(36px,5vw,60px)}footer{border-top:1px solid var(--line);font:500 12px var(--mono);color:var(--mute);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:28px 0;display:flex}.notfound{flex-direction:column;justify-content:center;align-items:flex-start;gap:24px;min-height:70vh;display:flex}@media (prefers-reduced-motion:reduce){.flow,.gate{animation:none}html{scroll-behavior:auto}}@media (width<=900px){.hero{grid-template-columns:1fr;padding:56px 0 72px}.grid3,.eng{grid-template-columns:1fr}.guards,.steps{grid-template-columns:1fr 1fr}.steps li{padding-bottom:24px}.tools div{grid-template-columns:1fr}.tools dt{border-right:0;border-bottom:1px solid var(--line)}.menu{display:block}.nav .tg{display:none}.nav ul{background:var(--panel);border-bottom:1px solid var(--line);z-index:5;flex-direction:column;gap:0;padding:8px 24px 16px;display:none;position:absolute;top:100%;left:-24px;right:-24px}.nav ul.open{display:flex}.nav ul a{color:var(--ink);padding:14px 0;font-size:15px;display:block}.cmp thead{position:absolute;left:-9999px}.cmp,.cmp tbody,.cmp tr,.cmp tbody th,.cmp td{width:auto;display:block}.cmp tr{border-bottom:1px solid var(--line);padding:18px 20px}.cmp tbody tr:last-child{border-bottom:0}.cmp tbody th,.cmp td{border:0;padding:4px 0}.cmp td.us{background:0 0;border-left:0}.cmp td:before{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);content:attr(data-label);margin-top:8px;display:block}.cmp td.us:before{color:var(--cyan)}.team thead{position:absolute;left:-9999px}.team,.team tbody,.team tr,.team tbody th,.team td{width:auto;display:block}.team tr{border-bottom:1px solid var(--line);padding:20px}.team tbody tr:last-child{border-bottom:0}.team tbody th,.team td,.team td.uses,.team td.lim{white-space:normal;border:0;width:auto;padding:4px 0}.team td.uses:before,.team td.lim:before{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin-top:8px;display:block}.team td.uses:before{content:"Tools"}.team td.lim:before{content:"Limits"}section{padding:72px 0}}@media (width<=520px){.draw svg{font-size:14px}.draw .sm{display:none}.guards,.steps{grid-template-columns:1fr}}
