
:root { --cream:#F6F1E6; --gold:#B89B5E; --ivory:#EFE7D6; --black:#0B0B0B; --sage:#7C8A6A; }
* { box-sizing:border-box }
html,body { margin:0; padding:0; font-family: "Inter","Helvetica Neue",Arial,sans-serif; color:var(--black); background:var(--cream) }
a { color:inherit; text-decoration:none }
.container { width:min(1120px,92vw); margin:auto }

.nav { position:sticky; top:0; z-index:50; background:rgba(246,241,230,.85); backdrop-filter:saturate(150%) blur(6px); border-bottom:1px solid rgba(0,0,0,.06) }
.nav-inner { display:flex; align-items:center; gap:24px; justify-content:space-between; padding:14px 0 }
.brand { display:flex; align-items:center; gap:12px }
.brand img { height:60px }
.brand-name { font-family: Didot,"Bodoni 72","Times New Roman",serif; letter-spacing:.12em; font-weight:600; color:var(--gold) }

.menu a { padding:10px 14px; border-radius:20px; transition:all .2s }
.menu a:hover { background:var(--ivory) }

.btn { padding:12px 18px; border:1px solid var(--gold); color:var(--black); background:linear-gradient(180deg,var(--ivory),#f2e8d7); border-radius:28px; font-weight:600; letter-spacing:.06em }
.btn.gold { background:linear-gradient(180deg,#cdb280,var(--gold)); color:#0b0b0b; border-color:transparent }
.btn.ghost { background:transparent; border-color:var(--gold) }

.hero { padding:92px 0 60px; background:radial-gradient(80% 60% at 50% 0%, #fff8ee 0%, var(--cream) 60%) }
.hero h1 { font-family: Didot,"Bodoni 72","Times New Roman",serif; font-size:clamp(36px,6vw,64px); letter-spacing:.04em; margin:0 0 14px; color:#231f1e }
.hero p.lead { font-size:clamp(16px,2.2vw,20px); color:#4b463f; max-width:720px }
.hero-cta { display:flex; gap:12px; flex-wrap:wrap; margin-top:22px }

.badges { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:18px; margin:34px 0 0 }
.badge { background:var(--ivory); border:1px solid rgba(0,0,0,.06); border-radius:14px; padding:14px }
.badge h4 { margin:6px 0 4px; font-size:16px }
.badge p { margin:0; color:#5c554c; font-size:14px }

.section { padding:72px 0 }
.section h2 { font-family: Didot,"Bodoni 72",'Times New Roman',serif; letter-spacing:.08em; font-size:clamp(28px,4.5vw,40px); margin:0 0 18px }
.section .sub { color:#5c554c; max-width:760px }

.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px }
@media (max-width:960px) { .grid-3 { grid-template-columns:1fr } }

.card { background:white; border:1px solid rgba(0,0,0,.06); border-radius:16px; padding:18px; box-shadow:0 10px 20px rgba(0,0,0,.04) }
.card h3 { margin:6px 0 8px; font-size:20px }
.card .meta { color:#685f53; font-size:14px; margin-bottom:10px }
.price { font-weight:700; color:#2e261b }

.split { display:grid; grid-template-columns:1.2fr .8fr; gap:36px; align-items:center }
@media (max-width:960px) { .split { grid-template-columns:1fr; } }

.quote { border-left:4px solid var(--gold); padding:12px 16px; background:var(--ivory); color:#4b463f; border-radius:8px }

.footer { background:var(--black); color:var(--ivory); padding:42px 0; margin-top:60px }
.footer a { color:var(--ivory) }

.small { font-size:14px; color:#6d645a }

.sticky-cta { position:fixed; right:18px; bottom:18px; z-index:60 }
.sticky-cta .btn { box-shadow:0 12px 30px rgba(184,155,94,.35) }

/* V8 Titles Fraunces */
h1, .section h2, .brand-name {
  font-family: "Fraunces", serif;
  font-weight: 400;
  letter-spacing: .04em;
}
.subtitle { font-family:"Fraunces",serif; font-style: italic; color:#5c554c; margin:6px 0 10px; font-size:clamp(16px,2.1vw,20px) }

/* V11 alignment */
.sub { text-align: justify; }
.card .small { text-align: justify; }
