/* Méga menu « Services » — habillage AORA (clair, accents rouges).
 * Les sélecteurs reprennent ceux de Max Mega Menu (#mega-menu-wrap-main #mega-menu-main…) pour passer devant. */
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu {
	--aora-red: #D62F2B;
	--aora-ink: #1B1F24;
	--aora-muted: #6B737B;
	--aora-line: #ECEEF1;
}

@media only screen and (min-width: 1365px) {
	/* Panneau centré sous la carte d'en-tête plutôt qu'accroché au lien « Services ». */
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm { position: static; }
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu {
		width: min(1080px, calc(100vw - 48px));
		left: 50%;
		margin-left: calc(min(1080px, calc(100vw - 48px)) / -2);
		top: calc(100% + 14px);
		padding: 36px 36px 30px;
		/* Verre dépoli : fond blanc translucide + flou de ce qui passe derrière */
		background: linear-gradient(135deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .58));
		-webkit-backdrop-filter: blur(22px) saturate(1.7);
		backdrop-filter: blur(22px) saturate(1.7);
		border: 1px solid rgba(255, 255, 255, .7) !important;
		border-radius: 24px;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 30px 70px -28px rgba(27, 31, 36, .35), 0 0 0 1px rgba(27, 31, 36, .06);
		display: flex !important;
		flex-wrap: nowrap;
	}
	/* Zone tampon pour que le survol ne se perde pas entre le lien et le panneau. */
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu::before { content: "" !important; display: block !important; position: absolute; left: 0; right: 0; top: -44px; height: 44px; }

	/* Colonnes */
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu > li.mega-menu-column-standard {
		flex: 1 1 0; width: auto; padding: 0 28px; border-left: 1px solid var(--aora-line); float: none;
	}
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu > li.mega-menu-column-standard:first-child { border-left: 0; padding-left: 0; }
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu > li.mega-menu-column-standard:last-child { padding-right: 0; flex-grow: 1.15; }
}

/* Titre de colonne : icône + titre + description */
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link {
	display: block !important; position: relative; min-height: 44px;
	padding: 0 0 18px 58px !important; background-repeat: no-repeat !important; background-position: 0 0 !important; background-size: 44px 44px !important; margin-bottom: 10px !important; border-bottom: 1px solid var(--aora-line) !important;
	cursor: default; background-color: transparent !important;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link::before { content: none !important; display: none !important; }
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link .mega-description-group { display: block; }
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading .mega-menu-title {
	font-size: 16px; font-weight: 600; color: var(--aora-ink); line-height: 1.3; white-space: normal;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading .mega-menu-description {
	font-style: normal !important; font-size: 13px !important; color: var(--aora-muted); margin: 2px 0 0 !important; line-height: 1.4; white-space: normal;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-dev > a.mega-menu-link {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='14' fill='%23FDECEA'/%3E%3Cg transform='translate(10 10)' fill='none' stroke='%23D62F2B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='2'/%3E%3Cpath d='M8 21h8M9 9l-2 2 2 2M15 9l2 2-2 2'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-cloud > a.mega-menu-link {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='14' fill='%23FDECEA'/%3E%3Cg transform='translate(10 10)' fill='none' stroke='%23D62F2B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 18h10a4 4 0 0 0 .5-7.97A6 6 0 0 0 6 9.5 4.25 4.25 0 0 0 7 18z'/%3E%3Cpath d='M10 14l2-2 2 2M12 12v5'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-ia > a.mega-menu-link {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='14' fill='%23FDECEA'/%3E%3Cg transform='translate(10 10)' fill='none' stroke='%23D62F2B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='6' width='12' height='12' rx='2'/%3E%3Cpath d='M9 3v3M15 3v3M9 18v3M15 18v3M3 9h3M3 15h3M18 9h3M18 15h3'/%3E%3Cpath d='M10 14.5l2-5 2 5M10.7 13h2.6'/%3E%3C/g%3E%3C/svg%3E") !important;
}

/* Liens : effet de survol repris du thème Aiero — le texte glisse de 20px et une petite flèche (icône fontello \e841) apparaît à gauche. */
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > ul.mega-sub-menu > li > a.mega-menu-link {
	display: block !important; position: relative;
	padding: 9px 0 !important; margin: 0 !important;
	font-size: 14.5px; line-height: 1.35; color: var(--aora-ink) !important; background: transparent !important;
	transition: padding .3s, color .3s;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > ul.mega-sub-menu > li > a.mega-menu-link::before {
	content: "\e841" !important; display: block !important;
	font: 400 normal 10px/1 "fontello" !important;
	position: absolute; left: 0; top: 50%; width: 16px; margin-top: -4px;
	color: var(--aora-red); opacity: 0; transition: opacity .4s;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-menu-item:hover > a.mega-menu-link,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus-visible,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-current-menu-item > a.mega-menu-link {
	padding: 9px 0 9px 20px !important; color: var(--aora-red) !important;
}
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-menu-item:hover > a.mega-menu-link::before,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus-visible::before,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-current-menu-item > a.mega-menu-link::before { opacity: 1; }

/* « Tous nos services » : lien d'appel en rouge */
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-all { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--aora-line); }
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > ul.mega-sub-menu > li.mega-aora-mm-all > a.mega-menu-link { color: var(--aora-red) !important; font-weight: 600; }

/* Mobile / tablette (menu en accordéon de Max Mega Menu) */
@media only screen and (max-width: 1364px) {
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link { min-height: 36px; padding: 12px 0 10px 50px !important; margin-bottom: 4px; background-size: 36px 36px !important; background-position: 0 12px !important; }
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > ul.mega-sub-menu > li > a.mega-menu-link { margin: 0; }
}

/* Titres de colonne : pas d'effet de survol (ils ne sont pas cliquables). */
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link:hover,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link:focus,
#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading.mega-menu-item:hover > a.mega-menu-link { padding: 0 0 18px 58px !important; }
@media only screen and (max-width: 1364px) {
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link:hover,
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm li.mega-aora-mm-heading > a.mega-menu-link:focus,
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu li.mega-aora-mm-heading.mega-menu-item:hover > a.mega-menu-link { padding: 12px 0 10px 50px !important; }
}

/* Sans backdrop-filter (vieux navigateurs) : on garde un fond opaque lisible. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	#mega-menu-wrap-main #mega-menu-main > li.mega-aora-mm > ul.mega-sub-menu { background: #fff; }
}

/* L'en-tête collant a son propre backdrop-filter : un flou imbriqué ne voit alors que l'en-tête, pas la page.
 * Pendant l'ouverture du méga menu, on retire le flou de l'en-tête (fond presque opaque à la place). */
.header:has(li.mega-aora-mm.mega-toggle-on),
.header:has(li.mega-aora-mm:hover) {
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
.header.sticky-header:has(li.mega-aora-mm.mega-toggle-on),
.header.sticky-header:has(li.mega-aora-mm:hover) { background-color: rgba(255, 255, 255, .985) !important; }
