.legal-shell { max-width: 1050px; }
.legal-header-link { display: inline-flex; padding: 12px 18px; background: white; border: 1px solid var(--line); border-radius: 11px; font-size: 13px; text-decoration: none; }
.document { background: white; padding: 48px 56px; border: 1px solid var(--line); border-radius: 26px; margin-bottom: 42px; }
.document h1 { font-size: clamp(28px, 3.2vw, 39px); line-height: 1.2; margin: 18px 0; letter-spacing: -1px; overflow-wrap: anywhere; }
.document h2 { font-size: 21px; line-height: 1.35; letter-spacing: -.4px; margin: 30px 0 12px; }
.document p, .document li, .document dd, .document dt { font-size: 14px; line-height: 1.85; }
.document p, .document li, .document dd { color: #52627a; }
.document p { margin: 12px 0; }
.document a { color: #1e5ed3; text-underline-offset: 3px; overflow-wrap: anywhere; }
.document ul, .document ol { padding-left: 24px; }
.document li { margin: 7px 0; }
.document .document-date { font-size: 12px; color: var(--muted); }
.document-toc { display: flex; gap: 10px 22px; flex-wrap: wrap; border-block: 1px solid var(--line); margin: 25px 0; padding: 17px 0; font-size: 12px; }
.document-toc a { text-decoration: none; }
.company-details { margin: 18px 0; padding: 20px 24px; border: 1px solid #dae6fa; background: #f3f7ff; border-radius: 14px; }
.company-details dl { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 10px 18px; margin: 0; }
.company-details dt { font-weight: 650; }
.company-details dd { margin: 0; overflow-wrap: anywhere; }
.document-callout { padding: 16px 20px; border-left: 3px solid var(--blue); background: #f3f7ff; border-radius: 0 10px 10px 0; }
@media (max-width: 600px) {
    .document { padding: 26px 23px; border-radius: 20px; }
    .document h1 { font-size: 24px; }
    .document p, .document li, .document dd, .document dt { font-size: 13px; }
    .document h2 { font-size: 19px; }
    .company-details { padding: 16px; }
    .company-details dl { grid-template-columns: minmax(0, 1fr); gap: 3px; }
    .company-details dd { margin-bottom: 12px; }
    .company-details dd:last-child { margin-bottom: 0; }
    .legal-header-link { padding: 10px 12px; font-size: 11px; }
}
