:root{--green:#0c2451;--green-2:#163a7a;--gold:#c8a24a;--gold-2:#d8bd74;--cream:#f7f2e7;--cream-2:#efe7d3;--ink:#1b1b16;--muted:#5c5a4f;--maxw:1180px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.12;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-weight:600;font-size:14px;transition:.2s;cursor:pointer;border:1.5px solid transparent}
.btn-gold{background:var(--gold);color:var(--green)} .btn-gold:hover{background:var(--gold-2)}
header{position:sticky;top:0;z-index:50;background:rgba(12,36,81,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(200,162,74,.2)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:11px;color:var(--cream)}
.mark{width:36px;height:36px;flex:none;border-radius:0;object-fit:contain}
.brand b{font-family:'Fraunces',serif;font-weight:600;font-size:19px}.brand span{color:var(--gold)}
.navlinks{display:flex;gap:15px;align-items:center}
.navlinks a{color:rgba(247,242,231,.82);font-size:13px;font-weight:500;transition:.15s}
.navlinks a:hover,.navlinks a.active{color:var(--gold)}
.navtoggle{display:none;background:transparent;border:1.5px solid rgba(200,162,74,.55);border-radius:10px;width:42px;height:36px;
  cursor:pointer;padding:0;margin-left:12px;align-items:center;justify-content:center;flex:none}
.navtoggle span,.navtoggle span::before,.navtoggle span::after{display:block;width:18px;height:2px;background:var(--gold);transition:.2s}
.navtoggle span{position:relative}
.navtoggle span::before,.navtoggle span::after{content:"";position:absolute;left:0}
.navtoggle span::before{top:-6px}.navtoggle span::after{top:6px}
.navtoggle.x span{background:transparent}
.navtoggle.x span::before{top:0;transform:rotate(45deg)}
.navtoggle.x span::after{top:0;transform:rotate(-45deg)}
.navtoggle:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px}
@media(max-width:860px){
  .nav{height:auto;min-height:64px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
  .navtoggle{display:inline-flex;margin-left:auto}
  .navlinks{display:none}
  .navlinks.open{display:flex;flex-basis:100%;order:3;flex-direction:column;align-items:stretch;gap:0;padding:6px 0 10px}
  .navlinks.open a:not(.btn){display:block;padding:13px 2px;font-size:15px;border-bottom:1px solid rgba(247,242,231,.08)}
  .navlinks.open .btn{margin-top:12px;justify-content:center}
}
.hero{background:radial-gradient(900px 380px at 82% -25%,rgba(200,162,74,.12),transparent 60%),var(--cream);color:var(--ink);border-bottom:1px solid var(--cream-2)}
.hero .wrap{padding:78px 24px 70px;max-width:820px}
.hero h1{font-size:clamp(38px,6vw,64px);margin:16px 0 16px}.hero h1 em{font-style:normal;color:var(--gold)}
.hero p{font-size:clamp(16px,2.2vw,20px);color:var(--muted);max-width:600px;margin-bottom:28px}
section{padding:74px 0}
.sec-head{max-width:680px;margin-bottom:34px}
.sec-head h2{font-size:clamp(26px,3.8vw,38px);margin:12px 0 10px}.sec-head p{color:var(--muted);font-size:16.5px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:860px){.cards{grid-template-columns:1fr}}
.ccard{background:#fff;border:1px solid var(--cream-2);border-radius:16px;padding:26px;transition:.2s}
.ccard:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(12,36,81,.08)}
.ccard .e{font-size:32px;display:inline-flex}
.ccard .e svg{width:30px;height:30px;stroke:var(--gold);stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ccard .tag{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:4px}
.ccard h3{font-size:20px;margin:12px 0 7px}.ccard p{color:var(--muted);font-size:14.5px}
.ccard.ph{padding:0;overflow:hidden}
.ccard.ph .pic{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--cream-2)}
.ccard.ph .pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s}
.ccard.ph:hover .pic img{transform:scale(1.06)}
.ccard.ph h3{margin:16px 20px 6px}.ccard.ph p{margin:0 20px 20px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{padding:7px 14px;border:1px solid var(--cream-2);background:#fff;border-radius:999px;font-size:13.5px;font-weight:500}
.note{font-size:12.5px;color:var(--muted);margin-top:18px}
.band{background:var(--cream)}
.band .sec-head h2{color:var(--ink)}.band .sec-head p{color:var(--muted)}
.istep{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:820px){.istep{grid-template-columns:1fr}}
.istep .c{border:1px solid var(--cream-2);border-radius:14px;padding:24px;background:#fff}
.istep .c .n{font-family:'Fraunces',serif;color:var(--gold);font-size:15px;font-weight:600}
.istep .c h3{color:var(--ink);font-size:19px;margin:8px 0 7px}.istep .c p{font-size:14px;color:var(--muted)}
.cta-band{background:linear-gradient(180deg,var(--cream),var(--cream-2));text-align:center;border-top:1px solid var(--cream-2)}
.cta-band h2{font-size:clamp(28px,4.4vw,42px);color:var(--ink);margin-bottom:14px}
.cta-band p{color:var(--muted);max-width:560px;margin:0 auto 26px}
/* keep dark-bg inline accents readable now that these sections are light */
.band .eyebrow,.cta-band .eyebrow{color:var(--gold)!important}
.band .note{color:var(--muted)!important}
footer{background:#06132e;color:rgba(247,242,231,.6);padding:38px 0;font-size:13px}
.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.foot .social{display:flex;gap:16px;align-items:center}
