/* ==========================================================================
   tarteaucitron 1.37.0 — bandeau de consentement et panneau de gestion.
   Handoff « Cookies · bandeau et panneau » (maquettes CookiesBandeau,
   CookiesPanneau), 27/10/2026.

   La librairie (tarteaucitron.js, services, langues, css/tarteaucitron.css)
   n'est pas modifiée : textes par tarteaucitronCustomText et paramètres de
   tarteaucitron.init (base.html), style ici. Les !important l'emportent sur la
   feuille de la librairie, injectée après celle-ci. Sélecteurs vérifiés sur le
   DOM 1.37.0 : à revérifier après une montée de version. « html body » devant
   chaque sélecteur : la feuille de la librairie, injectée après, ne l'emporte pas.
   ========================================================================== */

html body #tarteaucitronRoot {
  /* Valeurs sans jeton, déclarées ici */
  --mo-tac-segment: #F1EEE6;            /* fond du sélecteur Refuser / Accepter */
  --mo-tac-always-fg: #2F4A3E;          /* texte de la pastille « Toujours actifs » */
  --mo-tac-veil: rgba(28, 31, 36, 0.45); /* voile derrière le panneau */
  --mo-tac-shadow-banner: 0 24px 60px rgba(28, 31, 36, 0.18), 0 2px 8px rgba(28, 31, 36, 0.08);
  --mo-tac-shadow-panel: 0 30px 80px rgba(28, 31, 36, 0.28);
  --mo-tac-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M1 1l12 12M13 1L1 13' stroke='%231C1F24' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  --mo-tac-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231C1F24' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  font-family: var(--font-primary), system-ui, sans-serif !important;
}
html body #tarteaucitronRoot button,
html body #tarteaucitronRoot span,
html body #tarteaucitronRoot p,
html body #tarteaucitronRoot a,
html body #tarteaucitronRoot strong {
  font-family: var(--font-primary), system-ui, sans-serif !important;
  letter-spacing: 0 !important;
}
html body #tarteaucitronRoot button:focus-visible,
html body #tarteaucitronRoot a:focus-visible {
  outline: 2px solid var(--bleuet-dark) !important;
  outline-offset: 2px !important;
}
/* Pas de ✓ ni de ✗ dans les boutons, pas de pourcentage de défilement */
html body #tarteaucitronRoot .tarteaucitronCheck,
html body #tarteaucitronRoot .tarteaucitronCross,
html body #tarteaucitronRoot #tarteaucitronPercentage {
  display: none !important;
}

/* ==========================================================================
   Bandeau (#tarteaucitronAlertBig) : carte blanche flottante, centrée en bas
   ========================================================================== */
html body #tarteaucitronRoot #tarteaucitronAlertBig {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  bottom: 32px !important;
  transform: translateX(-50%) !important;
  width: min(960px, calc(100% - 32px)) !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 24px 28px !important;
  background: var(--surface-card) !important;
  color: var(--ink-body) !important;
  border-radius: 20px !important;
  box-shadow: var(--mo-tac-shadow-banner) !important;
  text-align: left !important;
  grid-template-columns: minmax(0, 1fr) 150px 150px;
  grid-template-areas:
    "text deny accept"
    "link perso perso";
  column-gap: 32px;
  row-gap: 10px;
  align-items: center;
}
/* La librairie bascule display (none / block) : la grille ne s'applique que bandeau visible */
html body #tarteaucitronRoot #tarteaucitronAlertBig:not([style*="none"]) {
  display: grid !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
  grid-area: text;
  grid-row: 1 / span 1;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: var(--ink-body) !important;
  text-align: left !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig .mo-tac-title {
  display: block !important;
  margin-bottom: 6px !important;
  font-family: var(--font-secondary), system-ui, sans-serif !important;
  font-size: 19px !important;
  line-height: 1.25 !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig .mo-tac-text {
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: var(--ink-body) !important;
}

/* Boutons du bandeau : Tout refuser et Tout accepter identiques (exigence CNIL) */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border-radius: var(--radius-full) !important;
  font-size: 14px !important;
  font-weight: var(--weight-medium) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: var(--ink-900) !important;
  color: var(--neutre-50) !important;
  border: 1px solid var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 { grid-area: deny; }
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 { grid-area: accept; }
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  grid-area: perso;
  background: var(--surface-card) !important;
  color: var(--ink-900) !important;
  border: 1px solid var(--ink-200) !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  grid-area: link;
  justify-self: start;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  font-size: 13.5px !important;
  color: var(--ink-900) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  cursor: pointer !important;
}

/* ==========================================================================
   Panneau (#tarteaucitron)
   ========================================================================== */
html body #tarteaucitronRoot #tarteaucitronBack {
  background: var(--mo-tac-veil) !important;
  opacity: 1 !important;
}
html body #tarteaucitronRoot div#tarteaucitron {
  left: 50% !important;
  right: auto !important;
  top: 56px !important;
  transform: translateX(-50%) !important;
  width: min(680px, calc(100% - 32px)) !important;
  max-width: none !important;
  max-height: calc(100vh - 112px) !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-direction: column;
  background: var(--surface-card) !important;
  border-radius: 22px !important;
  box-shadow: var(--mo-tac-shadow-panel) !important;
  overflow: hidden !important;
}
html body #tarteaucitronRoot div#tarteaucitron[style*="block"] {
  display: flex !important;
}
html body #tarteaucitronRoot #tarteaucitronServices {
  flex: 1 1 auto;
  max-height: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-y: auto !important;
  background: var(--surface-card) !important;
  box-shadow: none !important;
}

/* Fermer : rond de 38 px dans la fenêtre, croix dessinée, texte gardé pour les lecteurs d'écran */
html body #tarteaucitronRoot #tarteaucitronClosePanel {
  position: absolute !important;
  top: 24px !important;
  right: 24px !important;
  left: auto !important;
  z-index: 2 !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--neutre-200) !important;
  border-radius: var(--radius-full) !important;
  background: var(--surface-card) var(--mo-tac-close) center / 14px 14px no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

/* En-tête : « Cookies » en surtitre, titre, introduction */
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronMainLine {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch !important;
  gap: 16px 0 !important;
  margin: 0 !important;
  padding: 28px 32px 20px !important;
  background: var(--surface-card) !important;
  border: 0 !important;
}
html body #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH1 {
  grid-column: 1 / -1;
  display: block !important;
  margin: 0 !important;
  padding-right: 56px !important;
  font-family: var(--font-secondary), system-ui, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
  text-align: left !important;
}
html body #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH1::before {
  content: "Cookies";
  display: block;
  margin-bottom: 8px;
  font-family: var(--font-primary), system-ui, sans-serif;
  font-size: 11px;
  font-weight: var(--weight-medium);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--bronze-700);
}
html body #tarteaucitronRoot #tarteaucitronInfo {
  grid-column: 1 / -1;
  display: block !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: var(--ink-body) !important;
  text-align: left !important;
}
html body #tarteaucitronRoot #tarteaucitronInfo p {
  display: inline !important;
  margin: 0 !important;
  font-size: 14px !important;
  color: var(--ink-body) !important;
}
html body #tarteaucitronRoot #tarteaucitronInfo br { display: none !important; }
html body #tarteaucitronRoot #tarteaucitronInfo #tarteaucitronPrivacyUrlDialog {
  display: inline !important;
  margin: 0 0 0 4px !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  font-size: 14px !important;
  color: var(--ink-900) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  cursor: pointer !important;
}

/* Tous les services : encart crème, Tout refuser puis Tout accepter */
html body #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronName,
html body #tarteaucitronRoot .tarteaucitronMainLine #tarteaucitronScrollbarAdjust {
  margin: 0 !important;
  background: var(--cream-100) !important;
}
html body #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronName {
  width: auto !important;
  padding: 14px 0 14px 16px !important;
  border-radius: 14px 0 0 14px !important;
  display: flex !important;
  align-items: center !important;
}
html body #tarteaucitronRoot .tarteaucitronMainLine #tarteaucitronScrollbarAdjust {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  padding: 14px 16px 14px 12px !important;
  border-radius: 0 14px 14px 0 !important;
}
html body #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH2 {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronAllDenied { order: 1; }
html body #tarteaucitronRoot #tarteaucitronAllAllowed { order: 2; }
html body #tarteaucitronRoot .tarteaucitronMainLine #tarteaucitronAllDenied,
html body #tarteaucitronRoot .tarteaucitronMainLine #tarteaucitronAllAllowed {
  display: inline-flex !important;
  align-items: center !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 1px solid var(--ink-200) !important;
  border-radius: var(--radius-full) !important;
  background: var(--surface-card) !important;
  color: var(--ink-900) !important;
  font-size: 13px !important;
  font-weight: var(--weight-medium) !important;
  opacity: 1 !important;
  cursor: pointer !important;
}

/* Liste des catégories */
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronBorder {
  margin: 0 !important;
  padding: 0 32px 8px !important;
  background: none !important;
  border: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronBorder > ul > li {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--neutre-200) !important;
  background: none !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronBorder > ul > li:last-child { border-bottom: 0 !important; }
/* Titres et descriptions en double de la librairie, et « Cookies obligatoires » */
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronTitle,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronDetails {
  display: none !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine:not(.tarteaucitronMainLine) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 18px 0 !important;
  background: none !important;
  border: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronName {
  flex: 1 1 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  text-align: left !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine .tarteaucitronName .tarteaucitronH3 {
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine .tarteaucitronName > span:not(.tarteaucitronH3):not(.tarteaucitronListCookies) {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  color: var(--ink-500) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine .tarteaucitronName br,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine .tarteaucitronListCookies {
  display: none !important;
}

/* Cookies nécessaires : texte, pastille « Toujours actifs », sans bouton */
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronH3 {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 4px 16px !important;
  width: 100% !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .mo-tac-cat {
  flex: 1 1 60% !important;
  font-size: 15px !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .mo-tac-desc {
  order: 3 !important;
  flex: 1 0 100% !important;
  font-size: 13.5px !important;
  font-weight: var(--weight-regular) !important;
  line-height: 1.5 !important;
  color: var(--ink-500) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .mo-tac-always {
  order: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 30px !important;
  padding: 0 12px !important;
  border-radius: var(--radius-full) !important;
  background: var(--celadon-50) !important;
  color: var(--mo-tac-always-fg) !important;
  font-size: 12.5px !important;
  font-weight: var(--weight-medium) !important;
  white-space: nowrap !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAsk { display: none !important; }

/* Lien « Services (1) » avec chevron */
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitron-toggle-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  font-size: 12.5px !important;
  font-weight: var(--weight-medium) !important;
  color: var(--ink-900) !important;
  cursor: pointer !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitron-toggle-group span {
  font-size: 12.5px !important;
  color: var(--ink-900) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitron-toggle-group::after {
  content: "";
  width: 10px;
  height: 6px;
  background: var(--mo-tac-chevron) center / contain no-repeat;
  transition: transform var(--duration-base) var(--ease);
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitron-toggle-group[aria-expanded="true"]::after {
  transform: rotate(180deg);
}

/* Sélecteur à deux segments par catégorie : Refuser puis Accepter */
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"] {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 3px !important;
  border-radius: var(--radius-full) !important;
  background: var(--mo-tac-segment) !important;
}
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"] .tarteaucitronDeny { order: 1; }
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"] .tarteaucitronAllow { order: 2; }
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"] button {
  display: inline-flex !important;
  align-items: center !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: var(--radius-full) !important;
  background: transparent !important;
  color: var(--ink-900) !important;
  font-size: 13px !important;
  font-weight: var(--weight-medium) !important;
  opacity: 1 !important;
  cursor: pointer !important;
}
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"].tarteaucitronIsAllowed .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitronServices [id^="tarteaucitron-group-"].tarteaucitronIsDenied .tarteaucitronDeny {
  background: var(--ink-900) !important;
  color: var(--neutre-50) !important;
}

/* Détail d'un service (ouvert par « Services (1) ») : encart crème, sans boutons propres */
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"]:not(#tarteaucitronServices_mandatory) {
  margin: 0 0 16px !important;
  padding: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"]:not(#tarteaucitronServices_mandatory) > li.tarteaucitronLine {
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: var(--cream-100) !important;
}
/* Plusieurs services dans une catégorie (mesure d'audience : Analytics et Tag Manager) */
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"]:not(#tarteaucitronServices_mandatory) > li.tarteaucitronLine + li.tarteaucitronLine {
  margin-top: 8px !important;
}
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"]:not(#tarteaucitronServices_mandatory) .tarteaucitronName {
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"]:not(#tarteaucitronServices_mandatory) .tarteaucitronH3 {
  font-size: 13.5px !important;
}
html body #tarteaucitronRoot #tarteaucitronServices ul[id^="tarteaucitronServices_"] .tarteaucitronAsk,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronStatusInfo,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronReadmoreInfo,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronReadmoreSeparator {
  display: none !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronReadmoreOfficial {
  margin: 0 !important;
  font-size: 13px !important;
  color: var(--ink-900) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronReadmoreOfficial::after {
  content: " \2197";
  text-decoration: none;
}

/* Pied : rappel et Enregistrer mes choix */
html body #tarteaucitronRoot #tarteaucitronSave {
  /* Dans la zone qui défile (DOM de la librairie) : collé en bas pour rester visible */
  position: sticky !important;
  bottom: 0 !important;
  z-index: 1 !important;
  flex: 0 0 auto;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 18px 32px 24px !important;
  border-top: 1px solid var(--neutre-200) !important;
  background: var(--surface-card) !important;
  text-align: left !important;
}
html body #tarteaucitronRoot #tarteaucitronSave::before {
  content: "Les services sans choix restent refusés.";
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--ink-500);
}
html[lang^="en"] #tarteaucitronRoot #tarteaucitronSave::before {
  content: "Services without a choice stay rejected.";
}
html body #tarteaucitronRoot #tarteaucitronSaveButton {
  display: inline-flex !important;
  align-items: center !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: var(--radius-full) !important;
  background: var(--ink-900) !important;
  color: var(--neutre-50) !important;
  font-size: 14px !important;
  font-weight: var(--weight-medium) !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

/* ==========================================================================
   Renforts : la librairie a ses propres règles « petit écran »
   (html body #tarteaucitronRoot #tarteaucitron …, !important) chargées après.
   Un identifiant de plus (#tarteaucitronServices) pour qu'elles ne l'emportent pas.
   ========================================================================== */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName {
  display: flex !important;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronScrollbarAdjust,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices [id^="tarteaucitron-group-"] {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronScrollbarAdjust { display: flex !important; }
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices [id^="tarteaucitron-group-"] { display: inline-flex !important; }
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronScrollbarAdjust button,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices [id^="tarteaucitron-group-"] button {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitron-toggle-group {
  position: static !important;
  display: inline-flex !important;
  width: auto !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  font-size: 12.5px !important;
}
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName span {
  width: auto !important;
}
/* Flèche ajoutée par la librairie devant « Services (n) » : le chevron est le nôtre */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitron-toggle-group::before {
  display: none !important;
}
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices_mandatory .mo-tac-desc {
  width: 100% !important;
}

/* ==========================================================================
   Mobile
   ========================================================================== */
@media (max-width: 760px) {
  html body #tarteaucitronRoot #tarteaucitronAlertBig {
    bottom: 16px !important;
    padding: 20px !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "text text"
      "deny accept"
      "perso perso"
      "link link";
    column-gap: 10px;
  }
}
@media (max-width: 600px) {
  /* Tous les services : libellé au-dessus, boutons en dessous, dans le même encart */
  html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine { grid-template-columns: minmax(0, 1fr); row-gap: 0 !important; }
  html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine #tarteaucitronInfo { margin-bottom: 16px !important; }
  html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronH1 { margin-bottom: 12px !important; }
  html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName {
    padding: 14px 16px 8px !important;
    border-radius: 14px 14px 0 0 !important;
  }
  html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronScrollbarAdjust {
    padding: 0 16px 14px !important;
    border-radius: 0 0 14px 14px !important;
  }
  html body #tarteaucitronRoot div#tarteaucitron {
    top: 16px !important;
    width: calc(100% - 32px) !important;
    max-height: calc(100vh - 32px) !important;
  }
  html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronMainLine { padding: 24px 20px 16px !important; }
  html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronBorder { padding: 0 20px 8px !important; }
  html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine:not(.tarteaucitronMainLine) {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
  html body #tarteaucitronRoot #tarteaucitronSave {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 16px 20px 20px !important;
  }
  html body #tarteaucitronRoot #tarteaucitronSaveButton { justify-content: center !important; }
}
