@font-face{font-family:ResidentMono;src:url('/assets/fonts/plex-mono.woff') format('woff');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#14151b;--panel:#1a202b;--ink:#f0f1f5;--head:#d6d9e2;--soft:#b4b9c5;--muted:#a3a6b0;--line:#3e424f;--green:#43d18a;--blue:#66aff0;--mono:ResidentMono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--gutter:clamp(18px,4.4vw,72px);--gap:1.86em;--top:2.28em;--bottom:1.44em}
*{box-sizing:border-box}
html{scroll-padding-top:76px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--mono);font-weight:400;font-size:13px;line-height:1.65;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
img,svg{display:block;max-width:100%}
img{height:auto}
p{margin:0 0 1em;line-height:1.55}
h1,h2{font-weight:400;font-size:clamp(24px,calc(2.65vw - 4.4px),31px);line-height:1.1;letter-spacing:-.055em;color:var(--head);margin:0 0 10px;text-wrap:balance}
h3{font-weight:400;font-size:18px;line-height:1.2;letter-spacing:-.02em;color:var(--head);margin:0}
::selection{background:var(--green);color:var(--bg)}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.wrap{width:100%;max-width:1520px;margin-inline:auto;padding-inline:var(--gutter)}
.green{color:var(--green)}
.line{display:inline-block}
.skip-link{position:fixed;top:-70px;left:18px;z-index:50;background:var(--green);color:var(--bg);padding:10px 15px}
.skip-link:focus{top:10px}

.site-header{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid transparent;transition:border-color .2s}
.site-header.is-stuck{border-bottom-color:var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:30px;height:60px}
.brand img{width:auto;height:26px}
.bar nav{display:flex;align-items:center;gap:8px}
.pill{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid var(--line);border-radius:999px;font-size:13px;line-height:1;white-space:nowrap;transition:border-color .2s,background-color .2s}
.pill:hover{border-color:var(--ink);background-color:rgba(240,241,245,.06)}
.pill span{color:var(--green)}
.pill--large{height:48px}

.kicker{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 var(--bottom);font-size:10px;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.tag{white-space:nowrap}
.tag--in{color:var(--green)}
.fine{font-size:11px;line-height:1.4;color:var(--muted);margin:0}
.more{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:auto;padding:var(--gap) 0 8px;color:var(--blue)}
.more:hover span:first-child{text-decoration:underline;text-underline-offset:3px}
.more--title{font-size:18px;line-height:1.2;letter-spacing:-.02em;padding-top:1em}

.intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.intro-copy{grid-column:span 2;padding:var(--top) var(--gap) var(--top) 0}
.lead,.compare{max-width:760px}
.lead{margin:0}
.compare{list-style:none;margin:var(--gap) 0 0;padding:0}
.compare li{display:grid;grid-template-columns:2ch 12ch 1fr;column-gap:1ch;align-items:baseline;border-top:1px solid var(--line);padding:.7em 0}
.compare li:last-child{border-bottom:1px solid var(--line)}
.compare .who{font-weight:400;font-size:10px;letter-spacing:.09em;text-transform:uppercase}
.compare .out{color:var(--muted)}
.compare .in .sign{color:var(--green)}
.status{margin:var(--bottom) 0 0;font-size:10px;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.status-square{display:inline-block;width:6px;height:6px;margin-right:10px;vertical-align:1px;background:var(--green)}
.intro-art{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;padding:var(--bottom) 0 var(--bottom) var(--gap)}
.ascii{margin:0;font-family:var(--mono);font-size:clamp(4.2px,.39vw,6.2px);line-height:1.11;color:var(--ink);user-select:none;-webkit-user-select:none}
.ascii-stack{display:grid}
.ascii-stack .ascii{grid-area:1 / 1}
.ascii--sealed,.is-sealed .ascii:first-child{visibility:hidden}
.is-sealed .ascii--sealed{visibility:visible}
.a-r{color:#7d8290}
.a-g{color:var(--green)}
.a-b{color:var(--blue)}

.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"tools tools offline" "risk value offline"}
.cell{display:flex;flex-direction:column;min-width:0;border-top:1px solid var(--line);padding:var(--top) var(--gap) var(--bottom) 0}
.cell--tools{grid-area:tools;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto 1fr;padding-right:0}
.cell--tools .kicker{grid-column:1 / -1}
.cell--tools .cell-main{padding-right:var(--gap)}
.cell--offline{grid-area:offline;border-left:1px solid var(--line);padding-left:var(--gap);padding-right:0}
.cell--risk{grid-area:risk}
.cell--value{grid-area:value;border-left:1px solid var(--line);padding-left:var(--gap)}
.tool-list{list-style:none;margin:0;padding:0 var(--gap)}
.tool-list li{padding:1.08em 0}
.tool-list li:first-child{padding-top:.25em}
.tool-list h3{margin-bottom:.6em}
.tool-list p{margin:0}
.inside-list{list-style:none;margin:.3em 0 0;padding:0}
.inside-list li{display:flex;gap:1ch;padding:.15em 0}
.inside-list li::before{content:"+";color:var(--green)}

.viewer{flex:1;display:flex;flex-direction:column;justify-content:center;margin-top:var(--gap);padding:1.3em 1.5em 1.5em;background-color:var(--panel);background-image:repeating-linear-gradient(26.6deg,rgba(240,241,245,.035) 0 1px,transparent 1px 26px),repeating-linear-gradient(153.4deg,rgba(240,241,245,.035) 0 1px,transparent 1px 26px)}
.viewer .kicker{margin-bottom:0}
.viewer-figure{margin:.6em 0 0}
.system-diagram{width:100%;max-width:340px;height:auto;margin-inline:auto}
.diagram-guide{fill:none;stroke:#59647a;stroke-dasharray:2 7;stroke-width:1;opacity:.6}
.system-layer{opacity:.28;transition:opacity .35s ease}
.system-layer.is-active{opacity:1}
.plane-top,.plane-face{stroke-width:1;stroke-linejoin:round}
.green-plane{fill:#1a3028;stroke:#43d18a}
.green-face{fill:#16271f;stroke:#43d18a}
.blue-plane{fill:#1c2b37;stroke:#66aff0}
.blue-face{fill:#192632;stroke:#66aff0}
.light-plane{fill:#2b323a;stroke:#d6e0e8}
.light-face{fill:#22282f;stroke:#b7c2cd}
.plane-grid{fill:none;stroke:#84b9a0;stroke-width:.7;opacity:.25}
.processor{fill:#43d18a;stroke:#6ce5a5;stroke-width:2}
.processor-lines{fill:none;stroke:#43d18a;stroke-width:2}
.blue-stroke{fill:none;stroke:#66aff0;stroke-width:3}
.record-page{fill:#c0d0d8;stroke:#e7f1f3;stroke-width:1}
.record-lines{stroke:#3e5663;stroke-width:2}
.layer-tabs{display:flex;justify-content:center;gap:22px;margin:.4em 0 1em}
.layer-tabs button{background:none;border:0;border-bottom:1px solid transparent;padding:4px 0;line-height:1.4;color:var(--soft);transition:color .2s,border-color .2s}
.layer-tabs button:hover{color:var(--ink)}
.layer-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}
.layer-description{min-height:2.8em;font-size:11px;line-height:1.4;color:var(--muted);text-align:center}

.examples{border-top:1px solid var(--line);padding:var(--top) 0 var(--top)}
.examples-head{display:flex;justify-content:space-between;align-items:center;gap:16px 30px;flex-wrap:wrap}
.examples-head h2{margin:0}
.examples-actions{display:flex;align-items:center;gap:8px}
.arrow{display:inline-flex;align-items:center;justify-content:center;width:40px;height:48px;background:none;border:0;font-size:18px;line-height:1;color:var(--blue);transition:color .2s}
.arrow[hidden]{display:none}
.arrow:disabled{color:var(--muted);cursor:default}
.cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--line) transparent;margin:var(--bottom) 0}
.cards:focus-visible{outline-offset:2px}
.card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-right-width:0;padding:1.62em 1.5em 1.3em;scroll-snap-align:start}
.card:last-child{border-right-width:1px}
.card .kicker{margin-bottom:var(--gap)}
.glyph{flex:none;width:18px;height:18px;fill:var(--green)}
.glyph--blue{fill:var(--blue)}
.card h3{margin-bottom:var(--gap);color:var(--ink)}
.steps{flex:1;display:flex;flex-direction:column;gap:1.08em;margin:0}
.steps dt{margin-bottom:.35em;font-size:10px;line-height:1.4;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.steps dd{margin:0;line-height:1.55;color:var(--soft)}
.steps .result{margin-top:auto;border-top:1px solid var(--line);padding-top:1.08em}
.steps .result dd{color:var(--ink)}

.contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.contact-lead{grid-column:span 2;padding:var(--top) var(--gap) var(--top) 0}
.contact-copy{display:flex;flex-direction:column;border-left:1px solid var(--line);padding:var(--top) 0 var(--top) var(--gap)}
.contact-copy p:nth-of-type(2){margin:0}
.email{align-self:flex-start;font-size:11px;line-height:1.4;color:var(--muted)}
.email:hover{color:var(--ink)}

.site-footer{padding-bottom:2.1em}
.footer-brand{display:block;border-top:1px solid var(--line);padding:var(--top) 0 var(--gap)}
.footer-brand img{width:min(100%,320px)}
.site-footer .fine{padding-bottom:var(--bottom)}
.footer-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px 25px;flex-wrap:wrap;font-size:10px;line-height:1.65;letter-spacing:.08em;text-transform:uppercase}
.footer-links{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.footer-links li+li::before{content:"|";margin:0 1ch;color:var(--muted)}
.footer-links a:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:1099px){
h1,h2{font-size:clamp(24px,calc(3.98vw - 4.4px),31px)}
.intro{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}
.intro-copy,.contact-lead{grid-column:auto}
.ascii{font-size:clamp(3.4px,.5vw,5.4px)}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"tools tools" "offline offline" "risk value"}
.cell--offline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;border-left:0;padding-left:0}
.cell--offline .cell-main{padding-right:var(--gap)}
.cell--offline .viewer{margin:0 0 0 var(--gap)}
.contact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:719px){
h1,h2{font-size:clamp(24px,7.6vw,31px)}
html{scroll-padding-top:70px}
.pill--nav{display:none}
.bar{gap:16px}
.brand img{height:22px}
.intro,.grid,.contact,.cell--tools,.cell--offline{display:block}
.intro-copy{padding-right:0;padding-bottom:var(--gap)}
.intro-art{justify-content:flex-start;padding:0 0 var(--top)}
.ascii{font-size:min(calc((100vw - 2*var(--gutter))/52.8),7.2px)}
.cell,.cell--offline,.cell--value{border-left:0;padding-left:0;padding-right:0}
.cell--tools .cell-main,.cell--offline .cell-main{padding-right:0}
.tool-list{padding:.6em 0 0}
.tool-list li:first-child{padding-top:1.08em}
.cell--offline .viewer{margin:var(--gap) 0 0}
.more{padding-top:1em}
.examples-head{align-items:flex-start;flex-direction:column}
.cards{grid-auto-columns:min(82%,300px)}
.contact-lead{padding:var(--top) 0 var(--bottom)}
.contact-copy{border-left:0;padding:0 0 var(--top)}
}
@media(max-width:479px){
.compare li{grid-template-columns:2ch 1fr;row-gap:.25em}
.compare .what{grid-column:2}
}
@keyframes ascii-reveal{from{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}
@keyframes ascii-show{to{clip-path:inset(0)}}
@media(scripting:enabled) and (prefers-reduced-motion:no-preference){
.ascii-stack{animation:ascii-reveal .8s steps(50) both paused,ascii-show 1ms 6s forwards}
.ascii-stack.is-watched{animation:ascii-reveal .8s steps(50) both paused}
.ascii-stack.is-live{animation-play-state:running}
}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
