:root {
  color-scheme: light;
  --paper: #f4f1eb;
  --ink: #181719;
  --muted: #68636d;
  --aubergine: #30263f;
  --rule: #d9d3ca;
  --raised: #fbf9f5;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
}
a { color: var(--aubergine); text-underline-offset: 3px; }
.shell { width: min(760px, calc(100% - 40px)); margin: 0 auto; }
header { padding: 30px 0 18px; border-bottom: 1px solid var(--rule); }
header img { display: block; width: 132px; height: auto; }
nav { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 18px; font-size: 0.9rem; }
main { padding: 54px 0 80px; }
h1 { margin: 0 0 8px; font-family: "Instrument Serif", Georgia, serif; font-size: clamp(2.5rem, 8vw, 4.7rem); line-height: 0.96; font-weight: 400; letter-spacing: -0.03em; }
h2 { margin: 42px 0 8px; font-size: 1rem; letter-spacing: 0.01em; }
p, li { color: var(--muted); }
.meta { margin: 0 0 38px; font-size: 0.88rem; }
.lead { color: var(--ink); font-size: 1.12rem; }
.card { margin-top: 28px; padding: 22px; background: var(--raised); border: 1px solid var(--rule); border-radius: 14px; }
.button { display: inline-block; min-height: 48px; padding: 12px 20px; border-radius: 12px; background: var(--aubergine); color: white; text-decoration: none; font-weight: 700; }
footer { padding: 24px 0 40px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 0.84rem; }
@media (max-width: 480px) { main { padding-top: 38px; } .shell { width: min(100% - 30px, 760px); } }
