/* Racine TAC collée au viewport (jamais au footer) */
html body #tarteaucitronRoot {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2147483645 !important;
  pointer-events: none !important;
  overflow: visible !important;
  transform: none !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig,
html body #tarteaucitronRoot #tarteaucitron,
html body #tarteaucitronRoot #tarteaucitronBack,
html body #tarteaucitronRoot #tarteaucitronIcon {
  pointer-events: auto !important;
}

/* —— Bannière : barre fixe plein écran, contenu à la largeur du site —— */
html body #tarteaucitronRoot #tarteaucitronAlertBig {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  transform: none !important;
  z-index: 2147483645 !important;
  box-sizing: border-box !important;
  padding: 22px max(1.25rem, calc((100% - min(1080px, 80%)) / 2)) 24px !important;
  background: rgba(245, 237, 231, 0.94) !important;
  color: #011b48 !important;
  font-family: Inter, Helvetica, Arial, sans-serif !important;
  border: 0 !important;
  border-top: 1px solid rgba(1, 27, 72, 0.1) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

#tarteaucitronRoot.tarteaucitronTitleBanner.tarteaucitronSize-bottom #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronTitleBanner.tarteaucitronSize-top #tarteaucitronAlertBig::before {
  content: var(--tacTitleBanner);
  display: block !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  font-family: Lora, Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  color: #011b48 !important;
  text-align: left !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  overflow: visible !important;
  max-height: none !important;
  font-family: Inter, Helvetica, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 1.5 !important;
  color: #011b48 !important;
  text-align: left !important;
}

#tarteaucitronRoot #tarteaucitronDisclaimerAlert,
#tarteaucitronRoot #tarteaucitronDisclaimerAlert *,
#tarteaucitronRoot .tarteaucitronAlertBigBottom,
#tarteaucitronRoot .tarteaucitronAlertBigTop {
  color: #011b48 !important;
  font-family: Inter, Helvetica, Arial, sans-serif !important;
}

/* Lien politique — navy, souligné */
#tarteaucitronRoot #tarteaucitronPrivacyUrl,
#tarteaucitronRoot #tarteaucitronPrivacyUrlDialog,
#tarteaucitronRoot #tarteaucitronAlertBig a,
#tarteaucitronRoot #tarteaucitronAlertBig button[role="link"] {
  color: #011b48 !important;
  background: transparent !important;
  border: 0 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-family: Inter, Helvetica, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  cursor: pointer !important;
}

#tarteaucitronRoot #tarteaucitronPrivacyUrl:hover,
#tarteaucitronRoot #tarteaucitronPrivacyUrlDialog:hover {
  color: #005384 !important;
}

/* Boutons bannière — mêmes dimensions */
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton {
  font-family: Poppins, Helvetica, Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
  min-height: 38px !important;
  min-width: 148px !important;
  padding: 10px 14px !important;
  margin: 0 10px 8px 0 !important;
  border-radius: 6px !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}

/* Tout accepter — plein navy (CTA principal) */
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: #011b48 !important;
  color: #fff !important;
  border: 1px solid #011b48 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover {
  background: #005384 !important;
  border-color: #005384 !important;
  color: #fff !important;
}

/* Essentiels + Personnaliser — contour navy */
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  background: transparent !important;
  color: #011b48 !important;
  border: 1px solid #011b48 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  background: rgba(1, 27, 72, 0.06) !important;
  color: #011b48 !important;
  border-color: #011b48 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  display: inline-block !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

@media (max-width: 767px) {
  html body #tarteaucitronRoot #tarteaucitronAlertBig {
    width: 100% !important;
    bottom: 0 !important;
    padding: 18px 1.25rem 20px !important;
  }

  #tarteaucitronRoot.tarteaucitronTitleBanner.tarteaucitronSize-bottom #tarteaucitronAlertBig::before {
    font-size: 18px !important;
  }

  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
  }
}

/* —— Panneau de préférences —— */
#tarteaucitronRoot #tarteaucitron {
  background: #f5ede7 !important;
  color: #011b48 !important;
  font-family: Inter, Helvetica, Arial, sans-serif !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH1,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH2,
#tarteaucitronRoot #dialogTitle {
  font-family: Lora, Georgia, serif !important;
  color: #011b48 !important;
}

#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitronAllAllowed {
  background: #011b48 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 5px !important;
}

#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitronAllDenied {
  background: transparent !important;
  color: #011b48 !important;
  border: 1px solid #011b48 !important;
  border-radius: 5px !important;
}

/* Cases à cocher : visibles sur fond navy (Autoriser / Tout accepter) */
#tarteaucitronRoot .tarteaucitronAllow .tarteaucitronCheck::before,
#tarteaucitronRoot #tarteaucitronAllAllowed .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronAllow .tarteaucitronCheck,
#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronCheck::before {
  color: #fff !important;
}

/* Cases sur fond clair (Interdire / Tout refuser) */
#tarteaucitronRoot .tarteaucitronDeny .tarteaucitronCross::before,
#tarteaucitronRoot #tarteaucitronAllDenied .tarteaucitronCross::before {
  color: #011b48 !important;
}

/* Masquer le crédit / logo « TARTE AU CITRON » */
#tarteaucitronRoot .tarteaucitronSelfLink,
#tarteaucitronRoot #tarteaucitronPremium {
  display: none !important;
}

/* Icône cookies discrète (après fermeture bannière) */
#tarteaucitronRoot #tarteaucitronIcon {
  background: transparent !important;
  box-shadow: none !important;
  opacity: 0.72;
  transition: opacity 0.2s ease;
}

#tarteaucitronRoot #tarteaucitronIcon:hover {
  opacity: 1;
}

#tarteaucitronRoot.tarteaucitronBottomLeft #tarteaucitronIcon,
#tarteaucitronRoot #tarteaucitronIcon.tarteaucitronBottomLeft,
#tarteaucitronRoot .tarteaucitronIconBottomLeft {
  bottom: 18px !important;
  left: 18px !important;
  right: auto !important;
}

#tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  line-height: 0 !important;
}

#tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager img {
  width: 36px !important;
  height: 36px !important;
  display: block !important;
  border-radius: 9999px !important;
  box-shadow: 0 2px 10px rgba(1, 27, 72, 0.2) !important;
}
