/* The public legal pages. Deliberately plain and script-free: a visitor
   who cannot load the product bundle must still be able to read the
   privacy policy and find who to write to.

   Colours are the landing page's tokens, restated rather than imported so
   this renders standalone if landing.css ever fails. */
:root {
  --bone: #f7f5f1; --paper: #fffdfa; --ink: #17140f;
  --muted: #635d54; --muted-q: #6f6961; --line: #e3ded4;
  --wine: #7e2230; --wine-deep: #5c161f;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bone: #17140f; --paper: #1d1a14; --ink: #f7f5f1;
    --muted: #a9a296; --muted-q: #8f887c; --line: #2c271f;
    --wine: #c08a93; --wine-deep: #d8a6ad;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0; background: var(--bone); color: var(--ink);
  font: 16px/1.65 ui-serif, Georgia, "Times New Roman", serif;
  -webkit-font-smoothing: antialiased;
}
.legal {
  max-width: 66ch; margin: 0 auto; padding: 56px clamp(20px, 5vw, 40px) 40px;
  background: var(--paper); border-left: 1px solid var(--line);
  border-right: 1px solid var(--line); min-height: 70vh;
}
.legal-home {
  display: inline-block; margin-bottom: 28px; color: var(--wine);
  font: 600 13px/1 ui-sans-serif, system-ui, sans-serif;
  letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
}
.legal-home:hover, .legal-home:focus-visible { text-decoration: underline; }
.legal h1 {
  font: 500 clamp(28px, 4vw, 38px)/1.15 ui-serif, Georgia, serif;
  letter-spacing: -.02em; margin: 0 0 6px; text-wrap: balance;
}
.legal-version {
  font: 12.5px/1 ui-sans-serif, system-ui, sans-serif;
  color: var(--muted-q); margin: 0 0 32px;
}
.legal h2 {
  font: 600 15px/1.3 ui-sans-serif, system-ui, sans-serif;
  letter-spacing: .04em; text-transform: uppercase; color: var(--muted);
  margin: 32px 0 10px;
}
.legal p { margin: 0 0 14px; }
.legal a { color: var(--wine); }
.legal a:hover, .legal a:focus-visible { color: var(--wine-deep); }
.legal-pending {
  display: block; font-style: italic; color: var(--muted-q);
  font-size: 14px;
}
.legal-foot {
  max-width: 66ch; margin: 0 auto; padding: 22px clamp(20px, 5vw, 40px) 60px;
  border-top: 1px solid var(--line);
  font: 12.5px/1.6 ui-sans-serif, system-ui, sans-serif; color: var(--muted-q);
}
.legal-foot__nav { display: flex; gap: 18px; flex-wrap: wrap; margin-bottom: 10px; }
.legal-foot__nav a { color: var(--muted); text-decoration: none; }
.legal-foot__nav a:hover, .legal-foot__nav a:focus-visible {
  color: var(--wine); text-decoration: underline;
}
.legal-foot p { margin: 0 0 4px; }
:focus-visible { outline: 2px solid var(--wine); outline-offset: 2px; }
