:root{--bg:#f3f3f0;--ink:#0d0d0c;--mute:#5c5c56;--rule:#0d0d0c;--mark:#c6ff3d;--paper:#fff;--sans:"Bricolage Grotesque", "Avenir Next", sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--page:min(1180px, calc(100% - 2.5rem))}*,:before,:after{box-sizing:border-box}html{scroll-behavior:auto}body{min-height:100vh;color:var(--ink);background:var(--bg);font-family:var(--sans);font-optical-sizing:auto;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.05rem;line-height:1.5}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:.16em}a:hover{background:var(--mark);text-decoration:none}h1,h2,h3{letter-spacing:-.035em;margin:0;font-weight:600;line-height:.95}h1{font-size:clamp(3.2rem,8.4vw,6.4rem)}h1 em{font-style:italic;font-weight:500}h2{font-size:clamp(1.7rem,3vw,2.2rem)}h3{font-size:1.35rem;line-height:1.15}p{margin:0 0 1em}p:last-child{margin-bottom:0}ul,ol{margin:0;padding:0;list-style:none}button,input,textarea{font:inherit}.skip-link{z-index:30;background:var(--ink);color:var(--bg);padding:.4rem .65rem;position:absolute;top:-3rem;left:1rem}.skip-link:focus{top:1rem}.page{width:var(--page);margin:0 auto;padding-bottom:3.5rem}.kicker,.meta,.num,.nav-link,.wordmark,.footer-links,.site-footer{font-family:var(--mono);letter-spacing:.01em;font-size:.78rem;font-weight:400}.kicker{color:var(--mute);text-transform:uppercase;margin:0 0 1rem}.site-header,.site-footer{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.site-header{z-index:10;background:var(--bg);position:sticky;top:0}.site-header nav,.footer-links{gap:1.1rem;display:flex}.wordmark,.site-header .nav-link{font-size:.95rem}.wordmark{letter-spacing:.04em;text-transform:lowercase;text-decoration:none}.wordmark:hover,.nav-link:hover{background:var(--mark)}.site-footer span{color:var(--mute)}.nav-link,.wordmark{border-radius:0;margin:-.15rem -.28rem;padding:.15rem .28rem}.nav-link{color:var(--mute);text-decoration:none}.nav-link.is-active{color:var(--ink);background:var(--mark)}.site-footer{border-bottom:0;border-top:1px solid var(--rule);color:var(--mute);margin-top:4.5rem}.hero{border-bottom:1px solid var(--rule);grid-template-columns:1fr minmax(16rem,22rem);gap:2rem 3rem;padding:2.8rem 0 3.2rem;display:grid}.hero.compact{padding-top:2.2rem}.hero h1{grid-column:1}.hero-body{color:var(--ink);grid-column:2;align-self:end;font-size:1.08rem}.hero-links{align-items:center;gap:1.1rem;margin-top:1.4rem;display:flex}.button{border:1px solid var(--rule);min-height:2.4rem;color:var(--ink);cursor:pointer;background:0 0;align-items:center;padding:.45rem .8rem;text-decoration:none;display:inline-flex}.button:hover{background:var(--mark)}.button:disabled{opacity:.55;cursor:wait}.text-link{font-family:var(--mono);font-size:.78rem}.section-head{flex-direction:column;gap:.55rem;margin:2.4rem 0 1.4rem;display:flex}.work-list{display:grid}.work-row{border-top:1px solid var(--rule);color:inherit;grid-template-columns:3rem 1fr minmax(14rem,38%);align-items:start;gap:1.2rem 1.5rem;padding:1.3rem 0;text-decoration:none;display:grid}.work-row:hover{background:0 0}.work-row:hover h3{background:var(--mark)}.work-copy{max-width:34rem}.work-title-row{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.45rem;display:flex}.work-copy p{color:var(--mute)}.work-media{background:#dddcd6;min-height:160px;overflow:hidden}.work-media img{object-fit:cover;filter:saturate(.86);width:100%;height:100%;min-height:180px}.work-row:hover .work-media img{filter:none}.about section{border-top:1px solid var(--rule)}.expertise-run{max-width:48rem;margin-bottom:0;padding-bottom:3.2rem;font-size:1.2rem;line-height:1.7}.history{display:grid}.history li{border-top:1px solid color-mix(in srgb, var(--rule) 22%, transparent);grid-template-columns:9.5rem 1fr 16rem;align-items:baseline;gap:1rem;padding:1rem 0;display:grid}.history h3{letter-spacing:-.02em;font-size:1.15rem}.company{font-style:italic;font-weight:400}.company a{font-style:italic}.history .meta{margin:0}.contact-block{grid-template-columns:.9fr 1.1fr;gap:2.5rem;padding:2rem 0 .4rem;display:grid}.contact-form{gap:.85rem;display:grid}.contact-form label{font-family:var(--mono);gap:.3rem;font-size:.78rem;display:grid}.contact-form input,.contact-form textarea{border:1px solid var(--rule);background:var(--paper);width:100%;color:var(--ink);border-radius:0;padding:.7rem .75rem}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--ink);outline-offset:2px}.honeypot{position:absolute;left:-9999px}.form-error{color:#9a1c12}.case-hero-image,.case-gallery figure{background:#dddcd6;margin:0}.case h1{font-size:clamp(2.6rem,6.5vw,4.5rem);line-height:.98}.case-hero-image{margin-top:1.6rem}.case-hero-image img,.case-gallery img{width:100%}.case-prose{max-width:38rem;margin-top:2.2rem;font-size:1.12rem}.result{font-family:var(--sans);letter-spacing:-.03em;border:none;margin-top:1.8rem;padding:0;font-size:1.28rem;font-weight:600;line-height:1.35}.result .kicker{margin:0 0 .55rem;display:block}.case-gallery{gap:.7rem;margin-top:2rem;display:grid}.more-work{border-top:1px solid var(--rule);margin-top:3.2rem;padding-top:1.4rem}.more-work h2{margin-bottom:1rem}.more-work a{border-top:1px solid color-mix(in srgb, var(--rule) 22%, transparent);grid-template-columns:3rem 1fr auto;gap:1rem;padding:.95rem 0;text-decoration:none;display:grid}.more-work a:hover{background:0 0}.more-work a:hover span:nth-child(2){background:var(--mark)}@media (width<=860px){:root{--page:min(1180px, calc(100% - 1.4rem))}.hero,.work-row,.history li,.contact-block,.more-work a{grid-template-columns:1fr}.hero h1,.hero-body{grid-column:1}.work-row{gap:.7rem}h1{font-size:clamp(2.6rem,13vw,4rem)}.hero-body{font-size:1rem}}
