/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/
/*----------------------------------------GENERAL STYLES AND CLASSES----------------------------------------*/
html,
body {
	overflow-x: hidden !important;
}

.elementor-widget-image a img[src$=".svg"] {
	width: inherit !important;
}

/*DISABLE OUTLINE*/
a:focus-visible {
	outline: none !important;
}

.overflow-hidden,
.overflow-hidden .elementor-widget-container {
	overflow: hidden !important;
}

/*FIX DEFAULT LINK COLOR ELEMENTOR*/
.inherit a {
	color: inherit !important;
}

.underline a {
	text-decoration: underline !important;
}

.height100,
.height100 .elementor-widget-container {
	height: 100% !important;
}
.height120,
.height120 .elementor-widget-container {
	height: 120% !important;
}

.heightAuto {
	height: auto !important;
}

.width100,
.width100 .elementor-widget-container {
	width: 100% !important;
}

.cta a::before{
	/*THIS EXTENDS THE LINK TO THE ENTIRE WIDGET BLOCK*/
	content: "";
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

.pointer:hover {
	cursor: pointer;
}

@media (max-width: 768px) {
	.overflow-x {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.nobr br {
		display: none;
	}
}

.opacity-carousel .elementor-widget-container {
	rotate: -90deg;
	-webkit-mask-image: linear-gradient(to right, transparent, black 45%, black 55%, transparent);
	mask-image: linear-gradient(to right, transparent, black 45%, black 55%, transparent);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	@media (max-width: 768px) {
		-webkit-mask-image: linear-gradient(to right, transparent, black 00%, black 100%, transparent);
		mask-image: linear-gradient(to right, transparent, black 00%, black 100%, transparent);
	}
}

.opacity-carousel .uc_image_carousel_placeholder {
	border-radius: 10px;
	padding: 10px;
	border: 1px solid #EAEAEA33;
	overflow: hidden;
}

.elementor-element-4cbd359 {
	border-radius: 10px;
	overflow: hidden;
}

.logo-to-left .carousel-image {
	background-position: left !important;

	@media (max-width: 767px) {
		background-position: center !important;
	}
}

.prev-rotate,
.next-rotate {
	rotate: -90deg;
}

/*----------------------------------------HERO SECTION----------------------------------------*/
.masked {
	mask: url(/wp-content/uploads/2025/03/Exclude.svg);
	mask-size: 100%;
	mask-position: center center;
}

.masked-mobile {
	mask: url(/wp-content/uploads/2025/03/vertical-mask.svg);
	mask-size: 130%;
	mask-position: center center;
}

.title *,.title-page *,
.paragraph *,.paragraph-page * {
	overflow: hidden;
}

.paragraph *, .paragraph-page * {
	margin-bottom: -6px;
}

.title h1 div div,
.title h1 div, .title-page h1 div div,
.title-page h1 div  {
	margin-bottom: -20px;
}

@media (max-width: 1024px) {

	.title h1 div div,
	.title h1 div {
		margin-bottom: -12px;
	}
}

@media (max-width: 768px) {

	.title h1 div div,
	.title h1 div, .title-page h1 div div,
.title-page h1 div {
		margin-bottom: -7px;
	}
}

.title h1, .title-page h1 {
	margin-block-end: 0px !important;
	margin-block-start: 0px !important;
}

.mix-blend-mode-screen {
	mix-blend-mode: screen;
}

.section-anim {
	mix-blend-mode: lighten !important;
}

.section-anim::after {
	content: "";
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	background: radial-gradient(50% 50% at 50% 50%, rgba(234, 234, 234, 0.05) 0%, rgba(234, 234, 234, 0.00) 100%);
}

.text-orange,
.text-orange b,
.text-orange strong,
.text-orange b *,
.text-orange strong * {
	color: #F56733;
}

.text-green,
.text-green b,
.text-green strong,
.text-green b *,
.text-green strong * {
	color: #3CC360;
}

.text-blue,
.text-blue b,
.text-blue strong,
.text-blue b *,
.text-blue strong * {
	color: #05747C;
}
/*---------------------------------------- TOGGLE LINKS COLOR OUN PAGES PROMOTION ----------------------------------------*/

body:not(.page-id-525) {
	.link {
		* {
			transition: color 0.2s ease-out;
		}

		&:hover * {
			color: #f56733 !important;
		}
	}
}
body.page-id-525, body.page-id-3690, body.single-programmes {
	.link {
		* {
			transition: color 0.2s ease-out;
		}

		&:hover * {
			color: #05747c !important;
		}
	}
}

a.elementor-gallery-title {
	border-radius: 50px;
	border: 1px solid rgba(234, 234, 234, 0.30);
	background: rgba(234, 234, 234, 0.10);
	padding: 5px 20px 3px 20px;
}

.list-real {
	img {
		height: 365px;
		display: hidden;
		object-position: center center;
		object-fit: cover;
	}
}

.group:hover {
	.group-underline {
		text-decoration: underline
	}
}

.hover-block {
	background-color: #EAEAEA;
	border-radius: 0px 0px 10px 10px;
	height: 0%;
	z-index: 0;
}
/*---------------------------------------- FORMS ----------------------------------------*/

.elementor-field-group.elementor-field-type-submit {
    justify-content: center !important;
}
.elementor-button[type="submit"] {
    max-width: 400px !important;
}
.elementor-field-group.recaptcha_v3-bottomright {

    display: none;
}
.elementor-field-type-acceptance a:hover{
	color: #EAEAEA !important;
}
/*---------------------------------------- PAGES LEGALES ----------------------------------------*/
.mentions a{
	color: #F56733 ;
}
/*---------------------------------------- PAGE UNIQUE RÉALISATION ----------------------------------------*/

#real-carousel {
	position: relative;
	-webkit-mask-image: linear-gradient(to right, #00000000, #000000 40%, #000000 60%, #00000000);
	mask-image: linear-gradient(to right, #00000000, #000000 40%, #000000 60%, #00000000);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	@media (max-width: 768px) {
		-webkit-mask-image: linear-gradient(to right, transparent, black 00%, black 100%, transparent);
		mask-image: linear-gradient(to right, transparent, black 00%, black 100%, transparent);
	}

	img {
		width: 730px;
		height: 453px;
		object-fit: cover;

		@media (max-width: 1600px) {
			width: 700px;
			height: 320px;
		}

		@media (max-width: 768px) {
			width: 90vw;
			height: 50vw;
		}
	}
}

#checkbox-prestation fieldset .jet-checkboxes-list__item {
	* {
		transition: background .3s ease-out;
	}

	.jet-checkboxes-list__decorator {
		display: none;
	}

	.jet-checkboxes-list__label {
		border-radius: 50px;
		border: 1px solid rgba(234, 234, 234, 0.30);
		background: rgba(234, 234, 234, 0.10);
		padding: 10px 20px 8px 20px;
	}

	&:has(*:checked) {
		.jet-checkboxes-list__label {
			background: rgba(234, 234, 234, 0.30);
		}
	}

}
#radio-prestation fieldset .jet-radio-list__item {
	* {
		transition: background .3s ease-out;
	}

	.jet-radio-list__decorator {
		display: none;
	}

	.jet-radio-list__label {
		border-radius: 50px;
		border: 1px solid rgba(234, 234, 234, 0.30);
		background: rgba(234, 234, 234, 0.10);
		padding: 10px 20px 8px 20px;
	}

	&:has(*:checked) {
		.jet-radio-list__label {
			background: rgba(234, 234, 234, 0.30);
		}
	}

}

#real-content {
	code {
		color: #F56733;
		font-family: Oxanium;
		font-size: 16px;
		font-style: normal;
		font-weight: 400;
		line-height: normal;
	}

	a {
		color: #EAEAEA;

		&:hover {
			text-decoration: underline;
		}

		&:has(code) {
			color: #F56733;
		}
	}
}

/*----------------------------------------RECAPTCHA----------------------------------------*/
.grecaptcha-badge,
.grecaptcha-badge * {
	display: none !important;
}

.glass-10 {
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.glass-15 {
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
}

.glass-25 {
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
}

.remote-tabs-same-size .ue-item {
	flex: 1;

	.ue-item-link {
		width: 100%;
		height: 100%;
	}
}

.owl-stage-outer {
	border-radius: 10px;
}

/*----------------------------------------PAGE A PROPOS----------------------------------------*/
.carousel-histoire .swiper-pagination-bullet-active,
.carousel-team .swiper-pagination-bullet-active {
	width: 20px !important;
	border-radius: 10px;
	transition: width 0.8s ease;
	transform-origin: center center;
	background: #F56733 !important;
}

.carousel-histoire div.swiper-slide:not(.swiper-slide-active) .step svg path {
	fill: #EAEAEA;
	transition: all 0.8s ease;
}

.carousel-histoire div.swiper-slide-active .elementor-heading-title {
	color: #F56733 !important;
	transition: all 0.8s ease;
}

.carousel-histoire {
	position: relative;
	-webkit-mask-image: linear-gradient(to right, transparent, black 0%, black 50%, transparent);
	mask-image: linear-gradient(to right, transparent, black 0%, black 50%, transparent);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	@media (max-width: 767px) {
		-webkit-mask-image: linear-gradient(to right, transparent, black 0%, black 30%, transparent);
		mask-image: linear-gradient(to right, transparent, black 0%, black 30%, transparent);
	}
}

.carousel-histoire .step svg {
	margin-bottom: -5px !important;
}

.timeline-bar {
	display: flex;
	width: 100%;
	height: 1px;
	background-color: #EAEAEA33;
}

.timeline-bar-container {
	align-content: center;
}

.overlay-gradient {
	background: linear-gradient(180deg, rgba(13, 23, 26, 0.00) 58.03%, #0D171A 100%);
	z-index: 0;
	width: 100%;
	height: 100%;
	transition: all 2.4s ease-out;
	transform-origin: bottom;
}

/*.photo-team:hover .overlay-gradient{
	scale: 3;
	transform-origin: bottom;
	transition: all 2.4s ease-in;
}*/
.carousel-team .photo-team {
	background-position: top center !important;

	@media (max-width: 767px) {
		min-height: 475px !important;
	}
}

.carousel-team {
	position: relative;
	-webkit-mask-image: linear-gradient(to right, transparent, black 0%, black 75%, transparent);
	mask-image: linear-gradient(to right, transparent, black 0%, black 75%, transparent);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	@media (max-width: 767px) {
		-webkit-mask-image: linear-gradient(to right, transparent, black 0%, black 30%, transparent);
		mask-image: linear-gradient(to right, transparent, black 0%, black 30%, transparent);
	}
}

.opacity25 {
	opacity: .25;
}

.carousel-partenaires .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}

.carousel-partenaires {
	position: relative;
	-webkit-mask-image: linear-gradient(to right, transparent, black 20%, black 80%, transparent);
	mask-image: linear-gradient(to right, transparent, black 20%, black 80%, transparent);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

/*----------------------------------------PAGE ARTICLE BLOG SEUL----------------------------------------*/
.blog-content p {
	margin-bottom: 15px !important;
}

.blog-content img {
	margin-top: 10px;
}

.blog-content a {
	color: #F56733 !important;
}

html,
body {
	scroll-padding-top: 90px;
}
/*----------------------------------------PAGE PROGRAMME SEUL----------------------------------------*/

.row-programmes{
	@media (max-width: 767px) {
		-webkit-mask-image: linear-gradient(to right, transparent, black 0%, black 90%, transparent);
		mask-image: linear-gradient(to right, transparent, black 0%, black 90%, transparent);
	}
}
.iframe-container iframe {
	min-height: 70vh;
}
.accordion-programmes *{
	    font-family: 'Oxanium' !important;

}
.accordion-programmes li{
    word-break: break-word !important;
}


/*----------------------------------------ODOMETER STYLES----------------------------------------*/

.odometer.odometer-auto-theme, .odometer.odometer-theme-default{
    font-family: "Oxanium", Sans-serif !important;
    font-size: 60px;
    font-weight: 700;
    line-height: normal;
    color: var(--e-global-color-accent);
}

.share-btn {
	cursor: pointer;
}

.programme-tabs .ue-item-image img{
    position: absolute !important;
    right: 20px;
    width: auto !important;
}
.programme-tabs a{
    flex-direction: column !important;
}