body.legal-page {
    background:
        radial-gradient(circle at 12% 8%, rgba(47,107,255,.16), transparent 28%),
        radial-gradient(circle at 90% 35%, rgba(102,185,255,.07), transparent 26%),
        #05070a;
}
body.legal-page::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: .22;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: radial-gradient(circle at 40% 20%, #000, transparent 78%);
}
.legal-page .masthead { background: rgba(5,7,10,.7); border-bottom-color: var(--line); backdrop-filter: blur(18px); }
.legal-topnav { justify-content: center; }
.legal-shell {
    position: relative;
    z-index: 2;
    width: min(1160px, calc(100% - 48px));
    margin: 0 auto;
    padding: 150px 0 120px;
}
.legal-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: clamp(42px, 7vw, 90px);
    padding-bottom: 66px;
    border-bottom: 1px solid var(--line);
}
.legal-hero-copy { min-width: 0; }
.legal-hero .eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 22px;
    color: var(--signal-bright);
    font-family: var(--font-display);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .19em;
    text-transform: uppercase;
}
.legal-hero .eyebrow::before { content: ""; width: 34px; border-top: 1px solid currentColor; }
.legal-hero h1 {
    max-width: 820px;
    margin: 0 0 26px;
    overflow-wrap: anywhere;
    font-family: var(--font-display);
    font-size: clamp(48px, 6vw, 92px);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -.04em;
    text-transform: none;
}
.legal-lead { max-width: 780px; margin: 0; color: #b9c3d0; font-size: 16px; line-height: 1.75; }
.legal-hero-meta { display: grid; align-content: end; gap: 12px; }
.legal-meta-card { padding: 18px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface-soft); }
.legal-meta-card span { display: block; margin-bottom: 8px; color: var(--signal-bright); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.legal-meta-card strong { font-family: var(--font-display); font-size: 17px; line-height: 1.4; }
.legal-grid { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: clamp(42px, 7vw, 86px); padding-top: 62px; }
.legal-sidebar { position: sticky; top: 108px; align-self: start; display: grid; gap: 14px; }
.legal-card { padding: 22px; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(9,13,20,.75); backdrop-filter: blur(16px); }
.legal-card > span { display: block; margin-bottom: 15px; color: var(--signal-bright); font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.legal-card h2 { margin: 0 0 16px; font-family: var(--font-display); font-size: 24px; line-height: 1.08; text-transform: none; }
.legal-card p, .legal-card li { color: #9faaba; font-size: 12px; line-height: 1.6; }
.legal-card-accent { border-color: rgba(47,107,255,.5); background: linear-gradient(145deg, rgba(47,107,255,.16), rgba(9,13,20,.78)); }
.legal-list { display: grid; gap: 9px; margin: 0; padding-left: 18px; color: #9faaba; line-height: 1.58; }
.legal-list li::marker { color: var(--signal); }
.legal-doc-nav { display: grid; }
.legal-doc-nav a { padding: 10px 0; border-bottom: 1px solid var(--line); color: #929dad; font-size: 11px; line-height: 1.45; }
.legal-doc-nav a:last-child { border-bottom: 0; }
.legal-doc-nav a[aria-current="page"] { color: var(--signal-bright); font-weight: 800; }
.legal-side-link { display: block; margin-top: 10px; color: #c5d3e8; font-size: 11px; line-height: 1.45; }
.legal-side-link:hover { color: var(--signal-bright); }
.legal-main { min-width: 0; }
.legal-section { padding: 28px; margin-bottom: 18px; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(9,13,20,.54); backdrop-filter: blur(12px); }
.legal-section:last-child { margin-bottom: 0; }
.legal-section h2 { margin: 0 0 22px; font-family: var(--font-display); font-size: clamp(28px, 3vw, 42px); line-height: 1.08; letter-spacing: -.02em; text-transform: none; }
.legal-section p, .legal-section li, .legal-section dd { color: #aeb8c6; font-size: 15px; line-height: 1.78; }
.legal-section p { margin: 0 0 14px; }
.legal-section .legal-list { gap: 10px; padding-left: 22px; }
.legal-facts { margin: 20px 0 0; }
.legal-facts > div { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 24px; padding: 17px 0; border-bottom: 1px solid var(--line); }
.legal-facts dt { color: #fff; font-weight: 800; }
.legal-facts dd { margin: 0; }
.legal-note { margin-top: 22px; padding: 18px; border-left: 2px solid var(--alert); border-radius: var(--radius-sm); background: rgba(255,107,84,.07); color: #c3ccd8; line-height: 1.65; }
.legal-footer { position: relative; z-index: 2; }

@media (max-width: 1000px) {
    .legal-hero { grid-template-columns: 1fr; gap: 28px; }
    .legal-hero-meta { grid-template-columns: 1fr 1fr; }
    .legal-grid { grid-template-columns: 250px minmax(0, 1fr); gap: 38px; }
}

@media (max-width: 760px) {
    .legal-shell { width: min(100% - 36px, 1160px); padding: 112px 0 82px; }
    .legal-hero { padding-bottom: 44px; }
    .legal-lead { font-size: 14px; }
    .legal-grid { grid-template-columns: 1fr; gap: 42px; padding-top: 46px; }
    .legal-sidebar { position: static; grid-template-columns: 1fr 1fr; }
    .legal-card-accent { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
    .legal-hero-meta, .legal-sidebar { grid-template-columns: 1fr; }
    .legal-card-accent { grid-column: auto; }
    .legal-facts > div { grid-template-columns: 1fr; gap: 7px; }
    .legal-section p, .legal-section li, .legal-section dd { font-size: 14px; }
}
