@font-face{font-family:BDO;src:url("fonts/bdo-grotesk.woff2")}@font-face{font-family:CompassSerif;src:url("fonts/compass-serif.ttf");font-weight:600}:root{--ink:#181512;--paper:#f1eadf;--clay:#c45d3e;--sky:#9dc9d2;--green:#425f4b;--g:clamp(1rem,4.5vw,4.5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:BDO,Arial,sans-serif}a{color:inherit;text-decoration:none}.nav{position:absolute;z-index:5;top:1.25rem;left:50%;transform:translateX(-50%);width:min(92%,1280px);height:64px;padding:0 1rem 0 1.4rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(244,238,229,.87);border-radius:999px;backdrop-filter:blur(14px)}.brand{font-family:CompassSerif,serif;font-size:1.25rem}.nav nav{display:flex;gap:clamp(1.5rem,4vw,4rem);font-size:.78rem}.nav-action{justify-self:end;background:var(--ink);color:#fff;padding:.8rem 1.4rem;border-radius:999px}.menu{display:none;border:0;background:transparent;min-height:44px}.drawer{display:none;position:fixed;z-index:20;inset:0;background:var(--clay);padding:1rem}.drawer.open{display:block}.drawer nav{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;font-size:clamp(2.4rem,10vw,4rem)}.close{position:absolute;top:1rem;right:1rem;border:1px solid var(--ink);border-radius:50%;background:transparent;min-width:48px;min-height:48px}.hero{position:relative;height:100vh;height:100svh;min-height:650px;overflow:hidden;padding:var(--g);display:flex;align-items:flex-end}.hero>img,.tone{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero>img{object-position:center}.tone{background:linear-gradient(90deg,rgba(17,19,15,.18),transparent 60%),linear-gradient(0deg,rgba(17,19,15,.48),transparent 55%)}.hero-copy{position:relative;z-index:1;color:#fff;width:min(88%,930px);padding-bottom:8.5rem}.hero-copy>p,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.65rem}.hero h1,.intro h2,.work h2,.practice h2,.cta h2{font-family:CompassSerif,serif;letter-spacing:-.045em;line-height:.94;margin:.65rem 0}.hero h1{font-size:clamp(4rem,7.2vw,7rem)}.hero-rail{position:absolute;z-index:2;bottom:0;left:0;right:0;min-height:84px;padding:0 var(--g);display:flex;justify-content:space-between;align-items:center;color:#fff;border-top:1px solid rgba(255,255,255,.4);font-size:.76rem}.hero-rail a{border-bottom:1px solid}.intro{padding:clamp(6rem,11vw,11rem) var(--g);display:grid;grid-template-columns:.28fr 1fr .58fr;gap:clamp(2rem,6vw,6rem);align-items:start}.intro h2,.work h2,.practice h2,.cta h2{font-size:clamp(3.4rem,6vw,6.3rem)}.intro>div p{line-height:1.7;margin:0 0 1.4rem}.work{background:var(--ink);color:#fff;padding:clamp(5rem,9vw,9rem) var(--g)}.work header{display:grid;grid-template-columns:.32fr 1fr;gap:2rem;margin-bottom:4rem}.feature{display:grid;grid-template-columns:1.2fr .8fr;background:var(--clay);color:#fff}.feature img{width:100%;height:100%;min-height:560px;object-fit:cover}.feature>div{padding:clamp(2rem,6vw,6rem);align-self:end}.feature h3,.work-grid h3,.services h3{font-family:CompassSerif,serif;font-size:clamp(2rem,4vw,4rem);line-height:1;margin:.75rem 0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,4vw,4rem);margin-top:clamp(3rem,7vw,7rem)}.work-grid article:nth-child(2){margin-top:8rem}.work-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.work-grid p{line-height:1.55;color:#c7c4bf}.practice{padding:clamp(5rem,9vw,9rem) var(--g);display:grid;grid-template-columns:1fr .8fr;gap:clamp(3rem,8vw,8rem);align-items:center;background:var(--sky)}.practice-copy>p:not(.eyebrow){max-width:620px;line-height:1.7}.practice>img{width:100%;aspect-ratio:.78;object-fit:cover}dl{margin:2rem 0 0;border-top:1px solid rgba(0,0,0,.35)}dl div{display:grid;grid-template-columns:8rem 1fr;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.35)}dt{text-transform:uppercase;font-size:.67rem;letter-spacing:.15em}dd{margin:0}.services{padding:clamp(5rem,9vw,9rem) var(--g);display:grid;grid-template-columns:.3fr 1fr;gap:2rem}.services h3{padding:1rem 0;margin:0;border-top:1px solid #aaa}.cta{background:var(--green);color:#fff;text-align:center;padding:clamp(6rem,12vw,12rem) var(--g)}.cta h2{max-width:1000px;margin:1rem auto}.cta button{border:0;border-radius:999px;background:var(--paper);color:var(--ink);min-height:50px;padding:.8rem 1.5rem;font:inherit;margin-top:1rem}footer{background:var(--ink);color:#bbb;padding:3rem var(--g);display:grid;grid-template-columns:1fr auto auto;gap:2rem;font-size:.8rem}footer .brand{color:#fff}@media(max-width:800px){.nav{grid-template-columns:1fr auto auto}.nav nav{display:none}.menu{display:block}.hero{height:100svh;min-height:0;padding:1rem}.hero-copy{width:100%;padding-bottom:8rem}.hero h1{font-size:clamp(3rem,11vw,4.9rem)}.hero-rail{padding:0 1rem}.intro{grid-template-columns:1fr}.feature,.practice{grid-template-columns:1fr}.feature img{min-height:0;aspect-ratio:4/3}.work-grid{grid-template-columns:1fr}.work-grid article:nth-child(2){margin-top:0}.services{grid-template-columns:1fr}footer{grid-template-columns:1fr}}@media(max-width:480px){.nav{width:calc(100% - 1rem);top:.5rem}.nav-action{padding:.7rem 1rem}.hero h1{font-size:3rem}.intro,.work,.practice,.services{padding-inline:1rem}.hero-rail p{max-width:62%}}.brand,.hero-rail a{display:inline-flex;align-items:center;min-height:44px}.feature>div .eyebrow,.feature>div>p:last-child{color:#000}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Brand fidelity: official client logo */
.client-logo{display:block;width:auto;max-width:min(240px,42vw);height:clamp(34px,4vw,54px);object-fit:contain;object-position:left center}footer .client-logo{height:clamp(30px,3vw,44px);max-width:min(220px,48vw)}
