.legal-page .hero { padding-bottom: 40px; }
.legal-page h1 { font-size: clamp(34px, 5vw, 56px); line-height: 1.05; letter-spacing: -0.03em; margin: 0 0 16px; }
.legal-page .updated { color: var(--quiet); font: 12px Geist Mono, monospace; letter-spacing: .04em; margin: 0; }
.legal-page .section { max-width: var(--copy); }
.legal-page .section h2 { font-size: 24px; letter-spacing: -0.02em; margin: 0 0 16px; }
.legal-page .section h3 { font-size: 17px; margin: 28px 0 8px; }
.legal-page .section p, .legal-page .section li { color: var(--muted); }
.legal-page .section ul { padding-left: 1.2rem; display: grid; gap: 8px; }
.legal-page .section strong { color: var(--text); font-weight: 600; }
.legal-page code {
  font: 12px Geist Mono, monospace;
  padding: 2px 6px;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--surface);
  color: var(--text);
}
.legal-table { width: 100%; border-collapse: collapse; margin-top: 8px; font-size: 14px; }
.legal-table th, .legal-table td {
  padding: 12px 14px;
  border: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
  color: var(--muted);
}
.legal-table thead th { color: var(--text); font-weight: 600; background: var(--surface); }
.legal-table tbody th { color: var(--text); font-weight: 500; width: 34%; }
@media (max-width: 640px) {
  .legal-table, .legal-table tbody, .legal-table tr, .legal-table td, .legal-table th { display: block; width: 100%; }
  .legal-table thead { display: none; }
  .legal-table tr { margin-bottom: 12px; border: 1px solid var(--border); border-radius: 8px; overflow: hidden; }
  .legal-table td, .legal-table th { border: 0; border-bottom: 1px solid var(--border); }
}
