/* Terms and Policy page. Loaded only on that page. */
.legal-content { max-width: 780px; }
.legal-content .legal-updated { font-size: .85rem; color: var(--muted); margin: 0 0 8px; }
.legal-content h2 { font-size: 1.3rem; margin: 36px 0 10px; color: var(--ink); }
.legal-content h2:first-of-type { margin-top: 8px; }
.legal-content p { color: var(--muted); line-height: 1.8; margin: 0 0 14px; }
.legal-content ul, .legal-content ol { color: var(--muted); line-height: 1.8; padding-left: 22px; margin: 0 0 14px; }
.legal-content li { margin-bottom: 6px; }
.legal-content a { color: var(--purple); font-weight: 600; text-decoration: underline; }
.legal-switch { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 42px; padding-top: 24px; border-top: 1px solid var(--line); }
.legal-switch a { text-decoration: none; padding: 8px 16px; border: 1px solid var(--line); border-radius: 999px; font-size: .88rem; }
.legal-switch a:hover { border-color: var(--purple); }

/* Terms and Policy page: in-page jump links and anchored headings */
.legal-content h2[id] { scroll-margin-top: 96px; }
.legal-jump { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 26px; }
.legal-jump a { text-decoration: none; padding: 9px 16px; border: 1px solid var(--line); border-radius: 999px; font-size: .88rem; font-weight: 600; color: var(--purple); background: #fff; }
.legal-jump a:hover, .legal-jump a:focus-visible { border-color: var(--purple); background: var(--purple); color: #fff; }
.legal-content h2 { padding-top: 6px; }
.legal-content ul li::marker { color: var(--purple); }
/* line the text up with the page heading (left edge) while keeping lines a readable length */
.container.legal-content { max-width: none; }
.legal-content > * { max-width: 780px; }
