/* Shared styles for the policy pages (/privacy, /terms, /refunds) */
  :root {
    --black: #000000; --ink: #1D1D1F; --mist: #F5F5F7; --white: #FFFFFF;
    --muted: #6E6E73; --on-dark-2: #A1A1A6; --lapis: #1D5BD8; --lapis-lt: #7FA4FF;
    --line: rgba(0, 0, 0, .08);
    --serif: "Newsreader", Georgia, "Times New Roman", serif;
    --sans: "Geist", "Helvetica Neue", Arial, sans-serif;
  }
  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; }
  body { margin: 0; background: var(--white); color: var(--ink); font: 400 1.0625rem/1.65 var(--sans); -webkit-font-smoothing: antialiased; }
  a { color: var(--lapis); text-underline-offset: 3px; }
  a:focus-visible { outline: 2px solid var(--lapis); outline-offset: 3px; border-radius: 2px; }
  .wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
  .site-header { background: var(--black); }
  .site-header .wrap { display: flex; align-items: center; justify-content: space-between; height: 64px; }
  .site-header a { color: var(--white); display: inline-flex; }
  .site-header .back { color: var(--on-dark-2); font-size: 0.92rem; text-decoration: none; }
  .site-header .back:hover { color: var(--white); }
  .site-header .back:focus-visible, .site-header a:focus-visible { outline-color: var(--lapis-lt); }
  .logo { height: 26px; width: auto; aspect-ratio: 516.17 / 125.2; fill: currentColor; }
  main { padding: 72px 0 96px; }
  .doc { max-width: 68ch; }
  h1 { font: 300 clamp(2.6rem, 6vw, 4rem)/1.04 var(--serif); letter-spacing: -0.02em; margin: 0 0 14px; }
  .date { color: var(--muted); margin: 0 0 36px; }
  .lede { font-size: 1.18rem; line-height: 1.6; margin: 0 0 40px; }
  .short { background: var(--mist); border-radius: 18px; padding: 26px 28px; margin: 0 0 56px; }
  .short h2 { margin-top: 0; }
  .short ul { margin-bottom: 0; }
  h2 { font: 400 1.85rem/1.2 var(--serif); letter-spacing: -0.01em; margin: 56px 0 14px; }
  h3 { font: 600 1.05rem/1.4 var(--sans); margin: 28px 0 6px; }
  p { margin: 0 0 14px; }
  ul { padding-left: 1.2em; margin: 0 0 14px; }
  li { margin: 0 0 6px; }
  li::marker { color: var(--muted); }
  .site-footer { background: var(--mist); color: var(--muted); font-size: 0.92rem; padding: 32px 0; }
  .site-footer .wrap { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; }
  .site-footer p { margin: 0; }
  @media (max-width: 600px) { .wrap { padding: 0 16px; } main { padding: 48px 0 72px; } .short { padding: 22px 20px; } h2 { margin-top: 44px; } }
