/* Bandeau de consentement — chargé par les pages publiques.
   Les deux boutons ont exactement le même poids visuel : même taille, même
   contraste, même position. Rendre « Accepter » plus tentant que « Refuser »
   est précisément ce que la CNIL sanctionne, et ce qu'un visiteur repère. */

.bandeau-mesure {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  background: #0F2E5E;
  color: #FFFDF8;
  padding: 1.1rem 1.4rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  box-shadow: 0 -8px 30px rgba(20, 16, 10, 0.28);
  font-family: "Instrument Sans", system-ui, sans-serif;
  font-size: 0.9rem;
  line-height: 1.55;
}

.bandeau-texte {
  flex: 1 1 22rem;
  max-width: 60rem;
}

.bandeau-texte a {
  color: #DBA94A;
  text-decoration: underline;
}

.bandeau-choix {
  display: flex;
  gap: 0.7rem;
  flex-shrink: 0;
}

.bandeau-choix form {
  margin: 0;
}

.bandeau-btn {
  min-width: 8.5rem;
  min-height: 2.9rem;
  padding: 0.6rem 1.4rem;
  border-radius: 2rem;
  border: 2px solid #FFFDF8;
  background: transparent;
  color: #FFFDF8;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
}

.bandeau-btn:hover,
.bandeau-btn:focus-visible {
  background: #FFFDF8;
  color: #0F2E5E;
}

@media (max-width: 40rem) {
  .bandeau-mesure {
    padding: 1rem;
    gap: 0.9rem;
  }

  .bandeau-choix {
    width: 100%;
  }

  .bandeau-choix form {
    flex: 1;
  }

  .bandeau-btn {
    width: 100%;
    min-width: 0;
  }
}

/* Le bandeau est fixé en bas : sans cette réserve, il recouvre le bouton
   d'achat sur un téléphone, et la première chose que voit un visiteur venu
   d'une publicité est un bandeau posé sur ce qu'il est venu faire.
   « :has » n'existe pas sur les très vieux navigateurs — ils retrouvent
   simplement le comportement d'avant, sans réserve. */
body:has(.bandeau-mesure) {
  padding-bottom: 13rem;
}

@media (min-width: 40rem) {
  body:has(.bandeau-mesure) {
    padding-bottom: 7rem;
  }
}
