/* ==========================================================================
   tarteaucitron.js (TAC) — habillage « Le ciel de Nesle »
   À utiliser avec le CSS d'origine de TAC (useExternalCss: false) :
   ce fichier ne fait que surcharger couleurs, polices et mise en forme.
   Réglages conseillés dans tarteaucitron.init :
     orientation: "bottom", DenyAllCta: true, AcceptAllCta: true,
     showIcon: true, iconPosition: "BottomLeft", highPrivacy: true
   ========================================================================== */

html body #tarteaucitronRoot,
html body #tarteaucitronRoot * {
	font-family: "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
	letter-spacing: normal !important;
}

html body #tarteaucitronRoot button {
	text-transform: none !important;
	box-shadow: none !important;
}

html body #tarteaucitronRoot :focus-visible {
	outline: 3px solid #A84E1E !important;
	outline-offset: 2px !important;
}

/* --------------------------------------------------------------------------
   Bandeau de consentement (bas de page)
   -------------------------------------------------------------------------- */

html body #tarteaucitronRoot #tarteaucitronAlertBig {
	left: 50% !important;
	right: auto !important;
	bottom: 16px !important;
	top: auto !important;
	transform: translateX(-50%) !important;
	width: calc(100% - 32px) !important;
	max-width: 1192px !important;
	margin: 0 !important;
	padding: 24px 28px !important;
	box-sizing: border-box !important;
	background: #FFFCF7 !important;
	color: #10343C !important;
	text-align: left !important;
	border: 0 !important;
	border-top: 4px solid #E8894A !important;
	border-radius: 24px !important;
	box-shadow: 0 20px 50px rgba(16, 52, 60, 0.28) !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
	display: block !important;
	margin: 0 0 16px !important;
	color: #4E6469 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
	text-align: left !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert b {
	display: block;
	margin-bottom: 4px;
	font-size: 19px !important;
	font-weight: 800 !important;
	color: #10343C !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert a {
	color: #10343C !important;
	text-decoration: underline !important;
}

/* Boutons du bandeau */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 48px !important;
	margin: 6px 8px 0 0 !important;
	padding: 0 22px !important;
	border-radius: 999px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	cursor: pointer !important;
	vertical-align: middle !important;
	box-sizing: border-box !important;
	max-width: 100% !important;
	transition: background-color 0.15s ease, color 0.15s ease !important;
}

/* Tout accepter */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
	background: #10343C !important;
	color: #FFFCF7 !important;
	border: 2px solid #10343C !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:focus {
	background: #0A2228 !important;
	border-color: #0A2228 !important;
}

/* Tout refuser (même poids visuel qu'accepter : exigence CNIL) */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
	background: #ffffff !important;
	color: #10343C !important;
	border: 2px solid #10343C !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2:focus {
	background: #10343C !important;
	color: #ffffff !important;
}

/* Personnaliser */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
	background: transparent !important;
	color: #A84E1E !important;
	border: 2px solid transparent !important;
	text-decoration: underline !important;
	padding: 0 12px !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:focus {
	color: #8A3F17 !important;
	background: #FAF5EC !important;
}

/* Lien « Politique de confidentialité » du bandeau */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 48px !important;
	margin: 6px 0 0 !important;
	padding: 0 12px !important;
	background: transparent !important;
	border: 0 !important;
	color: #4E6469 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
	cursor: pointer !important;
	vertical-align: middle !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl:focus {
	color: #10343C !important;
}

/* Icône « ✓ / ✗ » ajoutée par TAC dans les boutons */
html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCheck,
html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCross {
	display: none !important;
}

/* --------------------------------------------------------------------------
   Fond assombri + panneau de personnalisation
   -------------------------------------------------------------------------- */

html body #tarteaucitronRoot #tarteaucitronBack {
	background: #0A2228 !important;
	opacity: 0.72 !important;
}

html body #tarteaucitronRoot #tarteaucitron {
	border-radius: 8px !important;
	overflow: hidden !important;
	box-shadow: 0 24px 60px rgba(16, 52, 60, 0.4) !important;
	background: #ffffff !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronClosePanel {
	background: #A84E1E !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: 0 0 0 8px !important;
	height: auto !important;
	line-height: 1.2 !important;
	padding: 10px 18px !important;
	z-index: 5 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronClosePanel:hover,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronClosePanel:focus {
	background: #8A3F17 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices {
	background: #ffffff !important;
	box-shadow: none !important;
	border: 0 !important;
}

/* Ligne principale « Préférences pour tous les services » */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
	background: #10343C !important;
	border: 0 !important;
	padding: 20px 24px !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronH2,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName span {
	color: #ffffff !important;
	font-weight: 800 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
	background: #10343C !important;
}

/* Titres de catégories */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronH1,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronInfo {
	background: #F4ECDF !important;
	color: #10343C !important;
	font-weight: 700 !important;
	border: 0 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronInfo {
	font-weight: 500 !important;
	color: #4E6469 !important;
	border-left: 4px solid #10343C !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronDetails {
	background: #10343C !important;
	color: #ffffff !important;
}

/* Lignes de services */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine {
	background: #ffffff !important;
	border-bottom: 1px solid #E7DED0 !important;
	border-left: 0 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
	background: #FAF5EC !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName span,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronH3 {
	color: #10343C !important;
	font-weight: 700 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName a,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronListCookies {
	color: #4E6469 !important;
}

/* Boutons Autoriser / Interdire */
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronDeny {
	background: #ffffff !important;
	color: #10343C !important;
	border: 2px solid #E7DED0 !important;
	border-radius: 999px !important;
	padding: 8px 14px !important;
	min-height: 40px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	opacity: 1 !important;
	cursor: pointer !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronMainLine .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronMainLine .tarteaucitronDeny {
	border-color: #ffffff !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAllow:hover,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAllow:focus {
	border-color: #10343C !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronDeny:hover,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronDeny:focus {
	border-color: #A84E1E !important;
	color: #A84E1E !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronIsAllowed .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllAllowed.tarteaucitronIsSelected {
	background: #10343C !important;
	border-color: #10343C !important;
	color: #ffffff !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronIsDenied .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllDenied.tarteaucitronIsSelected {
	background: #A84E1E !important;
	border-color: #A84E1E !important;
	color: #ffffff !important;
}

/* Bouton « Enregistrer » (versions récentes) */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronSaveButton {
	background: #10343C !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 12px 22px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronSaveButton:hover,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronSaveButton:focus {
	background: #A84E1E !important;
}

/* --------------------------------------------------------------------------
   Pastille de gestion (bas gauche)
   -------------------------------------------------------------------------- */

html body #tarteaucitronRoot #tarteaucitronIcon {
	background: transparent !important;
	bottom: 16px !important;
	left: 16px !important;
	padding: 0 !important;
}

html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 52px !important;
	height: 52px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #10343C !important;
	box-shadow: 0 6px 18px rgba(16, 52, 60, 0.3) !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
}

html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager:hover,
html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager:focus {
	background: #A84E1E !important;
}

html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager img {
	width: 28px !important;
	height: 28px !important;
	filter: brightness(0) invert(1) !important;
}

/* Barre de progression éventuelle */
html body #tarteaucitronRoot #tarteaucitronPercentage {
	background: #A84E1E !important;
}

/* --------------------------------------------------------------------------
   Contenus bloqués (vidéos, cartes…) en attente de consentement
   -------------------------------------------------------------------------- */

html body .tac_activate {
	background: #F4ECDF !important;
	color: #10343C !important;
	border: 1px solid #E7DED0 !important;
	border-radius: 8px !important;
	font-family: "Figtree", system-ui, sans-serif !important;
}

html body .tac_activate .tac_float {
	color: #10343C !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
}

html body .tac_activate .tac_float strong,
html body .tac_activate .tac_float b {
	color: #10343C !important;
}

html body .tac_activate .tarteaucitronAllow {
	background: #10343C !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 10px 18px !important;
	font-weight: 700 !important;
	margin-top: 10px !important;
	cursor: pointer !important;
}

html body .tac_activate .tarteaucitronAllow:hover,
html body .tac_activate .tarteaucitronAllow:focus {
	background: #A84E1E !important;
}

/* --------------------------------------------------------------------------
   Mobile
   -------------------------------------------------------------------------- */

@media (max-width: 768px) {
	html body #tarteaucitronRoot #tarteaucitronAlertBig {
		bottom: 8px !important;
		width: calc(100% - 16px) !important;
		padding: 18px 18px 14px !important;
		max-height: calc(100vh - 32px) !important;
		overflow-y: auto !important;
	}

	html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
	html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
		display: flex !important;
		width: 100% !important;
		margin: 8px 0 0 !important;
	}

	html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
	html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
		margin: 4px 0 0 !important;
	}

	/* Au-dessus de la barre « Appeler / RDV CNI » du thème */
	html body.nesle-has-barre-mobile #tarteaucitronRoot #tarteaucitronAlertBig {
		bottom: 80px !important;
		max-height: calc(100vh - 100px) !important;
	}

	html body.nesle-has-barre-mobile #tarteaucitronRoot #tarteaucitronIcon {
		bottom: 84px !important;
		left: 12px !important;
	}

	html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager {
		width: 46px !important;
		height: 46px !important;
	}
}
