.legal-main { padding: 4rem 0; background: #fff; color: #102238; }
.legal-content { max-width: 58rem; }
.legal-content h1 { font-size: clamp(2.3rem, 5vw, 3.8rem); line-height: 1.12; margin: 1rem 0; }
.legal-content h2 { font-size: 1.5rem; line-height: 1.3; margin: 2.5rem 0 1rem; }
.legal-content p, .legal-content li { font-size: 1rem; line-height: 1.75; margin-bottom: 1rem; }
.legal-content ul { padding-left: 1.4rem; }
.legal-content a { color: #214e89; text-decoration: underline; }
.legal-date { color: #46556b; }
.legal-table { overflow-x: auto; margin: 1.5rem 0; }
.legal-table table { border-collapse: collapse; width: 100%; font-size: 1rem; line-height: 1.6; }
.legal-table th, .legal-table td { padding: .8rem; border: 1px solid #b9c6d8; text-align: left; vertical-align: top; min-width: 10rem; }
.legal-table th { background: #e9f0fb; }
.legal-table code { overflow-wrap: anywhere; }
