/* Colours from the app (src/lib/theme.ts). */
:root {
  --paper: #f7f3ec; --card: #fffdf8; --ink: #24211d; --soft: #5f5850; --line: #e2dbcf; --accent: #b4472f;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root { --paper: #16151a; --card: #1f1e24; --ink: #eae6df; --soft: #aaa49b; --line: #34323a; --accent: #e2896b; }
}
* { box-sizing: border-box; }
body {
  margin: 0; background: var(--paper); color: var(--ink);
  font: 18px/1.6 "Iowan Old Style", Charter, Georgia, serif;
}
main { max-width: 700px; margin: 0 auto; padding: 28px 16px 40px; }
header { margin-bottom: 36px; }
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--ink); text-decoration: none;
  font-size: 22px; font-weight: 600; letter-spacing: .02em; }
.brand img { border-radius: 11px; border: 1px solid var(--line); }
h1 { font-size: 36px; line-height: 1.15; margin: 0 0 14px; }
h2 { font-size: 24px; line-height: 1.25; margin: 44px 0 8px; padding-top: 28px; border-top: 1px solid var(--line); }
h3 { font-size: 18px; margin: 24px 0 4px; }
p, li { margin: 0 0 12px; }
a { color: var(--accent); }
.lede { font-size: 20px; color: var(--ink); }
.muted { color: var(--soft); font-size: 15px; }
.shots { display: flex; gap: 14px; margin: 32px 0; overflow-x: auto; scroll-snap-type: x mandatory; }
.shots img { flex: 0 0 auto; width: min(206px, 62vw); height: auto; border-radius: 22px; border: 1px solid var(--line);
  scroll-snap-align: start; }
.features { padding-left: 1.1em; }
.features li::marker { color: var(--accent); }
footer { border-top: 1px solid var(--line); padding: 20px 16px 36px; text-align: center;
  font: 14px/1.4 -apple-system, system-ui, sans-serif; }
footer a { color: var(--soft); margin: 0 10px; text-decoration: none; }
footer a:hover { color: var(--accent); }
