/* Page hero (from acephal.fr/css/projet.css) and legal pages (from acephal.fr/css/legal.css).
   Own copy of acephal.eu since 2026-10-04 (no longer overwritten by build-ovh.ps1): edit here.
   Also used by the value pages (/idees/, /cooperation/…) for the compact page hero. */

/* ---- Page hero ---------------------------------------------------------- */
/* Compact bar: the form is the point of the page, no promotional hero. */
.page-hero {
    padding-block: var(--space-2) var(--space-5);
}

.page-hero__bar {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 var(--space-2);
    font-size: 0.85rem;
    line-height: 1.5;
}

.breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    padding: 0;
    list-style: none;
    color: var(--acephal-gray);
}

.breadcrumb li + li::before {
    content: "/";
    margin-right: var(--space-2);
    opacity: 0.6;
}

.breadcrumb a {
    color: inherit;
}

.breadcrumb a:hover {
    color: var(--acephal-cyan);
}

/* Page heading shown as the last breadcrumb step. */
.page-hero__title {
    font-size: inherit;
    font-weight: var(--weight-semibold);
    line-height: inherit;
    color: var(--acephal-white);
}

.page-hero__title::before {
    content: "/";
    margin-right: var(--space-2);
    font-weight: var(--weight-regular);
    color: var(--acephal-gray);
    opacity: 0.6;
}

.page-hero__title span {
    color: var(--acephal-cyan);
}

/* ==========================================================================
   Acephal — legal pages (/confidentialite/, /mentions-legales/)
   Loaded after home.css and projet.css (compact header, breadcrumb, tokens).
   ========================================================================== */

.legal {
    max-width: 46rem;
    margin-inline: auto;
    padding: var(--space-6) var(--space-5);
    border: 1px solid var(--line-light);
    border-radius: var(--radius-panel);
    background: var(--surface-white);
    color: var(--text-body);
    line-height: 1.65;
}

.legal h2 {
    margin-top: var(--space-6);
    font-size: 1.15rem;
    font-weight: var(--weight-bold);
    line-height: 1.3;
    color: var(--text-strong);
}

.legal > h2:first-of-type {
    margin-top: var(--space-5);
}

.legal p,
.legal ul {
    margin-top: var(--space-3);
}

.legal ul {
    padding-left: 1.25rem;
    list-style: disc;
}

.legal li::marker {
    color: var(--accent-on-light);
}

.legal li + li {
    margin-top: var(--space-2);
}

.legal strong {
    color: var(--text-strong);
}

.legal a {
    color: var(--accent-on-light);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.legal__updated {
    font-size: 0.85rem;
}

.legal h3 {
    margin-top: var(--space-5);
    font-size: 1rem;
    font-weight: var(--weight-semibold);
    line-height: 1.35;
    color: var(--text-strong);
}

/* Tables (retention periods): scroll sideways inside the card on narrow screens. */
.legal__table {
    margin-top: var(--space-4);
    overflow-x: auto;
}

.legal table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.legal th,
.legal td {
    padding: var(--space-2) var(--space-3);
    border-bottom: 1px solid var(--line-light);
    text-align: left;
    vertical-align: top;
}

.legal th {
    color: var(--text-strong);
    font-weight: var(--weight-semibold);
}

/* Information still to be supplied by Acephal, shown as "En cours de traitement".
   The class is kept to find these spots easily once the details are known. */
.todo {
    font-style: italic;
}

@media (min-width: 600px) {
    .legal {
        padding: var(--space-7) var(--space-6);
    }
}
