.legal-page { padding: 64px 0 88px; background: #fff; }
.legal-page__intro { max-width: 760px; margin-bottom: 38px; }
.legal-page__intro p { margin: 0 0 14px; color: #59606d; line-height: 1.75; }
.legal-page__updated { color: #667080; font-size: 14px; }
.legal-page__layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 60px; align-items: start; }
.legal-page__body { min-width: 0; max-width: 780px; }
.legal-page__body section { padding: 25px 0; border-top: 1px solid #e4e8ec; scroll-margin-top: 100px; }
.legal-page__body h2 { color: #353742; font-size: 26px; line-height: 1.25; margin: 0 0 16px; }
.legal-page__body h3 { color: #353742; font-size: 19px; line-height: 1.35; margin: 22px 0 10px; }
.legal-page__body p, .legal-page__body li, .legal-page__body dd { color: #59606d; font-size: 16px; line-height: 1.75; }
.legal-page__body p { margin: 0 0 15px; }
.legal-page__body ul { padding-left: 22px; margin: 0 0 16px; }
.legal-page__body li + li { margin-top: 7px; }
.legal-page__body a, .legal-page__nav a { color: #167ab2; text-decoration: underline; text-underline-offset: 3px; }
.legal-page__body a:hover, .legal-page__nav a:hover { color: #005f99; }
.legal-page__body a:focus-visible, .legal-page__nav a:focus-visible { outline: 3px solid #67bfff; outline-offset: 3px; }
.legal-page__body dl { margin: 0 0 16px; }
.legal-page__body dt { color: #353742; font-weight: 700; margin-top: 12px; }
.legal-page__body dd { margin: 0; }
.legal-page__nav { position: sticky; top: 108px; border-left: 3px solid #67bfff; padding: 8px 0 8px 20px; }
.legal-page__nav strong { display: block; color: #353742; margin-bottom: 12px; }
.legal-page__nav a { display: block; font-size: 14px; line-height: 1.45; padding: 6px 0; text-decoration: none; }
@media (max-width: 991px) { .legal-page__layout { grid-template-columns: 1fr; gap: 8px; } .legal-page__nav { position: static; grid-row: 1; margin-bottom: 18px; } }
@media (max-width: 575px) { .legal-page { padding: 36px 0 60px; } .legal-page__body h2 { font-size: 23px; } .legal-page__body section { padding: 22px 0; } }
