/* Legal reading layout; shared tokens, navigation and footer remain in style.css. */
.legal-main { width: 100%; max-width: calc(var(--container-narrow) + var(--gutter) * 2); margin-inline: auto; padding: var(--section-space) var(--gutter); }
.legal-heading { margin-bottom: var(--space-8); }
.legal-heading h1 { font-size: var(--text-page); margin-bottom: var(--space-6); }
.legal-intro { color: var(--color-muted); font-size: var(--text-lg); }
.legal-updated { color: var(--color-subtle); font-size: var(--text-sm); margin-top: var(--space-5); }
.legal-contents { margin-bottom: var(--space-12); border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-bg-raised); }
.legal-contents summary { min-height: var(--control-height); padding: var(--space-4) var(--space-5); cursor: pointer; color: var(--color-text); font-weight: var(--weight-semibold); }
.legal-contents ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-8); margin: 0 var(--space-5) var(--space-5) var(--space-10); font-size: var(--text-sm); }
.legal-contents a { display: inline-block; padding-block: var(--space-2); }
.legal-main section { margin-top: var(--space-10); }
.legal-main h2 { font-size: var(--text-card); margin-bottom: var(--space-5); scroll-margin-top: var(--space-6); }
.legal-main section p, .legal-main section ul { margin-top: var(--space-4); color: var(--color-muted); }
.legal-main section ul { padding-left: var(--space-6); }
.legal-main section li + li { margin-top: var(--space-2); }
.legal-main section strong { color: var(--color-text); }
.legal-main a { overflow-wrap: anywhere; }
.legal-back { border-top: 1px solid var(--color-border); margin-top: var(--space-12); padding-top: var(--space-6); }
@media (max-width: 600px) {
    .legal-intro { font-size: var(--text-base); }
    .legal-contents ol { grid-template-columns: minmax(0, 1fr); }
}
@media print {
    .site-header, .site-footer, .skip-link, .legal-contents, .legal-back { display: none; }
    .legal-main { max-width: none; padding: 0; }
    .legal-main, .legal-main * { color: black; background: white; }
    .legal-main section { break-inside: avoid; }
}
