/* Carte de consentement cookies : en bas à droite sur ordinateur, pleine largeur sur mobile */
.consent_banner{ position: fixed; z-index: 1000; right: 16px; bottom: 16px; width: 300px; max-width: calc(100vw - 32px); box-sizing: border-box; padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; background: rgba(17, 22, 64, .9); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); color: #fff; border-radius: 4px; box-shadow: 0 6px 30px rgba(0,0,0,.35); font-family: "SofiaProRegular", sans-serif; font-size: 11px; line-height: 1.4; }
.consent_banner[hidden]{ display: none; }
.consent_banner:focus{ outline: none; }
.consent_banner:focus-visible{ outline: 2px solid #fff; outline-offset: 2px; }
.consent_banner .consent_text{ margin: 0; color: #fff; font-family: inherit; font-size: inherit; line-height: inherit; }
.consent_banner .consent_text strong{ display: block; margin-bottom: 3px; font-size: 12px; font-family: "SofiaproBlack", sans-serif; }
.consent_banner .consent_text a{ display: inline; color: #fff; text-decoration: underline; }
.consent_banner .consent_actions{ display: flex; gap: 8px; }
/* « Refuser » et « Accepter » : même poids visuel (exigence CNIL) */
.consent_banner .consent_btn{ cursor: pointer; flex: 1; padding: 8px 10px; background: #fff; color: var(--deepBlue); border: 2px solid #fff; border-radius: 2px; font: inherit; font-size: 12px; text-align: center; transition: background .17s, color .17s; }
.consent_banner .consent_btn:hover,
.consent_banner .consent_btn:focus-visible{ background: transparent; color: #fff; outline: none; }
.consent_banner .consent_btn:focus-visible{ outline: 2px solid #fff; outline-offset: 2px; }

/* Lien « Gérer les cookies » du footer */
.footer .consent_open{ float: right; margin-right: 24px; padding: 0; background: none; border: 0; color: inherit; font: inherit; opacity: .8; cursor: pointer; transition: opacity .17s; }
.footer .consent_open:hover{ opacity: 1; }
.footer .consent_open:focus-visible{ outline: 2px solid currentColor; outline-offset: 2px; }

@media (max-width: 1000px){
  .footer .consent_open{ float: left; clear: both; margin: 20px 0 0 0; }
  .consent_banner{ left: 10px; right: 10px; bottom: 10px; width: auto; max-width: none; padding: 14px; font-size: 12px; }
}
