/* Bandeau de cookies (Complianz) : petite carte discrète en bas à gauche, couleurs du site. */
html:root {
	--cmplz_banner_width: 370px;
	--cmplz_banner_background_color: #fff;
	--cmplz_banner_border_color: var(--ebtp-filet, #e3e7eb);
	--cmplz_banner_border_width: 1px 1px 1px 1px;
	--cmplz_banner_border_radius: 8px 8px 8px 8px;
	--cmplz_text_color: #3d4a57;
	--cmplz_hyperlink_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_button_accept_background_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_button_accept_border_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_button_accept_text_color: #fff;
	--cmplz_button_deny_background_color: transparent;
	--cmplz_button_deny_border_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_button_deny_text_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_button_settings_background_color: transparent;
	--cmplz_button_settings_border_color: #c9d2db;
	--cmplz_button_settings_text_color: #3d4a57;
	--cmplz_button_border_radius: 6px 6px 6px 6px;
	--cmplz_slider_active_color: var(--ebtp-ardoise-fonce, #4d677f);
	--cmplz_slider_inactive_color: #c9d2db;
	--cmplz_slider_bullet_color: #fff;
	--cmplz_category_header_always_active_color: var(--ebtp-ardoise-fonce, #4d677f);
}

#cmplz-cookiebanner-container .cmplz-cookiebanner {
	top: auto !important;
	right: auto !important;
	bottom: 20px !important;
	left: 20px !important;
	transform: none !important;
	width: min(370px, calc(100vw - 40px));
	gap: 10px;
	padding: 20px 22px;
	font-family: Lato, sans-serif;
	box-shadow: 0 16px 40px rgba(18, 28, 40, .18);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header { margin: 0; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title { color: var(--ebtp-encre, #1d2733); font-size: 18px; font-weight: 700; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin: 0; font-size: 13.5px; line-height: 1.55; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a { font-weight: 700; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { gap: 8px; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn {
	min-height: 40px;
	padding: 10px 14px;
	font-family: Lato, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover { background-color: var(--ebtp-encre, #1d2733); border-color: var(--ebtp-encre, #1d2733); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover { background-color: #f3f5f7; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link { color: #66737f; font-size: 12px; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close { color: #8592a0; }

/* Pas de pastille flottante : le lien « Gestion des cookies » du footer rouvre le bandeau. */
.cmplz-manage-consent, #cmplz-manage-consent { display: none !important; }

/* Contenu bloqué (carte Google, vidéos) en attendant l'accord. */
.cmplz-placeholder-element { border-radius: 8px; }
.cmplz-blocked-content-notice { border-radius: 6px !important; font-family: Lato, sans-serif !important; }

@media (max-width: 640px) {
	#cmplz-cookiebanner-container .cmplz-cookiebanner { bottom: 12px !important; left: 12px !important; width: calc(100vw - 24px); }
}

/* Flatsome ajoute puces et marges aux listes du bandeau ; largeur imposée par Complianz. */
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-show { width: min(370px, calc(100vw - 40px)) !important; max-width: 370px; overflow: visible !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner ul { margin: 0 !important; padding: 0 !important; list-style: none !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner li { margin: 0 !important; list-style: none !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner li:empty,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents li:not(:has(a[href]:not([href="#"]))) { display: none; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { overflow: visible; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { flex: 1 1 auto; margin: 0; }
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-bottom-right.cmplz-show,
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-show { width: min(370px, calc(100vw - 40px)) !important; max-width: 370px !important; grid-template-columns: 100% !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { display: flex; flex-wrap: wrap; width: 100%; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { flex: 1 1 0; min-width: 0; width: auto; padding: 10px 8px; letter-spacing: .03em; white-space: nowrap; }
/* Trois boutons ne tiennent pas sur une ligne de 370 px : Accepter et Refuser côte à côte,
   Personnaliser (ou Enregistrer) en dessous, sur toute la largeur. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny { flex: 1 1 calc(50% - 4px); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-save-preferences { flex: 1 1 100%; min-height: 36px; }
/* Complianz garde 3 colonnes de grille (100 % + 0 + 0) : leurs espacements poussaient les boutons
   de 20 px hors de la carte. Espacement vertical seulement. */
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-show { column-gap: 0 !important; }
/* Sur téléphone (≤ 425 px), Complianz masque le titre, empile les boutons en colonne et met
   chaque catégorie sur 3 lignes : on garde la même disposition que sur ordinateur. */
@media (max-width: 425px) {
	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header .cmplz-title { display: block; }
	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { flex-direction: row; flex-wrap: wrap; }
	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category .cmplz-category-header { grid-template-columns: 1fr auto 15px !important; }
	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin-right: 0; }
}
/* Flatsome donne au bouton chevron des catégories un padding de bouton : il sortait du cadre. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-header .cmplz-category-toggle {
	width: 25px;
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	line-height: 1;
	box-shadow: none;
}
/* La case invisible des interrupteurs débordait de 10 px sur le chevron et bloquait son clic. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-banner-checkbox input.cmplz-consent-checkbox { width: 30px !important; max-width: 30px; }
