/*
 * Lime — couche finale des menus RGAA.
 * Chargée après responsive_menu.css ou responsive_menu_rgaa_fullscreen.css.
 */

#menu-principal [hidden] {
	display: none !important;
}


/* Lime 1.0.38 — top-bar desktop/tablette alignée structurellement sur Abril. */
@media screen and (min-width: 681px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header {
		height: 70px !important;
		min-height: 70px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .largeur92 {
		align-items: flex-start !important;
		display: flex !important;
		flex-wrap: nowrap !important;
		height: 70px !important;
		justify-content: flex-end !important;
		width: var(--lime-largeur) !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux {
		align-items: center !important;
		display: flex !important;
		flex: 0 0 auto !important;
		float: none !important;
		height: 40px !important;
		inset: auto !important;
		margin: 15px 8px 0 0 !important;
		order: 1 !important;
		position: relative !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux ul {
		gap: 14px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux li a {
		font-size: 1.3rem !important;
		height: 30px !important;
		width: 30px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #recherche_site {
		box-sizing: border-box !important;
		flex: 0 1 400px !important;
		float: none !important;
		height: 40px !important;
		margin: 15px 20px 0 0 !important;
		max-width: 400px !important;
		order: 2 !important;
		overflow: hidden !important;
		padding: 0 10px 0 20px !important;
		width: 400px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #searchform,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #searchform > div {
		align-items: center !important;
		display: flex !important;
		height: 40px !important;
		position: relative !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #searchform input[type="text"] {
		box-sizing: border-box !important;
		flex: 1 1 auto !important;
		float: none !important;
		height: 40px !important;
		margin: 0 !important;
		max-width: none !important;
		min-width: 0 !important;
		padding-right: 54px !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #searchform input[type="submit"] {
		bottom: auto !important;
		flex: 0 0 44px !important;
		float: none !important;
		height: 40px !important;
		left: auto !important;
		margin: 0 !important;
		position: absolute !important;
		right: 0 !important;
		top: 0 !important;
		transform: none !important;
		width: 44px !important;
		z-index: 2 !important;
	}
}

@media screen and (min-width: 681px) and (max-width: 950px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #recherche_site {
		flex-basis: 55% !important;
		margin-right: 0 !important;
		max-width: 55% !important;
		width: 55% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux ul {
		gap: 8px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux li a {
		font-size: 1.05rem !important;
		height: 28px !important;
		width: 28px !important;
	}
}

/* Correctif final du header Lime sur mobile.
 * Le menu réduit reste réservé à l'ouverture du menu : le défilement de la
 * page ne doit pas détacher le logo et le bouton du header. */
@media screen and (max-width: 680px) {
    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header,
    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header.menu-reduit {
        position: relative !important;
        inset: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        z-index: 30 !important;
        width: 100% !important;
        height: 112px !important;
        min-height: 112px !important;
        overflow: visible !important;
        transform: none !important;
    }

    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header #logo,
    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header.menu-reduit #logo {
        position: absolute !important;
        top: auto !important;
        right: auto !important;
        bottom: -46px !important;
        left: 18px !important;
        z-index: 34 !important;
        width: 150px !important;
        height: 150px !important;
        margin: 0 !important;
        overflow: visible !important;
        transform: none !important;
    }

    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header #logo a,
    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header #logo img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: contain !important;
    }

    body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile) #header.site-header .toggleMenu {
        position: absolute !important;
        top: 24px !important;
        right: 20px !important;
        bottom: auto !important;
        left: auto !important;
        z-index: 36 !important;
        width: 64px !important;
        min-width: 64px !important;
        height: 64px !important;
        min-height: 64px !important;
        margin: 0 !important;
        transform: none !important;
    }
}

/* Lime 1.0.43 — sous 951 px, le logo occupe la zone réservée aux raccourcis.
 * Leur masquage reprend le comportement mobile et laisse la recherche intacte. */
@media screen and (min-width: 681px) and (max-width: 950px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux {
		display: none !important;
	}
}

#menu-principal button,
#menu-principal a {
	-webkit-tap-highlight-color: transparent;
}

#menu-principal a:focus-visible,
#menu-principal button:focus-visible {
	outline: 3px solid currentColor !important;
	outline-offset: 3px !important;
}

#menu-principal .krea3-mega-close-item {
	list-style: none !important;
}

#menu-principal .krea3-mega-close {
	align-items: center !important;
	background: #fff !important;
	border: 2px solid #000 !important;
	color: #000 !important;
	cursor: pointer !important;
	display: flex !important;
	font: 700 2rem/1 var(--police-secondaire, "Montserrat", sans-serif) !important;
	height: 58px !important;
	justify-content: center !important;
	margin: 0 !important;
	min-height: 58px !important;
	min-width: 58px !important;
	padding: 0 !important;
	width: 58px !important;
}

@media screen and (min-width: 1218px) {
	/* L'en-tête reste visible pendant l'ouverture des deux variantes. */
	html body.krea3-menu-desktop-open {
		/*
		 * Ne pas verrouiller le conteneur de defilement sur ordinateur :
		 * `overflow: hidden` remettait la page a scrollY=0 a l'ouverture,
		 * ce qui supprimait ensuite a tort l'etat `.menu-reduit`.
		 * Le panneau fixe possede deja son propre defilement et son piege a focus.
		 */
		overflow: visible !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header {
		background: #fff !important;
		height: 80px !important;
		left: 0 !important;
		min-height: 80px !important;
		position: fixed !important;
		right: 0 !important;
		top: var(--wp-admin--admin-bar--height, 0px) !important;
		width: 100% !important;
		z-index: 2147482000 !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header > .largeur92 {
		height: 80px !important;
		min-height: 80px !important;
		position: relative !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header #logo {
		align-items: center !important;
		display: flex !important;
		height: 68px !important;
		left: 0 !important;
		top: 6px !important;
		width: 110px !important;
		z-index: 4 !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header #logo img {
		max-height: 68px !important;
		max-width: 110px !important;
		object-fit: contain !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header #menu-principal {
		height: 80px !important;
		min-height: 80px !important;
		position: relative !important;
		z-index: 3 !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #header.site-header #nav {
		align-items: center !important;
		display: flex !important;
		height: 80px !important;
		justify-content: flex-end !important;
		margin: 0 !important;
		min-height: 80px !important;
		overflow: visible !important;
		padding: 0 !important;
		position: relative !important;
		width: 100% !important;
	}

	/* Le mode plein ecran conserve le header Lime complet de la maquette. */
	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header {
		background: #fff !important;
		height: 80px !important;
		left: 0 !important;
		min-height: 80px !important;
		overflow: visible !important;
		position: fixed !important;
		right: 0 !important;
		top: var(--wp-admin--admin-bar--height, 0px) !important;
		width: 100% !important;
		z-index: 2147482000 !important;
	}

	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header > .largeur92 {
		height: 80px !important;
		min-height: 80px !important;
		position: relative !important;
	}

	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header #logo {
		align-items: center !important;
		display: flex !important;
		height: 68px !important;
		left: 0 !important;
		top: 6px !important;
		width: 110px !important;
		z-index: 4 !important;
	}

	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header #logo img {
		max-height: 68px !important;
		max-width: 110px !important;
		object-fit: contain !important;
	}

	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header #menu-principal,
	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header #nav {
		height: 80px !important;
		min-height: 80px !important;
	}

	html body.krea3-menu-desktop-open.menu-open-desktop #header.site-header #nav {
		align-items: center !important;
		display: flex !important;
		justify-content: flex-end !important;
		margin: 0 !important;
		overflow: visible !important;
		padding: 0 !important;
		position: relative !important;
		width: 100% !important;
	}

	html body.krea3-menu-desktop-open #menu-principal #nav > li {
		display: block !important;
		float: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		position: static !important;
		width: auto !important;
	}

	html body.krea3-menu-desktop-open #menu-principal #nav > li > a,
	html body.krea3-menu-desktop-open #menu-principal #nav > li > button.menu-item {
		align-items: center !important;
		background: transparent !important;
		border: 0 !important;
		border-left: 1px solid #ddd !important;
		color: #000 !important;
		display: flex !important;
		font: 500 1rem/1.2 var(--police-secondaire, "Montserrat", sans-serif) !important;
		height: 54px !important;
		margin: 0 !important;
		padding: 0 16px !important;
		text-decoration: none !important;
		text-transform: uppercase !important;
		white-space: nowrap !important;
	}

	html body.krea3-menu-desktop-open #menu-principal #nav > li:first-child > a,
	html body.krea3-menu-desktop-open #menu-principal #nav > li:first-child > button.menu-item {
		border-left: 0 !important;
	}

	html body.krea3-menu-desktop-open #menu-principal #nav > li > button.menu-item::after {
		display: none !important;
	}

	/* Le panneau commence sous l'en-tête mesuré par le JavaScript. */
	html body.krea3-menu-desktop-open #menu-principal #nav > li > button.menu-item[aria-expanded="true"] + ul:not([hidden]) {
		bottom: 0 !important;
		box-sizing: border-box !important;
		float: none !important;
		height: auto !important;
		left: 0 !important;
		margin: 0 !important;
		max-height: calc(100dvh - var(--krea3-menu-panel-top, 80px)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		position: fixed !important;
		right: 0 !important;
		top: var(--krea3-menu-panel-top, 80px) !important;
		width: 100vw !important;
		z-index: 2147481000 !important;
	}

	html body.krea3-menu-desktop-open #menu-principal #nav .krea3-mega-close-item {
		display: block !important;
		position: fixed !important;
		right: max(24px, 4vw) !important;
		top: calc(var(--krea3-menu-panel-top, 80px) + 22px) !important;
		z-index: 2147483000 !important;
	}

	/* Menu RGAA par défaut : liste éditoriale Lime et sous-menu latéral. */
	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > button.menu-item[aria-expanded="true"] + ul:not([hidden]) {
		background: var(--couleur-principale, #005979) !important;
		color: #fff !important;
		display: block !important;
		padding: 54px max(7vw, 56px) 70px !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li:not(.krea3-mega-close-item) {
		box-sizing: border-box !important;
		display: block !important;
		margin: 0 !important;
		max-width: 590px !important;
		padding: 0 !important;
		position: relative !important;
		width: min(590px, 45vw) !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li > a,
	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li > button.menu-item {
		align-items: center !important;
		background: transparent !important;
		border: 0 !important;
		border-bottom: 1px solid rgba(255, 255, 255, .25) !important;
		box-sizing: border-box !important;
		color: #fff !important;
		display: flex !important;
		font: 700 1.15rem/1.35 var(--police-secondaire, "Montserrat", sans-serif) !important;
		justify-content: space-between !important;
		margin: 0 !important;
		min-height: 54px !important;
		padding: 13px 4px !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: none !important;
		width: 100% !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li > button.menu-item::after {
		content: ">" !important;
		display: block !important;
		font-size: 1.1rem !important;
		margin-left: 20px !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li > button.menu-item[aria-expanded="true"]::after {
		content: "−" !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav > li > ul:not([hidden]) > li > ul:not([hidden]) {
		background: rgba(0, 0, 0, .13) !important;
		box-sizing: border-box !important;
		display: block !important;
		left: calc(100% + 50px) !important;
		margin: 0 !important;
		padding: 12px 22px !important;
		position: absolute !important;
		top: 0 !important;
		width: min(520px, 39vw) !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav li li li {
		display: block !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav li li li > a,
	html body.krea3-menu-desktop-open:not(.menu-open-desktop) #menu-principal #nav .menu-see-all a {
		border-bottom: 1px solid rgba(255, 255, 255, .22) !important;
		color: #fff !important;
		display: block !important;
		font: 500 1rem/1.35 var(--police-secondaire, "Montserrat", sans-serif) !important;
		padding: 13px 2px !important;
		text-decoration: none !important;
	}

	/* Plein écran RGAA : grille claire, fidèle au panneau desktop Lime. */
	html body.menu-open-desktop #menu-principal #nav > li > button.menu-item[aria-expanded="true"] + ul:not([hidden]) {
		align-content: start !important;
		background: #fff !important;
		column-gap: clamp(34px, 5vw, 90px) !important;
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		padding: 66px max(7vw, 70px) 70px !important;
		row-gap: 0 !important;
	}

	html body.menu-open-desktop #menu-principal #nav > li > ul:not([hidden]) > li:not(.krea3-mega-close-item) {
		box-sizing: border-box !important;
		display: block !important;
		margin: 0 !important;
		min-width: 0 !important;
		padding: 0 !important;
		position: relative !important;
		width: 100% !important;
	}

	html body.menu-open-desktop #menu-principal #nav > li > ul:not([hidden]) > li > a,
	html body.menu-open-desktop #menu-principal #nav > li > ul:not([hidden]) > li > button.menu-item {
		align-items: center !important;
		background: transparent !important;
		border: 0 !important;
		border-bottom: 2px solid var(--couleur-secondaire, #fae6dd) !important;
		box-sizing: border-box !important;
		color: var(--couleur-principale, #005979) !important;
		display: flex !important;
		font: 700 1.08rem/1.3 var(--police-secondaire, "Montserrat", sans-serif) !important;
		justify-content: space-between !important;
		min-height: 54px !important;
		padding: 13px 0 !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: none !important;
		width: 100% !important;
	}

	html body.menu-open-desktop #menu-principal #nav > li > ul:not([hidden]) > li > button.menu-item::after {
		content: none !important;
		display: none !important;
	}

	html body.menu-open-desktop #menu-principal #nav > li > ul:not([hidden]) > li > ul:not([hidden]) {
		background: transparent !important;
		border: 0 !important;
		display: block !important;
		margin: 0 0 12px !important;
		padding: 5px 0 8px !important;
		position: static !important;
		width: 100% !important;
	}

	html body.menu-open-desktop #menu-principal #nav li li li {
		display: block !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	html body.menu-open-desktop #menu-principal #nav li li li > a,
	html body.menu-open-desktop #menu-principal #nav .menu-see-all a {
		border: 0 !important;
		color: #222 !important;
		display: block !important;
		font: 500 .98rem/1.35 var(--police-secondaire, "Montserrat", sans-serif) !important;
		padding: 9px 0 !important;
		text-decoration: none !important;
	}
}

@media screen and (max-width: 1217px) {
	html body.menu-open {
		overflow: hidden !important;
	}

	#header.site-header button.toggleMenu,
	#menu-principal button.toggleMenu {
		align-items: center !important;
		background: #fff !important;
		border: 2px solid #000 !important;
		box-sizing: border-box !important;
		color: #000 !important;
		display: flex !important;
		font: 700 .78rem/1.1 var(--police-secondaire, "Montserrat", sans-serif) !important;
		height: 66px !important;
		justify-content: center !important;
		padding: 29px 8px 7px !important;
		right: 0 !important;
		text-transform: uppercase !important;
		top: 6px !important;
		width: 66px !important;
		z-index: 2147483600 !important;
	}

	body.menu-open #header.site-header button.toggleMenu.active,
	body.menu-open #menu-principal button.toggleMenu.active,
	html body.menu-open button.toggleMenu.active {
		background: transparent !important;
		background-image: none !important;
		border-color: rgba(255, 255, 255, .8) !important;
		color: #fff !important;
		font-size: 0 !important;
		position: fixed !important;
		right: 18px !important;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 18px) !important;
		z-index: 2147483600 !important;
	}

	html body.menu-open #header.site-header button.toggleMenu.active,
	html body.menu-open #menu-principal button.toggleMenu.active,
	html body.menu-open button.toggleMenu.active {
		height: 58px !important;
		padding: 0 !important;
		width: 58px !important;
	}

	body.menu-open #header.site-header button.toggleMenu.active::before,
	body.menu-open #header.site-header button.toggleMenu.active::after,
	body.menu-open #menu-principal button.toggleMenu.active::before,
	body.menu-open #menu-principal button.toggleMenu.active::after,
	html body.menu-open button.toggleMenu.active::before,
	html body.menu-open button.toggleMenu.active::after {
		background: #fff !important;
		content: "" !important;
		height: 3px !important;
		bottom: auto !important;
		left: 50% !important;
		margin: 0 !important;
		position: absolute !important;
		right: auto !important;
		top: 50% !important;
		transform-origin: center !important;
		width: 32px !important;
	}

	body.menu-open #header.site-header button.toggleMenu.active::before,
	body.menu-open #menu-principal button.toggleMenu.active::before,
	html body.menu-open button.toggleMenu.active::before {
		transform: translate(-50%, -50%) rotate(45deg) !important;
	}

	body.menu-open #header.site-header button.toggleMenu.active::after,
	body.menu-open #menu-principal button.toggleMenu.active::after,
	html body.menu-open button.toggleMenu.active::after {
		transform: translate(-50%, -50%) rotate(-45deg) !important;
	}

	html body.menu-open #menu-principal #nav {
		background: var(--couleur-principale, #005979) !important;
		box-sizing: border-box !important;
		color: #fff !important;
		display: block !important;
		float: none !important;
		height: 100dvh !important;
		inset: 0 !important;
		margin: 0 !important;
		max-height: none !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		padding: 92px 24px 50px !important;
		position: fixed !important;
		width: 100vw !important;
		z-index: 2147483000 !important;
	}

	body.menu-open #menu-principal #nav > li {
		border: 0 !important;
		display: block !important;
		float: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		position: relative !important;
		width: 100% !important;
	}

	body.menu-open #menu-principal #nav > li > a,
	body.menu-open #menu-principal #nav > li > button.menu-item {
		align-items: center !important;
		background: transparent !important;
		border: 0 !important;
		border-bottom: 1px solid rgba(255, 255, 255, .28) !important;
		box-sizing: border-box !important;
		color: #fff !important;
		display: flex !important;
		font: 700 clamp(1rem, 4vw, 1.3rem)/1.25 var(--police-secondaire, "Montserrat", sans-serif) !important;
		justify-content: space-between !important;
		margin: 0 !important;
		min-height: 58px !important;
		padding: 14px 6px !important;
		position: relative !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: uppercase !important;
		width: 100% !important;
	}

	body.menu-open #menu-principal #nav > li > button.menu-item::after {
		align-items: center !important;
		background: none !important;
		border: 0 !important;
		bottom: auto !important;
		content: "+" !important;
		display: flex !important;
		font-size: 1.45rem !important;
		height: 1.5rem !important;
		justify-content: center !important;
		left: auto !important;
		line-height: 1 !important;
		margin: 0 !important;
		position: absolute !important;
		right: 8px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 1.5rem !important;
	}

	body.menu-open #menu-principal #nav > li > button.menu-item[aria-expanded="true"]::after {
		content: "−" !important;
	}

	body.menu-open #menu-principal #nav ul:not([hidden]) {
		background: rgba(0, 0, 0, .12) !important;
		border: 0 !important;
		box-sizing: border-box !important;
		display: block !important;
		float: none !important;
		inset: auto !important;
		margin: 0 0 10px !important;
		max-height: none !important;
		overflow: visible !important;
		padding: 6px 12px !important;
		position: static !important;
		width: 100% !important;
	}

	body.menu-open #menu-principal #nav ul:not([hidden]) > li {
		border: 0 !important;
		display: block !important;
		float: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 100% !important;
	}

	body.menu-open #menu-principal #nav ul:not([hidden]) > li > a,
	body.menu-open #menu-principal #nav ul:not([hidden]) > li > button.menu-item {
		align-items: center !important;
		background: transparent !important;
		border: 0 !important;
		border-bottom: 1px solid rgba(255, 255, 255, .2) !important;
		box-sizing: border-box !important;
		color: #fff !important;
		display: flex !important;
		font: 600 .98rem/1.35 var(--police-secondaire, "Montserrat", sans-serif) !important;
		justify-content: space-between !important;
		margin: 0 !important;
		min-height: 48px !important;
		padding: 11px 3px !important;
		position: relative !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: none !important;
		width: 100% !important;
	}

	body.menu-open #menu-principal #nav ul:not([hidden]) > li > button.menu-item::after {
		align-items: center !important;
		background: none !important;
		border: 0 !important;
		bottom: auto !important;
		content: "+" !important;
		display: flex !important;
		font-size: 1.1rem !important;
		height: 1.25rem !important;
		justify-content: center !important;
		left: auto !important;
		line-height: 1 !important;
		margin: 0 !important;
		position: absolute !important;
		right: 5px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 1.25rem !important;
	}

	body.menu-open #menu-principal #nav ul:not([hidden]) > li > button.menu-item[aria-expanded="true"]::after {
		content: "−" !important;
	}

	body.menu-open #menu-principal #nav .krea3-mega-close-item,
	body.menu-open #menu-principal #nav .krea3-mega-close {
		display: none !important;
	}

	/*
	 * Le bouton est imbriqué dans #header puis #menu-principal. Cette double
	 * portée doit rester plus spécifique que les anciennes règles du menu
	 * plein écran, sinon la liste recouvre visuellement la croix et intercepte
	 * son clic sur mobile/tablette.
	 */
	html body.menu-open #header.site-header #menu-principal button.toggleMenu.active {
		background: transparent !important;
		background-image: none !important;
		border-color: rgba(255, 255, 255, .8) !important;
		color: #fff !important;
		font-size: 0 !important;
		height: 58px !important;
		padding: 0 !important;
		position: fixed !important;
		right: 18px !important;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 18px) !important;
		width: 58px !important;
		z-index: 2147483600 !important;
	}
}

@media screen and (min-width: 1218px) and (min-width: 783px) {
	body.admin-bar.krea3-menu-desktop-open #header.site-header {
		top: 32px !important;
	}
}

@media screen and (min-width: 783px) and (max-width: 1217px) {
	body.admin-bar.menu-open #menu-principal #nav {
		height: calc(100dvh - 32px) !important;
		top: 32px !important;
	}

	body.admin-bar.menu-open #header.site-header button.toggleMenu.active,
	body.admin-bar.menu-open #menu-principal button.toggleMenu.active,
	html body.admin-bar.menu-open button.toggleMenu.active,
	html body.admin-bar.menu-open #header.site-header #menu-principal button.toggleMenu.active {
		top: 50px !important;
	}
}

@media screen and (max-width: 782px) {
	body.admin-bar.menu-open #menu-principal #nav {
		height: calc(100dvh - 46px) !important;
		padding-top: 92px !important;
		top: 46px !important;
	}

	body.admin-bar.menu-open #header.site-header button.toggleMenu.active,
	body.admin-bar.menu-open #menu-principal button.toggleMenu.active,
	html body.admin-bar.menu-open button.toggleMenu.active,
	html body.admin-bar.menu-open #header.site-header #menu-principal button.toggleMenu.active {
		top: 64px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	#menu-principal *,
	#menu-principal *::before,
	#menu-principal *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}

/* En-tête mobile fermé conforme à la maquette Lime (1.0.33).
 * Placé en fin de fichier afin de primer sur les anciens correctifs responsive. */
@media screen and (max-width: 680px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #top-header {
		display: block !important;
		height: 72px !important;
		min-height: 72px !important;
		position: relative !important;
		top: auto !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #top-header .largeur92 {
		align-items: center !important;
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		min-height: 72px !important;
		padding: 16px 16px 8px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #top-header #recherche_site {
		display: block !important;
		flex: 0 1 300px !important;
		height: 40px !important;
		max-width: 300px !important;
		order: 1 !important;
		width: calc(100% - 32px) !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #top-header .liens-reseaux {
		display: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) {
		background: #fff !important;
		height: 112px !important;
		min-height: 112px !important;
		overflow: visible !important;
		position: relative !important;
		top: auto !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) > .largeur92,
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #menu-principal {
		height: 112px !important;
		min-height: 112px !important;
		overflow: visible !important;
		position: relative !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #logo {
		display: block !important;
		bottom: -46px !important;
		height: 150px !important;
		left: 18px !important;
		margin: 0 !important;
		max-height: 150px !important;
		position: absolute !important;
		top: auto !important;
		transform: none !important;
		width: 150px !important;
		z-index: 80 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #logo img {
		display: block !important;
		height: 100% !important;
		max-height: 150px !important;
		object-fit: contain !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) button.toggleMenu:not(.active),
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #menu-principal button.toggleMenu:not(.active) {
		background-color: #fff !important;
		background-image: none !important;
		border: 3px solid #111 !important;
		border-radius: 4px !important;
		box-shadow: none !important;
		color: #111 !important;
		display: block !important;
		height: 64px !important;
		line-height: 1 !important;
		padding: 0 !important;
		position: absolute !important;
		right: 20px !important;
		top: 24px !important;
		transform: none !important;
		width: 64px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) button.toggleMenu:not(.active)::before,
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #menu-principal button.toggleMenu:not(.active)::before {
		border-bottom: 3px solid currentColor !important;
		border-top: 3px solid currentColor !important;
		box-sizing: border-box !important;
		content: "" !important;
		display: block !important;
		height: 24px !important;
		left: 50% !important;
		position: absolute !important;
		right: auto !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		width: 32px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) button.toggleMenu:not(.active)::after,
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #menu-principal button.toggleMenu:not(.active)::after {
		background: currentColor !important;
		content: "" !important;
		display: block !important;
		height: 3px !important;
		left: 50% !important;
		position: absolute !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		width: 32px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) button.toggleMenu:not(.active) > span[aria-hidden="true"] {
		display: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) button.toggleMenu:not(.active):focus-visible,
	html body:not(.menu-open):not(.menu-open-desktop):not(.krea3-menu-desktop-open) #header.site-header:not(.menu-reduit) #menu-principal button.toggleMenu:not(.active):focus-visible {
		outline: 3px solid #006784 !important;
		outline-offset: 3px !important;
	}
}

/* Lime 1.0.34 — rendu responsive final. Le bureau (>= 1101 px) reste inchangé. */
@media screen and (max-width: 1100px) {
	/* Les pastilles de dates restent horizontales, lisibles et stables au survol. */
	#ligne1 #droite-ligne1,
	#ligne1 #droite-ligne1 .widget,
	#ligne2 #gauche-ligne2,
	#ligne2 #gauche-ligne2 .widget,
	#ligne1 .agenda,
	#ligne1 .agenda-img {
		overflow: visible !important;
	}

	#ligne1 .agenda-img {
		position: relative !important;
	}

	#ligne1 .date-manif {
		position: absolute !important;
		inset: auto !important;
		top: 10px !important;
		left: 12px !important;
		display: inline-flex !important;
		align-items: center !important;
		gap: .35em !important;
		box-sizing: border-box !important;
		width: max-content !important;
		max-width: calc(100% - 24px) !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 9px 16px !important;
		border-radius: 999px !important;
		white-space: normal !important;
		font-size: clamp(15px, 2.15vw, 24px) !important;
		line-height: 1.1 !important;
		transform: none !important;
		overflow: visible !important;
		z-index: 5 !important;
	}

	#ligne1 .date-manif span:not(.visually-hidden) {
		position: static !important;
		display: inline !important;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		transform: none !important;
	}

	#ligne1 .agenda:hover .date-manif,
	#ligne1 .agenda:focus .date-manif,
	#ligne1 .agenda:focus-visible .date-manif {
		top: 10px !important;
		left: 12px !important;
		transform: none !important;
	}
}

/* Le lien de synthèse n'appartient pas à la variante RGAA plein écran. */
html body.menu-open-desktop #menu-principal #nav .menu-see-all {
	display: none !important;
}

/* Tablette : Agenda et Actualités en grille 2 x 2. */
@media screen and (min-width: 681px) and (max-width: 1100px) {
	#droite-ligne1 > .widget,
	#gauche-ligne2.actualites-lime > .widget,
	#gauche-ligne2 > .widget {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px !important;
	}

	#droite-ligne1 > .widget > .agenda,
	#gauche-ligne2 > .widget > .lien-actu,
	#gauche-ligne2 > .widget > .bloc-actu {
		grid-column: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
	}
}

/* Mobile : en-tête Lime conforme à la maquette et listes sur une colonne. */
@media screen and (max-width: 680px) {
	#droite-ligne1 > .widget,
	#gauche-ligne2.actualites-lime > .widget,
	#gauche-ligne2 > .widget {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 26px !important;
	}

	#droite-ligne1 > .widget > .agenda,
	#gauche-ligne2 > .widget > .lien-actu,
	#gauche-ligne2 > .widget > .bloc-actu {
		grid-column: 1 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
	}

}

/* Lime 1.0.36 — verrouillage final de l'en-tête mobile fermé. */
@media screen and (max-width: 680px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit {
		position: relative !important;
		inset: auto !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		z-index: 90 !important;
		width: 100% !important;
		height: 150px !important;
		min-height: 150px !important;
		max-height: none !important;
		overflow: hidden !important;
		transform: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header > .largeur92,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit > .largeur92 {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: 150px !important;
		min-height: 150px !important;
		overflow: hidden !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo {
		position: absolute !important;
		top: 9px !important;
		right: auto !important;
		bottom: auto !important;
		left: 18px !important;
		width: 132px !important;
		height: 132px !important;
		max-width: 132px !important;
		max-height: 132px !important;
		overflow: visible !important;
		transform: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo a,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo img,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo a,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo img {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		max-width: 132px !important;
		max-height: 132px !important;
		object-fit: contain !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active),
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active),
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit button.toggleMenu:not(.active) {
		position: absolute !important;
		top: 43px !important;
		right: 20px !important;
		bottom: auto !important;
		left: auto !important;
		width: 64px !important;
		height: 64px !important;
		margin: 0 !important;
		transform: none !important;
	}
}

/* Lime 1.0.41 — header fermé conforme à la maquette tablette/mobile.
 * Le logo chevauche le bandeau et le visuel sans être masqué ; les deux
 * niveaux du header restent ancrés pendant le défilement. Les états ouverts
 * du menu conservent leur contrat RGAA dédié plus haut dans ce fichier. */
@media screen and (max-width: 1217px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header {
		display: block !important;
		height: 70px !important;
		min-height: 70px !important;
		position: sticky !important;
		top: 0 !important;
		width: 100% !important;
		z-index: 30040 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .largeur92 {
		box-sizing: border-box !important;
		height: 70px !important;
		min-height: 70px !important;
		padding: 0 !important;
		width: var(--lime-largeur, 90%) !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit {
		background: var(--couleur-blanc, #fff) !important;
		bottom: auto !important;
		height: 80px !important;
		left: auto !important;
		min-height: 80px !important;
		overflow: visible !important;
		position: sticky !important;
		right: auto !important;
		top: 70px !important;
		transform: none !important;
		width: 100% !important;
		z-index: 30050 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header > .largeur92,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal {
		height: 80px !important;
		min-height: 80px !important;
		overflow: visible !important;
		position: relative !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header > .largeur92 {
		width: var(--lime-largeur, 90%) !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo {
		display: block !important;
		height: 200px !important;
		left: 0 !important;
		margin: 0 !important;
		max-height: 200px !important;
		max-width: 200px !important;
		overflow: visible !important;
		position: absolute !important;
		top: -55px !important;
		transform: none !important;
		width: 200px !important;
		z-index: 30055 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo img,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo img {
		display: block !important;
		height: 100% !important;
		max-height: 200px !important;
		max-width: 200px !important;
		object-fit: contain !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active),
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active) {
		background: var(--couleur-blanc, #fff) !important;
		border: 0 !important;
		border-radius: 0 !important;
		bottom: auto !important;
		box-shadow: none !important;
		color: #3f474c !important;
		display: block !important;
		font-size: 0 !important;
		height: 80px !important;
		left: auto !important;
		margin: 0 !important;
		min-height: 80px !important;
		min-width: 70px !important;
		padding: 0 !important;
		position: absolute !important;
		right: 0 !important;
		top: 0 !important;
		transform: none !important;
		width: 70px !important;
		z-index: 30056 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active)::before,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active)::before {
		background: transparent !important;
		border: 0 !important;
		content: "MENU" !important;
		display: block !important;
		font: 700 .72rem/1 var(--police-secondaire, "Montserrat", sans-serif) !important;
		height: auto !important;
		left: 0 !important;
		position: absolute !important;
		right: 0 !important;
		top: 10px !important;
		transform: none !important;
		width: auto !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active)::after,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active)::after {
		content: none !important;
		display: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active) > span[aria-hidden="true"],
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active) > span[aria-hidden="true"] {
		background: transparent !important;
		border-bottom: 2px solid currentColor !important;
		border-top: 2px solid currentColor !important;
		box-sizing: border-box !important;
		display: block !important;
		height: 20px !important;
		left: 50% !important;
		margin: 0 !important;
		opacity: 1 !important;
		position: absolute !important;
		top: 43px !important;
		transform: translateX(-50%) !important;
		width: 32px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active) > span[aria-hidden="true"]::before,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active) > span[aria-hidden="true"]::before {
		background: currentColor !important;
		content: "" !important;
		display: block !important;
		height: 2px !important;
		left: 0 !important;
		position: absolute !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active) > span[aria-hidden="true"]::after,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #menu-principal button.toggleMenu:not(.active) > span[aria-hidden="true"]::after {
		content: none !important;
		display: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active):hover,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header button.toggleMenu:not(.active):focus {
		transform: none !important;
	}
}

@media screen and (max-width: 680px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .largeur92 {
		align-items: center !important;
		display: flex !important;
		flex-wrap: nowrap !important;
		height: 70px !important;
		justify-content: center !important;
		min-height: 70px !important;
		padding: 0 !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header #recherche_site {
		flex: 0 1 81vw !important;
		height: 40px !important;
		margin: 0 !important;
		max-width: 420px !important;
		min-width: 0 !important;
		width: 81vw !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #top-header .liens-reseaux {
		display: none !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo {
		height: 180px !important;
		left: 0 !important;
		max-height: 180px !important;
		max-width: 180px !important;
		top: 0 !important;
		width: 180px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header #logo img,
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit #logo img {
		max-height: 180px !important;
		max-width: 180px !important;
	}
}

/* Lime 1.0.57 — le logo suit réellement l'état réduit du header.
 * L'état ouvert du menu reste exclu pour conserver son repère visuel complet. */
@media screen and (min-width: 681px) and (max-width: 1217px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit a#logo {
		align-items: center !important;
		display: flex !important;
		height: 68px !important;
		justify-content: center !important;
		left: 0 !important;
		max-height: 68px !important;
		max-width: 118px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 118px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit a#logo img {
		height: 68px !important;
		max-height: 68px !important;
		max-width: 68px !important;
		width: 68px !important;
	}
}

@media screen and (max-width: 680px) {
	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit > .largeur92 {
		height: 80px !important;
		min-height: 80px !important;
		overflow: visible !important;
		position: relative !important;
		width: 100% !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit a#logo {
		align-items: center !important;
		display: flex !important;
		height: 64px !important;
		justify-content: center !important;
		left: 0 !important;
		max-height: 64px !important;
		max-width: 104px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		width: 104px !important;
	}

	html body:not(.menu-open):not(.menu-open-desktop):not(.menu-open-mobile):not(.krea3-menu-desktop-open) #header.site-header.menu-reduit a#logo img {
		height: 64px !important;
		max-height: 64px !important;
		max-width: 64px !important;
		width: 64px !important;
	}
}
