/*
 * Compatibilite visuelle des composants Krea3 avec les themes de demonstration.
 * Abril et Lime ne chargent volontairement pas cette feuille.
 */

:root {
	--k3-theme-primary: var(--couleur-principale, #1f6f78);
	--k3-theme-secondary: var(--couleur-secondaire, var(--k3-theme-primary));
	--k3-theme-action: var(--k3-theme-primary);
	--k3-theme-action-hover: var(--k3-theme-secondary);
	--k3-theme-focus: var(--k3-theme-secondary);
	--k3-theme-text: var(--gris-fonce, var(--couleur-noir, #171717));
	--k3-theme-muted: var(--gris-fonce, #555);
	--k3-theme-border: var(--couleur-gris-clair, var(--gris-clair, #d9e3e5));
	--k3-theme-soft: var(--couleur-gris-tres-clair, var(--gris-tres-clair, #f4f8f8));
	--k3-theme-surface: var(--couleur-blanc, #fff);
	--k3-theme-on-action: var(--couleur-texte-sur-principale, var(--couleur-blanc, #fff));
	--k3-theme-on-action-hover: var(--couleur-texte-sur-secondaire, var(--k3-theme-on-action));
	--k3-theme-shadow: 0 18px 45px rgba(18, 38, 45, .12);
}

/* Accueil : ligne Projets + Kiosque commune aux thèmes du catalogue.
 * Aucun pseudo-élément décoratif coloré n'est utilisé : les couleurs et les
 * typographies viennent exclusivement des variables déclarées par le thème. */
#main-accueil .k3-home-projects-kiosk {
	background: var(--k3-theme-surface) !important;
	box-sizing: border-box !important;
	clear: both !important;
	font-family: var(--police-secondaire, inherit) !important;
	margin: 0 !important;
	padding: clamp(32px, 5vw, 80px) 0 !important;
	width: 100% !important;
}

#main-accueil .k3-home-projects-kiosk > .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
}

#main-accueil .k3-home-projects-kiosk__inner {
	box-sizing: border-box !important;
	display: grid !important;
	gap: clamp(22px, 3vw, 52px) !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	margin: 0 auto !important;
	max-width: 1680px !important;
	width: 92% !important;
}

#main-accueil .k3-home-projects-kiosk__card {
	box-sizing: border-box !important;
	min-width: 0 !important;
	overflow: hidden !important;
}

#main-accueil .k3-home-projects-kiosk__projects {
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	color: var(--k3-theme-text) !important;
	display: flex !important;
	flex-direction: column !important;
}

#main-accueil .k3-home-projects-kiosk__project-visual {
	min-height: clamp(260px, 31vw, 500px) !important;
	position: relative !important;
}

#main-accueil .k3-home-projects-kiosk__project-visual > img {
	display: block !important;
	height: 100% !important;
	inset: 0 !important;
	object-fit: cover !important;
	position: absolute !important;
	width: 100% !important;
}

#main-accueil .k3-home-projects-kiosk__project-heading {
	background: var(--k3-theme-action) !important;
	bottom: clamp(18px, 3vw, 48px) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-on-action) !important;
	left: clamp(18px, 3vw, 48px) !important;
	max-width: calc(100% - clamp(36px, 6vw, 96px)) !important;
	padding: clamp(14px, 2vw, 26px) !important;
	position: absolute !important;
}

#main-accueil .k3-home-projects-kiosk__project-heading h2,
#main-accueil .k3-home-projects-kiosk__kiosk h2 {
	color: inherit !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
	font-size: clamp(2rem, 4vw, 4.8rem) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	margin: 0 !important;
	text-transform: none !important;
}

#main-accueil .k3-home-projects-kiosk__project-heading p {
	color: inherit !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-size: clamp(1rem, 1.6vw, 1.55rem) !important;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
	line-height: 1.25 !important;
	margin: 12px 0 0 !important;
	text-transform: uppercase !important;
}

#main-accueil .k3-home-projects-kiosk__project-content {
	align-items: flex-start !important;
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	gap: 24px !important;
	justify-content: space-between !important;
	padding: clamp(24px, 4vw, 52px) !important;
}

#main-accueil .k3-home-projects-kiosk__project-content p,
#main-accueil .k3-home-projects-kiosk__publication-title {
	color: inherit !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-size: clamp(1rem, 1.35vw, 1.35rem) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

#main-accueil .k3-home-projects-kiosk__kiosk {
	align-items: center !important;
	background: var(--k3-theme-secondary) !important;
	color: var(--k3-theme-on-action-hover) !important;
	display: grid !important;
	gap: clamp(24px, 4vw, 54px) !important;
	grid-template-columns: minmax(170px, .72fr) minmax(220px, 1fr) !important;
	padding: clamp(26px, 5vw, 72px) !important;
}

#main-accueil .k3-home-projects-kiosk__kiosk--without-cover {
	grid-template-columns: minmax(0, 1fr) !important;
}

#main-accueil .k3-home-projects-kiosk__cover {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	box-sizing: border-box !important;
	display: flex !important;
	justify-content: center !important;
	min-height: 340px !important;
	padding: 16px !important;
}

#main-accueil .k3-home-projects-kiosk__cover img {
	display: block !important;
	height: auto !important;
	margin: 0 auto !important;
	max-height: 500px !important;
	max-width: 100% !important;
	object-fit: contain !important;
	width: auto !important;
}

#main-accueil .k3-home-projects-kiosk__kiosk-content {
	align-items: stretch !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 22px !important;
	min-width: 0 !important;
	text-align: center !important;
}

#main-accueil .k3-home-projects-kiosk__kiosk h2 span {
	color: inherit !important;
	font: inherit !important;
}

#main-accueil .k3-home-projects-kiosk__actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	justify-content: center !important;
}

#main-accueil .k3-home-projects-kiosk__button {
	align-items: center !important;
	align-self: flex-start !important;
	background: var(--k3-theme-action) !important;
	border: 2px solid var(--k3-theme-action) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-on-action) !important;
	display: inline-flex !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	justify-content: center !important;
	line-height: 1.2 !important;
	min-height: 48px !important;
	padding: 12px 22px !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
}

#main-accueil .k3-home-projects-kiosk__actions .k3-home-projects-kiosk__button,
#main-accueil .k3-home-projects-kiosk__archive {
	align-self: stretch !important;
	flex: 1 1 150px !important;
}

#main-accueil .k3-home-projects-kiosk__button:hover,
#main-accueil .k3-home-projects-kiosk__button:focus-visible {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

#main-accueil .k3-home-projects-kiosk__button:focus-visible {
	outline: 3px solid var(--k3-theme-focus) !important;
	outline-offset: 3px !important;
}

@media (max-width: 960px) {
	#main-accueil .k3-home-projects-kiosk__inner {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	#main-accueil .k3-home-projects-kiosk__project-visual {
		min-height: clamp(280px, 55vw, 480px) !important;
	}
}

@media (max-width: 620px) {
	#main-accueil .k3-home-projects-kiosk {
		padding: 28px 0 !important;
	}

	#main-accueil .k3-home-projects-kiosk__inner {
		gap: 20px !important;
		width: calc(100% - 32px) !important;
	}

	#main-accueil .k3-home-projects-kiosk__project-visual {
		min-height: 280px !important;
	}

	#main-accueil .k3-home-projects-kiosk__project-heading {
		bottom: 16px !important;
		left: 16px !important;
		max-width: calc(100% - 32px) !important;
	}

	#main-accueil .k3-home-projects-kiosk__kiosk {
		grid-template-columns: minmax(0, 1fr) !important;
		padding: 24px !important;
	}

	#main-accueil .k3-home-projects-kiosk__cover {
		margin: 0 auto !important;
		max-width: 320px !important;
		min-height: 0 !important;
		width: 100% !important;
	}

	#main-accueil .k3-home-projects-kiosk__project-heading h2,
	#main-accueil .k3-home-projects-kiosk__kiosk h2 {
		font-size: clamp(2rem, 12vw, 3.2rem) !important;
	}

	#main-accueil .k3-home-projects-kiosk__actions {
		flex-direction: column !important;
	}

	#main-accueil .k3-home-projects-kiosk__actions .k3-home-projects-kiosk__button,
	#main-accueil .k3-home-projects-kiosk__archive {
		flex: 0 0 auto !important;
		width: 100% !important;
	}
}

/* Noto associait auparavant la carte à un ancien kiosque statique en deux
 * colonnes. Le kiosque étant désormais dans le composant commun, la carte
 * reprend toute la largeur disponible. */
body.wp-theme-krea3-noto #main-accueil #ligne3 .largeur92 {
	display: block !important;
}

body.wp-theme-krea3-noto #main-accueil #ligne3 .k3-home-map-only {
	float: none !important;
	margin: 0 !important;
	width: 100% !important;
}

/* Variables exposees par les extensions de publications. */
:is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) {
	--krea3-kiosque-accent: var(--k3-theme-action) !important;
	--krea3-kiosque-accent-dark: var(--k3-theme-action-hover) !important;
	--krea3-kiosque-text: var(--k3-theme-text) !important;
	--krea3-kiosque-muted: var(--k3-theme-muted) !important;
	--krea3-kiosque-border: var(--k3-theme-border) !important;
	--krea3-kiosque-surface: var(--k3-theme-surface) !important;
	--krea3-kiosque-soft: var(--k3-theme-soft) !important;
	--krea3-kiosque-shadow: var(--k3-theme-shadow) !important;
	--krea3-kiosque-on-accent: var(--k3-theme-on-action) !important;
	--krea3-kiosque-on-accent-hover: var(--k3-theme-on-action-hover) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(p, li, a, button, input, select, textarea, label, span, small, time),
.krea3-deliberations :is(p, li, a, button, input, select, textarea, label, span, small, time),
:is(.krea3-filters, #krea3-results, .krea3-affichage-legal-single) :is(p, li, a, button, input, select, textarea, label, span, small, time) {
	font-family: var(--police-secondaire, inherit) !important;
}

.krea3-affichage-legal-single {
	--krea3-affichage-legal-text: var(--k3-theme-text) !important;
	--krea3-affichage-legal-muted: var(--k3-theme-muted) !important;
	--krea3-affichage-legal-border: var(--k3-theme-border) !important;
	--krea3-affichage-legal-soft: var(--k3-theme-soft) !important;
	--krea3-affichage-legal-action: var(--k3-theme-action) !important;
	--krea3-affichage-legal-on-action: var(--k3-theme-on-action) !important;
	--krea3-affichage-legal-on-action-hover: var(--k3-theme-on-action-hover) !important;
	--krea3-affichage-legal-shadow: var(--k3-theme-shadow) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

.krea3-deliberations {
	--krea3-delib-accent: var(--k3-theme-action) !important;
	--krea3-delib-accent-dark: var(--k3-theme-action-hover) !important;
	--krea3-delib-text: var(--k3-theme-text) !important;
	--krea3-delib-muted: var(--k3-theme-muted) !important;
	--krea3-delib-border: var(--k3-theme-border) !important;
	--krea3-delib-soft: var(--k3-theme-soft) !important;
	--krea3-delib-surface: var(--k3-theme-surface) !important;
	--krea3-delib-on-accent: var(--k3-theme-on-action) !important;
	--krea3-delib-on-accent-hover: var(--k3-theme-on-action-hover) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

/* Kiosque : le composant conserve sa structure mais reprend la charte active. */
:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(.krea3-kiosque-page-header h1, .krea3-kiosque-document-header h1, .krea3-kiosque-card-title) {
	color: var(--k3-theme-action) !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) .krea3-kiosque-card-title a {
	color: var(--k3-theme-action) !important;
	text-decoration: none !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(.krea3-kiosque-button, .krea3-kiosque-filters button, .krea3-kiosque-flipbook-toolbar button) {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(.krea3-kiosque-button, .krea3-kiosque-filters button, .krea3-kiosque-flipbook-toolbar button):not(:disabled):hover,
:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(.krea3-kiosque-button, .krea3-kiosque-filters button, .krea3-kiosque-flipbook-toolbar button):not(:disabled):focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) a.krea3-kiosque-button-secondary {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) a.krea3-kiosque-button-secondary:hover,
:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) a.krea3-kiosque-button-secondary:focus {
	background: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) :is(.krea3-kiosque-flipbook, .krea3-kiosque-viewer, .krea3-kiosque-card-cover) {
	background: var(--k3-theme-soft) !important;
}

/* Deliberations : filtres, titres, documents et badge PDF. */
:is(#content, #content_large, main) .krea3-deliberations :is(.krea3-deliberations-doc-group h3, .krea3-deliberations-session-title strong) {
	color: var(--k3-theme-action) !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions button {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions button:hover,
:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions button:focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions a,
:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) .krea3-kiosque-filter-actions a {
	color: var(--k3-theme-action) !important;
	font-family: var(--police-secondaire, inherit) !important;
	text-decoration: underline !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: .18em !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-doc-group a {
	background: var(--k3-theme-soft) !important;
	border-color: var(--k3-theme-border) !important;
	color: var(--k3-theme-text) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-doc-group a:hover,
:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-doc-group a:focus {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
}

:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-doc-group small {
	align-items: center !important;
	background: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
	display: inline-flex !important;
	flex: 0 0 auto !important;
	justify-content: center !important;
	min-width: 42px !important;
	white-space: nowrap !important;
}

.krea3-annuaire-contacts {
	--krea3-annuaire-background: var(--k3-theme-soft) !important;
	--krea3-annuaire-card: var(--k3-theme-surface) !important;
	--krea3-annuaire-text: var(--k3-theme-text) !important;
	--krea3-annuaire-muted: var(--k3-theme-muted) !important;
	--krea3-annuaire-border: var(--k3-theme-border) !important;
	--krea3-annuaire-button: var(--k3-theme-action) !important;
	--krea3-annuaire-button-text: var(--couleur-blanc, #fff) !important;
}

.krea3-im-feed {
	--krea3-im-accent: var(--k3-theme-action) !important;
	--krea3-im-ink: var(--k3-theme-text) !important;
	--krea3-im-muted: var(--k3-theme-muted) !important;
	--krea3-im-line: var(--k3-theme-border) !important;
}

.krea3_equipement {
	--krea3-primary: var(--k3-theme-action) !important;
	--krea3-secondary: var(--k3-theme-focus) !important;
}

/* Agenda moderne. */
.k3-agenda-modern-pro {
	--k3-agenda-ui-primary: var(--k3-theme-action) !important;
	--k3-agenda-ui-secondary: var(--k3-theme-focus) !important;
	--k3-agenda-ui-on-action: var(--couleur-blanc, #fff) !important;
	--k3-agenda-ui-surface: var(--k3-theme-surface) !important;
	--k3-agenda-ui-border: var(--k3-theme-border) !important;
	--k3-agenda-pro-text: var(--k3-theme-text) !important;
	--k3-agenda-pro-muted: var(--k3-theme-muted) !important;
	--k3-agenda-pro-soft: var(--k3-theme-soft) !important;
	--k3-agenda-pro-line: var(--k3-theme-border) !important;
	--k3-agenda-pro-surface: var(--k3-theme-surface) !important;
	--k3-agenda-pro-sage: var(--k3-theme-focus) !important;
	--k3-agenda-pro-sage-dark: var(--k3-theme-action) !important;
	--k3-agenda-pro-sage-soft: var(--k3-theme-soft) !important;
	--k3-agenda-pro-coral: var(--k3-theme-action) !important;
	--k3-agenda-pro-mobile-title-color: var(--k3-theme-action) !important;
	--k3-agenda-pro-font-family: var(--police-secondaire, inherit) !important;
	--k3-agenda-pro-title-font-family: var(--police, inherit) !important;
}

/* Donnees publiques et API territoriales. */
.k3ap {
	--k3ap-accent: var(--k3-theme-action) !important;
	--k3ap-border: var(--k3-theme-border) !important;
	--k3ap-surface: var(--k3-theme-surface) !important;
	--k3ap-text-soft: var(--k3-theme-muted) !important;
}

.k3ap-message:not(.k3ap-message--error) {
	background: var(--k3-theme-soft) !important;
}

.k3ap-search input[type="search"] {
	border-color: var(--k3-theme-border) !important;
}

/* Blocs accordéon Gutenberg. */
.krea3-accordeon-title:hover,
.krea3-accordeon-title:focus,
.krea3-accordeon-item.is-open {
	background: var(--k3-theme-soft) !important;
}

.krea3-accordeon-title[aria-expanded="true"],
.krea3-accordeon-title[aria-expanded="true"]::after,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title::after,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-content a {
	color: var(--k3-theme-action) !important;
}

.krea3-accordeon-title:focus-visible {
	outline-color: var(--k3-theme-focus) !important;
}

.krea3-accordeon-wrap.style-instit,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title[aria-expanded="true"],
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title:hover,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-title:focus-visible {
	background: var(--k3-theme-soft) !important;
}

.krea3-accordeon-wrap.style-instit .krea3-accordeon-title,
.krea3-accordeon-wrap.style-instit .krea3-accordeon-content {
	border-left-color: var(--k3-theme-action) !important;
}

/* Boutons éditoriaux. */
.krea3-btn-blue {
	background-color: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

.krea3-btn-blue:hover,
.krea3-btn-blue:focus {
	background-color: var(--k3-theme-surface) !important;
	color: var(--k3-theme-action) !important;
}

.krea3-btn-white {
	background-color: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
}

.krea3-btn-white:hover,
.krea3-btn-white:focus {
	background-color: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

.krea3-btn:focus-visible {
	outline-color: var(--k3-theme-focus) !important;
}

/* Formulaires publics. */
form.visual-form-builder {
	color: var(--k3-theme-text) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

.visual-form-builder fieldset {
	background: var(--k3-theme-soft) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	padding: clamp(18px, 3vw, 30px) !important;
}

.visual-form-builder .legend {
	border-bottom-color: var(--k3-theme-border) !important;
	color: var(--k3-theme-action) !important;
}

.visual-form-builder :is(input.text, textarea.textarea, select.select) {
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-text) !important;
	min-height: 44px !important;
	padding: 10px 12px !important;
}

.visual-form-builder textarea.textarea {
	min-height: 160px !important;
}

.visual-form-builder input[type="submit"] {
	background: var(--k3-theme-action) !important;
	border: 2px solid var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
	cursor: pointer !important;
	font-weight: 700 !important;
	min-height: 46px !important;
	padding: 10px 20px !important;
}

.visual-form-builder :is(input, textarea, select):focus-visible {
	border-color: var(--k3-theme-focus) !important;
	outline: 3px solid var(--k3-theme-focus) !important;
	outline-offset: 2px !important;
}

/* Menus scolaires. Les couleurs d'allergènes restent sémantiques. */
.k3ms-wrapper {
	color: var(--k3-theme-text) !important;
}

.k3ms-title,
.k3ms-day-title {
	color: var(--k3-theme-action) !important;
}

.k3ms-nav,
.k3ms-action-pdf,
.k3ms-day-tab.is-active {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

.k3ms-action:not(.k3ms-action-pdf),
.k3ms-day-tab,
.k3ms-day-step {
	border-color: var(--k3-theme-border) !important;
	color: var(--k3-theme-action) !important;
}

.k3ms-action:hover,
.k3ms-action:focus,
.k3ms-day-tab:hover,
.k3ms-day-tab:focus,
.k3ms-day-step:hover,
.k3ms-day-step:focus {
	background: var(--k3-theme-soft) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
}

/* Réservation de salles. */
:is(.krea3-reservation-salle-planning, .krea3-reservation-salle-fiche) {
	color: var(--k3-theme-text) !important;
}

.krea3-reservation-salle-side-card,
.krea3-reservation-salle-planning .card,
.krea3-reservation-salle-directions-menu {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-border) !important;
}

.krea3-reservation-salle-booking-card {
	border-top: 5px solid var(--k3-theme-action) !important;
}

.krea3-reservation-salle-button {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

.krea3-reservation-salle-button:hover,
.krea3-reservation-salle-button:focus {
	background: var(--k3-theme-action-hover) !important;
}

.krea3-reservation-salle-map,
.krea3-reservation-salle-directions-menu a:hover,
.krea3-reservation-salle-directions-menu a:focus {
	background: var(--k3-theme-soft) !important;
}

.krea3-reservation-salle-directions-menu a,
.krea3-reservation-salle-info-list span,
.krea3-reservation-salle-planning .card-category {
	color: var(--k3-theme-text) !important;
}

/* Fenêtre d'information d'accueil. */
.krea3-flash-modal__panel {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-border) !important;
	color: var(--k3-theme-text) !important;
}

.krea3-flash-modal__close {
	color: var(--k3-theme-action) !important;
}

.krea3-flash-modal__button,
.krea3-flash-modal__close:hover,
.krea3-flash-modal__close:focus {
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

.krea3-flash-modal__button:hover,
.krea3-flash-modal__button:focus {
	background: var(--k3-theme-action-hover) !important;
}

/* Sommaire de page. */
.krea3-sommaire a,
.krea3-sommaire a.active,
.krea3-sommaire a:hover,
.krea3-sommaire a[aria-current="location"] {
	color: var(--k3-theme-action) !important;
}

/* Co-marquage Service-Public : grille stable, même en présence de CSS ancien. */
ul#menu-top-guide-demarches,
ul.krea3-service-public-families {
	box-sizing: border-box !important;
	clear: both !important;
	display: grid !important;
	font-family: var(--police-secondaire, inherit) !important;
	gap: clamp(18px, 3vw, 34px) !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 20px 0 36px !important;
	width: 100% !important;
}

ul#menu-top-guide-demarches > li,
ul.krea3-service-public-families > li {
	box-sizing: border-box !important;
	display: block !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

ul#menu-top-guide-demarches > li > a,
ul.krea3-service-public-families > li > a {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	border-top: 5px solid var(--k3-theme-action) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-action) !important;
	display: flex !important;
	font-weight: 700 !important;
	justify-content: center !important;
	min-height: 260px !important;
	padding: 24px !important;
	text-align: center !important;
	text-decoration: none !important;
	width: 100% !important;
}

ul#menu-top-guide-demarches > li > a:hover,
ul#menu-top-guide-demarches > li > a:focus,
ul#menu-top-guide-demarches > li > a.current-profil-comarquage,
ul.krea3-service-public-families > li > a:hover,
ul.krea3-service-public-families > li > a:focus {
	background: var(--k3-theme-soft) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
	opacity: 1 !important;
}

ul#menu-top-guide-demarches > li > a span {
	display: inline-block !important;
	padding-top: 112px !important;
}

ul#menu2-guide-demarches {
	display: flex !important;
	font-family: var(--police-secondaire, inherit) !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	justify-content: center !important;
}

ul#menu2-guide-demarches li {
	display: block !important;
	line-height: 1.35 !important;
	margin: 0 !important;
}

ul#menu2-guide-demarches li a,
.acceder-au-service a {
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
	display: inline-flex !important;
	min-height: 44px !important;
	padding: 11px 15px !important;
}

ul#menu2-guide-demarches li a:hover,
ul#menu2-guide-demarches li a:focus,
.acceder-au-service a:hover,
.acceder-au-service a:focus {
	background: var(--k3-theme-action-hover) !important;
}

:is(div, ul).un-bloc-liens-comarquage,
.un-bloc-liens-dossiers-N p a,
.attention-comarquage {
	border-color: var(--k3-theme-border) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(#content, #content_large, main) :is(.un-bloc-liens-comarquage, .un-bloc-liens-dossiers-N, .attention-comarquage) :is(h2, h3, h4),
:is(#content, #content_large, main) :is(#titre-guide-demarches, .titre-guide-demarches) {
	color: var(--k3-theme-action) !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
}

div.un-bloc-liens-comarquage.fond-couleur,
.un-bloc-liens-dossiers-N p a:hover,
.un-bloc-liens-dossiers-N p a:focus {
	background: var(--k3-theme-soft) !important;
}

.un-bloc-liens-comarquage :is(p, li)::before,
.un-bloc-liens-comarquage :is(a, a:hover, a:focus),
.un-bloc-liens-dossiers-N p a,
#fil-ariane-comarquage a {
	color: var(--k3-theme-action) !important;
}

/* Affichage legal : la liste historique contient encore des couleurs fixes. */
:is(.krea3-filters, #krea3-results) {
	--k3-publication-action: var(--k3-theme-action);
	--k3-publication-border: var(--k3-theme-border);
	--k3-publication-muted: var(--k3-theme-muted);
	--k3-publication-soft: var(--k3-theme-soft);
	--k3-publication-surface: var(--k3-theme-surface);
	--k3-publication-text: var(--k3-theme-text);
	font-family: var(--police-secondaire, inherit) !important;
}

.krea3-filters {
	background: var(--k3-publication-soft) !important;
	border: 1px solid var(--k3-publication-border) !important;
}

.krea3-filters :is(input[type="text"], input[type="search"], select),
.krea3-filter-reset {
	background: var(--k3-publication-surface) !important;
	border-color: var(--k3-publication-border) !important;
	color: var(--k3-publication-text) !important;
}

.krea3-search-submit,
.krea3-actions button {
	background: var(--k3-publication-action) !important;
	border-color: var(--k3-publication-action) !important;
	color: var(--k3-theme-on-action) !important;
}

:is(#content, #content_large, main) .krea3-filters :is(.krea3-search-submit, .krea3-actions button) {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(#content, #content_large, main) .krea3-filters :is(.krea3-search-submit, .krea3-actions button):hover,
:is(#content, #content_large, main) .krea3-filters :is(.krea3-search-submit, .krea3-actions button):focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

:is(#content, #content_large, main) .krea3-filters .krea3-actions a {
	background: var(--k3-theme-surface) !important;
	border: 2px solid var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-weight: 700 !important;
	min-height: 44px !important;
	padding: 10px 18px !important;
}

:is(#content, #content_large, main) .krea3-filters .krea3-actions a:hover,
:is(#content, #content_large, main) .krea3-filters .krea3-actions a:focus {
	background: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

.krea3-filter-reset,
.krea3-actions a,
#krea3-results .krea3-link {
	color: var(--k3-publication-action) !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-link {
	background: var(--k3-theme-action) !important;
	border: 2px solid var(--k3-theme-action) !important;
	border-radius: 6px !important;
	color: var(--k3-theme-on-action) !important;
	display: inline-flex !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-weight: 700 !important;
	min-height: 44px !important;
	padding: 9px 14px !important;
	text-decoration: none !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-link:hover,
:is(#content, #content_large, main) #krea3-results .krea3-link:focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-link :is(.krea3-icon, .krea3-icon-pdf, .krea3-external, .krea3-file-text, .krea3-meta) {
	color: inherit !important;
}

.krea3-filter-reset:hover,
.krea3-filter-reset:focus,
.krea3-actions a:hover,
.krea3-actions a:focus {
	border-color: var(--k3-publication-action) !important;
}

.krea3-checkbox input {
	border-color: var(--k3-publication-action) !important;
}

.krea3-checkbox input:checked,
#krea3-results .krea3-pagination .current {
	background: var(--k3-publication-action) !important;
	border-color: var(--k3-publication-action) !important;
	color: var(--k3-theme-on-action) !important;
}

#krea3-results .krea3-card {
	background: var(--k3-publication-surface) !important;
	border-color: var(--k3-publication-border) !important;
}

#krea3-results .krea3-title {
	color: var(--k3-theme-action) !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
}

#krea3-results :is(.krea3-tags, .krea3-meta, .krea3-count) {
	color: var(--k3-publication-muted) !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-date .krea3-icon {
	color: var(--k3-theme-action) !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-pagination .page-numbers {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-border) !important;
	color: var(--k3-theme-action) !important;
}

:is(#content, #content_large, main) #krea3-results .krea3-pagination :is(.current, .page-numbers:hover, .page-numbers:focus) {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single :is(.krea3-affichage-legal-document-header h1, h2, h3) {
	color: var(--k3-theme-action) !important;
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-flipbook-toolbar button,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-viewer-toolbar button {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
	font-family: var(--police-secondaire, inherit) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button:hover,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button:focus,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-flipbook-toolbar button:not(:disabled):hover,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-flipbook-toolbar button:not(:disabled):focus,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-viewer-toolbar button:hover,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-viewer-toolbar button:focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--k3-theme-on-action-hover) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button-secondary {
	background: var(--k3-theme-surface) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-action) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button-secondary:hover,
:is(#content, #content_large, main) .krea3-affichage-legal-single .krea3-affichage-legal-button-secondary:focus {
	background: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

:is(#content, #content_large, main) .krea3-affichage-legal-single :is(.krea3-affichage-legal-flipbook, .krea3-affichage-legal-viewer, .krea3-affichage-legal-document-cover) {
	background: var(--k3-theme-soft) !important;
}

body .flatpickr-months,
body .flatpickr-day.selected {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--k3-theme-on-action) !important;
}

/* Cartographie interactive : structure de la reference Abril, charte du theme actif. */
body .leaflet-container {
	font-family: var(--police-secondaire, Arial, Helvetica, sans-serif) !important;
	z-index: 1 !important;
}

body .leaflet-popup-pane {
	z-index: 1500 !important;
}

body #sidebar-carto.leaflet-sidebar {
	background: transparent !important;
	box-sizing: border-box !important;
	font-family: var(--police-secondaire, Arial, Helvetica, sans-serif) !important;
	font-size: 1rem !important;
	margin: 0 !important;
	max-width: calc(100% - 1.5rem) !important;
	overflow: hidden !important;
	padding: 0 !important;
	transition: width .2s ease !important;
	width: min(420px, calc(100% - 1.5rem)) !important;
	z-index: 1000 !important;
}

body #sidebar-carto.leaflet-sidebar.collapsed,
body #sidebar-carto.leaflet-sidebar.krea3-carto-collapsed {
	width: 50px !important;
}

body #sidebar-carto .leaflet-sidebar-tabs {
	background: var(--k3-theme-surface) !important;
	border-right: 1px solid var(--k3-theme-border) !important;
	border-radius: 6px 0 0 6px !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	overflow: hidden !important;
	width: 50px !important;
}

body #sidebar-carto .leaflet-sidebar-tabs ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body #sidebar-carto .leaflet-sidebar-tabs li,
body #sidebar-carto .leaflet-sidebar-tabs a {
	box-sizing: border-box !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 50px !important;
}

body #sidebar-carto .leaflet-sidebar-tabs li {
	background: transparent !important;
	display: block !important;
}

body #sidebar-carto .leaflet-sidebar-tabs a {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	color: var(--k3-theme-action) !important;
	display: flex !important;
	font-size: 1.15rem !important;
	justify-content: center !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
}

body #sidebar-carto .leaflet-sidebar-tabs a :is(i, svg, .svg-inline--fa),
body #sidebar-carto .leaflet-sidebar-close :is(i, svg, .svg-inline--fa) {
	align-items: center !important;
	color: currentColor !important;
	display: inline-flex !important;
	fill: currentColor !important;
	flex: 0 0 1em !important;
	font-size: 1em !important;
	height: 1em !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	opacity: 1 !important;
	padding: 0 !important;
	position: static !important;
	transform: none !important;
	vertical-align: middle !important;
	visibility: visible !important;
	width: 1em !important;
}

body #sidebar-carto .leaflet-sidebar-tabs li.active a,
body #sidebar-carto .leaflet-sidebar-tabs a:hover,
body #sidebar-carto .leaflet-sidebar-tabs a:focus {
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

body #sidebar-carto.collapsed .leaflet-sidebar-tabs li.active a,
body #sidebar-carto.krea3-carto-collapsed .leaflet-sidebar-tabs li.active a {
	background: var(--k3-theme-surface) !important;
	color: var(--k3-theme-action) !important;
}

body #sidebar-carto .leaflet-sidebar-content {
	background: color-mix(in srgb, var(--k3-theme-surface) 96%, transparent) !important;
	border-radius: 0 6px 6px 0 !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	left: 50px !important;
	margin: 0 !important;
	max-height: min(78vh, 700px) !important;
	max-width: calc(100% - 50px) !important;
	min-height: 360px !important;
	min-width: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	position: absolute !important;
	right: auto !important;
	top: 0 !important;
	width: calc(100% - 50px) !important;
}

body #sidebar-carto.collapsed .leaflet-sidebar-content,
body #sidebar-carto.krea3-carto-collapsed .leaflet-sidebar-content {
	display: none !important;
}

body #sidebar-carto .leaflet-sidebar-pane {
	box-sizing: border-box !important;
	display: none !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: 0 1.1rem 1.2rem !important;
	width: 100% !important;
}

body #sidebar-carto .leaflet-sidebar-pane.active {
	display: block !important;
}

body #sidebar-carto .leaflet-sidebar-header {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	border-bottom: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-action) !important;
	display: flex !important;
	font-family: var(--police, var(--police-secondaire, Arial, Helvetica, sans-serif)) !important;
	font-size: clamp(1.35rem, 2.2vw, 1.65rem) !important;
	font-weight: 700 !important;
	justify-content: space-between !important;
	letter-spacing: 0 !important;
	line-height: 1.15 !important;
	margin: 0 -1.1rem 1rem !important;
	min-height: 58px !important;
	overflow: hidden !important;
	padding: .9rem .75rem .9rem 1.1rem !important;
	text-transform: none !important;
	white-space: normal !important;
	width: auto !important;
}

body #sidebar-carto .leaflet-sidebar-header::before,
body #sidebar-carto .leaflet-sidebar-header::after {
	content: none !important;
	display: none !important;
}

body #sidebar-carto .leaflet-sidebar-close {
	align-items: center !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-action) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	flex: 0 0 2rem !important;
	font-size: 1rem !important;
	height: 2rem !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin-left: 1rem !important;
	padding: 0 !important;
	position: static !important;
	text-align: center !important;
	width: 2rem !important;
}

body #sidebar-carto :is(.filtres-carte, #filtres-carte) {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	max-width: none !important;
	min-height: 0 !important;
	padding: 0 !important;
	position: static !important;
	width: 100% !important;
}

body #sidebar-carto :is(.filtres-carte, #filtres-carte)::before {
	content: none !important;
	display: none !important;
}

body #sidebar-carto :is(.filtres-carte ul, #liste-filtres-carte) {
	box-sizing: border-box !important;
	list-style: none !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	width: 100% !important;
}

body #sidebar-carto :is(.filtres-carte > ul > li, #liste-filtres-carte > li) {
	border: 0 !important;
	box-sizing: border-box !important;
	display: block !important;
	height: auto !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-height: 0 !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: relative !important;
	width: 100% !important;
}

body #sidebar-carto :is(.filtres-carte > ul > li.show, #liste-filtres-carte > li.show) {
	overflow: visible !important;
}

body #sidebar-carto .filtres-carte ul.parent {
	background: transparent !important;
	box-sizing: border-box !important;
	display: block !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	width: 100% !important;
}

body #sidebar-carto :is(.filtres-carte ul.parent > li, #liste-filtres-carte > li.show > ul.parent > li) {
	background: transparent !important;
	border-bottom: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	cursor: pointer !important;
	display: block !important;
	height: auto !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-height: 0 !important;
	min-width: 0 !important;
	opacity: 1 !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: relative !important;
	transform: none !important;
	width: 100% !important;
}

body #sidebar-carto :is(.filtres-carte ul.parent > li:hover, .filtres-carte ul.parent > li:focus-within, .filtres-carte ul.parent > li.show) {
	background: var(--k3-theme-soft) !important;
}

body #sidebar-carto :is(.filtres-carte ul.parent > li span, #liste-filtres-carte > li.show > ul.parent > li span) {
	box-sizing: border-box !important;
	color: var(--k3-theme-text) !important;
	display: block !important;
	font-family: var(--police-secondaire, Arial, Helvetica, sans-serif) !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	margin: 0 !important;
	max-width: 100% !important;
	min-height: 3rem !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: .86rem 2.4rem .86rem 0 !important;
	position: relative !important;
	text-overflow: ellipsis !important;
	white-space: normal !important;
	width: 100% !important;
}

body #sidebar-carto .filtres-carte ul.parent > li span::before,
body #sidebar-carto .filtres-carte ul.parent > li span::after {
	content: none !important;
	display: none !important;
}

body #sidebar-carto .filtres-carte ul.parent > li span :is(i, svg, .svg-inline--fa) {
	display: none !important;
}

body #sidebar-carto :is(.filtres-carte ul.parent > li, #liste-filtres-carte > li.show > ul.parent > li)::after {
	background: var(--k3-theme-surface) !important;
	border: 2px solid var(--k3-theme-action) !important;
	border-radius: 50% !important;
	box-sizing: border-box !important;
	content: "" !important;
	display: block !important;
	height: .82rem !important;
	pointer-events: none !important;
	position: absolute !important;
	right: .2rem !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: .82rem !important;
	z-index: 2 !important;
}

body #sidebar-carto :is(.filtres-carte ul.parent > li.show, #liste-filtres-carte > li.show > ul.parent > li.show)::after {
	background: var(--k3-theme-action) !important;
	box-shadow: inset 0 0 0 2px var(--k3-theme-surface) !important;
}

/* Les anciens themes ont des regles de liens avec un identifiant : deux identifiants
 * garantissent ici que l'etat actif garde son contraste et que l'icone herite bien. */
body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-tabs a,
body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-close {
	color: var(--k3-theme-action) !important;
}

body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-tabs li.active a,
body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-tabs a:hover,
body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-tabs a:focus {
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

body :is(#content, #content_large, main) #sidebar-carto.collapsed .leaflet-sidebar-tabs li.active a,
body :is(#content, #content_large, main) #sidebar-carto.krea3-carto-collapsed .leaflet-sidebar-tabs li.active a {
	background: var(--k3-theme-surface) !important;
	color: var(--k3-theme-action) !important;
}

body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-tabs a :is(i, svg, .svg-inline--fa),
body :is(#content, #content_large, main) #sidebar-carto .leaflet-sidebar-close :is(i, svg, .svg-inline--fa) {
	color: currentColor !important;
	fill: currentColor !important;
}

@media (max-width: 900px) {
	body #sidebar-carto.leaflet-sidebar {
		max-width: calc(100% - 1rem) !important;
		width: min(360px, calc(100% - 1rem)) !important;
	}

	body #sidebar-carto.leaflet-sidebar.collapsed,
	body #sidebar-carto.leaflet-sidebar.krea3-carto-collapsed,
	body #sidebar-carto .leaflet-sidebar-tabs,
	body #sidebar-carto .leaflet-sidebar-tabs li,
	body #sidebar-carto .leaflet-sidebar-tabs a {
		width: 46px !important;
	}

	body #sidebar-carto .leaflet-sidebar-tabs li,
	body #sidebar-carto .leaflet-sidebar-tabs a {
		height: 46px !important;
	}

	body #sidebar-carto .leaflet-sidebar-content {
		left: 46px !important;
		max-height: 72vh !important;
		min-height: 300px !important;
		width: calc(100% - 46px) !important;
	}

	body #sidebar-carto .leaflet-sidebar-pane {
		padding: 0 1rem 1.15rem !important;
	}

	body #sidebar-carto .leaflet-sidebar-header {
		font-size: 1.15rem !important;
		margin: 0 -1rem .85rem !important;
		min-height: 50px !important;
		padding: .75rem .7rem .75rem 1rem !important;
	}
}

/* Fil d'Ariane et partage : structure Abril, palette du theme actif. */
body :is(#content, #content_large, main) #ligne-outils {
	align-items: center !important;
	box-sizing: border-box !important;
	display: flex !important;
	gap: 20px !important;
	justify-content: space-between !important;
	margin: 0 0 26px !important;
	min-width: 0 !important;
	width: 100% !important;
}

body :is(#content, #content_large, main) #ligne-outils > .clearer {
	display: none !important;
}

body :is(#content, #content_large, main) #fil_ariane {
	box-sizing: border-box !important;
	flex: 1 1 auto !important;
	font-family: var(--police-secondaire, inherit) !important;
	min-width: 0 !important;
	overflow-wrap: anywhere !important;
}

body :is(#content, #content_large, main) #fil_ariane a {
	color: var(--k3-theme-action) !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: .18em !important;
}

body :is(#content, #content_large, main) #outils {
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

body :is(#content, #content_large, main) #share_buttons {
	align-items: center !important;
	display: inline-flex !important;
	flex-wrap: wrap !important;
	gap: 4px !important;
	justify-content: flex-end !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

body :is(#content, #content_large, main) #share_buttons a {
	align-items: center !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-action) !important;
	display: inline-flex !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-size: 1rem !important;
	height: 44px !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-decoration: none !important;
	width: 44px !important;
}

body :is(#content, #content_large, main) #share_buttons a:hover,
body :is(#content, #content_large, main) #share_buttons a:focus {
	background: var(--k3-theme-soft) !important;
	color: var(--k3-theme-action-hover) !important;
}

body :is(#content, #content_large, main) #share_buttons a :is(i, svg, .svg-inline--fa) {
	color: currentColor !important;
	display: block !important;
	fill: currentColor !important;
	font-size: 1.05rem !important;
	height: 1em !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 1em !important;
}

/* Recherche : cartes et navigations haut/bas sur le modele Abril. */
body.search :is(#content, #content_large, main).page-resultats-recherche,
body.search :is(#content, #content_large, main) .page-resultats-recherche {
	font-family: var(--police-secondaire, inherit) !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche,
body.search :is(#content, #content_large, main).page-resultats-recherche .krea3-resultat-recherche {
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	border-left: 5px solid var(--k3-theme-action) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	clear: both !important;
	display: flow-root !important;
	margin: 0 0 22px !important;
	min-width: 0 !important;
	padding: clamp(20px, 3vw, 30px) !important;
	transition: border-color .2s ease, transform .2s ease !important;
	width: 100% !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche:hover,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:focus-within {
	border-color: var(--k3-theme-action) !important;
	transform: translateY(-2px) !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche:has(:is(.search-result-thumbnail, .krea3-resultat-recherche-image)) {
	display: grid !important;
	gap: 0 24px !important;
	grid-template-columns: 150px minmax(0, 1fr) !important;
	grid-template-rows: auto 1fr !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.search-result-thumbnail, .krea3-resultat-recherche-image) {
	background: var(--k3-theme-soft) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	display: block !important;
	float: none !important;
	grid-column: 1 !important;
	grid-row: 1 / span 2 !important;
	height: 150px !important;
	margin: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	width: 150px !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.search-result-thumbnail, .krea3-resultat-recherche-image) img {
	display: block !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: transform .25s ease !important;
	width: 100% !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche:hover .search-result-thumbnail img,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:focus-within .search-result-thumbnail img,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:hover .krea3-resultat-recherche-image img,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:focus-within .krea3-resultat-recherche-image img {
	transform: scale(1.04) !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.entry-title, .krea3-resultat-recherche-titre) {
	font-family: var(--police, var(--police-secondaire, inherit)) !important;
	font-size: clamp(1.55rem, 3vw, 2.2rem) !important;
	grid-column: 2 !important;
	line-height: 1.2 !important;
	margin: 0 0 12px !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche:not(:has(.search-result-thumbnail)) .entry-title,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:not(:has(.search-result-thumbnail)) .entry-summary,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche:not(:has(.krea3-resultat-recherche-image)) .krea3-resultat-recherche-contenu {
	grid-column: 1 !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.entry-title, .krea3-resultat-recherche-titre) a {
	background: transparent !important;
	border: 0 !important;
	color: var(--k3-theme-action) !important;
	font-family: inherit !important;
	padding: 0 !important;
	text-decoration: none !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche .entry-title a:hover,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche .entry-title a:focus,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche .krea3-resultat-recherche-titre a:hover,
body.search :is(#content, #content_large, main) .krea3-resultat-recherche .krea3-resultat-recherche-titre a:focus {
	color: var(--k3-theme-action-hover) !important;
	text-decoration: underline !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: .16em !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.entry-summary, .krea3-resultat-recherche-contenu) {
	color: var(--k3-theme-text) !important;
	grid-column: 2 !important;
	min-width: 0 !important;
}

body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.entry-summary, .krea3-resultat-recherche-contenu) p {
	margin: 0 !important;
}

body.search :is(#content, #content_large, main) :is(.navigation-resultats, .nav-results) {
	box-sizing: border-box !important;
	clear: both !important;
	width: 100% !important;
}

body.search :is(#content, #content_large, main) ul.nav-results {
	align-items: center !important;
	display: flex !important;
	gap: 16px !important;
	justify-content: space-between !important;
	list-style: none !important;
	margin: 18px 0 30px !important;
	padding: 0 !important;
}

body.search :is(#content, #content_large, main) ul.nav-results-bottom {
	border-top: 1px solid var(--k3-theme-border) !important;
	margin-top: 34px !important;
	padding-top: 24px !important;
}

body.search :is(#content, #content_large, main) ul.nav-results li {
	display: inline-flex !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.search :is(#content, #content_large, main) ul.nav-results .nav-suivant {
	margin-left: auto !important;
}

body.search :is(#content, #content_large, main) ul.nav-results li a {
	align-items: center !important;
	background: var(--k3-theme-action) !important;
	border: 2px solid var(--k3-theme-action) !important;
	box-sizing: border-box !important;
	color: var(--couleur-blanc, #fff) !important;
	display: inline-flex !important;
	font-family: var(--police-secondaire, inherit) !important;
	font-weight: 700 !important;
	gap: 10px !important;
	justify-content: center !important;
	min-height: 48px !important;
	padding: 11px 18px !important;
	text-decoration: none !important;
}

/* Les themes historiques cumulent plusieurs :not() sur les liens de contenu. */
body.search :is(#content#content, #content_large#content_large, main) ul.nav-results li a,
body.search :is(#content#content, #content_large#content_large, main) .page-resultats-recherche ul.nav-results li a {
	color: var(--couleur-blanc, #fff) !important;
}

body.search :is(#content, #content_large, main) ul.nav-results li a:hover,
body.search :is(#content, #content_large, main) ul.nav-results li a:focus {
	background: var(--k3-theme-action-hover) !important;
	border-color: var(--k3-theme-action-hover) !important;
	color: var(--couleur-blanc, #fff) !important;
}

body.search :is(#content, #content_large, main) ul.nav-results .icon-nav {
	display: none !important;
}

body.search :is(#content, #content_large, main) ul.nav-results .nav-precedent a::before,
body.search :is(#content, #content_large, main) ul.nav-results .nav-suivant a::after {
	font-family: inherit !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

body.search :is(#content, #content_large, main) ul.nav-results .nav-precedent a::before {
	content: "←" !important;
}

body.search :is(#content, #content_large, main) ul.nav-results .nav-suivant a::after {
	content: "→" !important;
}

/* Navigation superieure des fiches et actualites. */
#entete-fiche {
	align-items: flex-start !important;
	border-bottom: 1px solid var(--k3-theme-border) !important;
	display: flex !important;
	gap: 24px !important;
	justify-content: space-between !important;
	margin: 0 0 36px !important;
	padding: 0 0 24px !important;
	width: 100% !important;
}

#entete-fiche .titre-fiche {
	flex: 1 1 auto !important;
	margin-bottom: 0 !important;
	min-width: 0 !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) {
	align-items: center !important;
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	justify-content: flex-end !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) li {
	display: inline-flex !important;
	margin: 0 !important;
	padding: 0 !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) li a {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-action) !important;
	display: inline-flex !important;
	height: 44px !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-decoration: none !important;
	width: 44px !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) li a:hover,
#entete-fiche :is(.nav-fiche, .nav-actus) li a:focus {
	background: var(--k3-theme-action) !important;
	border-color: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

body :is(#content#content, #content_large#content_large, main) #entete-fiche :is(.nav-fiche, .nav-actus) li a {
	color: var(--k3-theme-action) !important;
}

body :is(#content#content, #content_large#content_large, main) #entete-fiche :is(.nav-fiche, .nav-actus) li a:hover,
body :is(#content#content, #content_large#content_large, main) #entete-fiche :is(.nav-fiche, .nav-actus) li a:focus {
	color: var(--couleur-blanc, #fff) !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) li a :is(span, i, svg) {
	color: currentColor !important;
	fill: currentColor !important;
	height: 1em !important;
	line-height: 1 !important;
	width: 1em !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) .text-nav {
	display: none !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) .icon-nav:empty::before {
	display: block !important;
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Solid" !important;
	font-size: 1rem !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) .nav-retour-annuaire .icon-nav:empty::before {
	content: "\f03a" !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) .nav-precedent .icon-nav:empty::before {
	content: "\f060" !important;
}

#entete-fiche :is(.nav-fiche, .nav-actus) .nav-suivant .icon-nav:empty::before {
	content: "\f061" !important;
}

/* Colonnes et coordonnees des singles annuaire / agenda. */
:is(#colonne1-annuaire, #colonne1-agenda) {
	box-sizing: border-box !important;
	float: left !important;
	padding-right: 44px !important;
	width: 66% !important;
}

:is(#colonne1-annuaire-large, #colonne1-agenda-large) {
	box-sizing: border-box !important;
	float: none !important;
	padding-right: 0 !important;
	width: 100% !important;
}

:is(#colonne2-annuaire, #colonne2-agenda) {
	box-sizing: border-box !important;
	float: right !important;
	width: 30% !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) {
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	border-top: 5px solid var(--k3-theme-action) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-text) !important;
	padding: 24px !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) :is(h2, h3) {
	color: var(--k3-theme-text) !important;
	margin-top: 0 !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn {
	align-items: center !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--k3-theme-border) !important;
	box-sizing: border-box !important;
	color: var(--k3-theme-text) !important;
	display: grid !important;
	gap: 12px !important;
	grid-template-columns: 28px minmax(0, 1fr) !important;
	margin: 0 !important;
	padding: 14px 0 !important;
	width: 100% !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn :is(i, svg) {
	color: var(--k3-theme-action) !important;
	fill: currentColor !important;
	margin: 0 !important;
	width: 1.15rem !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a {
	background: transparent !important;
	border: 0 !important;
	color: var(--k3-theme-action) !important;
	display: inline !important;
	font-weight: 700 !important;
	min-height: 0 !important;
	overflow-wrap: anywhere !important;
	padding: 0 !important;
	text-align: left !important;
	text-decoration: underline !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: .18em !important;
	width: auto !important;
}

:is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a:hover,
:is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a:focus {
	background: transparent !important;
	color: var(--k3-theme-action-hover) !important;
}

body :is(#content#content, #content_large#content_large, main) :is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a {
	background: transparent !important;
	border: 0 !important;
	color: var(--k3-theme-action) !important;
}

body :is(#content#content, #content_large#content_large, main) :is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a:hover,
body :is(#content#content, #content_large#content_large, main) :is(#coordonnees-fiche, #sticky-bloc-fiche) p.btn a:focus {
	background: transparent !important;
	color: var(--k3-theme-action-hover) !important;
}

/* Bouton d'itineraire partage par les singles. */
.krea3-directions-toggle,
.btn_itineraire {
	align-items: center !important;
	background: var(--k3-theme-action) !important;
	border: 2px solid var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font: inherit !important;
	font-weight: 700 !important;
	gap: 10px !important;
	justify-content: center !important;
	min-height: 48px !important;
	padding: 12px 18px !important;
	text-decoration: none !important;
}

.krea3-directions-menu {
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-shadow: var(--k3-theme-shadow) !important;
}

.krea3-directions-menu a {
	color: var(--k3-theme-action) !important;
}

/* Navigation entre actualites en bas d'article. */
.single-post-area .navigation-area {
	border-bottom: 1px solid var(--k3-theme-border) !important;
	border-top: 1px solid var(--k3-theme-border) !important;
	clear: both !important;
	margin: clamp(42px, 6vw, 70px) 0 0 !important;
	padding: clamp(24px, 4vw, 38px) 0 !important;
}

.single-post-area .navigation-area .row {
	display: grid !important;
	gap: clamp(18px, 3vw, 32px) !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	margin: 0 !important;
	width: 100% !important;
}

.single-post-area .navigation-area :is(.nav-left, .nav-right) {
	align-items: center !important;
	background: var(--k3-theme-surface) !important;
	border: 1px solid var(--k3-theme-border) !important;
	box-shadow: var(--k3-theme-shadow) !important;
	box-sizing: border-box !important;
	display: grid !important;
	gap: 16px !important;
	margin: 0 !important;
	min-height: 132px !important;
	min-width: 0 !important;
	padding: 18px !important;
	width: 100% !important;
}

.single-post-area .navigation-area .nav-left {
	grid-template-columns: 92px 44px minmax(0, 1fr) !important;
}

.single-post-area .navigation-area .nav-right {
	grid-template-columns: minmax(0, 1fr) 44px 92px !important;
	text-align: right !important;
}

.single-post-area .navigation-area .thumb {
	background: var(--k3-theme-soft) !important;
	height: 92px !important;
	margin: 0 !important;
	overflow: hidden !important;
	width: 92px !important;
}

.single-post-area .navigation-area .thumb :is(a, img) {
	display: block !important;
	height: 100% !important;
	object-fit: cover !important;
	width: 100% !important;
}

.single-post-area .navigation-area .arrow a {
	align-items: center !important;
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
	display: inline-flex !important;
	height: 44px !important;
	justify-content: center !important;
	text-decoration: none !important;
	width: 44px !important;
}

.single-post-area .navigation-area .arrow .lnr {
	display: none !important;
}

.single-post-area .navigation-area :is(.nav-left, .nav-right) .arrow a::before {
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Solid" !important;
	font-weight: 900 !important;
}

.single-post-area .navigation-area .nav-left .arrow a::before {
	content: "\f060" !important;
}

.single-post-area .navigation-area .nav-right .arrow a::before {
	content: "\f061" !important;
}

.single-post-area .navigation-area .detials p {
	color: var(--k3-theme-action) !important;
	font-size: .82rem !important;
	font-weight: 700 !important;
	letter-spacing: .05em !important;
	margin: 0 0 8px !important;
	text-transform: uppercase !important;
}

.single-post-area .navigation-area .detials h4 {
	font-family: var(--police, serif) !important;
	font-size: clamp(1.2rem, 2vw, 1.7rem) !important;
	line-height: 1.15 !important;
	margin: 0 !important;
}

.single-post-area .navigation-area .detials h4 a {
	color: var(--k3-theme-text) !important;
	text-decoration: none !important;
}

.single-post-area .navigation-area .detials h4 a:hover,
.single-post-area .navigation-area .detials h4 a:focus {
	color: var(--k3-theme-action) !important;
	text-decoration: underline !important;
}

body :is(#content#content, #content_large#content_large).single-post-area .navigation-area .arrow a,
body :is(#content#content, #content_large#content_large) .single-post-area .navigation-area .arrow a {
	background: var(--k3-theme-action) !important;
	color: var(--couleur-blanc, #fff) !important;
}

body :is(#content#content, #content_large#content_large).single-post-area .navigation-area .detials h4 a,
body :is(#content#content, #content_large#content_large) .single-post-area .navigation-area .detials h4 a {
	background: transparent !important;
	color: var(--k3-theme-text) !important;
}

body :is(#content#content, #content_large#content_large).single-post-area .navigation-area .detials h4 a:hover,
body :is(#content#content, #content_large#content_large).single-post-area .navigation-area .detials h4 a:focus,
body :is(#content#content, #content_large#content_large) .single-post-area .navigation-area .detials h4 a:hover,
body :is(#content#content, #content_large#content_large) .single-post-area .navigation-area .detials h4 a:focus {
	background: transparent !important;
	color: var(--k3-theme-action) !important;
}

:is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single, .krea3-affichage-legal-single, .krea3-deliberations, .krea3-annuaire-contacts, .krea3-im-feed, #entete-fiche, #coordonnees-fiche, #sticky-bloc-fiche, .navigation-area) :focus-visible {
	outline: 3px solid var(--k3-theme-focus) !important;
	outline-offset: 3px !important;
}

@media (max-width: 980px) {
	ul#menu-top-guide-demarches,
	ul.krea3-service-public-families {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#entete-fiche {
		display: block !important;
	}

	#entete-fiche :is(.nav-fiche, .nav-actus) {
		justify-content: flex-start !important;
		margin-top: 16px !important;
	}

	:is(#colonne1-annuaire, #colonne1-agenda, #colonne1-annuaire-large, #colonne1-agenda-large, #colonne2-annuaire, #colonne2-agenda) {
		float: none !important;
		padding-right: 0 !important;
		width: 100% !important;
	}
}

@media (max-width: 760px) {
	ul#menu-top-guide-demarches,
	ul.krea3-service-public-families {
		grid-template-columns: 1fr !important;
	}

	ul#menu-top-guide-demarches > li > a,
	ul.krea3-service-public-families > li > a {
		min-height: 180px !important;
	}

	.visual-form-builder ul {
		margin-inline: 0 !important;
	}

	.visual-form-builder span.left,
	.visual-form-builder span.right {
		float: none !important;
		width: 100% !important;
	}

	.single-post-area .navigation-area .row {
		grid-template-columns: 1fr !important;
	}

	body :is(#content, #content_large, main) #ligne-outils {
		align-items: flex-start !important;
		flex-direction: column !important;
		gap: 12px !important;
	}

	body :is(#content, #content_large, main) #share_buttons {
		justify-content: flex-start !important;
	}

	body.search :is(#content, #content_large, main) .krea3-resultat-recherche:has(:is(.search-result-thumbnail, .krea3-resultat-recherche-image)) {
		display: block !important;
	}

	body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.search-result-thumbnail, .krea3-resultat-recherche-image) {
		height: auto !important;
		margin: 0 0 18px !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	body.search :is(#content, #content_large, main) .krea3-resultat-recherche :is(.search-result-thumbnail, .krea3-resultat-recherche-image) img {
		aspect-ratio: 16 / 9 !important;
	}
}

@media (max-width: 560px) {
	body.search :is(#content, #content_large, main) ul.nav-results {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	body.search :is(#content, #content_large, main) ul.nav-results li,
	body.search :is(#content, #content_large, main) ul.nav-results .nav-suivant,
	body.search :is(#content, #content_large, main) ul.nav-results li a {
		margin-left: 0 !important;
		width: 100% !important;
	}

	:is(#content, #content_large, main) .krea3-filters .krea3-actions,
	:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions,
	:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page) .krea3-kiosque-filter-actions {
		display: grid !important;
		gap: 10px !important;
		grid-template-columns: 1fr !important;
		width: 100% !important;
	}

	:is(#content, #content_large, main) .krea3-filters .krea3-actions :is(a, button),
	:is(#content, #content_large, main) .krea3-deliberations .krea3-deliberations-filter-actions :is(a, button),
	:is(#content, #content_large, main) :is(.krea3-kiosque, .krea3-kiosque-page) .krea3-kiosque-filter-actions :is(a, button) {
		box-sizing: border-box !important;
		justify-content: center !important;
		text-align: center !important;
		width: 100% !important;
	}
}

@media (max-width: 560px) {
	.single-post-area .navigation-area :is(.nav-left, .nav-right) {
		gap: 12px !important;
		grid-template-columns: 72px 40px minmax(0, 1fr) !important;
		min-height: 104px !important;
		padding: 14px !important;
		text-align: left !important;
	}

	.single-post-area .navigation-area .nav-right .thumb {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	.single-post-area .navigation-area .nav-right .arrow {
		grid-column: 2 !important;
		grid-row: 1 !important;
	}

	.single-post-area .navigation-area .nav-right .detials {
		grid-column: 3 !important;
		grid-row: 1 !important;
	}

	.single-post-area .navigation-area .thumb {
		height: 72px !important;
		width: 72px !important;
	}
}

/* Le calque du menu responsive couvre tout le bandeau dans plusieurs thèmes.
 * Fermé, seuls ses contrôles doivent capter les clics : le logo reste ainsi
 * réellement activable, y compris avec les variantes de menu RGAA. */
@media (max-width: 1217px) {
	body:not(.menu-open) #header #menu-principal {
		pointer-events: none !important;
	}

	body:not(.menu-open) #header #menu-principal :is(.toggleMenu, .menu-toggle, [aria-controls="nav"], [aria-controls="menu-principal"]) {
		pointer-events: auto !important;
	}

	body:not(.menu-open) #header #menu-principal :is(a, button, input, select, textarea, label, [role="button"]):not(#nav *) {
		pointer-events: auto !important;
	}

	body #header #logo {
		isolation: isolate !important;
		pointer-events: auto !important;
		z-index: 30200 !important;
	}
}

/* Les visuels générés pour les publications légales sont des couvertures de
 * documents et non des photos : ils doivent rester entiers, sans recadrage. */
body.search :is(#content, #content_large, main) :is(
	.krea3-resultat-recherche-type-arretelegal,
	.krea3-resultat-recherche-type-arrete-legal,
	.krea3-resultat-recherche-type-affichage_legal
) :is(.search-result-thumbnail, .krea3-resultat-recherche-image) img {
	box-sizing: border-box !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
	padding: 10px !important;
	transform: none !important;
	width: 100% !important;
}

/* Baskerville : le bouton fixe des filtres de l'agenda reste compact et
 * centré sur tablette comme sur mobile. */
@media (max-width: 1080px) {
	body.wp-theme-krea3-baskerville .k3-agenda-modern-pro--list-only .k3-agenda-modern-pro-mobile-bar {
		background: transparent !important;
		border: 0 !important;
		bottom: max(12px, env(safe-area-inset-bottom)) !important;
		box-shadow: none !important;
		display: flex !important;
		grid-template-columns: none !important;
		left: 50% !important;
		max-width: calc(100vw - 32px) !important;
		padding: 0 !important;
		right: auto !important;
		transform: translateX(-50%) !important;
		width: max-content !important;
	}

	body.wp-theme-krea3-baskerville .k3-agenda-modern-pro--list-only .k3-agenda-modern-pro-mobile-action {
		flex: none !important;
		justify-self: auto !important;
		margin: 0 !important;
		max-width: calc(100vw - 32px) !important;
		min-width: 132px !important;
		padding: 14px 22px !important;
		width: auto !important;
	}
}

@media (max-width: 700px) {
	body.search :is(#content, #content_large, main) :is(
		.krea3-resultat-recherche-type-arretelegal,
		.krea3-resultat-recherche-type-arrete-legal,
		.krea3-resultat-recherche-type-affichage_legal
	) :is(.search-result-thumbnail, .krea3-resultat-recherche-image) img {
		aspect-ratio: auto !important;
		display: block !important;
		height: auto !important;
		margin: 0 auto !important;
		max-height: 280px !important;
		max-width: 100% !important;
		width: auto !important;
	}
}
