:root{--background:#f8f9fa;--surface:#fff;--ink:#11130f;--muted:#626860;--line:#b9beb8;--green:#ecf39e;--green-strong:#dce88c;--red:#c1121f;--mono:"IBM Plex Mono", "Courier New", monospace;--sans:Inter, Arial, Helvetica, sans-serif;color:var(--ink);background:var(--background);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:980px;min-height:100vh;margin:0}button,a{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent}button{border:0}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:3px}p,h1,h2,h3{margin:0}::selection{color:var(--ink);background:var(--green)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.app-shell{border-inline:1px solid var(--line);background:var(--background);width:min(1480px,100% - 72px);margin:0 auto}.section-frame{padding-inline:clamp(44px,6vw,96px)}.mono-label,.kicker{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;line-height:1.4}.kicker{color:var(--red)}.site-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:78px;padding:0 28px;display:grid}.brand{width:fit-content;font-family:var(--mono);font-size:1rem;font-weight:700;text-decoration:none}.brand span{color:var(--red)}.site-header nav{height:100%;display:flex}.site-header nav a{border-inline-start:1px solid var(--line);min-width:92px;font:600 .72rem/1 var(--mono);text-transform:uppercase;place-items:center;padding:0 20px;text-decoration:none;display:grid}.site-header nav a:last-child{border-inline-end:1px solid var(--line)}.site-header nav a:hover,.site-header nav a:focus-visible{background:var(--green)}.header-status{color:var(--muted);font:.68rem/1 var(--mono);text-transform:uppercase;justify-self:end;align-items:center;gap:9px;text-decoration:none;display:flex}.header-status span{background:var(--green-strong);border:1px solid var(--ink);width:8px;height:8px}.hero-section{border-bottom:1px solid var(--line);grid-template-rows:1fr auto;min-height:790px;display:grid;position:relative}.hero-copy{align-self:center;max-width:1180px}.hero-index{color:var(--muted);margin-bottom:18px}.hero-copy h1{letter-spacing:-.065em;max-width:1160px;margin:24px 0 32px;font-size:clamp(3.6rem,6vw,7rem);font-weight:500;line-height:.95}.hero-summary{max-width:620px;color:var(--muted);font-size:1.05rem;line-height:1.7}.square-link{border:1px solid var(--ink);background:var(--surface);width:fit-content;height:48px;font:700 .72rem/1 var(--mono);text-transform:uppercase;align-self:end;align-items:center;gap:24px;margin-bottom:58px;padding:0 18px;text-decoration:none;display:inline-flex}.square-link:hover{background:var(--green)}.square-link span{color:var(--red)}.projects-section,.about-section,.media-section{border-bottom:1px solid var(--line);padding-block:132px}.section-heading{grid-template-columns:76px minmax(0,1fr) minmax(280px,.6fr);align-items:end;gap:34px;margin-bottom:64px;display:grid}.section-index{color:var(--red);align-self:start;padding-top:5px}.section-heading h2{letter-spacing:-.06em;max-width:720px;margin-top:14px;font-size:clamp(2.8rem,5vw,5.4rem);font-weight:500;line-height:.98}.section-description{max-width:430px;color:var(--muted);justify-self:end;line-height:1.65}.ascii-grid{border:1px solid var(--ink);background:var(--background);min-height:750px;padding:72px 54px 60px;position:relative;overflow:hidden}.ascii-canvas{pointer-events:none;position:absolute;inset:0}.grid-readout{z-index:1;color:var(--muted);justify-content:space-between;display:flex;position:absolute;top:18px;left:18px;right:18px}.project-card-grid{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:34px;display:grid;position:relative}.ascii-card{border:1px solid var(--ink);background:var(--surface);box-shadow:10px 10px 0 color-mix(in srgb, var(--ink), transparent 86%);transition:box-shadow .14s,transform .14s}.ascii-card:nth-child(2){margin-top:92px}.ascii-card:nth-child(3){margin-top:28px}.ascii-card:hover{box-shadow:14px 14px 0 var(--green);transform:translate(-2px,-2px)}.ascii-card.is-expanded{box-shadow:14px 14px 0 var(--green);order:-1;grid-column:1/-1;grid-template-columns:minmax(320px,.7fr) minmax(440px,1.3fr);margin:0;display:grid}.card-toggle{width:100%;min-height:290px;color:var(--ink);background:var(--surface);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;padding:28px;display:flex}.is-expanded .card-toggle{border-right:1px solid var(--ink);background:var(--green);min-height:360px}.card-status{color:var(--red);border:1px solid var(--red);padding:5px 8px}.card-index{color:var(--muted);margin-top:12px}.card-toggle strong{letter-spacing:-.045em;margin:34px 0 12px;font-size:clamp(1.55rem,2.5vw,2.5rem);line-height:1}.card-stack{color:var(--red);font:.68rem/1.5 var(--mono)}.card-summary{color:var(--muted);margin-top:24px;font-size:.88rem;line-height:1.6}.card-command{color:var(--ink);margin-top:auto;padding-top:28px}.card-details{background:var(--surface);grid-template-rows:1fr auto;grid-template-columns:1fr .8fr;gap:36px;min-height:360px;padding:36px;display:grid}.detail-copy>p:last-child{max-width:590px;color:var(--muted);margin-top:18px;font-size:1rem;line-height:1.75}.card-details dl{margin:0}.card-details dl div{border-bottom:1px solid var(--line);padding:14px 0}.card-details dt{color:var(--muted);font:.65rem/1 var(--mono);text-transform:uppercase}.card-details dd{font:.72rem/1.4 var(--mono);overflow-wrap:anywhere;margin:8px 0 0}.card-actions{grid-column:1/-1;gap:12px;display:flex}.card-actions a{border:1px solid var(--ink);min-height:44px;font:700 .68rem/1 var(--mono);text-transform:uppercase;align-items:center;padding:0 16px;text-decoration:none;display:inline-flex}.card-actions a:hover{background:var(--green)}.card-actions .primary-action{color:var(--surface);background:var(--red);border-color:var(--red)}.card-actions .primary-action:hover{color:var(--ink)}.grid-instruction{z-index:1;color:var(--muted);position:absolute;bottom:16px;left:18px}.about-section .section-heading,.media-section .section-heading{margin-bottom:0}.site-footer{justify-content:space-between;align-items:center;min-height:210px;display:flex}.site-footer>div>p:last-child{color:var(--muted);margin-top:12px}.site-footer nav{gap:30px;display:flex}.site-footer a{font:700 .7rem/1 var(--mono);text-transform:uppercase;text-decoration:none}.site-footer a:hover{color:var(--red)}@media (width<=1150px){.app-shell{width:calc(100% - 40px)}.section-frame{padding-inline:40px}.header-status{display:none}.site-header{grid-template-columns:1fr auto}.project-card-grid{gap:20px}.ascii-grid{padding-inline:30px}}
