/* Pages légales, sur crème : sommaire collant à gauche (sous un filet), texte à droite. */
.legal {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-7);
}

.legal__toc {
    padding-top: var(--space-4);
    border-top: 1px solid var(--rule);
    font-size: var(--text-sm);
}

.legal__toc-title {
    margin-bottom: var(--space-3);
    color: var(--text-secondary);
    font-size: var(--text-xs);
    font-weight: var(--fw-medium);
    letter-spacing: var(--tracking-label);
    text-transform: uppercase;
}

.legal__toc ol {
    display: grid;
    gap: var(--space-1);
}

.legal__toc a {
    display: block;
    padding-block: var(--space-1);
    color: var(--text-secondary);
    text-decoration: none;
}

.legal__toc a:hover {
    color: var(--text-link);
}

.prose--legal {
    max-width: var(--reading);
}

/* Hors du français : la version qui fait foi (T22.12), discrète, à la fin du document (utilisateur, 31/10/2026). */
.legal-note {
    margin-top: var(--space-7);
    color: var(--text-secondary);
    font-size: var(--text-xs);
}

.prose--legal h2 {
    scroll-margin-top: calc(var(--header-height) + var(--space-5));
}

.prose--legal > h2:first-child {
    margin-top: 0;
}

@media (min-width: 56rem) {
    .legal {
        grid-template-columns: 17rem minmax(0, 1fr);
        gap: var(--space-9);
        align-items: start;
    }

    .legal__toc {
        position: sticky;
        top: calc(var(--header-height) + var(--space-5));
    }
}
