:root {
  color-scheme: dark;
  --ink: #0c1722;
  --ivory: #f5ecd8;
  --gold: #dabb7e;
  --muted: #a9b8bd;
  --line: #c4d6cf26;
  --display: 'Cinzel', Georgia, serif;
  --body: 'Cormorant Garamond', Georgia, serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--ink); color: var(--ivory); font-family: var(--body); }
a { color: var(--gold); text-underline-offset: 4px; }
button, a { -webkit-tap-highlight-color: transparent; }
button, input, textarea, select { font: inherit; }
a, button { touch-action: manipulation; }
button { cursor: pointer; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); font-weight: 400; line-height: 1.2; }
p { color: var(--muted); }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
