@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital@0;1&display=swap');
:root{--ink:#242724;--muted:#73756e;--cream:#f6f5f1;--paper:#fff;--line:#e3e3dc;--olive:#898f80}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.preview-strip{text-align:center;background:#292d28;color:#e9eae3;font-size:10px;letter-spacing:1.9px;padding:11px 15px}.preview-strip span{padding:0 10px;color:#b5b8ab}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:#faf9f6;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:2px;font-size:17px;line-height:1.1}.brand small{display:block;letter-spacing:5.5px;font-size:9px;margin-top:5px;font-weight:600}.brand-mark{width:43px;height:43px;border:1.5px solid #343a33;display:flex;align-items:center;justify-content:center;font-size:26px;letter-spacing:-4px;padding-right:5px}.brand-mark span{color:#a6ab9b}.nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.nav a:not(.nav-contact):hover{color:#929888}.nav-contact{border:1px solid #313630;padding:13px 19px}.nav-contact span{margin-left:15px}.menu-toggle{display:none}.hero{min-height:650px;display:grid;grid-template-columns:52% 48%;background:#f8f7f3}.hero-copy{padding:110px 7% 35px 11.5%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.overline,.section-index{font-size:10px;letter-spacing:2.1px;font-weight:700}.eyebrow{display:flex;align-items:center;gap:15px}.eyebrow-line{width:33px;height:1px;background:var(--olive)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-2.8px;font-weight:500}h1{font-size:clamp(45px,5.2vw,84px);line-height:1.12;margin:42px 0 25px;white-space:nowrap}h1 em,h2 .serif-italic{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-2px}h1 em{color:#818879}.hero-copy>p{color:#686b63;max-width:445px;line-height:1.9;font-size:14px}.hero-actions{display:flex;align-items:center;gap:29px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 24px;font-size:12px;font-weight:700}.button-dark{background:#282c27;color:#fff}.button:hover{opacity:.87}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid #b5b8ac;padding-bottom:8px}.text-link span{margin-left:12px}.hero-footer{display:flex;justify-content:space-between;width:100%;margin-top:auto;padding-top:60px;font-size:9px;letter-spacing:2px;color:#83867f}.hero-art{position:relative;min-height:640px;overflow:hidden;background:#c7c8bd}.hero-art svg{height:100%;width:100%;display:block;position:absolute;inset:0}.image-caption{position:absolute;bottom:25px;right:25px;color:#fff;font-size:9px;letter-spacing:2px;text-shadow:0 1px 5px #333}.section-pad{padding:110px 8%}.intro{display:grid;grid-template-columns:29% 1fr;background:#fff}.section-index{color:#83887d}.overline{color:#92968d;margin-bottom:25px}.intro h2,.section-heading h2,.approach h2{font-size:clamp(35px,4vw,62px);line-height:1.2;margin-bottom:25px}.intro .lead{font-size:20px;line-height:1.7;max-width:750px}.body-copy{font-size:14px;color:#73756e;line-height:1.95;max-width:700px}.services{background:#f1f0ea}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-heading h2{margin:19px 0 0}.section-heading>p{font-size:13px;line-height:1.8;color:#74776f;max-width:300px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-card{background:#fafaf7;min-height:380px;padding:25px;display:flex;flex-direction:column;transition:transform .2s}.service-card:hover{transform:translateY(-4px)}.service-top{display:flex;justify-content:space-between;color:#8e9188;font-size:12px}.service-symbol{height:155px;display:flex;align-items:center}.service-symbol svg{width:90px;fill:none;stroke:#7e8579;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font:600 18px/1.45 Manrope,Arial,sans-serif;letter-spacing:-.5px;margin-bottom:13px}.service-card p{color:#777970;font-size:12px;line-height:1.8;margin:0}.fine-print{font-size:11px;color:#83867e;margin:23px 0 0}.projects{background:#fff}.project-placeholder{display:grid;grid-template-columns:58% 42%;min-height:420px;background:#e9e8e1}.project-art{position:relative;overflow:hidden;background:linear-gradient(145deg,#d7d7ce,#b9bcb0)}.shape{position:absolute;background:#e9e9e2;box-shadow:15px 14px 28px #626a5d28}.shape-one{width:38%;height:78%;left:18%;bottom:0;transform:skewY(-12deg)}.shape-two{width:30%;height:52%;left:52%;bottom:0;background:#f3f2eb;transform:skewY(12deg)}.shape-three{width:18%;height:38%;left:38%;bottom:0;background:#49534f}.project-caption{padding:65px 10%;display:flex;flex-direction:column;justify-content:center}.project-caption span{font-size:10px;letter-spacing:2px;color:#7f847a}.project-caption strong{font:500 31px/1.3 Manrope,Arial,sans-serif;letter-spacing:-1px;margin:25px 0}.project-caption p{font-size:12px;color:#777970;line-height:1.8}.approach{background:#f4f3ee;display:grid;grid-template-columns:28% 1fr}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:55px}.steps>div{border-top:1px solid #b8bcb0;padding-top:20px}.steps span{font-size:12px;color:#7c8276}.steps h3{font:600 21px Manrope,Arial,sans-serif;margin:25px 0 10px}.steps p{font-size:12px;color:#777970;line-height:1.8}.contact{background:#303630;color:#fff;text-align:center;padding-top:115px;padding-bottom:115px}.contact .section-index{color:#b4baad}.contact h2{font-size:clamp(53px,7vw,100px);line-height:1.12;margin:30px 0}.contact h2 span{color:#b7c0af}.contact>p{color:#d2d5cc;font-size:14px;line-height:1.8;margin-bottom:35px}.button-light{background:#f5f4ee;color:#252b25}.chat-note{font-size:11px;color:#b7beb2;margin-top:38px}.chat-dot{display:inline-block;width:7px;height:7px;background:#b3bcae;border-radius:50%;margin-right:8px}footer{padding:70px 8% 28px;background:#faf9f6}.footer-brand{font:800 27px Manrope,Arial,sans-serif;letter-spacing:3px}.footer-brand span{font-size:12px;letter-spacing:4px}footer>p{font-size:12px;color:#7d8077;margin:15px 0 55px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;font-size:11px;color:#85877e}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.legal{max-width:800px;margin:0 auto;padding:90px 25px 140px}.legal h1{font-size:48px;white-space:normal}.legal p,.legal li{line-height:1.85;color:#555e56}.legal h2{font-size:25px;letter-spacing:-.7px;margin-top:35px}@media(max-width:1100px){.hero-copy{padding-left:8%}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:330px}.hero{grid-template-columns:55% 45%}h1{font-size:clamp(40px,5vw,66px)}}@media(max-width:760px){.site-header{height:75px;padding:0 5%}.menu-toggle{display:block;background:none;border:0;font-size:13px;font-weight:700;cursor:pointer}.menu-toggle span{margin-left:7px}.nav{display:none;position:absolute;z-index:10;top:109px;left:0;right:0;background:#faf9f6;padding:25px 6%;flex-direction:column;align-items:stretch;gap:24px;box-shadow:0 12px 20px #0001}.nav.open{display:flex}.nav-contact{align-self:flex-start}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 7% 35px;min-height:540px}.hero-art{min-height:420px}.hero-art svg{position:absolute}.hero-footer{padding-top:50px}.section-pad{padding:75px 7%}.intro,.approach{grid-template-columns:1fr;gap:32px}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid{grid-template-columns:1fr 1fr}.project-placeholder{grid-template-columns:1fr}.project-art{min-height:300px}.project-caption{padding:45px 8%}.steps{grid-template-columns:1fr;gap:10px;margin-top:30px}.contact{padding-top:85px;padding-bottom:85px}.footer-bottom{gap:15px;flex-direction:column}}@media(max-width:470px){h1{font-size:43px;letter-spacing:-2.5px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:290px}.service-symbol{height:110px}.brand{font-size:14px}.brand small{font-size:8px}.hero-art{min-height:340px}.contact h2{font-size:54px}.preview-strip{font-size:8px;letter-spacing:1px}}
