/* Focused homepage polish. No dimensions, media or layout are changed. */

/* This Elementor heading is editorial body copy, so it follows body type. */
body.home .elementor-element-eaf954e .elementor-heading-title {
	font-family: "Poppins", Arial, sans-serif !important;
}

/* Keep the training tabs inside the established blue brand palette. */
body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="true"] {
	border-color: #fff !important;
	background: #fff !important;
	box-shadow: 0 8px 18px rgba(23, 32, 68, .16) !important;
	color: #172044 !important;
	font-weight: 700 !important;
}

body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="false"]:hover,
body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="false"]:focus-visible {
	border-color: #fff !important;
	background: #fff !important;
	color: #172044 !important;
}

/* Native article-card headings use the same dark blue as the blog. */
body.home .elementor-post__title,
body.home .elementor-post__title a,
body.home .hfe-post-title,
body.home .hfe-post-title a {
	color: #172044 !important;
}

body.home .elementor-post__title a:hover,
body.home .elementor-post__title a:focus-visible,
body.home .hfe-post-title a:hover,
body.home .hfe-post-title a:focus-visible {
	color: #2a4981 !important;
}

/* Modern training catalogue: grouped tabs and calm, equal-height cards. */
body.home .elementor-element-6c0d53f {
	position: relative;
	z-index: 1;
	overflow: visible;
	background: transparent !important;
}

/* The catalogue is a separate Elementor container. The same solid surface
 * prevents a visible seam without adding a late-loading DOM layer. */
body.home .elementor-element-d2ddf69 {
	position: relative;
	z-index: 1;
	background: transparent !important;
}

/* Elementor adds solid blue backgrounds inside each tab panel. */
body.home .elementor-element-9502220 .e-n-tabs-content > .e-con,
body.home .elementor-element-9502220 .e-n-tabs-content > .e-con > .e-con {
	background: transparent !important;
}

body.home .elementor-element-9502220 .e-n-tabs-heading {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px !important;
	padding: 0 clamp(30px, 4vw, 46px);
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.home .elementor-element-9502220 .e-n-tabs-heading::before {
	content: "Choisir une catégorie de formation";
	display: block;
	grid-column: 1 / -1;
	justify-self: center;
	padding: 3px 8px 5px;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: rgba(255, 255, 255, .88);
	font-family: "Poppins", Arial, sans-serif;
	font-size: 17px;
	font-weight: 600;
	letter-spacing: .01em;
	line-height: 1.3;
	text-align: center;
}

body.home .elementor-element-9502220 .e-n-tab-title {
	width: 100%;
	min-width: 0 !important;
	border-color: rgba(255, 255, 255, .62) !important;
	border-radius: 12px !important;
	background: linear-gradient(155deg, #365c9e 0%, #2a4981 48%, #172044 100%) !important;
	box-shadow: none;
	color: #fff !important;
	cursor: pointer !important;
	animation: none !important;
	transform: none !important;
	transition: none !important;
}

body.home .elementor-element-9502220 .e-n-tab-title *,
body.home .elementor-element-9502220 .e-n-tab-title::before,
body.home .elementor-element-9502220 .e-n-tab-title::after,
body.home .elementor-element-9502220 .e-n-tab-title *::before,
body.home .elementor-element-9502220 .e-n-tab-title *::after {
	animation: none !important;
	filter: none !important;
	transform: none !important;
	transition: none !important;
}

body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="false"]:hover {
	border-color: #fff !important;
	background: #fff !important;
	box-shadow: 0 8px 18px rgba(23, 32, 68, .16) !important;
	color: #172044 !important;
	transform: none !important;
}

body.home .elementor-element-9502220 .elementor-widget-call-to-action {
	height: 100%;
}

body.home .elementor-element-9502220 .elementor-widget-call-to-action > .elementor-widget-container {
	height: 100%;
	overflow: hidden;
	border: 0 !important;
	border-radius: 24px !important;
	background: #fff;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, .24), 0 12px 28px rgba(13, 27, 56, .16) !important;
	transform: none !important;
	transform-origin: center;
	transition: transform .16s ease-out, box-shadow .16s ease-out !important;
}

body.home .elementor-element-9502220 .dua-clickable-training-card {
	cursor: pointer;
}

body.home .elementor-element-9502220 .dua-clickable-training-card:focus-visible {
	outline: 3px solid rgba(255, 255, 255, .95);
	outline-offset: 4px;
}

body.home .elementor-element-9502220 .elementor-cta {
	height: 100%;
}

body.home .elementor-element-9502220 .elementor-cta__bg-wrapper {
	flex: 0 0 100% !important;
	width: 100% !important;
	height: 200px !important;
	overflow: hidden;
}

body.home .elementor-element-9502220 .elementor-cta__bg {
	transform: none !important;
	transition: none !important;
}

body.home .elementor-element-9502220 .elementor-cta__content {
	flex: 1 1 auto;
	background: #fff !important;
}

body.home .elementor-element-9502220 .elementor-cta__title {
	color: #172044 !important;
}

body.home .elementor-element-9502220 .elementor-cta__description {
	color: #4d5870 !important;
}

body.home .elementor-element-9502220 .elementor-cta__button-wrapper {
	margin-top: auto;
}

body.home .elementor-element-9502220 .elementor-cta__button {
	border-color: rgba(255, 255, 255, .78) !important;
	background: linear-gradient(155deg, #365c9e 0%, #2a4981 48%, #172044 100%) !important;
	color: #fff !important;
	box-shadow: none !important;
	transform: none !important;
	transition: transform .11s ease-out, background .11s ease-out !important;
}

body.home .elementor-element-9502220 .elementor-cta__button:hover,
body.home .elementor-element-9502220 .elementor-cta__button:focus-visible {
	border-color: #fff !important;
	background: linear-gradient(155deg, #ff6464 0%, #ea5356 58%, #d9414a 100%) !important;
	color: #fff !important;
	transform: scale(1.025) !important;
}

@media (hover: hover) and (pointer: fine) {
	body.home .elementor-element-9502220 .e-n-tab-title {
		transition: transform .11s ease-out !important;
	}

	body.home .elementor-element-9502220 .elementor-cta__button {
		transition: transform .11s ease-out, background .11s ease-out !important;
	}

	body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="false"]:hover,
	body.home .elementor-element-9502220 .e-n-tab-title[aria-selected="true"]:hover {
		z-index: 1;
		transform: scale(1.015) !important;
	}

	body.home .elementor-element-9502220 .elementor-widget-call-to-action > .elementor-widget-container:hover {
		box-shadow: 0 0 0 1px rgba(255, 255, 255, .48), 0 18px 34px rgba(13, 27, 56, .22) !important;
		transform: translateY(-2px) scale(1.018) !important;
	}
}

@media (max-width: 767px) {
	body.home .elementor-element-6c0d53f.elementor-hidden-mobile {
		display: flex !important;
	}

	body.home .elementor-element-9502220 .e-n-tabs-heading {
		grid-template-columns: 1fr;
		gap: 8px !important;
		padding: 0 18px;
		border-radius: 16px;
	}

	body.home .elementor-element-9502220 .elementor-widget-call-to-action,
	body.home .elementor-element-9502220 .elementor-widget-call-to-action > .elementor-widget-container,
	body.home .elementor-element-9502220 .elementor-cta {
		height: auto;
	}

	body.home .elementor-element-9502220 .elementor-cta__bg-wrapper {
		flex-basis: 100% !important;
		width: 100% !important;
		height: 200px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home .elementor-element-9502220 .e-n-tab-title,
	body.home .elementor-element-9502220 .elementor-widget-call-to-action > .elementor-widget-container,
	body.home .elementor-element-9502220 .elementor-cta__button {
		transition: none !important;
	}

	body.home .elementor-element-9502220 .e-n-tab-title:hover {
		transform: none !important;
	}

	body.home .elementor-element-9502220 .elementor-widget-call-to-action > .elementor-widget-container:hover {
		transform: none !important;
	}
}
