:root{--bg:#07070d;--bg2:#0d0d17;--panel:#10101c;--ink:#dfe4ee;--muted:#a3adbf;--cyan:#2ee6ff;--mag:#ff3ea5;--vio:#a86bff;--amb:#ffc247;--lime:#8cff5e;--line:#232537;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:40px;--s7:64px;--mono:"IBM Plex Mono","SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace;--sans:"Inter","Segoe UI",Roboto,system-ui,-apple-system,sans-serif;--glow-c:0 0 8px rgba(46,230,255,.6),0 0 24px rgba(46,230,255,.25);--glow-m:0 0 8px rgba(255,62,165,.6),0 0 24px rgba(255,62,165,.25)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--ink);background-color:var(--bg);background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 4px),linear-gradient(rgba(46,230,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(46,230,255,.045) 1px,transparent 1px);background-size:auto,56px 56px,56px 56px}
h1,h2,h3,h4,p,li,dt,dd,td,th,label,figcaption{overflow-wrap:anywhere}
h1,h2,h3,h4{font-family:var(--mono);line-height:1.15;margin:0 0 var(--s4);letter-spacing:-.01em}
h1{font-size:clamp(30px,5.5vw,56px);color:#fff;text-shadow:var(--glow-c)}
h2{font-size:clamp(24px,3.4vw,34px);color:var(--cyan);text-shadow:var(--glow-c)}
h3{font-size:20px;color:var(--mag)}
p{margin:0 0 var(--s4)}
a{color:var(--cyan)}
a:hover{color:#fff}
img{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--amb);outline-offset:3px}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 var(--s5)}
.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}
.skip-link{position:absolute;left:var(--s4);top:-120px;z-index:100;background-color:var(--cyan);color:#07070d;padding:var(--s2) var(--s4);font-family:var(--mono);text-decoration:none}
.skip-link:focus{top:var(--s4)}
.site-header{height:52px;border-bottom:1px solid var(--line);background-color:rgba(7,7,13,.94);box-shadow:0 1px 0 rgba(46,230,255,.3)}
.head-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:var(--s4)}
.brand{display:flex;align-items:center;gap:var(--s2);color:#fff;text-decoration:none;font-family:var(--mono);font-size:16px;flex-shrink:0;white-space:nowrap;text-shadow:var(--glow-c)}
.brand:hover{color:var(--cyan)}
.mark{color:var(--cyan);flex-shrink:0;filter:drop-shadow(0 0 4px rgba(46,230,255,.7))}
.nav-toggle{background-color:transparent;border:1px solid var(--cyan);color:var(--cyan);width:40px;height:40px;display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:var(--glow-c)}
.bars{display:block;width:18px;height:2px;background-color:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}
.nav-toggle[aria-expanded="true"] .bars{transform:rotate(45deg);box-shadow:none}
.nav{display:none;position:fixed;top:52px;left:0;right:0;bottom:0;z-index:50;background-color:rgba(7,7,13,.97);overflow-y:auto;padding:var(--s5)}
.nav.is-open{display:flex;flex-direction:column;justify-content:flex-start}
.nav-list{list-style:none;margin:auto 0;padding:0;display:flex;flex-direction:column;gap:var(--s2);width:100%;overflow-wrap:anywhere}
.nav-list li{min-width:0}
.nav-list a{display:block;padding:var(--s3) var(--s4);color:var(--ink);text-decoration:none;font-family:var(--mono);font-size:20px;border:1px solid var(--line);background-color:var(--panel)}
.nav-list a:hover,.nav-list a[aria-current="page"]{color:var(--cyan);border-color:var(--cyan)}
.nav-list .cta{border-color:var(--mag);color:var(--mag);box-shadow:var(--glow-m)}
.nav-list .cta:hover{background-color:var(--mag);color:#07070d}
.hero{position:relative;padding:var(--s7) 0;border-bottom:1px solid var(--line)}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,13,.55),rgba(7,7,13,.92))}
.hero .wrap{position:relative;z-index:1}
.hero-inner{max-width:780px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--s5)}
.hero-inner h1,.hero-inner p{margin:0}
.hero-inner p{font-size:19px;color:var(--ink)}
.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mag);margin:0 0 var(--s3)}
.btn{display:inline-block;font-family:var(--mono);font-size:15px;padding:var(--s3) var(--s5);text-decoration:none;border:1px solid var(--cyan);color:var(--cyan);background-color:transparent;cursor:pointer;box-shadow:var(--glow-c);transition:background-color .2s,color .2s}
.btn:hover{background-color:var(--cyan);color:#07070d}
.btn-solid{background-color:var(--cyan);color:#07070d}
.btn-solid:hover{background-color:#fff;color:#07070d}
.btn-group{display:flex;flex-wrap:wrap;gap:var(--s4);justify-content:center}
.section{padding:var(--s7) 0}
.section-head{max-width:720px;margin:0 auto var(--s6);text-align:center}
.section-head p{color:var(--muted)}
.panels{list-style:none;margin:0;padding:0}
.panel{position:relative;padding:var(--s7) var(--s5);text-align:center;border-top:1px solid var(--accent);box-shadow:inset 0 1px 0 var(--accent),inset 0 40px 80px -60px var(--accent)}
.panel-inner{max-width:720px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--s4)}
.panel-idx{font-family:var(--mono);font-size:clamp(80px,16vw,160px);line-height:1;color:var(--accent);text-shadow:0 0 12px var(--accent),0 0 48px var(--accent);margin:0}
.panel h2{color:var(--accent);text-shadow:0 0 10px var(--accent);margin:0}
.panel p{margin:0;color:var(--ink)}
.panel .btn{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px var(--accent)}
.panel .btn:hover{background-color:var(--accent);color:#07070d}
.p-cyan{--accent:var(--cyan);background-color:#04202a}
.p-mag{--accent:var(--mag);background-color:#26071f}
.p-vio{--accent:var(--vio);background-color:#160a2e}
.p-amb{--accent:var(--amb);background-color:#241900}
.p-lime{--accent:var(--lime);background-color:#06210f}
.lexicon{display:grid;grid-template-columns:1fr;gap:var(--s4);margin:0}
.lexicon div{min-width:0;border:1px solid var(--line);padding:var(--s5);background-color:var(--panel);box-shadow:inset 3px 0 0 var(--cyan)}
.lexicon dt{font-family:var(--mono);color:var(--cyan);font-size:15px;margin-bottom:var(--s2);text-shadow:var(--glow-c)}
.lexicon dd{margin:0;color:var(--ink);font-size:15px}
.page-head{padding:var(--s7) 0 var(--s6);text-align:center}
.page-head h1{margin-bottom:var(--s4)}
.lede{font-size:20px;color:var(--muted);max-width:760px;margin:0 auto}
.lead-fig{margin:0 0 var(--s7)}
.lead-fig img{width:100%;aspect-ratio:16/7;object-fit:cover;border:1px solid var(--line);box-shadow:0 0 0 1px rgba(46,230,255,.35),0 0 30px rgba(46,230,255,.15)}
figcaption{font-family:var(--mono);font-size:13px;color:var(--muted);margin-top:var(--s3)}
.article{max-width:760px;margin:0 auto;padding-bottom:var(--s7)}
.article section{margin-bottom:var(--s6)}
.article h2{font-size:clamp(22px,3vw,30px)}
.article h2::before,.legal h2::before{content:"// ";color:var(--mag);text-shadow:var(--glow-m)}
.article ul,.article ol,.legal ul,.legal ol{padding-left:var(--s5);margin:0 0 var(--s4)}
.article li,.legal li{margin-bottom:var(--s2)}
.fig-inline{margin:var(--s6) 0}
.fig-inline img{width:100%;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--line);box-shadow:0 0 0 1px rgba(255,62,165,.35),0 0 30px rgba(255,62,165,.12)}
.callout{border:1px solid var(--mag);box-shadow:var(--glow-m);padding:var(--s5);background-color:#150913;margin:0 0 var(--s5)}
.callout p:last-child{margin:0}
.table-wrap{overflow-x:auto;margin:0 0 var(--s5);border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{text-align:left;padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);vertical-align:top}
th{font-family:var(--mono);color:var(--cyan);font-size:13px;letter-spacing:.08em;text-transform:uppercase;background-color:var(--panel)}
.contact-grid{display:grid;gap:var(--s6);max-width:1000px;margin:0 auto;padding-bottom:var(--s7)}
.contact-grid>*{min-width:0}
.info-card{border:1px solid var(--line);padding:var(--s5);background-color:var(--panel);box-shadow:inset 3px 0 0 var(--mag)}
.info-card h2{font-size:20px}
.info-card address{font-style:normal;margin:0 0 var(--s4)}
.form{display:grid;gap:var(--s5)}
.field{display:grid;gap:var(--s2)}
.field label{font-family:var(--mono);font-size:14px;color:var(--cyan)}
.field input,.field select,.field textarea{width:100%;background-color:#0b0b14;border:1px solid var(--line);color:var(--ink);padding:var(--s3) var(--s4);font:inherit;font-size:16px}
.field textarea{min-height:160px;resize:vertical}
.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{border-color:var(--mag);box-shadow:0 0 0 1px var(--mag)}
.error{color:#ff8ccb;font-size:14px;margin:0}
.error[hidden]{display:none}
.check{display:flex;gap:var(--s3);align-items:flex-start}
.check input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--cyan)}
.check label{color:var(--ink);font-family:var(--sans);font-size:15px}
.form-status{border:1px solid var(--lime);color:var(--lime);padding:var(--s4);font-family:var(--mono);font-size:15px;margin:0}
.form-status[hidden]{display:none}
.legal{max-width:800px;margin:0 auto;padding:var(--s7) 0}
.legal h1{font-size:clamp(28px,4vw,42px)}
.legal h2{font-size:22px;margin-top:var(--s6)}
.site-footer{border-top:1px solid var(--line);box-shadow:0 -1px 0 rgba(255,62,165,.35);padding:var(--s7) 0 var(--s6);background-color:var(--bg2);font-size:15px;color:var(--muted)}
.foot-grid{display:grid;gap:var(--s6)}
.foot-grid>*{min-width:0}
.foot-brand{font-family:var(--mono);color:#fff;font-size:18px;text-shadow:var(--glow-c)}
.foot-h{font-size:13px;color:var(--mag);text-shadow:none;letter-spacing:.14em;text-transform:uppercase;margin-bottom:var(--s4)}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}
.site-footer a{color:var(--ink);text-decoration:none}
.site-footer a:hover{color:var(--cyan)}
.foot-base{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line);font-size:14px}
.foot-base p{margin:0 0 var(--s2)}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:60;background-color:#0b0b14;border-top:1px solid var(--cyan);box-shadow:0 -4px 30px rgba(46,230,255,.2);padding:var(--s4) var(--s5);font-size:15px;color:var(--ink)}
.cookie-banner[hidden]{display:none}
.cookie-inner{max-width:1160px;margin:0 auto;display:flex;flex-direction:column;gap:var(--s4)}
.cookie-inner p{margin:0}
.cookie-actions{display:flex;flex-direction:column;gap:var(--s2)}
.cookie-actions button,.cookie-prefs button{font-family:var(--mono);font-size:14px;padding:var(--s2) var(--s4);cursor:pointer;border:1px solid var(--cyan);background-color:transparent;color:var(--cyan)}
.cookie-actions button[data-cookie-choice="accept"]{background-color:var(--cyan);color:#07070d}
.cookie-actions button:hover,.cookie-prefs button:hover{background-color:#fff;color:#07070d}
.cookie-prefs{display:grid;gap:var(--s3);border-top:1px solid var(--line);padding-top:var(--s4)}
.cookie-prefs[hidden]{display:none}
.cookie-prefs label{display:flex;gap:var(--s2);align-items:center}
.cookie-prefs input{accent-color:var(--cyan);margin:0}
.cookie-prefs button{justify-self:start}
@media(min-width:480px){.cookie-actions{flex-direction:row;flex-wrap:wrap}.cookie-actions button{flex:1 1 auto}}
@media(min-width:768px){.lexicon{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr 1.4fr}.foot-grid{grid-template-columns:2fr 1fr 1fr}.cookie-inner{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.cookie-inner p{flex:1 1 320px}.cookie-actions{flex:0 0 auto;justify-content:flex-end}.cookie-actions button{flex:0 0 auto}.cookie-prefs{flex:1 1 100%}}
@media(min-width:1024px){.site-header{height:64px}.nav-toggle{display:none}.nav{display:flex;position:static;flex:1;background-color:transparent;padding:0;overflow:visible;align-items:center;min-width:0}.nav-list{flex-direction:row;align-items:center;gap:var(--s1);margin:0;width:auto;flex:1}.nav-list li:first-child{margin-left:auto}.nav-cta{margin-left:auto}.nav-list a{font-size:14px;padding:var(--s2) var(--s3);border:1px solid transparent;background-color:transparent;white-space:nowrap}.nav-list a[aria-current="page"]{border-color:transparent;text-shadow:var(--glow-c)}.nav-list .cta{border-color:var(--mag)}.lexicon{grid-template-columns:repeat(4,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}