:root{
  --navy:#00334A; --ink:#10222B; --night:#0A1F2A; --gold:#E5B964; --gold-2:#F0CD8B;
  --bronze:#7A5410; --paper:#F7F4EE; --sand:#EAE3D2; --line:#E3DCCB; --mute:#3B4A52;
  --mist:#BFD3DC; --field:#A9B5BA;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto}
a{color:var(--navy)}a:hover{color:#8A5F12}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 12px;z-index:10}

.top{background:var(--navy);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 32px;padding:12px 24px}
@media(min-width:768px){.top{padding:14px 48px}}
.top .brand img{height:40px;width:auto;display:block}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:0 24px}
.nav a{color:var(--paper);text-decoration:none;font-size:15px;padding:12px 0;display:inline-block}
.nav a:hover{color:var(--gold)}
.nav a[aria-current=page]{color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold)}

.btn{display:inline-block;background:var(--gold);color:var(--ink);text-decoration:none;font-weight:600;padding:14px 26px;font-size:15px;border:0;cursor:pointer;font-family:inherit;line-height:1.2;min-height:44px}
.btn:hover{background:var(--gold-2);color:var(--ink)}
.btn.dark{background:var(--navy);color:var(--paper)}.btn.dark:hover{background:#0B4763;color:var(--paper)}
.btn.ghost{background:transparent;border:1.5px solid var(--paper);color:var(--paper)}.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn[disabled]{opacity:.6;cursor:wait}

.serif{font-family:'DM Serif Display',Georgia,serif;font-weight:400}
.eyebrow{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);font-weight:600;margin:0 0 12px}
.h1{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(40px,7vw,76px);line-height:1.04;margin:0 0 20px}
.h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(32px,4.5vw,44px);line-height:1.1;margin:0 0 16px;color:var(--navy)}
.lead{font-size:clamp(18px,2.2vw,21px);line-height:1.55;max-width:640px;margin:0 0 32px}

.hero{background:var(--navy);color:var(--paper);position:relative;overflow:hidden}
.hero .ring{position:absolute;border:1px solid rgba(229,185,100,.3);border-radius:50%;pointer-events:none}
.hero .wrap{position:relative;padding-top:96px;padding-bottom:96px}
.hero .eyebrow{color:var(--gold)}
.hero .lead{color:#DCE7EC}
.hero.small .wrap{padding-top:72px;padding-bottom:56px}

.section{padding:88px 0}
.sand{background:var(--sand)}
.card{background:#fff;border:1px solid var(--line)}
.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:28px;margin-top:36px}
.door{display:flex;flex-direction:column;padding:40px;text-decoration:none;color:var(--ink);transition:border-color .15s}
.door:hover{border-color:var(--gold);color:var(--ink)}
.door .tag{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);font-weight:600}
.door h3{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:38px;line-height:1.1;margin:10px 0 12px;color:var(--navy)}
.door p{margin:0 0 28px;color:var(--mute)}
.door .go{margin-top:auto;font-weight:600;color:var(--navy)}
.door:hover .go{color:#8A5F12}

.split{display:flex;flex-wrap:wrap;gap:48px 64px;align-items:flex-start}
.split>*{flex:1 1 380px;min-width:0}
.areas{display:grid;gap:14px}
.areas .card{padding:20px 24px}
.areas .card div{margin-top:4px;color:var(--mute)}

form{display:flex;flex-direction:column;gap:16px}
label{display:block;font-size:14px;font-weight:500;margin-bottom:6px}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--field);background:#fff;font:inherit;font-size:16px;color:var(--ink);border-radius:0}
input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--navy)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:400}
.check input{width:20px;height:20px;margin:2px 0 0;flex:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.note{font-size:13px;color:var(--mute);margin:0}
.msg{padding:14px 16px;font-size:15px;display:none}
.msg.ok{display:block;background:#E6F2EA;border:1px solid #9BC7A9;color:#1E4D2E}
.msg.err{display:block;background:#FBEAE6;border:1px solid #E0A99B;color:#6B2414}
.req{color:#8A2A14}

.legal{max-width:820px}
.legal h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:28px;color:var(--navy);margin:40px 0 10px}
.legal p,.legal li{line-height:1.7}

.foot{background:var(--night);color:var(--mist);padding:56px 0 28px;font-size:15px}
.foot a{color:var(--gold);text-decoration:none}.foot a:hover{color:#fff}
.foot .cols{display:flex;flex-wrap:wrap;gap:32px 40px;justify-content:space-between}
.foot .cols>div{flex:1 1 220px;line-height:2}
.foot img{height:38px;width:auto;display:block;margin-bottom:12px}
.foot .copy{margin-top:32px;font-size:13px;color:#8DA7B4}
