:root{--paper:#eaeae4;--paper-2:#e2e2da;--ink:#16181a;--ink-soft:#3a3d40;--dust:#7e7e74;--line:#c6c6bc;--signal:#e84b0c;--signal-hot:#ff5f1f;--sand-hi:#dcd7c6;--sand-lo:#cfc9b4;--sand-cured:#6f6a5b;--sand-wet:#5b5749;--sky:#deded6;--tank:#c3beac;--tank-base:#4a4740;--hose:#56534a;--panel:#101214;--panel-2:#1a1d20;--panel-line:#2c3034;--panel-text:#d8d8d0;--panel-dim:#8a8d8a;--axis-z:#6e96b8;--mono:"IBM Plex Mono", ui-monospace, monospace;--body:"IBM Plex Sans", system-ui, sans-serif;--disp:"Archivo", system-ui, sans-serif;--wdth-disp:122;--wdth-sub:114;--max-w:1180px;--pad-x:24px;--sec-y:96px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}::selection{background:var(--signal);color:#fff}a{color:inherit}button{font:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:3px}.wrap{max-width:var(--max-w);padding:0 var(--pad-x);margin:0 auto}section{padding:var(--sec-y) 0;border-top:1px solid var(--line)}.disp{font-family:var(--disp);font-variation-settings:"wdth" var(--wdth-disp);text-transform:uppercase;letter-spacing:-.01em;font-weight:800;line-height:.96}.sub-disp{font-family:var(--disp);font-variation-settings:"wdth" var(--wdth-sub);text-transform:uppercase;font-weight:800;line-height:1.12}.eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--signal);font-size:11px;font-weight:600}.eyebrow:before{content:"//";color:var(--dust);margin-right:.7em}.mono-meta{font-family:var(--mono);color:var(--dust);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.btn{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--ink);cursor:pointer;color:var(--ink);background:0 0;padding:14px 24px;font-size:12px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-block}.btn.solid{background:var(--ink);color:var(--paper)}.btn.solid:hover{background:var(--signal);border-color:var(--signal)}.btn.ghost:hover{border-color:var(--signal);color:var(--signal)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font-family:var(--mono);letter-spacing:.12em;border:1px solid var(--line);color:var(--dust);text-transform:uppercase;padding:3px 8px;font-size:9.5px}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:48px;display:flex}.sec-head h1,.sec-head h2{font-size:clamp(28px,4vw,44px)}.sec-head .ref{font-family:var(--mono);color:var(--dust);letter-spacing:.12em;font-size:11px}.dark{background:var(--panel);color:var(--panel-text);border-top-color:var(--panel)}.dark .sec-head h1,.dark .sec-head h2{color:#f2f2ec}.dark .sec-head .ref{color:var(--panel-dim)}nav.site-nav{z-index:50;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-in{justify-content:space-between;align-items:center;height:60px;display:flex}.logo{font-family:var(--disp);font-variation-settings:"wdth" var(--wdth-disp);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:10px;font-size:15px;font-weight:800;text-decoration:none;display:flex}.logo .mark{background:var(--signal);clip-path:polygon(0 100%,50% 0,100% 100%);width:14px;height:14px}.nav-links{gap:26px;list-style:none;display:flex}.nav-links a{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);opacity:.75;font-size:11.5px;text-decoration:none}.nav-links a:hover,.nav-links a.active{opacity:1;color:var(--signal)}.nav-geo{font-family:var(--mono);color:var(--dust);letter-spacing:.08em;font-size:10.5px}.nav-burger{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.14em;cursor:pointer;background:0 0;padding:8px 12px;font-size:11px;display:none}@media (width<=900px){.nav-links,.nav-geo{display:none}.nav-burger{display:block}.nav-links.open{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:18px;padding:20px 24px;display:flex;position:absolute;top:60px;left:0;right:0}}header.hero{position:relative;overflow:hidden}.hero-in{z-index:2;padding:110px 0 70px;position:relative}.hero-dunes{z-index:1;pointer-events:none;width:100%;height:46%;position:absolute;inset:auto 0 0}.hero h1{max-width:12ch;margin-top:22px;font-size:clamp(46px,8.4vw,118px)}.hero .accent,.accent{color:var(--signal)}.hero-sub{max-width:52ch;color:var(--ink-soft);margin-top:28px;font-size:18px}.hero-meta{flex-wrap:wrap;gap:28px;margin-top:22px;display:flex}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.hero-strip{border-top:1px solid var(--line);z-index:2;background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);position:relative}.hero-strip .wrap{grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.strip-cell{font-family:var(--mono);color:var(--dust);letter-spacing:.06em;padding:16px 18px 16px 0;font-size:11px;line-height:1.7}.strip-cell b{color:var(--ink);font-weight:600;display:block}@media (width<=760px){.hero-strip .wrap{grid-template-columns:1fr 1fr}}.thesis p{font-family:var(--disp);font-variation-settings:"wdth" 108;letter-spacing:-.015em;max-width:26ch;margin-top:26px;font-size:clamp(24px,3.6vw,40px);font-weight:600;line-height:1.18}.pillars{border:1px solid var(--line);border-right:none;grid-template-columns:repeat(3,1fr);display:grid}.pillar{border-right:1px solid var(--line);background:var(--paper);padding:34px 28px 40px;transition:background .2s}.pillar:hover{background:var(--paper-2)}.pillar .tag{font-family:var(--mono);letter-spacing:.18em;color:var(--signal);font-size:10.5px;font-weight:600}.pillar h3{margin:16px 0 12px;font-size:21px;line-height:1.1}.pillar p{color:var(--ink-soft);margin-bottom:18px;font-size:14.5px}.pillar ul{font-family:var(--mono);color:var(--dust);font-size:11.5px;line-height:2.1;list-style:none}.pillar li:before{content:"—";color:var(--signal);margin-right:.7em}@media (width<=860px){.pillars{border-right:1px solid var(--line);border-bottom:none;grid-template-columns:1fr}.pillar{border-right:none;border-bottom:1px solid var(--line)}}.projects{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.proj{border:1px solid var(--line);background:var(--paper);flex-direction:column;transition:border-color .15s;display:flex}.proj:hover{border-color:var(--ink)}.proj-viz{aspect-ratio:16/10;border-bottom:1px solid var(--line);background:var(--paper-2);position:relative;overflow:hidden}.proj-viz canvas{width:100%;height:100%;display:block}.proj-viz .status{font-family:var(--mono);letter-spacing:.16em;color:var(--ink);background:var(--paper);border:1px solid var(--line);padding:4px 8px;font-size:9.5px;position:absolute;top:12px;left:12px}.proj-viz .status i{background:var(--signal);border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.proj-body{flex-direction:column;flex:1;gap:10px;padding:22px 22px 26px;display:flex}.proj-body h3{font-size:17px;line-height:1.15}.proj-body p{color:var(--ink-soft);flex:1;font-size:13.5px}.proj-foot{font-family:var(--mono);color:var(--dust);border-top:1px solid var(--line);letter-spacing:.06em;padding-top:12px;font-size:10.5px}.proj-foot b{color:var(--signal);font-weight:600}@media (width<=900px){.projects{grid-template-columns:1fr}}.demo-grid{grid-template-columns:1.5fr 1fr;align-items:stretch;gap:24px;display:grid}.demo-stage{border:1px solid var(--panel-line);background:var(--panel-2);min-height:440px;position:relative}.demo-stage canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.demo-stage canvas:active{cursor:grabbing}.stage-hint{font-family:var(--mono);color:var(--panel-dim);letter-spacing:.12em;text-transform:uppercase;pointer-events:none;font-size:10px;position:absolute;bottom:12px;left:14px}.stage-warn{font-family:var(--mono);color:var(--signal);letter-spacing:.1em;opacity:0;pointer-events:none;font-size:10.5px;transition:opacity .2s;position:absolute;top:12px;right:14px}.stage-warn.on{opacity:1}.demo-side{flex-direction:column;gap:16px;display:flex}.readout{border:1px solid var(--panel-line);background:var(--panel-2);flex-direction:column;flex:1;display:flex}.readout-tabs{border-bottom:1px solid var(--panel-line);display:flex}.readout-tabs button{border:none;border-right:1px solid var(--panel-line);color:var(--panel-dim);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;flex:1;padding:12px 6px;font-size:10px}.readout-tabs button:last-child{border-right:none}.readout-tabs button.on{color:var(--signal);background:var(--panel)}.readout pre{font-family:var(--mono);color:var(--panel-text);white-space:pre;flex:1;padding:18px;font-size:12px;line-height:1.9;overflow-x:auto}.readout pre .k{color:var(--panel-dim)}.readout pre .a{color:var(--signal)}.demo-controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dbtn{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--panel-line);color:var(--panel-text);cursor:pointer;background:0 0;padding:13px 10px;font-size:11px;font-weight:600;transition:all .15s}.dbtn:hover{border-color:var(--signal);color:var(--signal)}.dbtn.primary{background:var(--signal);border-color:var(--signal);color:#fff}.dbtn.primary:hover{background:var(--signal-hot);color:#fff}.demo-note{color:var(--panel-dim);max-width:64ch;font-size:13.5px;line-height:1.7}.demo-note b{color:var(--panel-text);font-weight:600}.demo-note .a{color:var(--signal)}@media (width<=900px){.demo-grid{grid-template-columns:1fr}.demo-stage{min-height:360px}}.copilot-lede{max-width:66ch;color:var(--ink-soft);margin-bottom:34px;font-size:15px}.copilot-lede b{color:var(--ink);font-weight:600}.copilot-lede .a{color:var(--signal)}.demo-caveat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dust);border-left:2px solid var(--signal);max-width:70ch;margin-top:20px;padding-left:14px;font-size:10.5px;line-height:2}.drc-btn:focus-visible,.drc-summary:focus-visible,.drc-input:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.drc-pulse{animation:1.1s ease-in-out infinite drcPulse}.drc-tok{animation:.35s both drcFade}@keyframes drcPulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes drcFade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.drc-pulse,.drc-tok{animation:none}}.drc-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.demo-loading{border:1px solid var(--line);background:var(--paper-2);text-align:center;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dust);padding:80px 20px;font-size:11px}.teaser{grid-template-columns:1.6fr 1fr;align-items:start;gap:40px;display:grid}.teaser-cta{flex-direction:column;align-items:flex-start;gap:14px;display:flex}@media (width<=800px){.teaser{grid-template-columns:1fr}}.dark .btn.solid{background:var(--signal);border-color:var(--signal);color:#fff}.dark .btn.solid:hover{background:var(--signal-hot);border-color:var(--signal-hot)}.dark .btn.ghost{border-color:var(--panel-line);color:var(--panel-text)}.dark .btn.ghost:hover{border-color:var(--signal);color:var(--signal)}.stack{max-width:760px;margin:0 auto}.layer{border:1px solid var(--line);background:var(--paper);border-bottom:none}.layer:last-of-type{border-bottom:1px solid var(--line)}.layer>button{text-align:left;cursor:pointer;width:100%;font-family:var(--disp);font-variation-settings:"wdth" 116;text-transform:uppercase;color:var(--ink);background:0 0;border:none;align-items:center;gap:16px;padding:18px 22px;font-size:15px;font-weight:700;display:flex}.layer>button .idx{font-family:var(--mono);color:var(--dust);letter-spacing:.1em;min-width:56px;font-size:10px;font-weight:500}.layer>button .plus{color:var(--signal);font-family:var(--mono);margin-left:auto;font-size:14px;transition:transform .2s}.layer.open>button .plus{transform:rotate(45deg)}.layer .body{max-height:0;transition:max-height .25s;overflow:hidden}.layer.open .body{max-height:220px}.layer .body p{color:var(--ink-soft);max-width:60ch;padding:0 22px 20px 94px;font-size:14px}.layer.open{background:var(--paper-2)}.stack-arrow{text-align:center;font-family:var(--mono);color:var(--signal);padding:2px 0;font-size:13px;line-height:1}.stack-loop{font-family:var(--mono);color:var(--dust);letter-spacing:.14em;text-transform:uppercase;text-align:center;margin-top:14px;font-size:10.5px}@media (width<=600px){.layer .body p{padding-left:22px}}.research-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.rcard{background:var(--paper);padding:34px 30px 38px}.rcard .q{font-family:var(--mono);letter-spacing:.18em;color:var(--signal);text-transform:uppercase;font-size:10.5px;font-weight:600}.rcard h3{margin:14px 0 12px;font-size:19px}.rcard p{color:var(--ink-soft);font-size:14.5px}@media (width<=760px){.research-grid{grid-template-columns:1fr}}.cap-table{border-collapse:collapse;border:1px solid var(--line);width:100%}.cap-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:15px 18px;font-size:13.5px}.cap-table tr:last-child td{border-bottom:none}.cap-table td:first-child{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border-right:1px solid var(--line);background:var(--paper-2);width:32%;font-size:11px;font-weight:600}.cap-table td:last-child{color:var(--ink-soft)}.notes{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.notes.list{grid-template-columns:1fr;max-width:760px}.note{border-top:2px solid var(--ink);padding-top:18px}.note:hover{border-top-color:var(--signal)}.note .date{font-family:var(--mono);color:var(--dust);letter-spacing:.12em;font-size:10.5px}.note h3{margin:12px 0 10px;font-size:17px}.note p{color:var(--ink-soft);font-size:13.5px}.note a{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--signal);margin-top:14px;font-size:10.5px;font-weight:600;text-decoration:none;display:inline-block}@media (width<=860px){.notes{grid-template-columns:1fr}}.about-grid{grid-template-columns:1fr 1.4fr;gap:60px;display:grid}.about-facts{font-family:var(--mono);color:var(--dust);border-left:2px solid var(--signal);padding-left:20px;font-size:12px;line-height:2.3}.about-facts b{color:var(--ink);font-weight:600}.about-bio h3{margin-bottom:14px;font-size:20px}.about-bio p{color:var(--ink-soft);max-width:58ch;font-size:15px}.about-bio .chips{margin-top:20px}@media (width<=800px){.about-grid{grid-template-columns:1fr}}footer.site-footer{border-top:1px solid var(--ink);background:var(--panel);color:var(--panel-text);padding:70px 0 40px}.foot-grid{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.foot-brand{font-family:var(--disp);font-variation-settings:"wdth" var(--wdth-disp);text-transform:uppercase;color:#f2f2ec;font-size:clamp(30px,5vw,52px);font-weight:800;line-height:1}.foot-meta{font-family:var(--mono);color:var(--panel-dim);letter-spacing:.08em;text-align:right;font-size:11px;line-height:2.1}.foot-meta a{color:var(--panel-text);text-decoration:none}.foot-meta a:hover{color:var(--signal)}.foot-line{border-top:1px solid var(--panel-line);font-family:var(--mono);color:var(--panel-dim);letter-spacing:.14em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:44px;padding-top:20px;font-size:10px;display:flex}.page-hero{border-top:none;padding:72px 0 0}
