/* Shared styling for the legal pages (terms, refunds, privacy). */
:root {
  --paper: #faf7f2; --card: #fffdf9; --ink: #211d18; --ink-soft: #6d6459;
  --ink-faint: #9b9184; --line: #e7e0d4; --line-soft: #efe9de;
  --accent: #b4552d; --accent-deep: #8f3f1e;
  --serif: "Fraunces", Georgia, serif;
  --sans: "Instrument Sans", -apple-system, Helvetica, sans-serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font: 16px/1.65 var(--sans); color: var(--ink); background: var(--paper);
  -webkit-font-smoothing: antialiased; }
nav { position: sticky; top: 0; background: color-mix(in srgb, var(--paper) 88%, transparent);
  backdrop-filter: blur(10px); border-bottom: 1px solid var(--line-soft); }
.nav-inner { max-width: 760px; margin: 0 auto; padding: 14px 24px;
  display: flex; align-items: center; gap: 18px; }
.wordmark { font: 600 20px var(--serif); color: var(--ink); text-decoration: none; }
.wordmark .dot { color: var(--accent); }
.nav-inner .links { margin-left: auto; display: flex; gap: 16px; font-size: 13.5px; }
.nav-inner .links a { color: var(--ink-soft); text-decoration: none; }
main { max-width: 760px; margin: 0 auto; padding: 48px 24px 90px; }
h1 { font: 550 34px/1.15 var(--serif); letter-spacing: -0.01em; }
.updated { margin-top: 8px; font-size: 13px; color: var(--ink-faint); }
h2 { font: 600 17px var(--sans); margin: 32px 0 6px; }
p, li { color: var(--ink-soft); }
p { margin: 10px 0; }
ul { margin: 10px 0 10px 22px; }
li { margin: 5px 0; }
li::marker { color: var(--accent); }
a { color: var(--accent-deep); }
strong { color: var(--ink); }
footer { border-top: 1px solid var(--line); padding: 24px; text-align: center;
  font-size: 13px; color: var(--ink-faint); }
footer a { color: var(--accent-deep); }
