main.legal-page {
    width: min(100% - 40px, 820px);
    margin: clamp(40px, 7vw, 72px) auto;
    flex: 1;
}

.legal-page h1 { font-size: clamp(2rem, 5vw, 3rem); line-height: 1.1; margin-bottom: 12px; }
.legal-page .updated { color: var(--secondary); margin-bottom: 32px; }
.legal-page h2 { font-size: 1.25rem; margin: 30px 0 8px; }
.legal-page p, .legal-page li { line-height: 1.75; }
.legal-page ul { padding-left: 1.4rem; margin: 8px 0; }
.legal-page a { color: var(--primary); }
.legal-page .notice { padding: 16px 18px; border-left: 4px solid var(--primary); background: var(--card-bg); border-radius: 4px; }
.legal-footer { padding: 24px 20px; text-align: center; border-top: 1px solid var(--border); }
.legal-footer a { color: var(--primary); }

@media (max-width: 600px) {
    main.legal-page { width: min(100% - 32px, 820px); margin: 36px auto; }
}
