/* ─── Legal pages ────────────────────────────────────────────────────────── */
.legal-wrap {
  max-width: 760px; margin: 0 auto; padding: 60px 5vw 100px;
}
.legal-header {
  margin-bottom: 40px; padding-bottom: 32px;
  border-bottom: 1px solid var(--border);
}
.legal-label {
  font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--accent); margin-bottom: 10px;
}
.legal-header h1 { font-size: clamp(1.6rem, 4vw, 2.4rem); margin-bottom: 8px; }
.legal-date { font-size: .85rem; color: var(--muted); }

.legal-body { font-size: .93rem; line-height: 1.75; }
.legal-body h2 {
  font-size: 1.1rem; font-weight: 700; margin: 36px 0 12px;
  color: var(--text); letter-spacing: -.01em;
}
.legal-body h3 { font-size: .95rem; font-weight: 600; margin: 24px 0 8px; color: var(--text); }
.legal-body p  { margin-bottom: 14px; color: var(--text-2); }
.legal-body ul, .legal-body ol { margin: 0 0 14px 22px; color: var(--text-2); }
.legal-body li { margin-bottom: 6px; }
.legal-body a  { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }

.legal-body table {
  width: 100%; border-collapse: collapse; margin: 16px 0; font-size: .87rem;
}
.legal-body th {
  background: var(--bg-2); border: 1px solid var(--border);
  padding: 10px 14px; text-align: left; font-weight: 600; color: var(--text);
}
.legal-body td {
  border: 1px solid var(--border); padding: 10px 14px; color: var(--text-2);
}
.legal-body tr:nth-child(even) td { background: var(--bg-2); }
.legal-body code {
  background: var(--bg-3); border: 1px solid var(--border);
  border-radius: 5px; padding: 2px 6px; font-size: .82rem;
}

.legal-notice {
  background: var(--accent-bg); border: 1px solid rgba(91,91,214,.2);
  border-radius: var(--radius-sm); padding: 14px 18px;
  font-size: .88rem; color: var(--accent); margin-bottom: 28px;
}
