/* ==========================================================================
   Legal pages (/privacy/, /terms/), rendered by legal_page.py from content/*.md.
   One reading column, body-size text, section headings a step up from the body.
   Linked from every legal page by build_pages.py.
   ========================================================================== */

  .legal-hero { padding: clamp(56px, 7vw, 104px) 0 clamp(40px, 5vw, 64px); border-bottom: 1px solid var(--line); }
  .legal-hero__title {
    font-size: min(clamp(2.4rem, 5vw, 4rem), calc((min(100vw, 1240px) - 64px) * 0.14));
    font-variation-settings: 'wdth' 108;
    line-height: 1;
    letter-spacing: -0.03em;
  }
  .legal-hero__date { margin-top: 20px; font-family: var(--f-mono); font-size: var(--data); font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); }
  .legal-hero__lead { margin-top: 24px; max-width: 64ch; font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.55; color: var(--ink-2); }

  .legal { padding: clamp(40px, 5vw, 56px) 0 clamp(72px, 9vw, 120px); }
  .legal__body { max-width: 68ch; }
  .legal__section + .legal__section { margin-top: clamp(32px, 4vw, 44px); }
  .legal__section h2 {
    font-family: var(--f-display);
    font-variation-settings: 'wdth' 108;
    font-weight: 700;
    font-size: clamp(1.3rem, 2vw, 1.6rem);
    line-height: 1.2;
    letter-spacing: -0.02em;
  }
  .legal__section p,
  .legal__section li { font-size: 1.125rem; line-height: 1.75; }
  .legal__section p { margin-top: 12px; }
  .legal__section ul { margin: 12px 0 0; padding-left: 1.25em; }
  .legal__section li + li { margin-top: 6px; }
  .legal__section strong { font-weight: 600; }
  .legal__section a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
  .legal__section a:hover { text-decoration-thickness: 2px; }
