:root { --ink: #1d1b18; --muted: #6a6257; --accent: #1b2a4a; --gold: #c9a253; --paper: #fbf8f1; }
* { box-sizing: border-box; }
body { margin: 0; font: 17px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--ink); background: #fff; }
.top { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 14px 6vw; background: #fff; border-bottom: 1px solid #e6e2da; position: sticky; top: 0; }
.brand { font: 700 22px Georgia, "Times New Roman", serif; color: var(--accent); text-decoration: none; }
nav a { margin-left: 22px; color: var(--ink); text-decoration: none; }
nav a:hover { color: var(--accent); }
.hero { padding: 12vh 6vw; background: var(--accent); color: #fff; }
.hero h1 { margin: 0 0 12px; font: 700 clamp(32px, 6vw, 56px) Georgia, "Times New Roman", serif; }
.hero p { max-width: 36em; margin: 0 0 24px; color: #dfe3ec; }
.button { display: inline-block; padding: 12px 22px; border-radius: 8px; background: var(--gold); color: var(--ink); font-weight: 600; text-decoration: none; }
.block { padding: 8vh 6vw; max-width: 60em; margin: 0 auto; }
.block h2 { margin: 0 0 10px; font: 700 28px Georgia, "Times New Roman", serif; color: var(--accent); }
.alt { background: var(--paper); max-width: none; }
.alt > * { max-width: 60em; margin-left: auto; margin-right: auto; }
footer { padding: 24px 6vw; text-align: center; color: var(--muted); border-top: 1px solid #e6e2da; }
