.legal-navigation, .legal-document {
    background: #fff;
    border: 1px solid var(--ei-border);
    border-radius: var(--ei-radius);
}
.legal-navigation { padding: 1.4rem; }
.legal-navigation > a { display: block; padding: .8rem .9rem; margin-top: .45rem; border-radius: .6rem; color: var(--ei-ink-soft); }
.legal-navigation > a[aria-current="page"] { color: var(--ei-blue-dark); background: var(--ei-bg-soft); font-weight: 800; }
.legal-navigation a:hover { text-decoration: underline; }
.legal-contact { margin-top: 1.3rem; padding-top: 1.3rem; border-top: 1px solid var(--ei-border); font-size: .85rem; }
.legal-contact strong, .legal-contact a { display: block; margin-bottom: .4rem; overflow-wrap: anywhere; }
.legal-document { padding: clamp(1.3rem, 4vw, 3rem); color: var(--ei-ink-soft); }
.legal-updated { font-size: .85rem; color: var(--ei-muted); border-bottom: 1px solid var(--ei-border); padding-bottom: 1.2rem; margin-bottom: 1.7rem; }
.legal-document h2 { font-size: 1.4rem; line-height: 1.4; color: var(--ei-ink); margin: 2rem 0 .85rem; }
.legal-document h3 { font-size: 1.08rem; margin: 1.5rem 0 .75rem; }
.legal-document p, .legal-document li { line-height: 1.85; }
.legal-document li + li { margin-top: .65rem; }
.legal-document a { text-decoration: underline; text-underline-offset: .15em; overflow-wrap: anywhere; }
.legal-document section { scroll-margin-top: 7rem; }
.legal-document address { font-style: normal; }
.legal-document .legal-summary { background: transparent; padding: 0; }
.legal-document .legal-summary p:last-child { margin-bottom: 0; }
.legal-document .table { font-size: .9rem; min-width: 560px; }
.legal-document .table th, .legal-document .table td { padding: .8rem; }
@media (min-width: 992px) { .legal-page aside { position: sticky; top: 6rem; } }
@media print {
    .site-header, .site-footer, .legal-page aside { display: none; }
    .legal-page .col-lg-9 { width: 100%; }
    .legal-document { border: 0; padding: 0; }
}
