/*
 * Les pages légales (maquette `entreprise-et-mentions/confidentialite`), par-dessus
 * accueil.css dont elles reprennent la barre, le pied, les couleurs et la police.
 */

.page-legale main { padding-top: 76px; }

.entete-legal { background: var(--night); color: #fff; padding: 48px 0 56px; }
.entete-legal .fil { font-size: .88rem; color: rgba(255, 255, 255, .6); }
.entete-legal .fil a:hover { color: #fff; }
.entete-legal h1 { margin: .5rem 0 0; font-size: clamp(2rem, 5vw, 2.8rem); letter-spacing: -.03em; line-height: 1.1; }
.entete-legal p { margin: .8rem 0 0; color: rgba(255, 255, 255, .75); max-width: 44rem; }
.entete-legal .date { display: inline-block; margin-top: 1.2rem; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .12); border-radius: 999px; padding: .35rem .95rem; font-size: .88rem; }

.corps-legal { display: grid; grid-template-columns: 250px minmax(0, 46rem); gap: 56px; padding: 48px 0 80px; }

.sommaire { position: sticky; top: 96px; align-self: start; font-size: .92rem; }
.sommaire b { display: block; font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-subtle); margin-bottom: .8rem; }
.sommaire a { display: block; padding: .38rem 0 .38rem .85rem; border-left: 2px solid var(--line); color: var(--ink-subtle); }
.sommaire a:hover { color: var(--night); border-color: var(--night); }

.corps-legal article { font-size: 1.03rem; line-height: 1.72; min-width: 0; }
.corps-legal section { scroll-margin-top: 96px; }
.corps-legal h2 { font-size: 1.35rem; letter-spacing: -.02em; margin: 2.4rem 0 .6rem; color: var(--night); }
.corps-legal section:first-child h2 { margin-top: 0; }
.corps-legal p { margin: .7rem 0; }
.corps-legal ul { padding-left: 1.2rem; }
.corps-legal li { margin: .45rem 0; }

.tableau { overflow-x: auto; margin: .9rem 0; }
.corps-legal table { width: 100%; border-collapse: collapse; font-size: .93rem; }
.corps-legal th { text-align: left; font-size: .76rem; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-subtle); border-bottom: 1px solid var(--line); padding: .55rem .5rem; }
.corps-legal td { border-bottom: 1px solid #EFE8DC; padding: .6rem .5rem; vertical-align: top; }
.corps-legal td:first-child { font-weight: 600; white-space: nowrap; padding-right: 1.2rem; }

/* Une information que la fiche de l'entreprise n'a pas encore : elle doit sauter aux yeux. */
.manque { background: #FFF4D6; color: #6E5215; border: 1px dashed #C8A860; border-radius: 6px; padding: 0 .35rem; font-weight: 700; font-size: .92em; white-space: nowrap; }
.entete-legal .manque { color: #6E5215; }

@media (max-width: 860px) {
    .corps-legal { grid-template-columns: 1fr; gap: 28px; padding-top: 32px; }
    .sommaire { position: static; }
    .corps-legal td:first-child { white-space: normal; }
}
