.legal-page { width: 100%; max-width: 880px; padding-top: 56px; padding-bottom: 64px; }
.legal-intro { padding-bottom: 32px; border-bottom: 3px solid var(--coral); }
.legal-intro h1 { text-align: left; }
.legal-contents { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; font-weight: 600; }
.legal-section { padding: 36px 0 20px; border-bottom: 1px solid var(--line); }
.legal-section h2 { margin-bottom: 24px; }
.legal-section h3 { margin-top: 28px; }
.legal-section [id] { scroll-margin-top: 120px; }
.legal-section li { margin-bottom: 8px; }
.legal-section address { font-style: normal; margin: 24px 0; }
.legal-retention { margin: 24px 0; }
.legal-retention > div { display: grid; grid-template-columns: 1fr 1.5fr; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.legal-retention dt { font-weight: 600; color: var(--ink); }
.legal-retention dd { margin: 0; }
.legal-documents { border: 0; }
@media (max-width: 600px) {
  .legal-page { padding-top: 32px; padding-bottom: 32px; }
  .legal-retention > div { grid-template-columns: 1fr; gap: 4px; }
  .legal-contents { flex-direction: column; gap: 10px; }
}
