/* ============================================================================
   legal.css — terms and privacy pages. Plain, readable, no motion.

   Deliberately unstyled compared to the rest of the site: legal pages that try
   to look designed read as evasive. Long measure, generous line-height, clear
   heading hierarchy, and nothing that moves.
   ========================================================================== */

.legal{padding-block:clamp(110px,14vh,170px) clamp(70px,9vw,120px)}
.legal-wrap{max-width:760px;margin-inline:auto;padding-inline:var(--space-gutter)}

.legal h1{font-size:clamp(2rem, 1.4rem + 2.4vw, 3.2rem);margin-bottom:12px}
.legal .updated{color:var(--fg-muted);font-size:.9rem;margin-bottom:clamp(32px,5vw,54px)}

.legal h2{
  font-size:clamp(1.25rem, 1.1rem + .7vw, 1.6rem);
  margin-top:clamp(38px,5vw,58px);margin-bottom:14px;
  padding-top:clamp(24px,3vw,34px);border-top:1px solid var(--border-soft);
}
.legal h2:first-of-type{border-top:0;padding-top:0}
.legal h3{font-size:1.05rem;margin-top:26px;margin-bottom:8px}

.legal p,.legal li{color:var(--fg-muted);font-size:1rem;line-height:1.75}
.legal p{margin-bottom:16px;max-width:70ch}
.legal ul,.legal ol{margin:0 0 18px 0;padding-left:0;display:flex;flex-direction:column;gap:9px}
.legal li{position:relative;padding-left:22px;max-width:70ch}
.legal ul li::before{content:"";position:absolute;left:4px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.7}
.legal ol{counter-reset:lg}
.legal ol li::before{counter-increment:lg;content:counter(lg) ".";position:absolute;left:0;top:0;color:var(--accent);font-weight:600}
.legal strong{color:var(--fg)}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

/* Callout for the "this is not legal advice" notice and anything a reader must
   not skim past. */
.legal-note{
  border:1px dashed var(--border-soft);border-radius:var(--radius-lg);
  padding:clamp(18px,2.4vw,26px);background:var(--surface-subtle);
  margin-bottom:clamp(32px,4vw,48px);
}
.legal-note p{margin-bottom:0;font-size:.94rem}
.legal-note p + p{margin-top:12px}

.legal-toc{
  display:flex;flex-wrap:wrap;gap:8px 18px;
  padding-bottom:clamp(28px,4vw,40px);margin-bottom:clamp(28px,4vw,40px);
  border-bottom:1px solid var(--border-soft);font-size:.92rem;
}
.legal-toc a{color:var(--fg-muted);text-decoration:none}
.legal-toc a:hover{color:var(--accent)}

.legal-contact{
  margin-top:clamp(40px,5vw,64px);padding-top:clamp(26px,3vw,36px);
  border-top:1px solid var(--border-soft);
}
.legal-contact p{margin-bottom:6px}
