:root{--navy:#101E28;--storm:#33505E;--gold:#C08A2E;--cream:#EDEEEA;--ink:#101E28;--muted:#33505E;--line:#D5D8D2}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--cream);color:var(--ink);font-family:'Inter',system-ui,sans-serif;line-height:1.6;font-size:17px}
a{color:var(--navy)}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
header{border-bottom:1px solid var(--line)}
header .wrap{display:flex;justify-content:space-between;align-items:center;height:72px}
.logo{font-family:'Fraunces',Georgia,serif;font-size:26px;font-weight:600;color:var(--navy);text-decoration:none;letter-spacing:.5px}
.logo{display:flex;align-items:center;gap:10px}.logo svg{width:30px;height:30px}
nav a{margin-left:24px;text-decoration:none;font-size:15px;color:var(--muted)}
nav a:hover{color:var(--navy)}
.hero{padding:96px 24px 72px}
.eyebrow{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--storm);font-weight:600;margin-bottom:18px}
h1{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(38px,6vw,64px);line-height:1.08;color:var(--navy);max-width:820px}
.lede{font-size:20px;color:var(--muted);max-width:640px;margin:24px 0 36px}
.btn{display:inline-block;background:var(--gold);color:#fff;padding:14px 26px;border-radius:2px;text-decoration:none;font-weight:500}
.btn:hover{background:#a8781f}
section{padding:72px 0;border-top:1px solid var(--line)}
h2{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:34px;color:var(--navy);margin-bottom:12px}
.sub{color:var(--muted);max-width:620px;margin-bottom:40px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.card{background:#fff;border:1px solid var(--line);padding:32px;display:flex;flex-direction:column}
.card h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:24px;color:var(--navy);margin-bottom:6px}
.price{font-size:15px;font-weight:600;color:var(--storm);margin-bottom:16px}
.card p{color:var(--muted);font-size:16px;margin-bottom:16px}
.card ul{list-style:none;font-size:15px}
.card li{padding:6px 0;border-top:1px solid var(--line)}
.soon{display:inline-block;font-size:12px;letter-spacing:1px;text-transform:uppercase;background:var(--storm);color:var(--cream);padding:3px 10px;margin-bottom:14px;align-self:flex-start}
.contact dl{display:grid;grid-template-columns:140px 1fr;gap:10px 24px;max-width:620px}
.contact dt{color:var(--muted)}
footer{background:var(--navy);color:#D5D8D2;padding:40px 0;font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}
footer a{color:#D5D8D2;margin-right:20px}
.legal{padding:64px 24px;max-width:760px}
.legal h1{font-size:44px;margin-bottom:8px}
.legal .date{color:var(--muted);margin-bottom:40px}
.legal h2{font-size:22px;margin:32px 0 8px}
.legal p,.legal li{margin-bottom:12px}
.legal ul{padding-left:20px}
@media(max-width:640px){nav a{margin-left:14px;font-size:14px}.hero{padding:64px 24px 48px}.contact dl{grid-template-columns:1fr}}
.card.featured{border-top:3px solid var(--storm)}
.mark-bg{position:absolute;right:-60px;top:40px;width:420px;opacity:.07;pointer-events:none}
.hero-wrap{position:relative;overflow:hidden}
@media(max-width:640px){.mark-bg{width:260px;right:-80px}}
