:root{
  --cream:#f4efe5;
  --cream-deep:#eee3cc;
  --ink:#171510;
  --muted:#666057;
  --green:#243128;
  --gold:#b77a2c;
  --line:#d2c8b6;
  --white:#fffdf8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:18px;line-height:1.55}
a{color:inherit}
.site-header{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5.4vw;border-bottom:1px solid var(--line);background:rgba(244,239,229,.97);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:18px;text-decoration:none;white-space:nowrap}
.monogram{font-family:"Playfair Display",serif;font-size:40px;letter-spacing:-8px;line-height:1}.monogram span{color:#7e6d50}
.brand-name{font-family:"Playfair Display",serif;font-size:23px;font-weight:600}
.nav{display:flex;gap:36px}.nav a{text-decoration:none;color:#5f5a51;font-size:16px}.nav a:hover{color:var(--ink)}
.header-cta{justify-self:end}
.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 29px;text-decoration:none;font-weight:500;font-size:16px;border:1.25px solid var(--ink);cursor:pointer;background:transparent;font-family:inherit}
.button-dark{background:var(--ink);color:var(--white)}
.button-outline{background:transparent;color:var(--ink)}
.section-pad{padding:72px 5.4vw}
.hero{min-height:705px;display:grid;grid-template-columns:1.55fr .75fr;gap:9vw;align-items:center}
.eyebrow{letter-spacing:.27em;font-size:13px;font-weight:600;color:var(--gold);margin:0 0 24px;text-transform:uppercase}
h1,h2,h3{font-family:"Playfair Display",serif;margin:0;color:var(--ink)}
h1{font-size:clamp(58px,5.5vw,92px);line-height:.95;letter-spacing:-.03em;max-width:850px;font-weight:500}
h2{font-size:clamp(38px,3.5vw,58px);line-height:1.1;font-weight:500;letter-spacing:-.02em}
h3{font-size:24px;font-weight:600;margin-bottom:8px}
.lede{font-size:21px;color:var(--muted);max-width:760px;margin:34px 0}.lede.small{font-size:19px;max-width:600px}
.hero-actions{display:flex;gap:16px}.hero-card{align-self:end;margin-bottom:60px;background:var(--cream-deep);border:1px solid #cec2aa;border-radius:20px;padding:38px 38px 34px}.hero-card p{font-family:"Playfair Display",serif;font-size:25px;font-weight:600;line-height:1.3;margin:16px 0 0}.gold-rule{width:48px;height:1.5px;background:var(--gold)}
.quote-band{background:var(--green);color:#f7f0e4;padding:80px 5vw;text-align:center}.quote-band blockquote{font-family:"Playfair Display",serif;font-style:italic;font-size:34px;line-height:1.35;margin:0}
.two-col{display:grid;grid-template-columns:.75fr 1.25fr;gap:12vw;align-items:start}.how{background:#f7f3eb;border-bottom:1px solid var(--line)}.body-copy{font-size:19px;color:#555149}.body-copy p{margin:0 0 24px}
.focus{background:var(--cream-deep);border-bottom:1px solid var(--line)}.focus h2{margin-bottom:62px}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #c9bea9;border-radius:17px;overflow:hidden}.focus-grid article{padding:38px;min-height:220px}.focus-grid article+article{border-left:1px solid #c9bea9}.number{font-family:"Playfair Display",serif;color:var(--gold);display:block;margin-bottom:22px}.focus-grid p{color:var(--muted);font-size:17px;margin:0}
.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:#f7f3eb}.principles{list-style:none;padding:0;margin:0}.principles li{padding:23px 0;border-bottom:1px solid var(--line);font-size:19px;position:relative;padding-left:28px}.principles li::before{content:"•";position:absolute;left:0;color:var(--gold);font-size:24px}.text-link{display:inline-block;margin-top:6px;text-decoration:none;border-bottom:2px solid var(--gold);font-weight:600;font-size:16px}
.dark-section{background:var(--ink);color:#e8e0d3}.dark-section h2{color:#f4eee4}.dark-section .body-copy{color:#c7c0b5}.light-link{color:#f4eee4}
.about{background:#f7f3eb}.about-copy{max-width:780px}.signature{border-top:1px solid var(--line);margin-top:44px;padding-top:34px;display:flex;align-items:center;gap:18px}.avatar{width:60px;height:60px;border-radius:50%;background:var(--green);color:#f4eee4;display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:19px}.signature strong{display:block;font-family:"Playfair Display",serif;color:var(--ink);font-size:20px}.signature span{display:block;font-size:14px;color:#777168}
.contact{background:var(--cream-deep);display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;padding-top:110px;padding-bottom:120px}.contact-form{background:#f7f2e9;border:1px solid #d2c6b2;border-radius:20px;padding:45px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}label,legend{font-size:16px;color:#26231e}input,textarea{display:block;width:100%;margin-top:8px;border:1px solid #cfc6b7;border-radius:10px;background:#faf7f0;padding:15px;font:inherit;color:var(--ink)}textarea{resize:vertical}fieldset{border:0;padding:0;margin:24px 0}legend{margin-bottom:10px}.radio{display:inline-flex;align-items:center;margin-right:25px}.radio input{width:auto;margin:0 8px 0 0;accent-color:var(--gold)}.contact-form .button{margin-top:24px}.form-status{font-size:14px;color:var(--muted);margin:14px 0 0}.footer{text-align:center;padding:28px;background:var(--green);color:#e6ded0;font-size:14px}
@media (max-width:1000px){.site-header{grid-template-columns:1fr auto}.nav{display:none}.header-cta{justify-self:end}.hero{grid-template-columns:1fr;min-height:auto;gap:30px}.hero-card{margin:0;align-self:auto;max-width:520px}.two-col,.split-feature,.contact{grid-template-columns:1fr;gap:42px}.focus-grid{grid-template-columns:1fr}.focus-grid article+article{border-left:0;border-top:1px solid #c9bea9}.contact{padding-top:80px}}
@media (max-width:650px){body{font-size:16px}.site-header{padding:0 20px;height:68px}.brand-name{font-size:17px}.monogram{font-size:33px}.header-cta{display:none}.section-pad{padding:56px 24px}.hero{padding-top:70px;padding-bottom:70px}h1{font-size:52px}.quote-band{padding:55px 24px}.quote-band blockquote{font-size:27px}.form-row{grid-template-columns:1fr}.contact-form{padding:28px 22px}.hero-actions{flex-wrap:wrap}}
