@font-face{font-family:Inter;src:url('assets/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f7f7f2;--ink:#20211f;--muted:#60635c;--accent:#c83224;--line:#cecec7;--dark:#232521;--dark-muted:#b8bcb3;--gutter:clamp(24px,5.2vw,84px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid currentColor;outline-offset:7px}::selection{background:var(--accent);color:white}.wrap{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}p{line-height:1.65}h1,h2{letter-spacing:-.045em}.eyebrow{font-size:.875rem;line-height:1.4;font-weight:500}.skip-link{position:absolute;top:-80px;left:24px;padding:14px;background:var(--ink);color:white;z-index:10}.skip-link:focus{top:10px}.site-header{height:126px;display:flex;align-items:center;justify-content:space-between;position:relative}.site-header:after{content:'';position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--line)}.wordmark{display:flex;align-items:center;gap:18px}.mark{font-size:4.1rem;line-height:1;letter-spacing:-.095em;font-weight:700;padding-bottom:10px}.mark-dot{color:var(--accent)}.wordmark-name{font-size:.875rem;font-weight:500;line-height:1.2;border-left:1px solid var(--line);padding-left:18px}.site-header nav{display:flex;gap:38px;align-items:center;font-size:.875rem}.site-header nav a{padding-block:12px}.site-header nav a:hover{color:var(--accent)}.nav-contact{display:flex;gap:36px;align-items:center}.nav-contact span{font-size:1.3rem}
.hero{padding-top:35px;padding-bottom:0}.hero-eyebrow{display:flex;justify-content:space-between}.hero-eyebrow span:last-child{color:var(--muted)}.hero h1{font-size:clamp(5.5rem,10.8vw,10.8rem);line-height:.98;margin-top:65px;margin-left:-.055em;font-weight:500;max-width:1200px}.hero h1 span{color:var(--accent)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:48px;align-items:end}.hero-bottom p{font-size:clamp(1.1rem,1.55vw,1.4rem);line-height:1.55;max-width:520px;margin-left:auto}.text-link{font-size:.875rem;display:inline-flex;align-items:center;gap:45px;width:fit-content;padding-block:12px;border-bottom:1px solid var(--ink)}.text-link:hover{color:var(--accent);border-color:var(--accent)}.text-link span{font-size:1.5rem}.hero-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:62px;padding-block:20px;font-size:.8125rem;color:var(--muted)}.page-index{font-variant-numeric:tabular-nums}
.section-dark{background:var(--dark);color:var(--paper)}.expertise{padding-block:100px}.section-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:10vw}.section-label{margin-bottom:42px}.section-intro h2{font-size:clamp(2.5rem,4.2vw,4.2rem);line-height:1.08;margin-bottom:28px}.section-intro>p:last-child{color:var(--dark-muted);max-width:325px;font-size:1rem}.services{border-top:1px solid #51544c}.service{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:31px 0 34px;border-bottom:1px solid #51544c}.service-index{color:var(--dark-muted);font-size:.8125rem;padding-top:10px;font-variant-numeric:tabular-nums}.service h3{font-size:2.125rem;letter-spacing:-.035em;line-height:1.2;margin-bottom:16px}.service p{max-width:440px;color:var(--dark-muted)}.service ul{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:7px 19px;font-size:.875rem}.service li+li:before{content:'/';color:#81867a;margin-right:19px}
.approach{padding-top:100px;padding-bottom:110px}.section-heading{display:grid;grid-template-columns:1fr 1.2fr;gap:10vw}.section-heading h2{font-size:clamp(2.4rem,4.1vw,4.1rem);line-height:1.12}.approach-body{margin-top:65px;padding-top:38px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:10vw}.approach-statement{font-size:1.55rem;line-height:1.45;letter-spacing:-.04em}.approach-detail{max-width:530px}.approach-detail>p+p{margin-top:20px}.approach-detail .audience-note{font-size:.875rem;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin-top:28px}
.contact{background:var(--accent);color:var(--paper);padding-block:75px 85px}.contact .section-label{margin-bottom:52px}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:end}.contact h2{font-size:clamp(3rem,5.8vw,6rem);line-height:1.05}.contact-detail p{font-size:1rem;line-height:1.6}.contact-link{margin-top:26px;font-size:clamp(1rem,1.8vw,1.5rem);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid currentColor;padding-block:14px;overflow-wrap:anywhere}.contact-link:hover{opacity:.8}.contact-link span{font-size:1.65rem}.site-footer{min-height:103px;display:flex;align-items:center;gap:30px;font-size:.8125rem;color:var(--muted)}.footer-name{color:var(--ink);font-size:.9375rem;font-weight:600;margin-right:auto}.site-footer .back-top{margin-left:auto}.back-top span{margin-left:12px}
@media(min-width:1600px){.section-grid,.section-heading,.approach-body{gap:160px}}
@media(max-width:900px){.site-header{height:105px}.site-header nav{gap:25px}.hero h1{font-size:clamp(4.5rem,11.5vw,7.7rem);margin-top:60px}.hero-bottom{gap:30px}.hero-bottom p{font-size:1.0625rem}.section-grid,.section-heading,.approach-body{grid-template-columns:.9fr 1.2fr;gap:6vw}.expertise{padding-block:75px}.section-intro h2{font-size:2.6rem}.service{grid-template-columns:25px 1fr;gap:12px}.service ul{gap:8px 12px}.service li+li:before{margin-right:12px}.approach{padding-block:75px}.contact-grid{gap:5vw}.contact h2{font-size:3.6rem}.contact-link{font-size:1rem}.site-footer{flex-wrap:wrap;gap:18px;font-size:.75rem}}
@media(max-width:600px){:root{--gutter:24px}.site-header{height:100px}.mark{font-size:3.4rem}.wordmark{gap:13px}.wordmark-name{padding-left:13px;font-size:.75rem}.site-header nav>a:not(.nav-contact){display:none}.nav-contact{gap:13px;font-size:.875rem}.hero{padding-top:25px}.hero-eyebrow{font-size:.75rem;gap:20px}.hero h1{font-size:clamp(3.65rem,13vw,5rem);line-height:1.02;margin-top:58px;letter-spacing:-.045em}.hero-bottom{grid-template-columns:1fr;margin-top:30px;gap:28px}.hero-bottom p{font-size:1.0625rem;grid-row:1;max-width:400px;margin-left:0;line-height:1.65}.explore{font-size:.8125rem;gap:42px}.hero-footer{margin-top:42px;font-size:.75rem;padding-block:18px}.section-grid,.section-heading,.approach-body{grid-template-columns:1fr;gap:35px}.expertise{padding-block:58px}.section-label{margin-bottom:26px;font-size:.8125rem}.section-intro h2{font-size:2.65rem;margin-bottom:18px}.section-intro h2 br{display:none}.section-intro>p:last-child{max-width:390px}.service{padding-block:27px;grid-template-columns:24px 1fr;gap:14px}.service h3{font-size:1.875rem}.service p{font-size:1rem}.service ul{font-size:.875rem;gap:7px 10px}.service li+li:before{margin-right:10px}.approach{padding-block:58px}.section-heading{gap:0}.section-heading h2{font-size:2.5rem}.approach-body{margin-top:35px;padding-top:28px;gap:27px}.approach-statement{font-size:1.5rem}.approach-detail p{font-size:1rem}.approach-detail .audience-note{font-size:.8125rem}.contact{padding-block:52px 58px}.contact .section-label{margin-bottom:33px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact h2{font-size:clamp(2.7rem,10.5vw,4rem)}.contact-detail p{font-size:1rem}.contact-link{font-size:1.1rem;margin-top:18px}.site-footer{padding-block:28px;display:grid;grid-template-columns:1fr 1fr;gap:18px 10px;font-size:.75rem}.footer-name{font-size:.875rem}.site-footer>span:nth-child(2){text-align:right}.site-footer .back-top{margin:0;text-align:right}}
h1,h2{overflow-wrap:anywhere}.section-grid>*,.section-heading>*,.approach-body>*,.contact-grid>*,.hero-bottom>*{min-width:0}.contact-link:hover{opacity:1;border-bottom-width:2px}
@media(max-width:600px){.site-header{height:auto;min-height:100px;padding-block:20px;flex-wrap:wrap;gap:12px 20px}.wordmark{flex-shrink:0}.site-header nav{min-width:0}.site-footer>*{min-width:0;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
