:root{--stone:#c8bfb2;--ivory:#f5f2ec;--coal:#302e2b;--gold:#a08348;--white:#fffdf9;--line:#ded6cb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--coal);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}em{font-weight:400}.skip{position:absolute;top:-60px;left:10px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.header{height:94px;padding:0 clamp(22px,4.5vw,84px);display:flex;align-items:center;justify-content:space-between;background:var(--ivory);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.monogram{font-family:Georgia,serif;color:var(--gold);font-size:66px;line-height:1;letter-spacing:-.12em;padding-right:9px}.brand-copy{display:flex;flex-direction:column;gap:3px}.brand-copy strong{font:500 27px/1 'Playfair Display',Georgia,serif;letter-spacing:.06em}.brand-copy small{font-size:9px;letter-spacing:.48em}.nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav>a:not(.nav-cta):hover,.text-link:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:14px 20px;font-weight:700}.nav-cta span{margin-left:16px;color:var(--gold)}.menu-toggle{display:none;background:transparent;border:0}.hero{display:grid;grid-template-columns:54% 46%;min-height:610px}.hero-copy{background:var(--stone);padding:clamp(56px,6.4vw,112px) clamp(24px,4.5vw,90px) 40px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:700;line-height:1.7}.gold-line{display:inline-block;height:25px;border-left:2px solid var(--gold);vertical-align:middle;margin-right:15px}.hero h1{font-size:clamp(46px,5.3vw,91px);line-height:1.08;letter-spacing:-.045em;margin:27px 0 20px}.hero h1 em,h2 em{font-style:italic;color:#705c3d}.hero-intro{font-size:clamp(16px,1.35vw,20px);line-height:1.65;max-width:490px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:16px}.btn{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:18px 24px;font-weight:700;font-size:13px}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:#856a37}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link span{margin-left:10px}.hero-location{margin-top:auto;padding-top:48px;font-size:10px;letter-spacing:.24em;font-weight:700}.hero-location span{color:var(--gold);padding:0 10px}.hero-photo{min-height:610px;background:#b5a390 url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=85') center/cover;position:relative}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:19px 26px;display:flex;justify-content:space-between;gap:10px;background:rgba(245,242,236,.93);font-size:9px;letter-spacing:.16em}.services{padding:100px clamp(24px,5vw,90px) 105px}.section-heading{max-width:680px}.section-heading h2,.about h2,.method h2,.contact h2{font-size:clamp(39px,4.1vw,66px);line-height:1.15;letter-spacing:-.035em;margin:15px 0 24px}.section-heading>p:last-child,.about-copy>p:not(.eyebrow),.contact>div>p:not(.eyebrow){line-height:1.8;color:#645e57;max-width:540px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px}.service-card{padding:35px 31px 38px;background:var(--white);border:1px solid var(--line);min-height:320px;display:flex;flex-direction:column}.service-number{font:400 52px 'Playfair Display',Georgia,serif;color:var(--gold)}.service-card h3{font-size:35px;margin:20px 0 8px}.service-card p{font-size:14px;line-height:1.75;color:#6d665e}.service-card a{font-size:12px;font-weight:700;margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between}.service-card a:hover{color:var(--gold)}.about{display:grid;grid-template-columns:42% 58%;background:#332f2b;color:var(--ivory);min-height:510px}.about-mark{display:grid;place-items:center;font:400 clamp(230px,29vw,490px)/1 Georgia,serif;color:var(--gold);opacity:.55;overflow:hidden}.about-copy{padding:90px clamp(25px,8vw,145px) 90px 35px;max-width:800px}.about-copy h2 em{color:#bfa77a}.about-copy>p:not(.eyebrow){color:#d5ccc2}.about-copy .text-link{display:inline-block;margin-top:20px}.method{padding:100px clamp(24px,5vw,90px);display:grid;grid-template-columns:1fr 1fr;gap:80px}.method-list>div{display:flex;gap:35px;border-top:1px solid var(--line);padding:22px 0}.method-list>div:last-child{border-bottom:1px solid var(--line)}.method-list span{color:var(--gold);font:34px 'Playfair Display',Georgia,serif}.method-list h3{font-size:24px;margin-bottom:8px}.method-list p{font-size:14px;color:#6d665e;line-height:1.6}.contact{padding:100px clamp(24px,5vw,90px);background:#e7e0d7;display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,140px)}.contact-note{margin-top:45px;font-size:12px;letter-spacing:.12em;color:var(--gold);font-weight:700}.contact-panel{background:var(--white);padding:clamp(25px,3.5vw,54px);box-shadow:0 12px 40px #302e2b0b}.contact-panel h3{font-size:30px;margin-bottom:8px}.contact-panel>p{font-size:12px;line-height:1.6;color:#7a7066}.contact form{display:flex;flex-direction:column;gap:9px;margin-top:25px}.contact label{font-size:12px;font-weight:700;margin-top:10px}.contact input,.contact select,.contact textarea{border:1px solid var(--line);background:var(--ivory);padding:13px 12px;outline-color:var(--gold);border-radius:0;width:100%}.contact form button{margin-top:15px}.form-status{font-size:12px;line-height:1.5}.footer{background:var(--coal);color:var(--ivory);padding:55px clamp(24px,5vw,90px);display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer p,.footer>small{font-size:11px;color:#d4c8b8}.brand-footer .brand-copy strong{font-size:20px}.brand-footer .monogram{font-size:50px}.chat-fab{position:fixed;bottom:23px;right:23px;background:var(--coal);color:white;border:1px solid var(--gold);box-shadow:0 10px 35px #0003;padding:15px 19px;z-index:10;font-size:13px}.chat-fab span{margin-left:7px}.chat-panel{position:fixed;bottom:85px;right:23px;width:min(340px,calc(100vw - 40px));background:var(--ivory);box-shadow:0 15px 55px #0003;border:1px solid var(--gold);padding:22px;z-index:10}.chat-panel[hidden]{display:none}.chat-top{display:flex;justify-content:space-between;align-items:center}.chat-top button{background:none;border:0;font-size:26px}.chat-panel p{font-size:14px;line-height:1.6;margin-top:18px}.chat-panel a{color:var(--gold);font-weight:700;font-size:13px}.chat-panel small{display:block;margin-top:20px;color:#777;font-size:11px}@media(max-width:900px){.header{height:78px}.menu-toggle{display:block;font-size:13px}.menu-toggle span{font-size:20px;margin-left:7px}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--ivory);padding:25px;z-index:9;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:20px}.nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{min-height:550px}.hero-photo{min-height:430px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.about{grid-template-columns:1fr}.about-mark{display:none}.about-copy{padding:75px 28px}.method,.contact{grid-template-columns:1fr;gap:30px}}@media(max-width:560px){.brand-copy strong{font-size:20px}.brand-copy small{font-size:7px}.monogram{font-size:50px}.hero-copy{min-height:530px;padding-top:58px}.hero h1{font-size:clamp(43px,11vw,62px)}.hero-photo{min-height:310px}.hero-actions{align-items:flex-start;flex-direction:column}.photo-caption{font-size:8px}.services,.method,.contact{padding-top:70px;padding-bottom:70px}.footer{flex-direction:column;align-items:flex-start}}