/* ═══════ PAGE-SPECIFIC: legal pages ═══════ */

.legal-hero {
  padding: calc(var(--header-h) + 48px) 0 40px;
  text-align: center; position: relative;
}
.legal-hero::before {
  content: ''; position: absolute; top: 0; left: 50%; width: 600px; height: 300px;
  transform: translateX(-50%);
  background: radial-gradient(ellipse, rgba(200,126,255,0.12) 0%, transparent 60%);
  pointer-events: none;
}
.legal-hero h1 {
  font-size: clamp(28px, 5vw, 40px); font-weight: 900;
  line-height: 1.15; letter-spacing: -0.02em; margin-bottom: 12px;
}
.legal-meta {
  font-size: 14px; color: var(--text-muted); margin-top: 8px;
}

.legal-content {
  max-width: 760px; margin: 0 auto; padding: 48px 28px 80px;
}
.legal-content h2 {
  font-size: 22px; font-weight: 800; margin: 44px 0 16px;
  letter-spacing: -0.01em;
}
.legal-content h3 {
  font-size: 18px; font-weight: 700; margin: 32px 0 12px;
}
.legal-content p {
  color: var(--text-dim); font-size: 15px; line-height: 1.85;
  margin-bottom: 16px;
}
.legal-content ul, .legal-content ol {
  color: var(--text-dim); font-size: 15px; line-height: 1.85;
  margin-bottom: 16px; padding-left: 24px;
}
.legal-content li { margin-bottom: 6px; }
.legal-content strong { color: var(--text); }
.legal-content a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.legal-content a:hover { color: var(--text); }

.legal-content hr {
  border: none; border-top: 1px solid var(--outline);
  margin: 40px 0;
}
