/* Legal pages (privacy / terms) — builds on base.css. */

.legal-header {
  background: linear-gradient(160deg, var(--navy-900), var(--navy-800));
  color: #fff;
  padding: 56px 0;
}
.legal-header .brand { color: #fff; margin-bottom: 20px; display: inline-flex; }
.legal-header .brand img { width: 30px; height: 30px; border-radius: 8px; }
.legal-header h1 { font-size: clamp(28px, 4vw, 40px); margin-bottom: 4px; }
.legal-header .meta { color: #93a5cf; font-size: 14px; margin: 0; }

.legal-body { max-width: 780px; margin: 0 auto; padding: 48px 24px 80px; }
.legal-body h2 { font-size: 22px; margin-top: 40px; }
.legal-body h3 { font-size: 17px; margin-top: 28px; }
.legal-body p, .legal-body li { color: var(--slate-700); font-size: 15.5px; }
.legal-body ul { padding-left: 22px; }
.legal-body li { margin-bottom: 8px; }
.legal-note {
  background: var(--amber-100);
  border: 1px solid #fcd34d;
  border-radius: var(--radius-sm);
  padding: 14px 18px;
  font-size: 14px;
  color: #7c5806;
  margin-bottom: 32px;
}
.legal-toc {
  background: var(--blue-50);
  border-radius: var(--radius);
  padding: 20px 24px;
  margin-bottom: 8px;
}
.legal-toc strong { display: block; margin-bottom: 8px; }
.legal-toc ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 32px; }
.legal-toc li { margin-bottom: 6px; font-size: 14.5px; }
@media (max-width: 600px) { .legal-toc ol { columns: 1; } }

.legal-footer {
  border-top: 1px solid var(--slate-200);
  padding: 24px;
  text-align: center;
  font-size: 14px;
  color: var(--slate-500);
}
.legal-footer a { margin: 0 10px; }
