:root {
    --eb-legal-blue: #0136f0;
    --eb-legal-ink: #182039;
    --eb-legal-muted: #5c647a;
    --eb-legal-line: #dfe4f2;
    --eb-legal-bg: #f5f7ff;
}

.eb-site--legal {
    margin: 0;
    color: var(--eb-legal-ink);
    background: var(--eb-legal-bg);
}

.eb-legal-header {
    background: var(--eb-legal-blue);
}

.eb-legal-header__inner,
.eb-legal-footer .eb-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.eb-legal-language {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.eb-legal-main {
    display: grid;
    grid-template-columns: minmax(180px, 240px) minmax(0, 820px);
    gap: clamp(28px, 5vw, 72px);
    align-items: start;
    padding-top: clamp(36px, 6vw, 72px);
    padding-bottom: clamp(52px, 8vw, 96px);
}

.eb-legal-nav {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 8px;
}

.eb-legal-nav a {
    padding: 10px 12px;
    border-radius: 8px;
    color: var(--eb-legal-ink);
    font-weight: 700;
    text-decoration: none;
}

.eb-legal-nav a[aria-current="page"] {
    color: #fff;
    background: var(--eb-legal-blue);
}

.eb-legal-document {
    padding: clamp(24px, 5vw, 56px);
    border: 1px solid var(--eb-legal-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px rgb(35 53 120 / 8%);
}

.eb-legal-document__title p,
.eb-legal-document__lead {
    color: var(--eb-legal-muted);
}

.eb-legal-document h1 {
    margin: 8px 0 18px;
    font: 800 clamp(2rem, 5vw, 3.5rem)/1.05 "Barlow", sans-serif;
}

.eb-legal-document h2 {
    margin: 2.4rem 0 0.8rem;
    padding-top: 1rem;
    border-top: 1px solid var(--eb-legal-line);
    font: 700 clamp(1.2rem, 2vw, 1.55rem)/1.3 "Barlow", sans-serif;
}

.eb-legal-document p {
    margin: 0.65rem 0;
    font: 400 1rem/1.72 "Archivo", sans-serif;
}

.eb-legal-footer {
    color: #fff;
    background: #101b4c;
}

.eb-legal-footer nav {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.eb-legal-footer a {
    color: #fff;
}

@media (max-width: 760px) {
    .eb-legal-main {
        grid-template-columns: 1fr;
    }

    .eb-legal-nav {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .eb-legal-header__inner,
    .eb-legal-footer .eb-container {
        align-items: flex-start;
        flex-direction: column;
    }
}
