.legal-main {
    padding: 36px 0 72px;
}

.legal-main > .container {
    max-width: 880px;
}

.legal-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    margin-bottom: 36px;
    color: var(--muted);
    font-size: 14px;
}

.legal-breadcrumbs a {
    color: var(--green);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.legal-document__heading {
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--line);
}

.legal-document__heading .eyebrow {
    margin: 0 0 12px;
}

.legal-document h1 {
    max-width: 760px;
    margin: 0;
    color: var(--ink);
    font-size: 36px;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.legal-copy {
    font-size: 17px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.legal-copy p {
    margin: 0 0 22px;
}

.legal-copy ul {
    margin: 0 0 24px;
    padding-left: 24px;
}

.legal-copy li + li {
    margin-top: 6px;
}

@media (max-width: 760px) {
    .legal-main {
        padding: 24px 0 48px;
    }

    .legal-breadcrumbs {
        margin-bottom: 28px;
    }

    .legal-document h1 {
        font-size: 28px;
    }

    .legal-copy {
        font-size: 16px;
        line-height: 1.65;
    }
}

.legal-revision { margin: 16px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
.legal-nav { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0 0 24px; font-size: 14px; line-height: 1.5; }
.legal-nav a, .legal-toc a, .legal-copy a { color: var(--green); text-decoration: underline; text-underline-offset: 3px; }
.legal-nav a[aria-current="page"] { color: var(--ink); font-weight: 700; text-decoration-thickness: 2px; }
.legal-status { padding: 16px 18px; margin: 0 0 28px; border-left: 3px solid var(--amber); background: #fff; color: var(--ink); font-size: 14px; line-height: 1.6; }
.legal-status p { margin: 6px 0 0; }
.legal-toc { margin: 0 0 36px; padding-bottom: 24px; border-bottom: 1px solid var(--line); font-size: 15px; line-height: 1.6; }
.legal-toc ol { margin: 0; padding-left: 24px; }
.legal-toc li + li { margin-top: 6px; }
.legal-copy section { scroll-margin-top: 150px; margin-bottom: 36px; }
.legal-copy h2 { margin: 0 0 16px; font-size: 23px; line-height: 1.35; color: var(--ink); }
.legal-details { margin: 0 0 24px; }
.legal-details > div { display: grid; grid-template-columns: minmax(0, 180px) minmax(0, 1fr); gap: 12px 24px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.legal-details dt { font-weight: 700; color: var(--ink); }
.legal-details dd { margin: 0; min-width: 0; }
@media (max-width: 620px) {
    .legal-details > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
    .legal-copy h2 { font-size: 21px; }
}
@media print {
    @page { margin: 18mm; }
    body.legal-page { background: #fff; color: #000; }
    .legal-page .site-header, .legal-page .footer, .legal-page .skip-link,
    .legal-page .legal-breadcrumbs, .legal-page .legal-nav, .legal-page .legal-toc,
    .legal-page .page-quick-actions, .legal-page .sp-chat-launcher,
    .legal-page dialog { display: none !important; }
    .legal-main { padding: 0; }
    .legal-main > .container { width: 100%; max-width: none; padding: 0; }
    .legal-document h1 { font-size: 22pt; }
    .legal-copy { font-size: 11pt; line-height: 1.5; }
    .legal-copy h2 { font-size: 14pt; break-after: avoid; }
    .legal-copy p, .legal-copy li { orphans: 3; widows: 3; }
    .legal-details > div { break-inside: avoid; }
    .legal-status { break-inside: avoid; background: none; border-color: #000; }
    .legal-page a { color: #000; }
}

@media (max-width: 380px) {
    .legal-document h1 {
        font-size: 25px;
    }
}
