/*
Theme Name: MeasureAll par amigouet.com
Description: Thème du site MeasureAll (measureall.app), conçu et réalisé par amigouet.com. CSS custom minimal : le design vit dans les blocs et les options du thème parent.
Template: blocksy
Version: 1.5.1
Author: amigouet.com
Author URI: https://amigouet.com
Text Domain: blocksy-child-measureall
*/

/* CSS custom volontairement minimal (garde-fou du chantier).
   Micro-ajustements uniquement ; tout le reste passe par Blocksy/Greenshift. */

::selection {
	background: #FFCC00;
	color: #0B0B0B;
}

/* GÉOMÉTRIE MAQUETTE (audit final) : les maquettes Claude Design n'ont pas de
   reset box-sizing — leurs conteneurs font 1290px DE CONTENU + padding, leurs
   cartes flex-basis + padding. Le border-box de Blocksy rétrécissait TOUT
   (conteneurs -80px, cartes -40px : grille métiers à 3 colonnes au lieu de 4,
   5e avis étiré, colonnes plus étroites). On rend aux éléments convertis leur
   modèle de boîte d'origine. Les éléments étrangers (formulaires Fluent Forms,
   tarteaucitron...) ne portent pas de classe gsbp et restent en border-box. */
[class^="gsbp-"],
[class*=" gsbp-"] {
	box-sizing: content-box;
}

/* Animations de la maquette (référencées par les styles inline convertis) */
@keyframes maGrowX {
	from { transform: scaleX(0); }
	to { transform: scaleX(1); }
}

@keyframes maFadeUp {
	from { opacity: 0; transform: translateY(14px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes maDraw {
	from { stroke-dashoffset: 220; }
	to { stroke-dashoffset: 0; }
}

/* Règles globales du helmet maquette */
html {
	scroll-behavior: smooth;
}

body {
	-webkit-font-smoothing: antialiased;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid #FFCC00;
	outline-offset: 2px;
	border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {
	* {
		animation: none !important;
		transition: none !important;
	}
}

/* Dans les sections Greenshift (maquette), les liens sans couleur explicite
   héritent de la couleur ambiante au lieu du bleu de palette du thème. */
[class*="gsbp-"] a {
	color: inherit;
}

/* Les blockquotes de la maquette sont nus : pas de bordure/fond Blocksy */
[class*="gsbp-"] blockquote {
	border: 0;
	padding: 0;
	background: none;
	font-style: normal;
}

/* Sections plein écran des pages en blocs Greenshift : breakout du conteneur
   Blocksy (aucune règle .alignfull full-bleed dans le thème en gabarit classique).
   Le clip horizontal évite les 15px de débordement dus à la barre de défilement. */
[class^="gsbp-"].alignfull,
[class*=" gsbp-"].alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	/* pas de bandes blanches entre sections : neutralise l'espacement vertical
	   par défaut des blocs racine (Gutenberg block-gap + entry-content Blocksy) */
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

html,
body {
	overflow-x: clip;
}

/* ---- Header sombre (maquette) : fonds imposés (le CSS dynamique Blocksy
   passe après le child, d'où les !important ciblés) ---- */
.ct-header [data-row] > .ct-container,
.ct-header [data-row] {
	background: #0B0B0B !important;
}

.ct-header {
	border-bottom: 1px solid #232323;
}

.ct-header .site-logo-container img {
	max-height: 32px !important;
	width: auto !important;
}

@media (max-width: 689.98px) {
	.ct-header .site-logo-container img {
		max-height: 26px !important;
		max-width: 150px;
	}

	.ct-header [data-id="button"] .ct-button {
		padding: 10px 18px;
		font-size: 14px;
	}
}

/* Burger encadré (maquette mobile) : carré arrondi 44px (largeur imposée,
   Blocksy dimensionne le déclencheur sur son icône) */
.ct-header [data-id="trigger"].ct-toggle {
	width: 44px !important;
	min-width: 44px;
	height: 44px !important;
	flex: 0 0 44px; /* enfant flex du header : sans ça il est compressé */
	border: 1px solid #333333 !important;
	border-radius: 12px !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* ---- Menu mobile (offcanvas) conforme maquette (retour n°10) ----
   « VOTRE MÉTIER » en libellé + grille de 7 cartes, grandes entrées
   séparées, section LANGUE FR/EN en cartes (active jaune). */
/* panneau plein écran, fond noir maquette (Blocksy pose un fond bleuté et
   une largeur de tiroir 351px via son CSS dynamique) */
#offcanvas .ct-panel-inner {
	background: #0B0B0B !important;
	max-width: 100vw !important;
	width: 100vw;
}

/* bouton de fermeture encadré comme le burger (maquette) */
#offcanvas .ct-toggle-close {
	width: 44px;
	height: 44px;
	border: 1px solid #333333;
	border-radius: 12px;
	color: #FFFFFF;
}

/* pas de pastille jaune héritée du déroulant desktop (l'offcanvas porte
   aussi la classe ct-header) */
#offcanvas .sub-menu .ct-menu-link::before {
	content: none;
}

#offcanvas .ct-panel-content-inner {
	padding-bottom: 40px;
}

/* libellé « Votre métier » (le lien parent # devient un intitulé) */
#offcanvas .mobile-menu > ul > li.menu-item-has-children > .ct-sub-menu-parent .ct-menu-link {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #8A8A8A !important;
	pointer-events: none;
	padding: 0 0 10px;
}

/* grille de métiers toujours dépliée */
#offcanvas .ct-toggle-dropdown-mobile {
	display: none;
}

#offcanvas .mobile-menu .sub-menu {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin: 0 0 26px;
	padding: 0;
	list-style: none;
}

#offcanvas .mobile-menu .sub-menu .ct-menu-link {
	display: block;
	background: #161616;
	border: 1px solid #262626;
	border-radius: 12px;
	padding: 13px 14px;
	font-size: 15px;
	font-weight: 600;
	color: #FFFFFF !important;
}

#offcanvas .mobile-menu .sub-menu .ct-menu-link:hover {
	border-color: #FFCC00;
}

/* grandes entrées (Entreprises, Fonctionnement, FAQ, Blog) */
#offcanvas .mobile-menu > ul > li > .ct-menu-link {
	display: block;
	font-size: 20px;
	font-weight: 700;
	color: #FFFFFF !important;
	padding: 14px 0;
	border-bottom: 1px solid #222222;
}

#offcanvas .mobile-menu > ul > li {
	margin: 0;
}

/* section LANGUE (injectée par le child theme, FR/EN uniquement) */
#offcanvas .ma-offcanvas-label {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #8A8A8A;
	margin: 26px 0 10px;
}

#offcanvas .ma-offcanvas-langgrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

#offcanvas .ma-offcanvas-langgrid a {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #161616;
	border: 1px solid #262626;
	border-radius: 10px;
	padding: 12px;
	font-size: 13.5px;
	font-weight: 700;
	color: #B9B7B0;
	text-decoration: none;
}

#offcanvas .ma-offcanvas-langgrid img {
	width: 21px;
	height: 16px;
	border-radius: 3px;
	object-fit: cover;
}

#offcanvas .ma-offcanvas-langgrid a.ma-lang-active {
	background: #FFCC00;
	border-color: #FFCC00;
	color: #0B0B0B;
}

/* Sélecteur de langue TranslatePress v2 (pilule sombre : couleurs réglées dans
   trp_language_switcher_settings, cf. fix-header-conformite.php) : ici seulement
   la compacité et le nom court en capitales (« FR » comme la maquette) */
.ct-header .trp-shortcode-switcher__wrapper {
	--font-size: 13px;
}

.ct-header .trp-shortcode-switcher .trp-language-item {
	font-weight: 600;
	padding: 7px 12px;
}

.ct-header .trp-language-item-name {
	text-transform: uppercase;
	letter-spacing: .04em;
}

.ct-footer > [data-row="middle"],
.ct-footer > [data-row="bottom"],
.ct-footer {
	background: #0B0B0B !important;
}

/* ---- Header sombre (maquette) : couleurs des liens et du déroulant ---- */
.ct-header [data-id="menu"] > ul > li > a {
	color: #EDEBE4;
	font-size: 14.5px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
}

/* Survol + menu déroulant ouvert : jaune. PAS de jaune permanent sur l'item
   « courant » (les ancres /#fonctionnement et /#faq rendaient Fonctionnement
   et FAQ jaunes en continu sur l'accueil). */
.ct-header [data-id="menu"] > ul > li > a:hover,
.ct-header [data-id="menu"] > ul > li > a[aria-expanded="true"],
.ct-header [data-id="menu"] > ul > li:focus-within > a,
.ct-header [data-id="menu"] > ul > li:hover > a {
	color: #FFCC00;
}

.ct-header .sub-menu {
	background: #141414;
	border: 1px solid #2C2C2C;
	border-radius: 16px;
	padding: 10px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .5);
}

.ct-header .sub-menu a {
	color: #EDEBE4;
	border-radius: 10px;
	text-transform: none;
	font-size: 14.5px;
	display: flex;
	align-items: center;
	gap: 10px;
}

/* Pastille jaune devant chaque métier du déroulant (maquette) */
.ct-header .sub-menu a::before {
	content: "";
	flex: none;
	width: 9px;
	height: 9px;
	border-radius: 999px;
	background: #FFCC00;
	border: 2px solid #0B0B0B;
}

.ct-header .sub-menu a:hover {
	background: #1E1E1E;
	color: #FFCC00;
}

.ct-header [data-id="button"] .ct-button {
	background: #FFCC00;
	color: #0B0B0B;
	font-weight: 700;
	font-size: 14.5px;
	border-radius: 999px;
	/* padding maquette (42px de haut) : le défaut Blocksy (5px 20px) faisait
	   un bouton plus petit que la maquette (retour n°8) */
	padding: 12px 24px;
	transition: transform .15s, box-shadow .15s;
}

.ct-header [data-id="button"] .ct-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(255, 204, 0, .25);
}

.ct-header [data-id="trigger"] .ct-hamburger div {
	background: #FFFFFF;
}

#offcanvas {
	--ct-background-color: #0B0B0B;
}

#offcanvas .ct-panel-content a {
	color: #EDEBE4;
}

/* ---- Footer sombre (maquette) ---- */
.ct-footer {
	background: #0B0B0B;
	color: #B9B7B0;
	border-top: 1px solid #232323;
}

/* Footer : 4 colonnes desktop (marque plus large), 2 en tablette, 1 en mobile */
.ct-footer [data-row="middle"] > .ct-container {
	grid-template-columns: 1.5fr 1fr 1fr 1fr 0.9fr;
	gap: 36px 28px;
	align-items: start;
}

@media (max-width: 999.98px) {
	.ct-footer [data-row="middle"] > .ct-container {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 689.98px) {
	.ct-footer [data-row="middle"] > .ct-container {
		grid-template-columns: 1fr;
	}
}

.ct-footer .ma-footer-title {
	font-family: 'Archivo', sans-serif;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: 0 0 16px;
}

.ct-footer .ma-footer-links a,
.ct-footer [data-id="copyright"],
.ct-footer .ct-footer-copyright {
	color: #B9B7B0;
	font-size: 14px;
	text-decoration: none;
}

.ct-footer .ma-footer-links a:hover {
	color: #FFCC00;
}

.ct-footer [data-id="menu"] a {
	color: #B9B7B0;
	font-size: 14px;
}

.ct-footer [data-id="menu"] a:hover {
	color: #FFCC00;
}

/* Barre du bas : copyright à gauche, réseaux sociaux à droite (maquette) */
.ct-footer [data-row="bottom"] > .ct-container {
	grid-template-columns: auto auto;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid #232323;
	padding-top: 24px;
}

.ct-footer .ct-footer-copyright a {
	color: #B9B7B0;
	text-decoration: none;
}

.ct-footer .ct-footer-copyright a:hover {
	color: #FFCC00;
}

.ct-footer .ma-footer-socials {
	display: flex;
	gap: 22px;
	justify-content: flex-end;
	flex-wrap: wrap;
}

.ct-footer .ma-footer-socials a {
	color: #B9B7B0;
	font-size: 14px;
	text-decoration: none;
}

.ct-footer .ma-footer-socials a:hover {
	color: #FFCC00;
}

@media (max-width: 689.98px) {
	.ct-footer [data-row="bottom"] > .ct-container {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.ct-footer .ma-footer-socials {
		justify-content: flex-start;
	}
}

/* ---- Contenu éditorial (blog, pages légales) : liens lisibles ----
   Les couleurs de base sont corrigées côté Blocksy (fix-lisibilite.php) ;
   ici on garantit que les liens du contenu restent identifiables.
   EXCLUSION des sections Greenshift : leurs boutons/liens portent leurs
   propres styles (le souligné y parasitait les boutons stores et CTA). */
.entry-content a:not(.ct-button):not(.wp-block-button__link):not([class*="gsbp-"] *) {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* tableaux du contenu éditorial (PDC) : défilement horizontal sur mobile
   au lieu d'être rognés par l'overflow-x du body */
.entry-content table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
}

/* ---- Blog : cartes claires et lisibles (retour du 08/07 soir) ---- */
/* spécificité > au CSS dynamique Blocksy ([data-prefix] .entry-card, chargé après) */
[data-prefix="blog"] .entries > .entry-card,
.blog .entries > .entry-card,
.archive .entries > .entry-card {
	background: #FFFFFF;
	border: 1px solid #E6E3DA;
	border-radius: 18px;
	overflow: hidden;
}

.entry-card .entry-title,
.entry-card .entry-title a {
	color: #0B0B0B;
}

.entry-card .entry-title a:hover {
	color: #8A6D00;
}

.entry-card .entry-excerpt {
	color: #55534E;
}

.entry-card .entry-meta,
.entry-card .entry-meta a {
	color: #8A8880;
}

/* bouton « Lire la suite » : pilule jaune, texte noir (charte) */
.entry-card .entry-button {
	background: #FFCC00;
	color: #0B0B0B;
	font-weight: 700;
	border-radius: 999px;
	padding: 10px 20px;
}

.entry-card .entry-button:hover {
	background: #0B0B0B;
	color: #FFCC00;
}

/* ---- Formulaire devis entreprise (modale site + formulaire intégré de la
   page /entreprises/) : grille 3 colonnes, champs sombres, pilule jaune,
   conformes à la maquette (source unique, retire l'inline CSS de la page) ---- */
/* colonne formulaire de la carte noire /entreprises/ : dimensionnement flex de
   la maquette (60 % environ) ; sans effet dans la modale (parent non-flex) */
.ma-devis-form {
	flex: 1.4 1 420px;
	min-width: min(100%, 300px);
	box-sizing: border-box;
}

/* Fluent Forms enveloppe les champs dans un fieldset : la grille s'applique
   aux deux niveaux (le fieldset occupe toute la largeur de la grille du form) */
.ma-devis-form .frm-fluent-form,
.ma-devis-form .frm-fluent-form fieldset {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px 16px;
}

.ma-devis-form .frm-fluent-form > fieldset {
	grid-column: 1 / -1;
	border: 0;
	padding: 0;
	margin: 0;
	min-width: 0;
}

@media (max-width: 999.98px) {
	.ma-devis-form .frm-fluent-form,
	.ma-devis-form .frm-fluent-form fieldset {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 689.98px) {
	.ma-devis-form .frm-fluent-form,
	.ma-devis-form .frm-fluent-form fieldset {
		grid-template-columns: 1fr;
	}
}

.ma-devis-form .ff-el-group {
	margin-bottom: 0;
}

/* à partir du 7e champ (nombre d'utilisateurs, message, RGPD) : pleine largeur
   (nth-of-type : le fieldset commence par une légende et des inputs cachés) */
.ma-devis-form .ff-el-group:nth-of-type(n+7),
.ma-devis-form .ff_submit_btn_wrapper {
	grid-column: 1 / -1;
}

.ma-devis-form .ff-el-input--label label {
	font-size: 13.5px;
	font-weight: 700;
	color: #FFFFFF;
	margin-bottom: 6px;
}

.ma-devis-form .ff-el-form-control {
	background: #161616;
	border: 1.5px solid #333333;
	border-radius: 10px;
	padding: 10px 13px;
	color: #FFFFFF;
	font-size: 14px;
	width: 100%;
}

.ma-devis-form .ff-el-form-control::placeholder {
	color: #8A8A8A;
}

.ma-devis-form .ff-el-form-control:focus {
	border-color: #FFCC00;
	outline: none;
}

.ma-devis-form select.ff-el-form-control {
	appearance: none;
	color: #FFFFFF;
	background-color: #161616;
}

.ma-devis-form .ff_t_c,
.ma-devis-form .ff_tc_checkbox span {
	font-size: 12.5px;
	line-height: 1.55;
	color: #B9B7B0;
}

.ma-devis-form .ff_t_c a {
	color: #EDEBE4;
	text-decoration: underline;
}

.ma-devis-form input[type="checkbox"] {
	width: 16px;
	height: 16px;
	accent-color: #FFCC00;
}

.ma-devis-form .ff-el-form-check-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.ma-devis-form .ff-btn-submit {
	background: #FFCC00 !important;
	color: #0B0B0B !important;
	font-weight: 700 !important;
	font-size: 14.5px !important;
	padding: 13px 26px !important;
	border-radius: 999px !important;
	border: none !important;
	transition: transform .15s, box-shadow .15s;
}

.ma-devis-form .ff-btn-submit:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(255, 204, 0, .3);
}

.ma-devis-form .ff-message-success {
	background: #161616;
	border: 1.5px solid #FFCC00;
	border-radius: 12px;
	color: #FFFFFF;
	padding: 18px;
}

.ma-devis-form .ff-el-is-error .ff-el-form-control {
	border-color: #E5484D;
}

.ma-devis-form .error.text-danger,
.ma-devis-form .ff-el-error-message {
	color: #FFB4B4;
	font-size: 12.5px;
}

/* ---- Modale devis entreprise (tous les CTA hors page /entreprises/) ---- */
.ma-devis-overlay {
	position: fixed !important;
	inset: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99990;
	display: none;
	align-items: flex-start;
	justify-content: center;
	overflow-y: auto;
	background: rgba(11, 11, 11, .72);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	padding: 5vh 16px 48px;
}

.ma-devis-overlay.ma-open {
	display: flex;
}

.ma-devis-dialog {
	position: relative;
	width: min(960px, 100%);
	background: #0F0F0F;
	border: 1px solid #232323;
	border-radius: 20px;
	padding: clamp(20px, 3vw, 36px);
	color: #EDEBE4;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .55);
}

.ma-devis-close {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	border: 1.5px solid #4A4A4A;
	background: transparent;
	color: #EDEBE4;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	transition: border-color .15s, color .15s;
}

.ma-devis-close:hover {
	border-color: #FFCC00;
	color: #FFCC00;
}

.ma-devis-chip {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 14px;
	font-family: 'SF Mono', Menlo, Consolas, monospace;
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #EDEBE4;
}

.ma-devis-chip::before {
	content: "";
	flex: none;
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: #FFCC00;
	border: 2px solid #0B0B0B;
	box-shadow: 0 0 0 1.5px #FFCC00;
}

.ma-devis-title {
	font-family: 'Archivo', sans-serif;
	font-weight: 800;
	font-size: clamp(22px, 2.6vw, 32px);
	line-height: 1.08;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: 0 0 10px;
}

.ma-devis-title span {
	color: #FFCC00;
}

.ma-devis-sub {
	color: #B9B7B0;
	font-size: 14.5px;
	line-height: 1.55;
	margin: 0 0 20px;
	max-width: 720px;
}

.ma-devis-overlay .ma-devis-form textarea.ff-el-form-control {
	min-height: 96px;
	max-height: 140px;
}

.ma-devis-note {
	margin: 14px 0 0;
	font-size: 14px;
	color: #B9B7B0;
}

.ma-devis-note a {
	color: #EDEBE4;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ma-devis-note a:hover {
	color: #FFCC00;
}

/* ---- Bandeau cookies tarteaucitron : charte MeasureAll ----
   (useExternalCss=false : la feuille du plugin charge après le child,
   d'où quelques !important ciblés sur ses couleurs) */
#tarteaucitronRoot #tarteaucitronAlertBig {
	background: #0B0B0B !important;
	color: #EDEBE4 !important;
	font-family: 'Inter', sans-serif !important;
	border-top: 1px solid #232323;
	padding: 22px clamp(16px, 4vw, 40px) !important;
	box-shadow: 0 -14px 40px rgba(0, 0, 0, .35);
}

#tarteaucitronRoot #tarteaucitronDisclaimerAlert,
#tarteaucitronRoot #tarteaucitronDisclaimerAlert strong {
	color: #EDEBE4 !important;
	font-size: 14.5px !important;
	line-height: 1.6;
}

#tarteaucitronRoot .tarteaucitronCTAButton,
#tarteaucitronRoot #tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronPrivacyUrl {
	font-family: 'Inter', sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	border-radius: 999px !important;
	padding: 11px 22px !important;
	margin: 6px !important;
	transition: transform .15s, box-shadow .15s;
}

#tarteaucitronRoot #tarteaucitronPersonalize2,
#tarteaucitronRoot .tarteaucitronAllow {
	background: #FFCC00 !important;
	color: #0B0B0B !important;
}

#tarteaucitronRoot #tarteaucitronPersonalize2:hover,
#tarteaucitronRoot .tarteaucitronAllow:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(255, 204, 0, .25);
}

#tarteaucitronRoot #tarteaucitronAllDenied2,
#tarteaucitronRoot .tarteaucitronDeny {
	background: transparent !important;
	color: #EDEBE4 !important;
	border: 1.5px solid #4A4A4A !important;
}

#tarteaucitronRoot #tarteaucitronAllDenied2:hover,
#tarteaucitronRoot .tarteaucitronDeny:hover {
	border-color: #EDEBE4 !important;
}

#tarteaucitronRoot #tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronPrivacyUrl {
	background: transparent !important;
	color: #B9B7B0 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
	font-weight: 500 !important;
}

/* panneau de personnalisation : tout en sombre, textes clairs
   (par défaut : conteneur .tarteaucitronBorder BLANC -> grandes bandes
   blanches, et textes #333 quasi invisibles sur les lignes sombres) */
#tarteaucitronRoot #tarteaucitron {
	background: #141414 !important;
	color: #EDEBE4 !important;
	border-radius: 18px;
	overflow: hidden;
	font-family: 'Inter', sans-serif !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronBorder {
	background: #141414 !important;
	border: 0 !important;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronClosePanel {
	background: #0B0B0B !important;
	color: #EDEBE4 !important;
	border: 1px solid #2C2C2C !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH1,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH2,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH3 {
	color: #FFFFFF !important;
	font-family: 'Archivo', sans-serif !important;
}

/* textes des lignes de services : clairs partout (défaut #333 illisible) */
#tarteaucitronRoot #tarteaucitron,
#tarteaucitronRoot #tarteaucitron .tarteaucitronName,
#tarteaucitronRoot #tarteaucitron .tarteaucitronAsk,
#tarteaucitronRoot #tarteaucitron .tarteaucitronListCookies,
#tarteaucitronRoot #tarteaucitron .tarteaucitronReadmoreSeparator {
	color: #EDEBE4 !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronName a,
#tarteaucitronRoot #tarteaucitron .tarteaucitronReadmoreOfficial,
#tarteaucitronRoot #tarteaucitron .tarteaucitronReadmoreInfo {
	color: #B9B7B0 !important;
	text-decoration: underline;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
#tarteaucitronRoot #tarteaucitron .tarteaucitronTitle,
#tarteaucitronRoot #tarteaucitron #tarteaucitronInfo,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronDetails {
	background: #1E1E1E !important;
	color: #EDEBE4 !important;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine {
	background: #181818 !important;
	border-left: 4px solid #2C2C2C !important;
}

/* glyphes d'état (coche/croix) dans les boutons : suivent la couleur du bouton */
#tarteaucitronRoot .tarteaucitronCheck,
#tarteaucitronRoot .tarteaucitronCross {
	color: inherit !important;
}

/* barre du bas (Enregistrer) */
#tarteaucitronRoot #tarteaucitron .tarteaucitronSaveDiv,
#tarteaucitronRoot #tarteaucitron #tarteaucitronSave {
	background: #141414 !important;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronSaveButton {
	background: #FFCC00 !important;
	color: #0B0B0B !important;
	font-weight: 700 !important;
	border-radius: 999px !important;
	padding: 11px 24px !important;
}

/* le point d'entrée du panneau est le lien « Gestion des cookies » du footer :
   pas de pastille flottante (retour n°4) — garde-fou si showIcon revenait */
#tarteaucitronRoot #tarteaucitronIcon {
	display: none !important;
}
