/* DirectAlu — thème Tarteaucitron
   Chargé APRÈS /tarteaucitron/css/tarteaucitron.min.css.
   Ne jamais forcer display sur #tarteaucitron ou #tarteaucitronAlertBig :
   Tarteaucitron gère lui-même leur visibilité. */

html body #tarteaucitronRoot {
  --da-blue: #00268f;
  --da-blue-hover: #001f6c;
  --da-text: #171717;
  --da-muted: #4b4b4b;
  --da-border: #e2e5eb;
  --da-soft: #f4f5f7;
  font-family: Arial, Helvetica, sans-serif;
}

html body.tarteaucitron-modal-open #tarteaucitronRoot::before,
html body .tarteaucitronSize-middle.tarteaucitronBeforeVisible::before {
  content: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body #tarteaucitronBack {
  display: none !important;
}

html.tarteaucitron-modal-open-noscroll,
body.tarteaucitron-modal-open {
  overflow: auto !important;
  height: auto !important;
}

/* Bannière initiale */
html body #tarteaucitronRoot #tarteaucitronAlertBig {
  box-sizing: border-box !important;
  left: 24px !important;
  right: auto !important;
  top: auto !important;
  bottom: 24px !important;
  width: min(390px, calc(100vw - 48px)) !important;
  min-width: 0 !important;
  max-height: calc(100dvh - 48px) !important;
  margin: 0 !important;
  padding: 22px !important;
  overflow: auto !important;
  background: #fff !important;
  color: var(--da-text) !important;
  border: 1px solid var(--da-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 40px rgba(0,38,143,.12), 0 4px 12px rgba(0,0,0,.08) !important;
  text-align: left !important;
  color-scheme: light;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig::before {
  color: var(--da-blue) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  text-align: left !important;
}

html body #tarteaucitronRoot #tarteaucitronDisclaimerAlert {
  display: block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  color: var(--da-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 44px !important;
  margin: 4px 0 !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  font: 600 14px/1.4 Arial, Helvetica, sans-serif !important;
}

html body #tarteaucitronRoot #tarteaucitronPersonalize2 {
  background: var(--da-blue) !important;
  border: 1px solid var(--da-blue) !important;
  color: #fff !important;
}

html body #tarteaucitronRoot #tarteaucitronPersonalize2:hover {
  background: var(--da-blue-hover) !important;
}

html body #tarteaucitronRoot #tarteaucitronAllDenied2 {
  background: #fff !important;
  border: 1.5px solid var(--da-blue) !important;
  color: var(--da-blue) !important;
}

html body #tarteaucitronRoot #tarteaucitronCloseAlert {
  background: var(--da-soft) !important;
  border: 1px solid #d7dbe3 !important;
  color: var(--da-text) !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  width: auto !important;
  min-height: 0 !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--da-blue) !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
}

body.tarteaucitron-modal-open #tarteaucitronRoot #tarteaucitronAlertBig {
  display: none !important;
}

/* Panneau Personnaliser */
html body #tarteaucitronRoot #tarteaucitron {
  box-sizing: border-box !important;
  position: fixed !important;
  top: 16px !important;
  left: 24px !important;
  right: auto !important;
  bottom: auto !important;
  width: 360px !important;
  min-width: 0 !important;
  max-width: calc(100vw - 48px) !important;
  height: min(540px, calc(100dvh - 32px)) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: 0 !important;
  padding: 58px 0 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--da-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 40px rgba(0,38,143,.12), 0 4px 12px rgba(0,0,0,.08) !important;
  color-scheme: light;
}

html body #tarteaucitronRoot #tarteaucitron::before {
  content: "Paramètres des cookies";
  position: absolute;
  top: 18px;
  left: 18px;
  right: 60px;
  color: var(--da-blue);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}

/* Croix X : le texte Fermer reste dans le DOM pour l’accessibilité. */
html body #tarteaucitronRoot #tarteaucitronClosePanel {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--da-soft) !important;
  color: var(--da-text) !important;
  border: 1px solid #d7dbe3 !important;
  border-radius: 50% !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

html body #tarteaucitronRoot #tarteaucitronClosePanel * {
  font-size: 0 !important;
}

html body #tarteaucitronRoot #tarteaucitronClosePanel::before {
  content: "×";
  display: block;
  color: var(--da-text);
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  text-align: center;
}

/* Masquer les blocs natifs inutiles */
html body #tarteaucitronRoot #tarteaucitronMainLine,
html body #tarteaucitronRoot #tarteaucitronMainLineOffset,
html body #tarteaucitronRoot #tarteaucitronServices_mandatory,
html body #tarteaucitronRoot #tarteaucitronDisclaimer,
html body #tarteaucitronRoot #tarteaucitronInfo,
html body #tarteaucitronRoot #tarteaucitronPrivacyUrlDialog,
html body #tarteaucitronRoot #tarteaucitronNoServices,
html body #tarteaucitronRoot #tarteaucitronNoServicesTitle,
html body #tarteaucitronRoot li#tarteaucitronNoServicesTitle,
html body #tarteaucitronRoot button.tarteaucitron-toggle-group {
  display: none !important;
}

/* Zone scrollable */
html body #tarteaucitronRoot #tarteaucitronServices {
  box-sizing: border-box !important;
  height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 12px 16px 78px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body #tarteaucitronRoot #tarteaucitronServices::before {
  content: "DirectAlu utilise des cookies et technologies similaires afin d’assurer le bon fonctionnement du site, améliorer votre expérience de navigation et comprendre comment nos services sont utilisés. Avec votre accord, certains cookies nous permettent également de mesurer l’audience du site, d’analyser ses performances et d’évaluer l’efficacité de nos campagnes marketing. Vous restez libre d’autoriser ou de refuser chaque catégorie et pourrez modifier vos préférences à tout moment.";
  display: block;
  margin: 0 0 16px;
  color: var(--da-muted);
  font-size: 12.5px;
  line-height: 1.5;
  text-align: left;
}

/* Cartes Marketing / Statistiques */
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine {
  box-sizing: border-box !important;
  display: block !important;
  margin: 10px 0 !important;
  padding: 15px !important;
  background: #fff !important;
  border: 1px solid var(--da-border) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronName {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronName .tarteaucitronH3 {
  display: block !important;
  margin: 0 0 6px !important;
  color: var(--da-blue) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronName :is(span, a) {
  display: block !important;
  width: 100% !important;
  color: var(--da-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk {
  display: flex !important;
  float: none !important;
  width: 100% !important;
  gap: 8px !important;
  margin: 13px 0 0 !important;
  justify-content: flex-start !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 78px !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  background: #fff !important;
  color: var(--da-blue) !important;
  border: 1px solid var(--da-blue) !important;
  border-radius: 7px !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk .tarteaucitronCheck,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk .tarteaucitronCross {
  display: none !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk button[aria-pressed="true"] {
  background: var(--da-blue) !important;
  border-color: var(--da-blue) !important;
  color: #fff !important;
}

/* Enregistrer fixe en bas */
html body #tarteaucitronRoot #tarteaucitronSave {
  position: absolute !important;
  z-index: 50 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  margin: 0 !important;
  padding: 10px 16px 14px !important;
  background: #fff !important;
  border-top: 1px solid var(--da-border) !important;
  text-align: center !important;
}

html body #tarteaucitronRoot #tarteaucitronSaveButton {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  background: var(--da-blue) !important;
  color: #fff !important;
  border: 1px solid var(--da-blue) !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}


html body #tarteaucitronRoot :is(button, a):focus-visible {
  outline: 3px solid rgba(0,38,143,.28) !important;
  outline-offset: 2px !important;
}

@media (max-width: 600px) {
  html body #tarteaucitronRoot #tarteaucitronAlertBig {
    left: 12px !important;
    right: 12px !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-height: calc(100dvh - 24px) !important;
    padding: 18px !important;
  }

  html body #tarteaucitronRoot #tarteaucitron {
    top: 12px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    height: calc(100dvh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
  }

  html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk button {
    flex: 1 1 50% !important;
    min-width: 0 !important;
  }
}

/* =========================================
   Éléments natifs à masquer définitivement
   ========================================= */

html body #tarteaucitronRoot
#tarteaucitron
#tarteaucitronMainLineOffset,

html body #tarteaucitronRoot
#tarteaucitron
#tarteaucitronNoServicesTitle,

html body #tarteaucitronRoot
#tarteaucitron
#tarteaucitronServices_mandatory {
  display: none !important;
}