:root{
  --hx-bg:#111211;--hx-panel:#171817;--hx-panel2:#1d1e1c;--hx-line:#353733;--hx-line2:#454740;
  --hx-text:#d9d8d2;--hx-muted:#85867e;--hx-dim:#5f625c;--hx-orange:#e2a247;--hx-orange2:#f0b65a;
  --hx-green:#8caf76;--hx-red:#c96c5e;--hx-blue:#6f9bb5;--hx-white:#eeeDE7;
  --hx-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --hx-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
html{background:var(--hx-bg);scroll-behavior:smooth}
body{background:var(--hx-bg)!important;color:var(--hx-text)!important;font-family:var(--hx-font)!important;font-size:13px;letter-spacing:.005em}
a{color:inherit}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 78%)}
/* shared Houdini-like application chrome */
.site-header,.topbar{background:#151615!important;border-bottom:1px solid var(--hx-line)!important;box-shadow:0 1px 0 #090a09!important;backdrop-filter:none!important}
.site-header{height:52px!important;padding:0 18px!important;display:flex!important;align-items:center!important}
.site-header .logo,.wordmark{font-family:var(--hx-mono)!important;font-size:12px!important;letter-spacing:.08em!important;color:var(--hx-white)!important}
.site-header .logo span{color:var(--hx-orange)!important}
.nav a,.nav-project button,.topbar nav a,.menu{font-size:11px!important;color:#9c9d96!important;text-transform:uppercase;letter-spacing:.06em!important}
.nav a:hover,.nav-project button:hover,.topbar nav a:hover{color:var(--hx-orange2)!important}
.nav-project button{background:none!important;border:0!important}
.project-menu{background:#191a18!important;border:1px solid var(--hx-line2)!important;border-radius:2px!important;box-shadow:0 12px 30px #0008!important}
.project-menu a{color:#c5c6c0!important}
main{position:relative}
main:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#242622}
.section,.hero{position:relative}
.section:before,.hero:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--hx-line)}
.kicker,.eyebrow,.section-top,.section-head,.metadata,.fineprint,small,.top-index,.art-label,.art-foot{font-family:var(--hx-mono)!important;letter-spacing:.08em!important;font-size:10px!important;text-transform:uppercase}
h1,h2,h3,p{color:var(--hx-text)}
h1,h2,h3{letter-spacing:-.025em}
button,.pill,.button{border-radius:2px!important}
.button,.pill.dark{background:var(--hx-orange)!important;color:#17130d!important;border:1px solid var(--hx-orange)!important}
.pill:not(.dark),.button:not(.dark){background:#1b1c1a!important;border-color:var(--hx-line2)!important;color:#c9cac3!important}
/* homepage */
body.home-theme .hero{min-height:calc(100vh - 52px)!important;display:grid!important;grid-template-columns:1.08fr .92fr!important;gap:44px!important;align-items:center!important;padding:76px 0!important}
body.home-theme .hero h1{font-family:var(--hx-mono)!important;font-size:clamp(42px,6vw,82px)!important;font-weight:500!important;line-height:.96!important;text-transform:uppercase!important}
body.home-theme .intro{max-width:540px!important;color:#a8aaa3!important;font-size:17px!important}
body.home-theme .section{padding-top:76px!important;padding-bottom:76px!important}
body.home-theme .section-top{color:#7f817a!important}
body.home-theme .work-list{border-top:1px solid var(--hx-line)!important}
body.home-theme .work-item{border-bottom:1px solid var(--hx-line)!important;padding:26px 0!important}
body.home-theme .work-item:hover{background:#171816!important;padding-left:14px!important;padding-right:14px!important}
body.home-theme .work-item h2{font-family:var(--hx-mono)!important;font-size:19px!important;font-weight:500!important}
body.home-theme .work-item span{font-family:var(--hx-mono)!important;color:var(--hx-orange)!important;font-size:9px!important;letter-spacing:.1em!important}
body.home-theme .number{font-family:var(--hx-mono)!important;color:#5d605a!important}
body.home-theme .about-grid h2,body.home-theme .project-row h2,body.home-theme .cv-strip h2{font-family:var(--hx-mono)!important;font-weight:500!important}
body.home-theme .large{color:#d2d2cc!important}
body.home-theme .skill-line{border-bottom:1px solid var(--hx-line)!important;padding:15px 0!important}
body.home-theme .skill-line b{font-family:var(--hx-mono)!important;color:var(--hx-orange)!important;font-size:10px!important;text-transform:uppercase}
body.home-theme .version-links a{background:#171816!important;border:1px solid var(--hx-line)!important;border-radius:2px!important}
body.home-theme .version-links a:hover{border-color:var(--hx-orange)!important}
body.home-theme .email{font-family:var(--hx-mono)!important;color:var(--hx-orange2)!important}
/* workspace graphic */
.hx-workspace{background:#0f100f;border:1px solid var(--hx-line2);min-height:500px;display:grid;grid-template-rows:34px 1fr 30px;box-shadow:inset 0 0 0 1px #090a09}
.hx-toolbar{display:flex;align-items:center;gap:18px;padding:0 12px;border-bottom:1px solid var(--hx-line);font:10px var(--hx-mono);color:#777a73;text-transform:uppercase}
.hx-toolbar .active{color:var(--hx-orange)}
.hx-workarea{display:grid;grid-template-columns:1fr 145px;min-height:430px}
.hx-network{position:relative;overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:20px 20px}
.hx-wire{position:absolute;height:1px;background:#777a72;transform-origin:left center}.hx-wire.orange{background:var(--hx-orange);box-shadow:0 0 7px #e2a24755}
.hx-node{position:absolute;width:112px;background:#20211f;border:1px solid #4b4e47;box-shadow:0 5px 15px #0006;font-family:var(--hx-mono)}
.hx-node .nhead{padding:6px 8px;background:#292a27;border-bottom:1px solid #444740;color:#c4c5bf;font-size:10px}.hx-node .nbody{padding:8px;font-size:9px;color:#74776f;line-height:1.6}.hx-node.active{border-color:var(--hx-orange)}.hx-node.active .nhead{color:var(--hx-orange2)}
.hx-node .port{display:inline-block;width:6px;height:6px;border:1px solid #777a72;border-radius:50%;margin-right:5px}.hx-node .port.orange{border-color:var(--hx-orange);background:#e2a24755}
.hx-params{border-left:1px solid var(--hx-line);background:#181916;padding:10px;font-family:var(--hx-mono);font-size:9px}.hx-params .ptitle{color:var(--hx-orange);font-size:10px;border-bottom:1px solid var(--hx-line);padding-bottom:8px;margin-bottom:8px}.hx-row{display:grid;grid-template-columns:1fr 54px;gap:6px;padding:5px 0;border-bottom:1px solid #262824;color:#797b74}.hx-row b{font-weight:400;color:#a9aaa3}.hx-value{background:#11120f;border:1px solid #343630;padding:3px 4px;color:#aaa}
.hx-status{display:flex;justify-content:space-between;align-items:center;padding:0 10px;border-top:1px solid var(--hx-line);font:9px var(--hx-mono);color:#666960}.hx-status span:last-child{color:var(--hx-green)}
/* case-study pages */
body.case-theme .section,body.case-theme .hero{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
body.case-theme .hero{padding-top:72px!important;padding-bottom:62px!important}
body.case-theme .section{padding-top:64px!important;padding-bottom:64px!important}
body.case-theme .section-head{border-bottom:1px solid var(--hx-line)!important;padding-bottom:10px!important;color:#74766f!important}
body.case-theme .section-head span:last-child{color:#555850!important}
body.case-theme h1{font-family:var(--hx-mono)!important;font-weight:500!important}
body.case-theme h2,body.case-theme h3{font-family:var(--hx-mono)!important;font-weight:500!important}
body.case-theme code{font-family:var(--hx-mono)!important;color:var(--hx-orange2)!important;background:#191a18!important;border:1px solid #2d2f2b!important;padding:1px 4px!important}
body.case-theme .metadata span{border-color:var(--hx-line)!important;color:#70736c!important;background:#161715!important}
body.case-theme .run-badge{border-color:#526149!important;background:#172017!important;color:var(--hx-green)!important;font-family:var(--hx-mono)!important;font-size:9px!important}
body.case-theme .state-word{font-family:var(--hx-mono)!important;letter-spacing:.08em!important}
body.case-theme .fail-word{color:var(--hx-red)!important}.body.case-theme .amber-word{color:var(--hx-orange)!important}.case-theme .pass-word,.case-theme .pass-text{color:var(--hx-green)!important}
body.case-theme .media-stage,body.case-theme .lab-card,body.case-theme .evidence-grid-v2 article,body.case-theme .video-card,body.case-theme .version-compare article,body.case-theme .scope-grid article{background:#171816!important;border-color:var(--hx-line)!important;border-radius:2px!important}
body.case-theme .media-stage:hover,body.case-theme .lab-card:hover,body.case-theme .evidence-grid-v2 article:hover{border-color:#555850!important}
body.case-theme .video-placeholder{background:#0d0e0d!important;border-color:#30322f!important}
body.case-theme .video-placeholder b{font-family:var(--hx-mono)!important;color:var(--hx-orange)!important}
body.case-theme .arch-map,.case-theme .use-map{background:#0f100f!important;border:1px solid var(--hx-line2)!important}
body.case-theme .arch-core .core-ring,.case-theme .use-center{border-color:var(--hx-orange)!important;background:#181915!important}
body.case-theme .arch-col article,.case-theme .use-card{background:#1a1b19!important;border-color:#3a3c37!important;border-radius:2px!important}
body.case-theme .arch-col article b,.case-theme .use-card b{font-family:var(--hx-mono)!important;color:#c8c9c2!important}
body.case-theme .testing-panel{background:#171816!important;border:1px solid var(--hx-line2)!important;border-radius:2px!important}
body.case-theme input{background:#10110f!important;border:1px solid #3a3c37!important;color:#d4d4ce!important;border-radius:2px!important}
body.case-theme .form-status{font-family:var(--hx-mono)!important}
body.case-theme footer{background:#0e0f0e!important;border-top:1px solid var(--hx-line)!important;color:#686b64!important}
/* fake Houdini parameter strip on case pages */
.hx-case-strip{max-width:1180px;margin:0 auto;padding:0 0 18px;display:grid;grid-template-columns:1fr 260px;gap:1px;background:var(--hx-line);border:1px solid var(--hx-line)}
.hx-case-strip>div{background:#151614;min-height:92px;padding:11px 13px;font:9px var(--hx-mono);color:#70736c}.hx-case-strip b{display:block;color:#c7c8c1;font-size:10px;margin:4px 0 8px;font-weight:400}.hx-case-strip .orange{color:var(--hx-orange)}
/* cv */
body.cv-theme main{max-width:1180px;margin:auto}body.cv-theme .cv-wrap{border:1px solid var(--hx-line);background:#151614}body.cv-theme .cv-title,body.cv-theme h1,body.cv-theme h2,body.cv-theme h3{font-family:var(--hx-mono)!important;font-weight:500!important}body.cv-theme .cv-section{border-top:1px solid var(--hx-line)}
@media(max-width:800px){body.home-theme .hero{grid-template-columns:1fr!important}.hx-workarea{grid-template-columns:1fr}.hx-params{display:none}.hx-case-strip{grid-template-columns:1fr}.site-header{padding:0 12px!important}.nav{gap:10px!important}.nav a:nth-child(2),.nav a:nth-child(5){display:none!important}}
