@font-face{font-family:"Manrope";src:url("fonts/manrope-variable.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}@font-face{font-family:"Newsreader";src:url("fonts/newsreader-variable.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}@font-face{font-family:"Newsreader";src:url("fonts/newsreader-italic-variable.ttf") format("truetype");font-style:italic;font-weight:200 800;font-display:swap}@font-face{font-family:"DM Mono";src:url("fonts/dm-mono-light.ttf") format("truetype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:"DM Mono";src:url("fonts/dm-mono-regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f3f0e9;--ink:#17221d;--muted:#647068;--accent:#dd5c3f;--line:rgba(23,34,29,.18);--serif:"Newsreader",Georgia,serif;--sans:"Manrope",Arial,sans-serif;--mono:"DM Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;left:1rem;top:-5rem;background:var(--ink);color:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;height:84px;padding:0 clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;background:rgba(243,240,233,.88);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:transform .3s}.site-header.header-hidden{transform:translateY(-100%)}.brand{font-family:var(--serif);font-size:2rem;font-weight:500}.brand span{color:var(--accent)}.navigation{display:flex;gap:clamp(18px,2.5vw,42px);font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.navigation a{position:relative}.navigation a:after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .25s}.navigation a:hover:after{transform:scaleX(1);transform-origin:left}.menu-button{display:none}.hero{position:relative;min-height:100svh;padding:145px clamp(24px,8vw,130px) 60px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero-kicker,.eyebrow{font-family:var(--mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase}.hero h1{position:relative;z-index:1;margin:1rem 0;font-family:var(--serif);font-weight:400;font-size:clamp(5rem,13vw,12rem);line-height:.73;letter-spacing:-.065em}.hero h1 em,.section-heading em,.closing em{font-weight:400;color:var(--accent)}.hero-bottom{position:relative;z-index:2;margin-left:auto;width:min(520px,100%);display:flex;align-items:flex-end;gap:40px}.hero-bottom p{font-size:clamp(1rem,1.5vw,1.25rem);margin:0}.round-link{flex:0 0 54px;width:54px;height:54px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:1.4rem;transition:.2s}.round-link:hover{color:var(--paper);background:var(--ink);transform:translateY(3px)}.hero-mark{position:absolute;right:-2vw;top:2vh;font:400 min(70vw,900px)/1 var(--serif);color:rgba(23,34,29,.035)}.margin-note{position:absolute;right:4vw;top:34%;font:300 .68rem/1.6 var(--mono);transform:rotate(4deg)}.section-pad{padding:clamp(90px,12vw,180px) clamp(24px,8vw,130px)}.intro{border-top:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:8vw;margin-top:55px}.intro h2,.principle-title h2,.learning h2,.personal h2{font:400 clamp(3rem,6vw,6rem)/.95 var(--serif);letter-spacing:-.045em;margin:0}.intro-copy{padding-top:1rem;font-size:1.05rem}.intro-copy p:first-child{margin-top:0}.story{background:var(--ink);color:var(--paper)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:80px}.section-heading h2{font:400 clamp(3.5rem,7vw,7rem)/.9 var(--serif);letter-spacing:-.05em;margin:0;text-align:right}.timeline{border-top:1px solid rgba(243,240,233,.22)}.timeline-item{display:grid;grid-template-columns:50px 1fr 1.4fr .8fr;gap:clamp(18px,4vw,70px);align-items:start;padding:35px 0;border-bottom:1px solid rgba(243,240,233,.22)}.timeline-index,.timeline time,.timeline small{font:300 .7rem/1.5 var(--mono)}.timeline h3{font:400 clamp(1.7rem,2.5vw,2.7rem)/1.1 var(--serif);margin:5px 0}.timeline-item>p{margin:0}.timeline small{color:#a8b0aa}.story-footer{display:flex;justify-content:flex-end;gap:8vw;margin-top:60px}.story-footer p{max-width:430px}.text-link,.contact-link{border-bottom:1px solid currentColor;align-self:flex-start;padding-bottom:4px}.text-link span,.contact-link span{color:var(--accent)}.quote-block{position:relative;min-height:85vh;background:var(--accent);color:#fff;padding:clamp(90px,12vw,180px) clamp(24px,8vw,130px);display:grid;grid-template-columns:1fr 3fr;align-content:center;gap:40px}.quote-number{font:300 .75rem var(--mono)}blockquote{font:400 clamp(4rem,9vw,9rem)/.87 var(--serif);letter-spacing:-.055em;margin:0}.quote-meta{grid-column:2;display:flex;justify-content:space-between;margin-top:55px;border-top:1px solid rgba(255,255,255,.45);padding-top:20px}.quote-meta p{font-family:var(--mono);font-size:.7rem;text-transform:uppercase}.quote-meta ul{list-style:none;margin:0;padding:0;width:45%}.quote-meta li{border-bottom:1px solid rgba(255,255,255,.25);padding:7px 0}.principles-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;margin-top:65px}.principle-title p{max-width:420px;margin-top:35px}.principle-list{list-style:none;margin:0;padding:0}.principle-list li{display:grid;grid-template-columns:45px .65fr 1fr;gap:25px;padding:30px 0;border-top:1px solid var(--line)}.principle-list li:last-child{border-bottom:1px solid var(--line)}.principle-list span{font:300 .7rem var(--mono);color:var(--accent)}.principle-list strong{font:400 2rem/1 var(--serif)}.principle-list p{margin:0}.learning{background:#d9dfd8}.learning-header{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.learning-header .eyebrow{grid-column:1/-1}.learning-header>p:last-child{max-width:430px;margin:0}.learning-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:80px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.learning-card{padding:35px 25px 70px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.learning-card>span{display:grid;place-items:center;width:55px;height:55px;border:1px solid var(--ink);border-radius:50%;font:400 .8rem var(--mono)}.learning-card h3{font:400 1.8rem/1.1 var(--serif);margin:70px 0 20px}.learning-card p{font-size:.9rem}.personal{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.personal-copy>p:last-child{max-width:520px;margin-top:40px}.saturday{padding-top:20px}.saturday div{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:20px 0;font-size:1.1rem}.saturday div:last-child{border-bottom:1px solid var(--line)}.saturday time{font:300 .72rem var(--mono);color:var(--accent)}.closing{min-height:85vh;background:#e7dfd0;padding:clamp(90px,12vw,180px) clamp(24px,8vw,130px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.closing h2{font:400 clamp(4rem,10vw,10rem)/.8 var(--serif);letter-spacing:-.06em;margin:50px 0}.closing-copy{max-width:590px;font-size:1.1rem}.contact-link{font-size:clamp(1.1rem,2vw,1.5rem);margin-top:35px}.placeholder-note{font:300 .62rem var(--mono);opacity:.5}footer{padding:30px clamp(24px,5vw,80px);display:flex;justify-content:space-between;font:300 .65rem var(--mono);text-transform:uppercase;letter-spacing:.08em}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:800px){.site-header{height:68px}.menu-button{display:flex;border:0;background:none;width:35px;height:35px;padding:8px;flex-direction:column;justify-content:center;gap:6px}.menu-button span:not(.sr-only){height:1px;width:100%;background:var(--ink)}.navigation{position:absolute;top:68px;left:0;width:100%;padding:25px 24px 35px;background:var(--paper);border-bottom:1px solid var(--line);display:none;flex-direction:column;font-size:.9rem}.navigation.is-open{display:flex}.hero{padding-top:120px}.hero h1{font-size:clamp(4.3rem,22vw,8rem);line-height:.78}.hero-bottom{margin-left:0}.margin-note{display:none}.intro-grid,.principles-grid,.personal{grid-template-columns:1fr}.intro-grid{gap:40px}.section-heading{display:block}.section-heading h2{text-align:left;margin-top:30px}.timeline-item{grid-template-columns:36px 1fr}.timeline-item>p,.timeline-item>small{grid-column:2}.story-footer{display:block}.quote-block{grid-template-columns:1fr;min-height:auto}.quote-meta{grid-column:1;display:block}.quote-meta ul{width:100%;margin-top:30px}.principle-list li{grid-template-columns:35px 1fr}.principle-list p{grid-column:2}.learning-header{grid-template-columns:1fr}.learning-grid{grid-template-columns:1fr 1fr}.learning-card h3{margin-top:40px}.personal{gap:60px}footer{gap:20px;flex-direction:column}}
@media(max-width:480px){.hero-bottom{align-items:center}.hero h1{font-size:21vw}.round-link{flex-basis:46px;width:46px;height:46px}.learning-grid{grid-template-columns:1fr}.learning-card{padding-bottom:40px}.closing h2{font-size:18vw}blockquote{font-size:14vw}}

.projects-jump{display:flex;justify-content:flex-end;align-items:flex-start;gap:8vw;margin-top:55px}.projects-jump p{max-width:470px;margin:0}.projects-jump .text-link{white-space:nowrap}.project-header{background:rgba(23,34,29,.92);color:var(--paper);border-bottom-color:rgba(243,240,233,.18)}.back-link{font:300 .7rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.project-hero{min-height:78vh;padding:165px clamp(24px,8vw,130px) 90px;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:flex-end}.project-hero h1{font:400 clamp(4rem,10vw,10rem)/.82 var(--serif);letter-spacing:-.06em;margin:40px 0}.project-hero h1 em,.project-closing em{font-weight:400;color:var(--accent)}.project-lead{max-width:620px;margin:0 0 0 auto;font-size:clamp(1rem,1.5vw,1.25rem)}.case-list{background:var(--paper)}.case-study{display:grid;grid-template-columns:60px minmax(280px,.9fr) 1fr;gap:clamp(25px,5vw,80px);padding:clamp(70px,9vw,130px) clamp(24px,8vw,130px);border-bottom:1px solid var(--line)}.case-study:nth-child(even){background:#e7dfd0}.case-number{font:300 .7rem var(--mono);color:var(--accent)}.case-title h2{font:400 clamp(2.8rem,5vw,5.5rem)/.92 var(--serif);letter-spacing:-.045em;margin:22px 0 0}.case-copy{max-width:580px;font-size:1.03rem}.case-copy p:first-child{margin-top:0}.case-note{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font:300 .78rem/1.65 var(--mono);color:var(--muted)}.project-closing{min-height:75vh;padding:clamp(90px,12vw,180px) clamp(24px,8vw,130px);background:#d9dfd8;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.project-closing h2{font:400 clamp(4rem,9vw,9rem)/.82 var(--serif);letter-spacing:-.055em;margin:45px 0}.project-closing>p:not(.eyebrow){max-width:650px}.project-closing .contact-link{margin-top:35px}
@media(max-width:800px){.projects-jump{display:block}.projects-jump .text-link{display:inline-block;margin-top:30px;white-space:normal}.case-study{grid-template-columns:35px 1fr}.case-title,.case-copy{grid-column:2}.project-hero{min-height:70vh;padding-top:125px}.back-link{font-size:.62rem}.case-title h2{margin-top:15px}}
.footer-links{display:flex;gap:22px}.footer-links a:hover{color:var(--accent)}.legal-page{max-width:900px;margin:0 auto;padding:160px 40px 110px}.legal-page>h1{font:400 clamp(4rem,9vw,8rem)/.88 var(--serif);letter-spacing:-.055em;margin:35px 0 90px}.legal-page section{display:grid;grid-template-columns:minmax(200px,.65fr) 1fr;gap:clamp(30px,7vw,90px);padding:36px 0;border-top:1px solid var(--line)}.legal-page h2{font:400 clamp(1.5rem,2.5vw,2.2rem)/1.1 var(--serif);margin:0}.legal-page section>p{margin:0}.legal-page section>p+p{grid-column:2}.draft-note{margin-top:55px;padding:24px;border:1px solid var(--accent);font:300 .76rem/1.7 var(--mono)}
@media(max-width:800px){.legal-page{padding:120px 24px 80px}.legal-page>h1{margin-bottom:55px}.legal-page section{grid-template-columns:1fr;gap:18px}.legal-page section>p+p{grid-column:1}footer{gap:16px}.footer-links{flex-wrap:wrap}}
