:root{--paper:#f4f6f8;--ink:#172337;--muted:#5d6e89;--line:#cfd8e5;--accent:#ffd21f;--accent-ink:#19243a;--signal-blue:#4a79e9;--signal-coral:#ed7e65;--signal-mint:#5ac5a8;color:var(--ink);background:var(--paper);font-family:Avenir Next,Avenir,Helvetica Neue,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);font-kerning:normal;min-width:320px;margin:0}a{color:inherit}.skip-link{z-index:10;background:var(--ink);color:#fff;padding:.65rem .8rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header,main,footer{width:min(100% - 2.5rem,1180px);margin-inline:auto}.site-header{justify-content:space-between;align-items:center;gap:1.5rem;padding:1.35rem 0;display:flex}.brand{align-items:center;gap:.6rem;min-height:2.75rem;font-size:.94rem;font-weight:750;text-decoration:none;display:inline-flex}.brand span{background:var(--accent);letter-spacing:.04em;place-items:center;width:2rem;height:2rem;font-size:.72rem;display:grid}nav{flex-wrap:wrap;justify-content:flex-end;gap:1.15rem;display:flex}nav a{min-height:2.75rem;color:var(--muted);align-items:center;font-size:.88rem;text-decoration:none;display:inline-flex}nav a:hover,nav a:focus-visible{color:var(--ink);text-underline-offset:.25rem;text-decoration:underline}.hero{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.58fr);align-items:end;gap:clamp(2rem,6vw,6.5rem);padding:clamp(3.5rem,7vw,5.5rem) 0 clamp(4rem,8vw,6.5rem);display:grid}.kicker,.section-label{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.76rem;font-weight:750}.hero h1{letter-spacing:-.052em;max-width:12ch;margin:0;font-size:clamp(3rem,7.2vw,6.55rem);line-height:.94}.hero-note{max-width:38rem;color:var(--muted);margin-top:clamp(2rem,4vw,3.25rem);line-height:1.6}.hero-note p{margin:0}.project-link{background:var(--accent);min-height:2.75rem;color:var(--accent-ink);align-items:center;gap:.65rem;margin-top:1.5rem;padding:.8rem 1rem;font-size:.92rem;font-weight:750;text-decoration:none;display:inline-flex}.project-link span{transition:transform .18s cubic-bezier(.25,1,.5,1)}.project-link:hover,.project-link:focus-visible{background:var(--ink);color:var(--paper)}.project-link:hover span,.project-link:focus-visible span{transform:translate(.16rem,-.16rem)}.project-map{border-top:2px solid var(--ink);min-width:0;padding:1rem 0 0;position:relative}.map-label{letter-spacing:.11em;text-transform:uppercase;margin:0 0 1rem;font-size:.76rem;font-weight:750}.map-board{background-color:#e6ebf2;background-image:linear-gradient(#cbd5e4 1px,#0000 1px),linear-gradient(90deg,#cbd5e4 1px,#0000 1px);background-size:1.25rem 1.25rem;grid-template-rows:.9fr .9fr 1fr;grid-template-columns:repeat(6,1fr);min-height:18rem;padding:1.15rem;display:grid;position:relative;overflow:hidden}.map-observe,.map-diagnose,.map-propose,.map-scope,.map-code,.map-test,.map-docs{z-index:1;border:2px solid var(--ink);background:var(--paper);align-content:center;gap:.2rem;min-width:0;padding:.5rem;line-height:1.18;display:grid;position:relative}.map-observe span,.map-code span{letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:750}.map-observe strong,.map-code strong{letter-spacing:-.02em;font-size:clamp(.78rem,1.25vw,.96rem)}.map-observe em{color:var(--muted);font-size:.61rem;font-style:normal;line-height:1.25}.map-diagnose span,.map-propose span,.map-scope span,.map-test span,.map-docs span{color:var(--muted);font-size:.6rem;line-height:1.25}.map-diagnose strong,.map-propose strong,.map-scope strong,.map-test strong,.map-docs strong{font-size:.7rem}.map-observe{background:var(--accent);grid-area:1/1/auto/3}.map-diagnose{background:#ffe6d9;grid-area:1/4/auto/7}.map-propose{background:#f3eaff;grid-area:2/1/auto/3;align-self:center}.map-scope{background:#ddf4ec;grid-area:2/4/auto/7;align-self:center}.map-code{background:var(--signal-blue);color:#fff;grid-area:3/3/auto/5;align-self:end}.map-test{background:#f8fbff;grid-area:3/1/auto/3;align-self:end}.map-docs{background:#ffe6d9;grid-area:3/5/auto/7;align-self:end}.map-connector{z-index:0;transform-origin:0;background:var(--ink);height:2px;display:block;position:absolute}.connector-observe{width:22%;top:21%;left:32%;transform:rotate(29deg)}.connector-diagnose{width:21%;top:25%;left:68%;transform:rotate(146deg)}.connector-propose{width:22%;top:54%;left:25%;transform:rotate(31deg)}.connector-scope{width:21%;top:55%;left:60%;transform:rotate(147deg)}.connector-test{width:19%;top:78%;left:29%;transform:rotate(-31deg)}.connector-docs{width:20%;top:80%;left:56%;transform:rotate(30deg)}.statement{z-index:0;color:var(--paper);grid-template-columns:minmax(11rem,.45fr) minmax(0,1fr) minmax(0,.8fr);gap:2rem;padding:clamp(3.5rem,7vw,6.75rem) 0;display:grid;position:relative}.statement:before{z-index:-1;background:var(--ink);content:"";position:absolute;inset:0 calc(-50vw + 50%)}.statement .section-label{color:var(--accent)}.statement h2{color:var(--paper)}.statement h2,.section-head h2,.working-style h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.85rem,3.3vw,3.35rem);line-height:1.03}.statement div{color:#d5ddea;line-height:1.6}.statement p{margin:0 0 1rem}.starting-point{padding:clamp(3.5rem,7vw,6.75rem) 0}.intake-switcher{border-top:1px solid var(--line);grid-template-columns:minmax(12rem,.45fr) minmax(0,1fr);gap:2rem;padding-top:2rem;display:grid}.intake-options{flex-wrap:wrap;align-content:flex-start;gap:.5rem;display:flex}.intake-options button{border:1px solid var(--line);min-height:2.75rem;color:var(--muted);font:inherit;cursor:pointer;background:0 0;padding:.55rem .7rem;font-size:.88rem;font-weight:750}.intake-options button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.intake-options button:hover,.intake-options button:focus-visible{border-color:var(--ink);color:var(--ink)}.intake-options button[aria-pressed=true]:hover,.intake-options button[aria-pressed=true]:focus-visible{background:var(--accent);color:var(--accent-ink)}.intake-switcher>p{letter-spacing:-.025em;max-width:43rem;margin:0;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.35}.section-head{grid-template-columns:minmax(11rem,.45fr) minmax(0,1fr);gap:2rem;margin-bottom:3rem;display:grid}.case-studies{padding:clamp(3.5rem,7vw,6.75rem) 0}.case-studies>.section-label{margin-bottom:1.25rem}.case-study-list{border-top:1px solid var(--line)}.case-study{border-bottom:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr);gap:1.25rem;padding:2rem 0 2.25rem;display:grid}.case-number{color:var(--muted);margin:0;font-size:.8rem;font-weight:750}.case-study-content{min-width:0}.case-study h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2.4vw,2rem)}.case-study dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin:1.5rem 0 0;display:grid}.case-study dl div{min-width:0}.case-study dt{letter-spacing:.09em;text-transform:uppercase;margin-bottom:.55rem;font-size:.78rem;font-weight:750}.case-study dd{color:var(--muted);margin:0;line-height:1.6}.writing{padding:clamp(3.5rem,7vw,6.75rem) 0}.writing-grid{grid-template-columns:minmax(0,.9fr) minmax(18rem,.7fr);align-items:end;gap:2rem;display:grid}.writing h2{letter-spacing:-.045em;max-width:15ch;margin:0;font-size:clamp(1.85rem,3.3vw,3.35rem);line-height:1.03}.writing-link{background:var(--accent);min-height:10rem;color:var(--accent-ink);grid-template-columns:1fr auto;align-content:space-between;gap:1.3rem;padding:1.25rem;text-decoration:none;transition:background .2s cubic-bezier(.25,1,.5,1),color .2s cubic-bezier(.25,1,.5,1);display:grid}.writing-link>span:first-child{letter-spacing:.09em;text-transform:uppercase;font-size:.78rem;font-weight:750}.writing-link strong{letter-spacing:-.035em;grid-column:1;font-size:clamp(1.35rem,2vw,1.85rem)}.writing-link>span:last-child{grid-area:2/2;align-self:end;font-size:1.3rem;transition:transform .18s cubic-bezier(.25,1,.5,1)}.writing-link:hover,.writing-link:focus-visible{background:var(--ink);color:var(--paper)}.writing-link:hover>span:last-child,.writing-link:focus-visible>span:last-child{transform:translate(.16rem,-.16rem)}.working-style{grid-template-columns:minmax(11rem,.45fr) minmax(0,1fr);gap:2rem;padding:clamp(3.5rem,7vw,6.75rem) 0;display:grid}.working-style h2{grid-column:2;max-width:19ch}.working-points{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 2.25rem;margin-top:1.5rem;display:grid}.working-points p{color:var(--muted);margin:0;line-height:1.55}.working-points strong{color:var(--ink);margin-bottom:.55rem;font-size:.92rem;display:block}.tools{border-top:1px solid var(--line);grid-template-columns:minmax(11rem,.45fr) minmax(0,1fr);gap:2rem;padding:2rem 0;display:grid}.tools>p{color:var(--muted);margin:0;font-size:.82rem;font-weight:750}.tools ul{flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.tools li{border:1px solid var(--line);padding:.45rem .65rem;font-size:.84rem}footer{color:var(--muted);justify-content:space-between;gap:1rem;padding:2.25rem 0 3rem;font-size:.86rem;display:flex}footer span{color:var(--ink);font-weight:750}@media (prefers-reduced-motion:no-preference){.hero-copy>.kicker,.hero-copy>h1,.hero-copy>.hero-note,.hero-copy>.project-link,.project-map{animation:.62s cubic-bezier(.22,1,.36,1) both hero-enter}.hero-copy>h1{animation-delay:80ms}.hero-copy>.hero-note{animation-delay:.16s}.hero-copy>.project-link{animation-delay:.24s}.project-map{animation-delay:.26s}.reveal-ready [data-reveal]{opacity:0;transition:opacity .48s cubic-bezier(.25,1,.5,1),transform .48s cubic-bezier(.25,1,.5,1);transform:translateY(1.5rem)}.reveal-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}}@keyframes hero-enter{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.site-header{align-items:flex-start}nav{gap:.7rem 1rem}.hero h1{font-size:clamp(3.05rem,15vw,4.5rem)}.hero,.statement,.section-head,.intake-switcher,.writing-grid,.working-style,.tools{grid-template-columns:1fr;gap:1.15rem}.project-map{width:min(100%,28rem);margin-top:1.25rem}.statement h2,.working-style h2,.working-points{grid-column:auto}.section-head{margin-bottom:2rem}.working-points{grid-template-columns:1fr;gap:1.5rem;margin-top:.5rem}.case-study dl{grid-template-columns:1fr;gap:1.5rem}}@media (width<=480px){.site-header,main,footer{width:min(100% - 2rem,1180px)}.site-header{display:block}nav{justify-content:flex-start;margin-top:1rem}.hero{padding-top:3.25rem}.hero-note{margin-top:1.75rem;font-size:1rem;line-height:1.55}.project-map{width:100%;margin-top:1rem}.map-board{background-size:1rem 1rem;grid-template-rows:repeat(4,minmax(4.15rem,auto));grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;min-height:0;padding:.7rem}.map-observe,.map-diagnose,.map-propose,.map-scope,.map-code,.map-test,.map-docs{grid-area:auto;align-self:stretch;padding:.55rem}.map-observe{grid-area:1/1}.map-diagnose{grid-area:1/2}.map-propose{grid-area:2/1}.map-scope{grid-area:2/2}.map-test{grid-area:3/1}.map-code{grid-area:3/2}.map-docs{grid-area:4/1/auto/-1}.map-connector{display:none}.map-diagnose strong,.map-propose strong,.map-scope strong,.map-test strong,.map-docs strong{font-size:.75rem}.map-diagnose span,.map-propose span,.map-scope span,.map-test span,.map-docs span,.map-observe em{font-size:.66rem}.intake-options{grid-template-columns:1fr;width:100%;display:grid}.intake-options button{text-align:left;width:100%;padding-inline:.85rem}.intake-switcher>p{font-size:1.18rem;line-height:1.4}.case-study{grid-template-columns:2.2rem minmax(0,1fr);gap:.75rem}footer{display:block}footer a{margin-top:.55rem;display:inline-block}}
