/* assets/styles.css */

/* Prevent Multiple Contact Form 7 Submissions */

.wpcf7-form.submitting .wpcf7-submit {
    pointer-events: none;
}

html,
body {
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

.rouge {
	color: #E63746 !important;
}

/* button_with_arrow */

.button_with_arrow .elementor-button-content-wrapper {
	align-items: center;
}

.button_with_arrow .elementor-button-icon svg {
	width: 30px;
}

.button_with_arrow .elementor-button-text {
	position: relative;
}

.button_with_arrow .elementor-button-text:after {
	content: '';
	position: absolute;
	width: 20px;
	height: 100%;
	right: -32px;
	top: -2px;
	background-color: transparent;
	background-image: url(/wp-content/uploads/2024/12/button_arrow_red.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

/* main_menu */

.main_menu .sub-menu {
	padding: 20px 0 !important;
	border-radius: 20px 5px 20px 5px;
}

@media only screen and (min-width : 1200px) {

	.main_menu nav > ul > li a:hover {
		color: #E63746 !important;
	}

	.main_menu nav > ul > li.current_page_item > a .sub-arrow svg,
	.main_menu nav > ul > li.current-page-ancestor > a .sub-arrow svg {
		fill: #E63746 !important;
	}

	.main_menu nav > ul > li.current-page-ancestor > a {
		color: #E63746 !important;
	}

	.main_menu nav > ul > li a:hover .sub-arrow svg {
		fill: #E63746 !important;
	}

}

@media only screen and (max-width : 1199px) {
    /* .main_menu nav > ul > li > a .sub-arrow svg,
    .main_menu nav > ul > li.current_page_item > a .sub-arrow svg,
	.main_menu nav > ul > li.current-page-ancestor > a .sub-arrow svg {
		fill: #ffffff !important;
	}

	.main_menu nav > ul > li.current-page-ancestor > a {
		color: #ffffff !important;
	}

	*/

	.main_menu nav > ul > li a .sub-arrow svg {
		fill: #ffffff !important;
	}

	.main_menu .elementor-nav-menu {
		padding: 20px 15px !important;
		border-radius: 20px 5px 20px 5px !important;
		background-color: #E63746 !important;
	}

	.main_menu .elementor-nav-menu--dropdown {
		border-radius: 20px 5px 20px 5px !important;
		top: 60px !important;
		margin: 0 15px !important;
		padding: 0 15px !important;
		background-color: transparent !important;

	}

	.main_menu .elementor-nav-menu--dropdown a.highlighted svg {
		fill: #E63746 !important;
	}
}

@media only screen and (max-width : 767px) {
	.main_menu .elementor-nav-menu--dropdown {
		top: 73px !important;
	}
}

@media only screen and (max-width : 424px) {

}

/* footer */

.footer_copy,
.footer_copy * {
	margin:0;
	padding:0;
}

.footer_copy a {
	color: #3C2837 !important;
}

.footer_copy a:hover {
	color: #E63746 !important;
}


.no_break {
	white-space: nowrap;
}

@media only screen and (max-width : 767px) {

	.menu_footer nav ul {
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
	}

}

/* general */

@media only screen and (max-width : 1023px) {

	.no_br_1023 br {
		display: none !important;
	}
}

/* hero */


@media only screen and (max-width : 1799px) {
    .hero h2 {
		font-size: 55px !important;
	}
}

@media only screen and (max-width : 1439px) {
	.hero h2 {
		font-size: 44px !important;
	}
}

@media only screen and (max-width : 1199px) {
	.hero h2 {
		font-size: 36px !important;
	}
}

@media only screen and (max-width : 1023px) {
	.hero h2 {
		font-size: 30px !important;
	}
}

@media only screen and (max-width : 767px) {
	.hero h2 {
		font-size: 26px !important;
	}
}

@media only screen and (max-width : 424px) {
	.hero h2 {
		font-size: 24px !important;
	}
}



/* blogue */

.blogue_loop,
.blogue_loop_info {
	height: 100% !important;
}

@media only screen and (max-width : 767px) {

	.blogue_loop_info {
		height: auto !important;
	}
}

/* footer fix */

@media screen and (min-width: 1440px) and (max-width: 1799px) {

	.elementor-location-footer .first_box {
		border-radius: 70px 0px 0px 0px;
	}
}

/* logo_carousel */

.logo_carousel .swiper-pagination {
	bottom: 0 !important;
}

.logo_carousel .swiper-pagination .swiper-pagination-bullet {
	background-color: #ffffff !important;
	opacity: 1 !important;
	border: 1px solid #E63746 !important;
	margin-left: 2px !important;
	margin-right: 2px !important;
}

.logo_carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #E63746 !important;
}

/* equipe_valeurs_icon_box */

.equipe_valeurs_icon_box .elementor-icon-box-title {
	margin-top: 4px !important;
}


/* formations slideshow */

/*  Boxed Element In Fullwidth Section (with container) */

:root {
    --padding: 15px;
    --container: 1640px;
    --scroll-bar-width-windows: 17px;
    --scroll-bar-width-mac: 15px;
}


@media only screen and (min-width : 1620px) {

    .boxed_left {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-windows) ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    .boxed_left_no_padding {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-windows) ) - var(--container) ) / 2 ) ) !important;
    }

    .boxed_right {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-windows)) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    .boxed_right_no_padding {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-windows)) - var(--container) ) / 2 ) ) !important;
    }

    body.mac .boxed_left {
        padding-left: calc( ( (  100vw - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac .boxed_left_no_padding {
        padding-left: calc( ( (  100vw - var(--container) ) / 2 ) ) !important;
    }

    body.mac .boxed_right {
        padding-right: calc( ( ( 100vw - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac .boxed_right_no_padding {
        padding-right: calc( ( ( 100vw - var(--container) ) / 2 ) ) !important;
    }

    body.mac.scrollbars-visible .boxed_left {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-mac)  ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac.scrollbars-visible .boxed_left_no_padding {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-mac)  ) - var(--container) ) / 2 ) ) !important;
    }

    body.mac.scrollbars-visible .boxed_right {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-mac) ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac.scrollbars-visible .boxed_right_no_padding {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-mac) ) - var(--container) ) / 2 ) ) !important;
    }
}


.formations_carousel_master .boxed_left {
	z-index: 2 !important;
	background-color: #fff !important;
}

.formations_carousel_master {
	overflow: hidden !important;
}

.formations_carousel_group {
	overflow: visible !important;
}

.formations_carousel_container {
	overflow: visible !important;
}

.formations_carousel {
	margin-bottom: 70px !important;
}

.formations_carousel .elementor-loop-container {
	overflow: visible !important;
}

.formations_carousel .elementor-swiper-button {
	background-color: red !important;
	top: calc( 100% + 50px + 20px) !important;
	right: auto !important;
	width: 50px;
	height: 50px;
	border-radius: 20px 5px 20px 5px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

.formations_carousel .elementor-swiper-button svg {
	fill: #fff !important;
	width: 16px !important;
	height: 16px !important;
}

.formations_carousel .elementor-swiper-button-prev {
	left: 9px !important;
}

.formations_carousel .elementor-swiper-button-next {
	left: 24px !important;
}

.formations_loop_content * {
	margin-top: 0 !important;
}

.formations_loop_icon {
	transform: translateY(-50%) !important;
}

.formations_carousel.formations_carousel_single {
	margin-bottom: 0px !important;
}


.formations_carousel.formations_carousel_single .elementor-swiper-button-prev,
.formations_carousel.formations_carousel_single .elementor-swiper-button-next {
	display: none !important;
}

/* blogue */

.blogue_single_content * {
	margin-top: 0 !important;
}

.blogue_single_content h1,
.blogue_single_content h2,
.blogue_single_content h3,
.blogue_single_content h4,
.blogue_single_content h5,
.blogue_single_content h6 {
	color: #E63746 !important;
	text-transform: uppercase !important;
}

.blogue_single_content ul,
.blogue_single_content ol {
	margin-bottom: 1em !important;
}

.blogue_single_content li {
	margin-bottom: 0.5em !important;
}

.blogue_single_content li:last-child {
	margin-bottom: 0em !important;
}

.blogue_single_content ul ul,
.blogue_single_content ul ol,
.blogue_single_content ol ol,
.blogue_single_content ol ul {
	margin-top: 0.5em !important;
}

.blogue_single_content a {
	font-weight: 600 !important;
	color: #E63746 !important;
	text-decoration: underline !important;
}

.blogue_single_terms .elementor-post-info__terms-list {
	font-size: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.blogue_single_terms .elementor-post-info__terms-list-item {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 6px 18px !important;
	border-radius: 20px 5px 20px 5px !important;
	background-color: #E63746 !important;
	color: #fff !important;
	font-size: 24px !important;
	margin: 6px !important;
}

@media only screen and (max-width : 1199px) {
    .blogue_single_terms .elementor-post-info__terms-list-item {
		padding: 6px 18px !important;
		border-radius: 15px 5px 15px 5px !important;
		font-size: 20px !important;
	}
}

@media only screen and (max-width : 767px) {
    .blogue_single_terms .elementor-post-info__terms-list-item {
		padding: 6px 18px !important;
		border-radius: 10px 3px 10px 5px !important;
		font-size: 18px !important;
	}
}

.demande_form .elementor-button-icon {
	margin-right: 18px !important;
}

.demande_form .elementor-button-icon svg {
	width: 30px !important;
	height: 30px !important;
}

.demande_form .lementor-field-type-acceptance .elementor-field-option {
	display: flex !important;
}

#demande_form .elementor-field-type-acceptance.elementor-field-group > div > span {
	display: flex !important;
	align-items: flex-start;
}

#demande_form .elementor-field-type-acceptance.elementor-field-group > div > span input {
	margin-top: 4px;
	margin-right: 12px;
	color: #E63746 !important;
}

#demande_form .elementor-field-type-acceptance.elementor-field-group > div > span label,
#demande_form .elementor-field-type-acceptance.elementor-field-group > div > span label a {
	color: #E63746 !important;
}

#demande_form input[type="checkbox"] {
    accent-color: #E63746 !important;
	border-color: #E63746 !important;
}


.demande_form .elementor-button {
    cursor: pointer;
}

.demande_form .elementor-button:after {
	content: '';
	position: absolute;
	width: 20px;
	height: 100%;
	right: 32px;
	top: -2px;
	background-color: transparent;
	background-image: url(/wp-content/uploads/2024/12/button_arrow_red.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

/* politique */


.politique * {
	margin-top: 0 !important;
}

.politique h1,
.politique h2,
.politique h3,
.politique h4,
.politique h5,
.politique h6 {
	color: #E63746 !important;
	text-transform: uppercase !important;
	margin-top: 0.75em !important;
	margin-bottom: 0.25em !important;
}

.politique ul,
.politique ol {
	margin-bottom: 1em !important;
}

.politique li {
	margin-bottom: 0.5em !important;
}

.politique li:last-child {
	margin-bottom: 0em !important;
}

.politique ul ul,
.politique ul ol,
.politique ol ol,
.politique ol ul {
	margin-top: 0.5em !important;
}

.politique a {
	font-weight: 600 !important;
	color: #E63746 !important;
	text-decoration: underline !important;
}

