.legal-page { width:min(calc(100% - 80px),1360px); margin:0 auto; padding:32px 0 64px; }
.legal-document { border:1px solid var(--line-soft); border-radius:16px; padding:40px; }
.legal-back { display:inline-block; color:var(--line); margin-bottom:24px; }
.legal-document h1 { font-size:clamp(28px,3vw,44px); line-height:1.2; margin:0 0 32px; }
.legal-content { max-width:1000px; font-size:16px; line-height:1.7; overflow-wrap:anywhere; }
.legal-content p { margin:0 0 16px; }
.legal-content h2 { font-size:22px; line-height:1.4; margin:32px 0 16px; }
.legal-content h2:first-child { margin-top:0; }
.legal-content a { color:var(--line); text-decoration:underline; }
@media(max-width:760px) {
    .legal-page { width:calc(100% - 32px); padding:16px 0 32px; }
    .legal-document { padding:20px; border-radius:12px; }
    .legal-document h1 { margin-bottom:24px; }
    .legal-content h2 { font-size:20px; }
}
