:root{--ink:#13151b;--raised:#191c24;--paper:#ece8de;--muted:#b0ac9f;--signal:#e2984a;--rule:#373c4a;--sans:'Space Grotesk',Arial,sans-serif;--serif:'Fraunces',Georgia,serif;--mono:'IBM Plex Mono',monospace;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--ink);color:var(--paper);font:400 1rem/1.65 var(--sans)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.25em;text-decoration-color:#82735c}a:hover{color:var(--signal)}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--signal);outline-offset:5px}::selection{background:var(--signal);color:var(--ink)}h1,h2,h3,p,ul,ol,dl,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13}h1{font-size:clamp(2.6rem,5.4vw,4.9rem);letter-spacing:-.04em}h2{font-size:clamp(1.85rem,3vw,2.8rem);letter-spacing:-.025em}h3{font-size:1.5rem}p+p{margin-top:1rem}p,li{overflow-wrap:break-word}.shell{max-width:1280px;width:100%;margin-inline:auto;padding-inline:clamp(1.25rem,4.5vw,3.5rem)}.eyebrow{font:400 .75rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--signal)}.meta,.muted,figcaption{color:var(--muted)}.meta{font-size:.8125rem}.lead{font-size:clamp(1.125rem,1.65vw,1.375rem);line-height:1.6;max-width:48rem;color:var(--muted)}.sr{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden}.skip{position:fixed;top:.5rem;left:1rem;z-index:100;background:var(--signal);color:var(--ink);padding:.7rem 1rem;transform:translateY(-200%)}.skip:focus{transform:none}
.site-head{position:sticky;top:0;z-index:40;background:rgba(19,21,27,.97);border-bottom:1px solid var(--rule)}.head-inner{min-height:5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.wordmark{display:flex;flex-direction:column;text-decoration:none;line-height:1.25;padding:.5rem 0}.wordmark b{font:400 1.25rem var(--serif)}.wordmark span{font:400 .75rem var(--mono);color:var(--muted);margin-top:.35rem}.site-nav ul{display:flex;gap:.25rem;list-style:none;padding:0}.site-nav a{display:block;text-decoration:none;font-size:.875rem;padding:.7rem .85rem}.site-nav a[aria-current]{color:var(--signal);border-bottom:1px solid var(--signal)}.nav-toggle{border:1px solid var(--rule);padding:.6rem .9rem;min-height:44px;background:transparent;color:var(--paper);border-radius:4px}.nav-toggle[hidden]{display:none}.site-foot{margin-top:2rem;border-top:1px solid var(--rule);padding:2.5rem 0;background:#101217}.foot-inner{display:flex;justify-content:space-between;align-items:center;gap:2rem}.foot-inner b{font:400 1.3rem var(--serif)}.foot-inner span{font-size:.875rem}.foot-inner>div{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.875rem}
.home-hero{display:grid;grid-template-columns:1.7fr 1fr;gap:5rem;align-items:center;padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:3.5rem}.home-hero h1{margin:1.2rem 0 1.5rem;font-size:clamp(2.5rem,4.6vw,4.3rem)}.home-hero h1 em{font-style:normal;color:var(--signal)}.home-hero .lead{font-size:1.125rem;max-width:38rem}.hero-detail{font-size:.9375rem;color:var(--muted);margin-top:1rem}.status-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:var(--signal);margin-right:.5rem}.hero-note{border-left:1px solid var(--rule);padding-left:2.25rem}.hero-note>p{font:400 2rem/1.25 var(--serif);margin:1.1rem 0}.hero-note ul{padding:0;list-style:none;color:var(--muted);margin-bottom:1.4rem}.hero-note li{border-bottom:1px solid var(--rule);padding:.75rem 0;font-size:.9375rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin:1.5rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.25rem;border:1px solid #545762;border-radius:3px;text-decoration:none;font-size:.9375rem;background:transparent;color:var(--paper);cursor:pointer}.btn:hover{border-color:var(--signal)}.btn.solid{background:var(--signal);color:var(--ink);border-color:var(--signal)}.btn.solid:hover{background:#efad67}
.section{padding-block:3.5rem;border-top:1px solid var(--rule)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.8rem}.section-title h2{margin-top:.6rem}.section-title>a{white-space:nowrap;font-size:.9375rem}.section-intro{max-width:46rem;color:var(--muted);margin-bottom:2rem}.work-grid,.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.work-card,.demo-card{min-width:0;border:1px solid var(--rule);background:var(--raised);border-radius:6px;overflow:hidden}.preview{display:block;overflow:hidden;border-bottom:1px solid var(--rule);background:#0a0d12}.preview img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;transition:transform .25s}.preview:hover img{transform:scale(1.015)}.card-copy{padding:1.5rem}.card-copy h3{margin:.55rem 0 .75rem;font-size:1.85rem}.card-copy h3 a{display:flex;justify-content:space-between;text-decoration:none}.card-copy h3 span{color:var(--signal);font-family:var(--sans);font-size:1.3rem}.card-copy>p:not(.eyebrow){color:var(--muted)}.card-copy .meta{margin-top:1rem}.card-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:1.5rem;font-size:.875rem}.demo-grid .card-copy h3{font-size:1.6rem}.text-link{display:inline-block;margin-top:1rem;font-size:.9375rem}.closing{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:3.5rem;border-top:1px solid var(--rule)}.closing h2{margin:.7rem 0}.closing p:not(.eyebrow){color:var(--muted)}.closing .btn{flex-shrink:0}
.page-head{padding-top:3rem;padding-bottom:2rem}.page-head h1{margin:1rem 0 1.3rem}.jump{display:flex;gap:1.5rem;flex-wrap:wrap;padding-bottom:2rem}.jump a{font-size:.9375rem}.fact-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:1.5rem 0;margin:2rem 0;border-block:1px solid var(--rule)}dt{font:.75rem var(--mono);color:var(--signal);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.6rem}dd{margin:0;font-size:.9375rem}.evidence{margin:2rem 0}.evidence>a{display:block;border:1px solid var(--rule);border-radius:5px;overflow:hidden}.evidence img{width:100%}.evidence figcaption{font-size:.8125rem;margin:.75rem 0;max-width:52rem}.case-layout{display:grid;grid-template-columns:13rem minmax(0,1fr);gap:3.5rem;margin:3rem 0}.case-layout aside{position:sticky;top:7rem;align-self:start}.case-layout aside a{display:block;margin:.9rem 0;font-size:.875rem}.case-content{min-width:0;max-width:53rem}.case-content section{border-top:1px solid var(--rule);padding:2.25rem 0}.case-content h2{margin-bottom:1.2rem}.case-content h3{font-family:var(--sans);font-size:1.125rem;margin:1.5rem 0 .6rem}.case-content p{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem;margin:1.5rem 0}.detail-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid>div{border-top:1px solid var(--rule);padding-top:1rem}.detail-grid h3{font:500 1.125rem/1.4 var(--sans);margin:0 0 .65rem}.detail-grid p{color:var(--muted)}.system-flow{list-style:none;padding:0;margin:1.5rem 0;border:1px solid var(--rule);border-radius:4px;background:var(--raised);counter-reset:layer}.system-flow li{counter-increment:layer;padding:1.1rem 1.25rem 1.1rem 3.7rem;position:relative;border-bottom:1px solid var(--rule)}.system-flow li:last-child{border-bottom:0}.system-flow li:before{content:'0' counter(layer);position:absolute;left:1.2rem;top:1.25rem;font:.8125rem var(--mono);color:var(--signal)}.system-flow b{display:block;font-weight:500}.system-flow span{display:block;color:var(--muted);font-size:.875rem}.product-list article{padding:1rem 0;border-bottom:1px solid var(--rule)}.product-list article h3{margin:0 0 .4rem}.release-list{padding:0;list-style:none;margin:1.5rem 0}.release-list li{padding:1rem 0;border-bottom:1px solid var(--rule);display:flex;gap:1.2rem;font-size:.9375rem}.release-list time{min-width:8rem;color:var(--signal)}
.about-layout{display:grid;grid-template-columns:1fr 2fr;gap:4rem}.about-monogram{align-self:start;padding:3rem 1.5rem;border:1px solid var(--rule);font:400 6rem var(--serif);color:var(--signal);text-align:center}.about-monogram span{display:block;font:.75rem var(--mono);margin-top:1rem;color:var(--muted)}.prose{max-width:44rem}.prose h2{margin-bottom:1.3rem}.prose p{color:var(--muted)}.prose p+h2{margin-top:2.8rem}.resume-entry{max-width:55rem;padding:2rem 0;border-bottom:1px solid var(--rule)}.resume-entry h3{margin:.7rem 0 1rem}.resume-entry ul{padding-left:1.2rem;color:var(--muted);margin-bottom:1rem}.resume-entry li{margin:.5rem 0}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;padding-bottom:3rem}.contact-item{padding:1.5rem 0;border-top:1px solid var(--rule)}.contact-item h2{font:500 1rem var(--sans);margin-bottom:.6rem}.contact-item p{color:var(--muted)}.contact-email{overflow-wrap:anywhere;font-size:1.1rem}.text-button{display:block;color:var(--signal);border:0;background:none;cursor:pointer;text-decoration:underline;text-underline-offset:.2em;padding:.7rem 0;min-height:44px;font-size:.875rem}.brief-form{padding:2rem;border:1px solid var(--rule);background:var(--raised);border-radius:5px}.brief-form h2{font-size:1.8rem;margin-bottom:.8rem}.brief-form>p{color:var(--muted);font-size:.875rem}.brief-form label{display:block;font-size:.9375rem;margin:1.1rem 0 .4rem}.brief-form input,.brief-form textarea,.brief-form select{display:block;width:100%;padding:.7rem;background:#11141b;color:var(--paper);border:1px solid #606471;border-radius:3px;min-height:46px}.brief-form textarea{resize:vertical}.brief-form .btn{margin-top:1.3rem;width:100%}
@media(max-width:900px){.home-hero{gap:2rem;grid-template-columns:1.5fr 1fr}.case-layout{grid-template-columns:1fr;gap:1rem}.case-layout aside{position:static;display:flex;flex-wrap:wrap;gap:.5rem 1.2rem}.case-layout aside .eyebrow{width:100%}.case-layout aside a{margin:0}.contact-layout{gap:2rem}.about-layout{gap:2rem}.detail-grid.three{grid-template-columns:1fr}}
@media(max-width:700px){.head-inner{flex-wrap:wrap;gap:0;min-height:4.5rem;padding-block:.6rem}.wordmark b{font-size:1.125rem}.nav-toggle:not([hidden]){display:block}.site-nav{width:100%}.site-nav ul{flex-wrap:wrap}.site-nav a{padding:.6rem .65rem}.js-nav .site-nav{display:none}.js-nav .site-nav.is-open{display:block}.js-nav .site-nav ul{display:block;padding-top:.5rem}.js-nav .site-nav a{padding:.8rem 0}.home-hero{display:block;padding-top:2rem;padding-bottom:2rem}.home-hero h1{font-size:clamp(2.3rem,8.3vw,3.5rem)}.hero-note{display:none}.actions{gap:.65rem}.actions .btn{flex:1 1 auto}.work-grid,.demo-grid{grid-template-columns:1fr;gap:1.5rem}.section{padding-block:2rem}.section-title{align-items:start;flex-direction:column}.section-title>a{margin-top:.4rem}.card-copy{padding:1.2rem}.closing{display:block;padding-block:2.5rem}.closing .btn{margin-top:1.5rem}.fact-strip{grid-template-columns:1fr;gap:1rem}.fact-strip>div+div{padding-top:1rem;border-top:1px solid var(--rule)}.page-head{padding-top:2rem}.page-head h1{font-size:2.7rem}.case-content section{padding:1.75rem 0}.detail-grid{grid-template-columns:1fr}.release-list li{display:block}.release-list time{display:block;margin-bottom:.4rem}.about-layout,.contact-layout{grid-template-columns:1fr}.about-monogram{display:none}.contact-layout{gap:1.5rem}.brief-form{padding:1.2rem}.foot-inner{display:block}.foot-inner>div{margin-top:1.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body{background:white;color:#111;font:11pt/1.5 Arial,sans-serif}.site-head,.site-foot,.skip,.actions,.closing,.text-button{display:none}.shell{padding:0;max-width:none}.section{padding:16px 0;border-color:#aaa}.page-head{padding:0}.page-head h1{font-size:28pt}h2{font-size:19pt}h3{font-size:14pt}.muted,.meta,.lead,.eyebrow,p,li{color:#333!important}a{color:#111;text-decoration:none}.resume-entry{break-inside:avoid;padding:12px 0}.detail-grid.three{display:block}.detail-grid>div{break-inside:avoid}}

@media(min-width:701px){.home-hero{padding-top:2rem;padding-bottom:2rem;gap:4rem}.home-hero h1{font-size:clamp(2.5rem,4.2vw,3.6rem);margin:.8rem 0 1rem}.home-hero .actions{margin-bottom:0}.hero-note>p{font-size:1.8rem}.hero-note li{padding:.5rem 0}}
