/* Mousetrap's colours, shared by its page, privacy policy and support page. */
:root {
  --bg: #fff7f8;
  --text: #24181c;
  --muted: #7a6870;
  --line: #f2dde2;
  --accent: #ff4a64;
  --accent-text: #fff;
  --shadow: rgba(140, 30, 60, .22);
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #1a1215;
    --text: #fbeff2;
    --muted: #bba3aa;
    --line: #3a262d;
    --accent: #ff5a72;
    --shadow: rgba(0, 0, 0, .5);
  }
}

/* The privacy policy and support page: one readable column of prose. */
.doc { max-width: 680px; margin: 0 auto; padding: 28px 0 24px; }
.doc h1 { font-size: clamp(34px, 6vw, 46px); font-weight: 800; line-height: 1.1; letter-spacing: -.02em; margin: 0 0 8px; }
.doc .updated { color: var(--muted); margin: 0 0 28px; }
.doc h2 { font-size: 21px; font-weight: 800; line-height: 1.3; margin: 34px 0 8px; }
.doc p, .doc li { line-height: 1.6; text-wrap: pretty; }
.doc p { margin: 0 0 12px; }
.doc ul { margin: 0 0 12px; padding-left: 22px; }
.doc li { margin: 0 0 6px; }
.doc .summary { background: color-mix(in srgb, var(--accent) 9%, var(--bg)); border-radius: 18px; padding: 18px 22px; margin: 0 0 8px; }
.doc .summary p:last-child { margin: 0; }
.doc details { border-bottom: 1px solid var(--line); padding: 14px 0; }
.doc summary { font-weight: 800; cursor: pointer; list-style-position: outside; }
.doc details p { margin: 10px 0 0; color: var(--muted); }
.doc .contact { font-weight: 800; }
.foot nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; margin-bottom: 10px; }
