@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&display=swap');
:root{--paper:#f5f5f2;--ink:#202421;--muted:#626760;--line:#ccd0c8;--accent:#cf4d30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:7px}.skip{position:fixed;top:-70px;left:20px;padding:15px;background:white;z-index:100}.skip:focus{top:15px}.header{margin:0 5%;height:118px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px}.monogram{font-size:54px;font-weight:600;letter-spacing:-5px;line-height:1}.monogram span{font-size:42px;color:var(--accent);margin-left:5px}.brand-name{font-size:13px;letter-spacing:2px;margin-top:13px}nav{display:flex;gap:38px;font-size:14px}nav a{padding:10px 0}nav a:hover,.text-link:hover{color:var(--accent)}.hero{padding:46px 5% 0}.hero-top,.hero-bottom,.approach-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px}.eyebrow,.section-label>span{font-size:12px;font-weight:600;letter-spacing:1.8px;margin:0}.small-note{font-size:13px;color:var(--muted)}h1{font-size:clamp(64px,8.6vw,142px);font-weight:450;letter-spacing:-.065em;line-height:1.04;margin:48px 0 26px}h1 span{color:#757d72}.hero-bottom{margin-bottom:44px}.hero-bottom p,.approach-bottom p{line-height:1.6;margin:0;color:var(--muted)}.text-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:8px;white-space:nowrap}.hero-image{margin:0;position:relative;overflow:hidden;background:#d9dbd6}.hero-image img{display:block;width:100%;height:clamp(320px,46vw,680px);object-fit:cover;object-position:center 55%}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:36px 24px 20px;background:linear-gradient(transparent,rgba(0,0,0,.5));color:white;font-size:11px;letter-spacing:1.4px}.section{margin:0 5%;padding:110px 0;border-bottom:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%}h2{font-size:clamp(32px,3.5vw,54px);font-weight:450;letter-spacing:-.045em;line-height:1.16;margin:26px 0 0}.section-content{padding-top:40px;max-width:540px}.section-content .large-copy{font-size:clamp(23px,2.3vw,34px);line-height:1.45;color:var(--ink);margin:0 0 26px;letter-spacing:-.025em}.section-content p{font-size:16px;line-height:1.8;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:60px}.section-heading>p{color:var(--muted);line-height:1.7;margin:0}.service-list article{border-top:1px solid var(--line);padding:32px 0;display:grid;grid-template-columns:8% 43% 1fr;align-items:start;gap:20px}.number{font-size:13px;color:var(--muted);padding-top:9px}h3{font-size:30px;font-weight:450;letter-spacing:-.03em;margin:0}.service-list p{margin:0;max-width:430px;color:var(--muted);line-height:1.7}.approach{background:var(--ink);color:var(--paper);margin:0;padding:85px 5%}.approach h2{font-size:clamp(40px,5.5vw,82px);margin:34px 0 40px}.approach h2 span{color:#a4ada0}.approach-bottom p{color:#bec5ba}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:0 5%;padding:36px 0;font-size:12px;color:var(--muted)}.footer-brand{letter-spacing:1.5px;color:var(--ink);font-weight:600}footer p{margin:0}@media(min-width:1700px){body{max-width:1800px;margin:auto}}@media(max-width:700px){.header{height:92px}.brand{gap:10px}.brand-name{font-size:10px;letter-spacing:1px}.monogram{font-size:43px}.monogram span{font-size:32px}nav{gap:20px;font-size:13px}.nav-project{display:none}.hero{padding-top:30px}.small-note{display:none}.eyebrow,.section-label>span{font-size:11px;letter-spacing:1.4px}h1{font-size:clamp(57px,12.5vw,86px);margin:36px 0 25px}.hero-bottom{align-items:start;flex-direction:column;gap:23px;margin-bottom:30px}.hero-bottom p{font-size:15px}.hero-image img{height:390px}.hero-image figcaption{font-size:9px;padding:35px 14px 16px;gap:20px}.section{padding-top:64px;padding-bottom:64px}.split{grid-template-columns:1fr;gap:0}.section-content{padding-top:30px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px;font-size:15px}.service-list article{grid-template-columns:30px 1fr;gap:12px;padding:25px 0}.service-list p{grid-column:2}.number{padding-top:6px}h3{font-size:26px}.approach{padding-left:5%;padding-right:5%}.approach-bottom{align-items:start;flex-direction:column}footer{flex-wrap:wrap;gap:15px}footer p{width:100%;order:3;font-size:12px}footer>span{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

nav a[aria-current="page"]{color:var(--accent);border-bottom:1px solid currentColor}.inner-page{margin:0 5%;min-height:70vh}.page-intro{padding:64px 0 55px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(52px,7vw,108px);margin:32px 0}.intro-copy{max-width:560px;font-size:20px;line-height:1.6;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:70px 0 95px;border-bottom:1px solid var(--line)}.contact-person h2{font-size:36px;margin:20px 0 12px}.contact-person>p:last-child{color:var(--muted)}.contact-details>div+div{border-top:1px solid var(--line);margin-top:35px;padding-top:28px}.contact-details h2,.legal-content h2{font-size:20px;letter-spacing:-.02em;margin:0 0 18px}.phone-link{font-size:clamp(26px,3vw,42px);letter-spacing:-.035em;border-bottom:1px solid var(--line);display:inline-block;padding-bottom:6px}.contact-details p{color:var(--muted);line-height:1.7}.contact-details address,.legal-content address{font-style:normal;line-height:1.8}.legal-content{max-width:760px;padding:55px 0 80px}.legal-content section+section{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.legal-content p{line-height:1.8}.legal-content a{border-bottom:1px solid var(--line)}footer nav{font-size:14px;gap:25px}.phone-link:hover,.legal-content a:hover{color:var(--accent)}@media(max-width:700px){.header{height:auto;min-height:100px;flex-wrap:wrap;gap:18px;padding:20px 0}.header nav{flex-wrap:wrap;gap:23px}.page-intro{padding:42px 0 32px}.intro-copy{font-size:18px}.contact-grid{grid-template-columns:1fr;gap:35px;padding:40px 0 55px}.contact-person h2{font-size:30px}.legal-content h2{overflow-wrap:anywhere}.legal-intro h1{font-size:clamp(42px,10vw,70px)}footer nav{gap:20px}}

.email-link{font-size:clamp(20px,2.4vw,34px);letter-spacing:-.025em;overflow-wrap:anywhere;border-bottom:1px solid var(--line);padding-bottom:6px}.email-link:hover{color:var(--accent)}
