/* ============================================================
   Bandeau cookies (RGPD / nLPD) — charte V6 Malley
   Sobre, non intrusif, apparaît en bas de page.
   ============================================================ */

.cookie-banner {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 9999;
    background: var(--white, #ffffff);
    border-top: 1px solid var(--grey-light, #ededed);
    box-shadow: 0 -6px 28px rgba(54, 61, 67, 0.10);
    padding: 18px 22px;
    transform: translateY(110%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.cookie-banner.is-visible { transform: translateY(0); }

.cookie-banner__inner {
    max-width: 1100px; margin: 0 auto;
    display: flex; align-items: center; gap: 24px; flex-wrap: wrap;
    justify-content: space-between;
}

.cookie-banner__text {
    margin: 0;
    font-size: 14px; line-height: 1.5;
    color: var(--ink, #363d43);
    flex: 1 1 340px;
}
.cookie-banner__text a {
    color: var(--ink, #363d43); font-weight: 700;   /* contraste AA (le turquoise passait sous 4.5:1) */
    text-decoration: none; border-bottom: 1px solid var(--turquoise, #74c5c4);
}
.cookie-banner__text a:hover { border-bottom-color: var(--ink, #363d43); }

.cookie-banner__actions { display: flex; gap: 10px; flex-shrink: 0; }

.cookie-btn {
    font-family: inherit; font-size: 14px; font-weight: 700;
    cursor: pointer; line-height: 1;
    padding: 12px 24px; border-radius: 8px;
    border: 2px solid var(--ink, #363d43);
    transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.cookie-btn--refuse { background: transparent; color: var(--ink, #363d43); }
.cookie-btn--refuse:hover { background: var(--grey-light, #ededed); }
.cookie-btn--accept { background: var(--ink, #363d43); color: var(--white, #fff); }
.cookie-btn--accept:hover {
    background: var(--turquoise, #74c5c4); border-color: var(--turquoise, #74c5c4);
}

@media (max-width: 640px) {
    .cookie-banner { padding: 16px 18px; }
    .cookie-banner__inner {
        flex-direction: column; align-items: stretch;
        justify-content: flex-start; gap: 14px;
    }
    .cookie-banner__text { flex: 0 0 auto; }   /* évite que le flex-basis devienne une hauteur */
    .cookie-banner__actions { justify-content: stretch; }
    .cookie-btn { flex: 1; padding: 13px 16px; }
}

@media (prefers-reduced-motion: reduce) {
    .cookie-banner { transition: none; }
}
