/* Privacy and terms pages (uses the colours and fonts from style.css) */
.legal-top { border-bottom: 2px solid var(--blue); background: var(--surface); }
.legal-top a { display: inline-flex; align-items: center; gap: 10px; max-width: 760px; margin: 0 auto; padding: 14px 16px;
  font: 800 1.5rem/1 var(--f-display); letter-spacing: .14em; color: var(--ink); text-decoration: none; }
.legal-top-inner { max-width: 760px; margin: 0 auto; }
.legal-top svg { width: 30px; height: 30px; }
.legal { max-width: 760px; margin: 0 auto; padding: 28px 16px 60px; }
.legal h1 { font: 800 clamp(2.2rem, 6vw, 3.2rem)/1 var(--f-display); text-transform: uppercase; margin: 6px 0 6px; }
.legal h2 { font: 800 1.5rem/1.1 var(--f-display); text-transform: uppercase; letter-spacing: .02em; margin: 34px 0 10px; }
.legal h3 { font: 600 1.02rem/1.3 var(--f-body); margin: 20px 0 6px; }
.legal p, .legal li { line-height: 1.6; }
.legal ul { padding-left: 1.2em; }
.legal li { margin: 4px 0; }
.legal a { color: var(--blue); }
.legal .updated { color: var(--muted); font: 500 .8rem/1 var(--f-mono); letter-spacing: .1em; text-transform: uppercase; }
.legal .back { display: inline-block; margin-bottom: 8px; color: var(--muted); text-decoration: none; font-weight: 500; }
.legal .back:hover { color: var(--ink); }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: .95rem; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 10px 12px; border-top: 1px solid var(--line); }
.legal th { font: 500 .74rem/1.3 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.legal .table-wrap { overflow-x: auto; }
.legal .note { padding: 14px 16px; border-radius: 10px; background: var(--surface); border: 1px solid var(--line); }
/* phones: each row of the table becomes a small card */
@media (max-width: 640px) {
  .legal thead { display: none; }
  .legal table, .legal tbody, .legal tr, .legal td { display: block; width: 100%; }
  .legal tr { margin: 0 0 12px; padding: 4px 0; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
  .legal td { border: 0; padding: 6px 14px; }
  .legal td::before { display: block; font: 500 .7rem/1.4 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
  .legal td:nth-child(1)::before { content: "What"; }
  .legal td:nth-child(2)::before { content: "Why, and on what legal basis"; }
  .legal td:nth-child(3)::before { content: "Who receives it"; }
  .legal td:nth-child(4)::before { content: "How long"; }
}
