*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
:root{
  --gold:#B8975A;--gold-light:#D4B483;--gold-pale:#F5ECD8;
  --gold-border:rgba(184,151,90,0.25);--gold-strong:rgba(184,151,90,0.45);
  --ink:#0F1F0F;--ink-mid:#182818;--ink-soft:#2E4A2E;
  --ink-muted:#5A7A5A;--ink-faint:#8AAA8A;
  --cream:#F7F9F4;--cream-mid:#EEF3EC;--cream-dark:#E4EDE2;
  --white:#FFFFFF;--border:#D8E4D8;--border-strong:#B8CEB8;
}
body{font-family:'Jost',sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
.si{max-width:1120px;margin:0 auto;padding:0 40px}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.gold-rule{width:48px;height:2px;background:var(--gold);margin:22px 0}
.btn-p{background:var(--gold);color:var(--ink);font-family:'Jost',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;padding:14px 32px;border-radius:1px;text-decoration:none;display:inline-block;transition:background .2s}
.btn-p:hover{background:var(--gold-light)}
.btn-g{border:1px solid var(--gold-strong);color:var(--gold-light);font-family:'Jost',sans-serif;font-size:11px;font-weight:400;letter-spacing:0.14em;text-transform:uppercase;padding:14px 32px;border-radius:1px;text-decoration:none;display:inline-block;transition:all .2s}
.btn-g:hover{border-color:var(--gold);color:var(--gold-pale);background:rgba(184,151,90,.06)}
.body-text{font-size:14px;font-weight:300;line-height:1.9;color:var(--ink-soft)}
.img-cap{font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-muted);margin-top:8px}
.pull-quote{border-left:2px solid var(--gold);padding:20px 28px;margin:28px 0;background:rgba(15,31,15,.03)}
.pull-quote p{font-family:'EB Garamond',serif;font-size:20px;font-style:italic;color:var(--ink-mid);line-height:1.55}
.pull-quote cite{font-size:10.5px;letter-spacing:.07em;color:var(--ink-muted);margin-top:12px;display:block;font-style:normal;font-weight:500}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* NAV */
.nav{background:var(--ink);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(184,151,90,.15)}
.nav-brand{font-family:'EB Garamond',serif;font-size:21px;color:var(--gold-light);letter-spacing:.03em;text-decoration:none}
.nav-brand em{font-style:italic}
.nav-links{display:flex;gap:24px}
.nav-link{font-size:10px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:rgba(160,210,160,.6);text-decoration:none;transition:color .2s}
.nav-link:hover,.nav-link.active{color:var(--gold-light)}
.nav-cta{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--gold);padding:8px 20px;border-radius:1px;text-decoration:none;transition:background .2s;white-space:nowrap}
.nav-cta:hover{background:var(--gold-light)}

/* FOOTER */
.footer{background:#080F08;padding:52px 0 36px;border-top:1px solid rgba(184,151,90,.1)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:44px}
.footer-brand{font-family:'EB Garamond',serif;font-size:24px;color:#ffffff;margin-bottom:12px;font-style:italic}
.footer-brand em{color:var(--gold-light)}
.footer-tagline{font-size:12.5px;font-weight:300;color:rgba(140,180,140,.75);line-height:1.75;max-width:260px}
.footer-motto{font-family:'EB Garamond',serif;font-size:13px;font-style:italic;color:rgba(120,160,120,.5);margin-top:14px}
.footer-heading{font-size:9.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:9px}
.footer-links a{font-size:12.5px;font-weight:300;color:rgba(140,180,140,.75);text-decoration:none;transition:color .2s}
.footer-links a:hover{color:var(--gold-light)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.04);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-copy{font-size:11px;color:rgba(100,140,100,.65);letter-spacing:.04em}
.footer-rec{font-size:11px;color:rgba(100,140,100,.5);letter-spacing:.04em}

@media(max-width:900px){
  .nav-links{display:none}
  .two-col,.three-col,.footer-grid{grid-template-columns:1fr}
  .si{padding:0 24px}
}

/* MOBILE HAMBURGER - applies to all pages */
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;margin-left:8px}
.nav-hamburger span{display:block;width:22px;height:2px;background:rgba(184,151,90,.8);border-radius:1px;transition:all .3s}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-mobile-menu{display:none;position:fixed;top:58px;left:0;right:0;background:var(--ink);border-bottom:1px solid rgba(184,151,90,.15);z-index:99;flex-direction:column;padding:8px 0}
.nav-mobile-menu.open{display:flex}
.nav-mobile-link{font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:rgba(160,210,160,.7);text-decoration:none;padding:14px 28px;border-bottom:1px solid rgba(184,151,90,.06)}
.nav-mobile-link:hover,.nav-mobile-link.active{color:var(--gold-light)}
.nav-mobile-cta{margin:12px 20px;text-align:center;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--gold);padding:14px;border-radius:1px;text-decoration:none;display:block}
@media(max-width:900px){
  .nav-hamburger{display:flex}
  .nav .nav-cta{display:none}
}
