:root{
  --black:#0d0d0d;--charcoal:#171717;--white:#f8f7f3;--cream:#eeeae2;--gold:#c6a15b;
  --text:#202020;--muted:#6d6a64;--line:#dedbd4;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--white);font-family:Montserrat,Arial,sans-serif;line-height:1.65}
.container{width:min(1120px,90%);margin:auto}.site-header{position:absolute;top:0;left:0;right:0;z-index:10;color:#fff}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.18)}
.logo{font-family:"Playfair Display",serif;font-size:31px;letter-spacing:.22em;color:#fff;text-decoration:none;font-weight:600}.logo span{color:var(--gold);font-size:14px;vertical-align:top;margin-left:2px}.nav nav{display:flex;align-items:center;gap:30px}.nav nav a{color:#fff;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.nav-cta{border:1px solid rgba(255,255,255,.65);padding:11px 16px}.menu{display:none;background:none;border:0;color:#fff;font-size:25px}
.hero{min-height:720px;display:flex;align-items:center;position:relative;background:linear-gradient(115deg,#111 0%,#222 55%,#151515 100%);overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 40%,rgba(198,161,91,.18),transparent 30%)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.08))}
.hero-content{position:relative;z-index:2;color:#fff;padding-top:90px;max-width:850px}.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#d9c28f;font-weight:600;margin:0 0 18px}.eyebrow.dark{color:#9a7740}.hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(48px,7vw,84px);line-height:1.02;font-weight:500;margin:0 0 24px;letter-spacing:-.025em}.hero h1 em,h2 em{font-style:italic;color:#d8bb7b}.hero-copy{font-size:17px;max-width:650px;color:#e3e1dd;margin-bottom:34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-block;padding:15px 22px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;text-decoration:none;border:1px solid transparent;cursor:pointer}.button-gold{background:var(--gold);color:#111}.button-outline{border-color:rgba(255,255,255,.6);color:#fff}.intro{padding:105px 0;background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.intro h2,.section h2,.dark-section h2,.contact-section h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(38px,4.2vw,58px);line-height:1.1;font-weight:500;margin:0}.intro p:not(.eyebrow){font-size:16px;color:#4e4b46;margin:0}
.section{padding:105px 0}.section-heading{max-width:780px;margin-bottom:55px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{border:1px solid var(--line);padding:32px 26px;min-height:275px;background:#fff}.card-number{font-size:11px;letter-spacing:.15em;color:#9a7740;margin-bottom:35px}.card h3,.features h3{font-family:"Playfair Display",Georgia,serif;font-size:23px;line-height:1.2;font-weight:600;margin:0 0 14px}.card p,.features p{color:var(--muted);font-size:13px;margin:0}
.dark-section{padding:115px 0;background:var(--black);color:#fff}.about-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:100px;align-items:center}.about-mark{font-family:"Playfair Display",serif;font-size:clamp(65px,9vw,125px);letter-spacing:.12em;color:#242424}.dark-section h2{margin-bottom:28px}.dark-section p:not(.eyebrow){color:#bdbbb6;max-width:650px}.text-link{display:inline-block;margin-top:20px;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}.text-link span{color:var(--gold);font-size:18px;margin-left:10px}
.why{background:var(--cream)}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.features>div{border-top:1px solid #bdb7ac;padding-top:23px}
.contact-section{background:#111;color:#fff;padding:105px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-section h2{margin-bottom:25px}.contact-section>div>p:not(.eyebrow){color:#aaa8a2;max-width:520px}.contact-detail{border-top:1px solid #333;padding:17px 0;display:flex;justify-content:space-between;max-width:520px;font-size:13px}.contact-detail span{color:#888;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.contact-detail a,.contact-detail strong{color:#fff;text-decoration:none;font-weight:500}
form{background:#fff;color:#171717;padding:35px}.contact-section label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;margin-bottom:17px}.contact-section input,.contact-section select,.contact-section textarea{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #d8d5cf;background:#faf9f6;font:inherit;font-size:13px;outline:none}.contact-section input:focus,.contact-section select:focus,.contact-section textarea:focus{border-color:#9a7740}.contact-section .full{width:100%;border:0}.form-note{font-size:10px!important;color:#777!important;margin:12px 0 0!important}.form-status{font-size:12px!important;margin:8px 0 0!important;color:#9a7740!important}
footer{background:#0a0a0a;color:#8f8d88;padding:50px 0 25px}.footer-grid{display:flex;justify-content:space-between;gap:40px}.footer-logo{font-size:26px}.footer-grid p{font-size:12px;max-width:300px}.footer-links{display:flex;gap:24px;align-items:center}.footer-links a{color:#aaa;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.copyright{border-top:1px solid #242424;margin-top:40px;padding-top:20px;font-size:10px;color:#666}
@media(max-width:900px){.cards,.features{grid-template-columns:repeat(2,1fr)}.intro-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.about-mark{display:none}.nav nav{display:none}.menu{display:block}.hero{min-height:680px}}
@media(max-width:600px){.hero h1{font-size:46px}.hero-copy{font-size:15px}.cards,.features{grid-template-columns:1fr}.section,.intro,.dark-section,.contact-section{padding:75px 0}.footer-grid{flex-direction:column}.footer-links{flex-wrap:wrap}form{padding:24px}.nav{height:75px}}
