@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--ink:#1b2822;--muted:#626b64;--paper:#f4f3ee;--cream:#e8e7df;--green:#344d40;--line:#d7d8cf;--white:#fffefa}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}.site-header{height:88px;padding:0 6.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border-bottom:1px solid rgba(27,40,34,.1);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;min-width:230px}.brand-mark{font-size:20px;font-weight:700;letter-spacing:-1.5px;border:1px solid var(--ink);padding:4px 7px;line-height:1.2}.brand-mark span{font-weight:400}.brand-name{font-size:14px;font-weight:700;letter-spacing:.1px;line-height:1.25}.brand-name i{font-family:'Playfair Display',serif;font-weight:500}.brand-name small{display:block;font-size:8px;letter-spacing:2px;font-weight:600;margin-top:4px}.nav{display:flex;gap:clamp(15px,2.2vw,34px);align-items:center}.nav a{font-size:12px;font-weight:600;transition:opacity .2s}.nav a:hover,.text-link:hover{opacity:.6}.header-cta{border:1px solid var(--ink);padding:11px 15px;font-size:11px;font-weight:700;white-space:nowrap}.header-cta span,.button span{margin-left:12px}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:var(--ink)}.hero{min-height:640px;background:linear-gradient(90deg,rgba(16,29,24,.88),rgba(16,29,24,.58) 52%,rgba(16,29,24,.18)),linear-gradient(135deg,#63776a 0%,#344d40 40%,#b0aa95 100%);color:#fffefa;position:relative;display:flex;align-items:center;padding:85px 10%}.hero:after{content:"";position:absolute;right:8%;top:10%;bottom:10%;width:29%;border:1px solid rgba(255,255,255,.2);background:linear-gradient(145deg,transparent 35%,rgba(255,255,255,.09) 35%,rgba(255,255,255,.02) 70%,transparent 70%);clip-path:polygon(28% 0,100% 0,100% 100%,0 100%,0 24%)}.hero-content{max-width:690px;position:relative;z-index:1}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 23px;color:#d6dfd5}.eyebrow span{display:inline-block;width:24px;height:1px;background:currentColor;vertical-align:middle;margin-right:9px}.eyebrow.dark{color:#59675d}.hero h1,.section h2{font-weight:500;font-size:clamp(42px,5.7vw,76px);line-height:1.08;letter-spacing:-2.4px;margin:0}.hero h1 em,.section h2 em{font-family:'Playfair Display',Georgia,serif;font-weight:500}.hero-copy{max-width:440px;color:#e1e5de;font-size:16px;margin:28px 0 32px}.hero-actions{display:flex;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;padding:14px 18px;font-size:11px;font-weight:700;letter-spacing:.2px}.button-light{background:var(--white);color:var(--ink)}.text-link{font-size:11px;font-weight:600}.hero-note{position:absolute;bottom:28px;left:10%;right:10%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#e0e4dd}.section{padding:105px 10%}.section-label{font-size:10px;letter-spacing:1.7px;font-weight:700;display:flex;gap:15px;color:#657067}.section-label span{color:#9c9e91}.intro{display:grid;grid-template-columns:1fr 2.4fr;gap:40px}.intro-main h2,.section-heading h2,.approach h2,.location h2,.contact h2{font-size:clamp(35px,4.2vw,56px);letter-spacing:-1.7px}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-top:26px}.intro-bottom p{max-width:570px;color:var(--muted);margin:0}.under-link{font-size:11px;font-weight:700;white-space:nowrap;border-bottom:1px solid #879087;padding-bottom:8px}.under-link span{margin-left:14px}.practice{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin:35px 0 45px}.section-heading h2{margin-top:0}.section-summary{max-width:300px;color:var(--muted);font-size:13px}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.practice-card{position:relative;background:var(--white);padding:28px 25px 32px;min-height:265px;border:1px solid rgba(27,40,34,.06);transition:transform .2s}.practice-card:hover{transform:translateY(-4px)}.card-no{font-size:10px;color:#7c867c}.card-icon{font-size:25px;margin:22px 0 12px;color:var(--green)}.practice-card h3{font-family:'Playfair Display',Georgia,serif;font-size:22px;font-weight:500;line-height:1.2;margin:0 0 12px}.practice-card p{font-size:12px;color:var(--muted);margin:0;max-width:260px}.practice-card>a{position:absolute;right:24px;bottom:24px;font-size:18px}.disclaimer{font-size:10px;color:#73786f;margin-top:18px}.approach{display:grid;grid-template-columns:1fr 2.4fr;gap:40px}.approach-content{max-width:780px}.approach-content>p:not(.eyebrow){color:var(--muted);max-width:590px;margin-top:22px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:50px;border-top:1px solid var(--line);padding-top:23px}.principles div{display:flex;flex-direction:column}.principles span{font-size:10px;color:#8a9187;margin-bottom:12px}.principles b{font-family:'Playfair Display',Georgia,serif;font-size:21px;font-weight:500}.principles small{font-size:11px;color:var(--muted);margin-top:8px}.location{padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:stretch}.location-panel{padding:55px 0}.location h2{font-size:clamp(34px,4vw,50px)}.location-panel>p:not(.eyebrow){color:var(--muted);max-width:420px;font-size:13px;margin:24px 0}.location-art{min-height:340px;background:linear-gradient(145deg,#d3d2c6,#8e9a8d 55%,#4b6254);position:relative;overflow:hidden}.location-art:before{content:"";position:absolute;inset:12% 17% 0 20%;border:1px solid rgba(255,255,255,.45);background:linear-gradient(90deg,transparent 24%,rgba(255,255,255,.18) 24%,rgba(255,255,255,.18) 25%,transparent 25%,transparent 49%,rgba(255,255,255,.15) 49%,rgba(255,255,255,.15) 50%,transparent 50%,transparent 74%,rgba(255,255,255,.16) 74%,rgba(255,255,255,.16) 75%,transparent 75%)}.arch{position:absolute;bottom:0;background:rgba(31,54,43,.28);width:18%;height:70%;border:1px solid rgba(255,255,255,.25)}.arch-one{left:8%;height:45%}.arch-two{left:34%;height:85%}.arch-three{right:9%;height:60%}.location-art span{position:absolute;bottom:18px;left:20px;color:white;font-size:9px;letter-spacing:1.8px;line-height:1.6}.contact{background:#e9e9e1}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:38px}.contact-copy{color:var(--muted);max-width:330px;margin-top:22px}.contact-card{background:var(--white);padding:35px 38px}.contact-card h3{font-family:'Playfair Display',Georgia,serif;font-size:25px;font-weight:500;margin:0}.contact-card>p{color:var(--muted);font-size:11px;margin:3px 0 25px}.contact-line{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid var(--line);font-size:11px}.contact-line span{color:var(--muted)}.contact-line b{font-weight:600;text-align:right}.button-dark{margin-top:25px;background:var(--ink);color:white;min-width:155px}footer{padding:25px 6.5%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--ink);color:#f4f3ee;font-size:10px}footer p{color:#bdc5bc}.footer-brand{font-size:19px;font-weight:700;letter-spacing:-1px}.footer-brand span{font-size:10px;letter-spacing:2px;font-weight:400;margin-left:5px}footer>a:last-child{white-space:nowrap}
@media(max-width:1000px){.site-header{padding:0 4%;gap:14px}.brand{min-width:auto}.nav{gap:14px}.nav a{font-size:11px}.header-cta{padding:9px}.section{padding:80px 7%}.hero{padding-left:7%;padding-right:7%}.hero-note{left:7%;right:7%}.intro,.approach{grid-template-columns:1fr 2fr}.contact-layout{gap:35px}}
@media(max-width:760px){.site-header{height:72px}.brand-name{font-size:12px}.brand-mark{font-size:17px}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:18px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:16px}.nav.open{display:flex}.header-cta{display:none}.hero{min-height:590px;padding:70px 7%}.hero:after{right:-12%;width:55%;opacity:.6}.hero h1{font-size:48px}.hero-copy{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-note{font-size:8px}.section{padding:68px 7%}.intro,.approach{grid-template-columns:1fr;gap:30px}.intro-main h2,.section-heading h2,.approach h2,.location h2,.contact h2{font-size:39px}.intro-bottom{align-items:flex-start;flex-direction:column}.section-heading{align-items:flex-start;flex-direction:column;gap:15px;margin:28px 0}.practice-grid{grid-template-columns:1fr}.practice-card{min-height:230px}.principles{grid-template-columns:1fr;gap:22px}.location{grid-template-columns:1fr;gap:20px}.location-panel{padding:20px 0}.location-art{min-height:270px}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-card{padding:27px 22px}.contact-line{flex-direction:column;gap:3px}.contact-line b{text-align:left}footer{padding:22px 7%;flex-wrap:wrap}footer p{order:3;width:100%;margin:0}}
