/* ===========================================================
   Legal pages — Terms of Service & Privacy Policy
   =========================================================== */

.legal-page {
  background:
    radial-gradient(ellipse at top right, rgba(251, 191, 36, 0.08), transparent 45%),
    radial-gradient(ellipse at bottom left, rgba(37, 99, 235, 0.05), transparent 50%),
    var(--gray-50);
}

.legal-hero {
  padding: 80px 0 36px;
}

.legal-hero .section-head { margin-bottom: 0; }
.legal-hero h1 {
  font-size: clamp(28px, 3.4vw, 42px);
  letter-spacing: -0.02em;
  margin-bottom: 14px;
  color: var(--primary-900);
}

.legal-updated {
  display: inline-block;
  margin-top: 18px;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--gold-100);
  color: var(--gold-600);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.legal-article {
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-sm);
  padding: 44px 48px;
  margin-bottom: 72px;
}

.legal-article h2 {
  font-size: 22px;
  color: var(--primary-900);
  margin: 36px 0 12px;
}

.legal-article h2:first-child { margin-top: 0; }

.legal-article h3 {
  font-size: 17px;
  color: var(--primary-800);
  margin: 22px 0 8px;
}

.legal-article p,
.legal-article li {
  color: var(--gray-700);
  font-size: 15.5px;
  line-height: 1.75;
}

.legal-article p { margin-bottom: 14px; }

.legal-article ul,
.legal-article ol {
  list-style: disc;
  padding-left: 22px;
  margin: 0 0 16px;
}

.legal-article ol { list-style: decimal; }

.legal-article li { padding: 3px 0; }

.legal-article a {
  color: var(--primary-700);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.legal-article a:hover { color: var(--gold-600); }

.legal-nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid var(--gray-100);
}

@media (max-width: 720px) {
  .legal-article {
    padding: 28px 20px;
  }
}
