.legal { max-width: 780px; margin: 60px auto 100px; padding: 0 24px; }
.legal h1 { font-size: clamp(40px, 8vw, 72px); line-height: 1.05; letter-spacing: -.04em; margin-bottom: 24px; }
.legal h2 { font-size: 25px; line-height: 1.3; margin: 44px 0 16px; }
.legal p, .legal li { font-size: 18px; line-height: 1.7; margin-bottom: 16px; }
.legal ul, .legal ol { padding-left: 24px; }
.legal a { text-decoration: underline; text-underline-offset: 4px; }
.legal .updated { font-size: 16px; }
.legal-nav { display: flex; gap: 24px; flex-wrap: wrap; padding: 24px; background: #e4f1eb; }
.legal-nav a { padding: 8px 0; }
.legal .notice { background: #e4f1eb; padding: 24px; }
@media (max-width: 600px) { .legal { margin-top: 36px; } .legal p, .legal li { font-size: 17px; } }
