@font-face{font-family:Editorial;src:url('fonts/editorial-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Editorial;src:url('fonts/editorial-italic.woff') format('woff');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Sans;src:url('fonts/sans-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f5f2eb;--ink:#282a24;--muted:#64665a;--olive:#575e47;--line:#cdcec3;--serif:Editorial,Georgia,serif;--sans:Sans,Arial,sans-serif;--gutter:clamp(24px,5.5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:#dce0cb;color:var(--ink)}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--olive);outline-offset:7px}p,h1,h2,h3,dl,dd{margin:0}h1,h2,h3{font-weight:400}em{font-weight:400;color:var(--olive)}.page{width:100%;max-width:1600px;margin:0 auto;padding:0 var(--gutter)}.skip-link{position:absolute;top:-80px;left:20px;padding:12px 20px;background:var(--ink);color:var(--paper);z-index:20}.skip-link:focus{top:12px}.header{min-height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--serif);font-size:28px;letter-spacing:-1.1px;line-height:1}.wordmark-dot{color:var(--olive)}nav{display:flex;align-items:center;gap:40px;font-size:13px}nav a{position:relative;padding:12px 0}nav a::after{content:'';position:absolute;bottom:6px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}nav a:hover::after{transform:scaleX(1)}.contact-nav span{display:inline-block;margin-left:14px;font-size:19px;transition:transform .2s}.contact-nav:hover span{transform:translate(2px,-2px)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:10px;line-height:1.5;font-family:var(--sans);font-weight:400}.hero{padding:86px 0 72px}.hero-eyebrow{margin-bottom:34px;color:var(--muted)}.hero-eyebrow span{margin:0 12px;color:#929483}h1{font-family:var(--serif);font-size:clamp(56px,7.1vw,112px);line-height:1.12;letter-spacing:-.047em}h1>span{display:block}h1 em{letter-spacing:-.055em}.hero-bottom{margin-top:56px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end}.intro{font-size:17px;line-height:1.65;max-width:440px}.text-link{font-size:12px;letter-spacing:.005em;display:inline-flex;align-items:center;gap:36px;width:max-content;padding:9px 0}.text-link span{font-size:20px;color:var(--olive);transition:transform .2s}.text-link:hover span{transform:translateY(4px)}.section-heading{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.range{color:var(--muted)}.project{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:47px 0 48px;border-bottom:1px solid var(--line)}.project-title{display:flex;gap:28px;align-items:baseline}.index{font-size:10px;letter-spacing:.08em;color:var(--muted);width:18px;flex:none}.project h3{font-family:var(--serif);font-size:clamp(34px,3.45vw,52px);line-height:1.2;letter-spacing:-.035em}.category{color:var(--muted);font-size:11px;margin-top:15px;letter-spacing:.025em}.project-copy{max-width:440px;padding-top:4px}.role{font-size:12px;line-height:1.5;margin-bottom:14px;color:var(--olive)}.project-copy>p:last-child{font-size:15px;line-height:1.75}.earlier{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:30px 0 0}.earlier .eyebrow{padding-top:4px;color:var(--muted)}.earlier>p:last-child{max-width:440px;font-size:12px;line-height:1.9;color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:104px 0 98px}.approach-lead h2{font-family:var(--serif);font-size:clamp(42px,4.15vw,64px);line-height:1.15;letter-spacing:-.04em;margin-top:28px}.approach-lead>p:last-child{max-width:330px;font-size:14px;line-height:1.75;margin-top:27px}.services{margin-top:2px}.services>div{padding:22px 0;border-top:1px solid var(--line)}.services>div:first-child{padding-top:0;border-top:0}.services dt{font-size:16px;letter-spacing:-.01em}.services dd{font-size:13px;color:var(--muted);line-height:1.7;margin-top:7px;max-width:370px}.contact{border-top:1px solid var(--ink);padding:30px 0 75px}.contact-top{display:flex;justify-content:space-between;align-items:center}.availability{font-size:11px;display:flex;align-items:center;gap:9px;color:var(--muted)}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--olive)}.contact h2{font-family:var(--serif);font-size:clamp(56px,6.7vw,104px);line-height:1.13;letter-spacing:-.047em;margin-top:57px}.email{font-size:19px;margin-top:36px;display:inline-flex;gap:58px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--ink)}.email span{display:inline-block;font-size:24px;transition:transform .2s}.email:hover span{transform:translate(3px,-3px)}footer{border-top:1px solid var(--line);padding:23px 0 25px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;font-size:11px}footer>p{color:var(--muted)}.back-top{color:var(--muted)}.back-top span{margin-left:22px}
@media(min-width:1600px){.hero{padding-top:105px;padding-bottom:85px}.hero-bottom{margin-top:65px}}
@media(max-width:1000px){nav{gap:26px}.hero{padding-top:66px}.hero-bottom,.project,.earlier,.approach{gap:38px}h1{font-size:7.2vw}.project-title{gap:17px}.project h3{font-size:3.8vw}.intro{font-size:16px}}
@media(max-width:700px){html{scroll-padding-top:24px}.header{min-height:88px}.wordmark{font-size:26px}nav{gap:0}nav>a:not(.contact-nav){display:none}.contact-nav{font-size:12px}.contact-nav span{margin-left:8px}.hero{padding:54px 0 48px}.hero-eyebrow{font-size:9px;letter-spacing:.05em;line-height:1.8;margin-bottom:26px}.hero-eyebrow span{margin:0 5px}h1{font-size:clamp(40px,11.6vw,68px);line-height:1.12;letter-spacing:-.045em}h1>span:first-child{max-width:540px}h1 em{display:block}.hero-bottom{margin-top:34px;grid-template-columns:1fr;gap:26px}.intro{order:-1;font-size:15px;max-width:410px;line-height:1.7}.work-link{font-size:11px;gap:22px}.section-heading{padding:21px 0}.project{grid-template-columns:1fr;padding:29px 0 32px;gap:20px}.project-title{gap:17px}.project h3{font-size:35px}.category{font-size:10px;margin-top:9px}.project-copy{padding-left:35px;max-width:490px;padding-top:0}.role{font-size:11px;margin-bottom:10px}.project-copy>p:last-child{font-size:14px;line-height:1.75}.earlier{grid-template-columns:1fr;gap:15px;padding-top:27px}.earlier>p:last-child{font-size:12px;line-height:1.85}.approach{grid-template-columns:1fr;gap:36px;padding:66px 0 52px}.approach-lead h2{font-size:46px;margin-top:23px}.approach-lead>p:last-child{font-size:14px;max-width:370px;margin-top:22px}.services>div{padding:18px 0}.services>div:first-child{border-top:1px solid var(--line);padding-top:18px}.services dt{font-size:15px}.services dd{font-size:12px;max-width:400px}.contact{padding-top:23px;padding-bottom:48px}.contact-top{align-items:flex-start;gap:14px}.availability{font-size:9px;gap:6px}.contact h2{font-size:clamp(45px,9.5vw,66px);margin-top:42px;line-height:1.18}.email{font-size:17px;gap:39px;margin-top:29px}footer{font-size:10px;padding:23px 0;grid-template-columns:1fr auto}footer>p{display:none}.back-top span{margin-left:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
