.legal-page {
  min-height: calc(100vh - 150px);
  padding: 150px 24px 100px;
  background: radial-gradient(circle at 50% 5%, rgba(125, 84, 136, 0.18), transparent 30%), var(--bg);
}

.legal-card {
  width: min(900px, 100%);
  margin: auto;
  padding: clamp(28px, 6vw, 64px);
  border: 1px solid var(--line);
  border-radius: 28px;
  background: linear-gradient(145deg, #141418, #1d1d23);
  box-shadow: 0 26px 80px rgba(0, 0, 0, 0.24);
}

.legal-card h1 {
  max-width: 100%;
  margin-bottom: 36px;
  font-size: clamp(2.1rem, 5vw, 3.8rem);
  overflow-wrap: break-word;
  hyphens: auto;
}
.legal-card h2 { margin: 0 0 14px; font-size: clamp(1.35rem, 3vw, 1.9rem); }
.legal-card section { padding: 30px 0; border-top: 1px solid var(--line); }
.legal-card section:first-of-type { border-top: 0; }
.legal-card p { color: var(--muted); }
.legal-card address { color: var(--muted); font-style: normal; }
.legal-card a { color: var(--gold); text-underline-offset: 3px; }
.legal-updated { margin: -24px 0 34px; color: var(--muted); font-size: 0.9rem; }

@media (max-width: 580px) {
  .legal-page { padding: 118px 16px 75px; }
  .legal-card { border-radius: 20px; }
  .legal-card section { padding: 24px 0; }
}
