/*
 Theme Name:   Eliophot Base Theme Child
 Theme URI:    https://www.eliophot.com
 Description:  Thème enfant de Eliophot Base Theme
 Author:       Eliophot
 Author URI:   https://www.eliophot.com
 Template:     eliophot-base-theme
 Version:      2.5.0
*/

/* //////////// Header ///////////// */
.she-header-yes {
width: 100% !important;
}


#header-desktop.active,
#header-desktop.she-header ,
#header-mobile.she-header 
 {
	background-color: #FFF !important;
	transition: none !important;
}


#header-desktop.active .logo-site svg,
#header-desktop.she-header  .logo-site svg,
#header-mobile.she-header  .logo-site svg,
#header-mobile.she-header  .burger-icon .elementor-icon,
#header-desktop.active .rs-top i,
#header-desktop.she-header .rs-top i

{
	fill: var( --e-global-color-secondary ) !important;
	color: var( --e-global-color-secondary ) !important;
}

#header-desktop.active .elementor-item:not(:hover),
#header-desktop.she-header .elementor-item:not(:hover),
#header-desktop.she-header .tel-header a span
 {
	color: var( --e-global-color-secondary ) !important;
	transition: none !important;
}

#header-desktop.active .header-top,
#header-desktop.she-header .header-top
 {
	border-color: var( --e-global-color-secondary ) !important;
}
#header-desktop.active  .menu-principal .e-n-menu-title a , 
#header-desktop.active  .menu-principal .e-n-menu-item-title-text,
#header-desktop.she-header  .menu-principal .e-n-menu-item-title a , 
#header-desktop.she-header  .menu-principal .e-n-menu-item-title-text,
#header-desktop.she-header  .menu-principal .e-n-menu-title a,
#header-desktop.she-header  .menu-principal .e-n-menu-title a span
  {
	color: var( --e-global-color-secondary ) !important;
}

.menu-principal .e-n-menu-items-heading {
	row-gap: 0 !important;
}

	.menu-langues .sub-menu {
		margin-left: 12px !important;
		min-width: 50px !important;
	}
	.menu-langues ul.elementor-nav-menu--dropdown a {
		border: none !important
	}
/*** Image overlay an border ***/

.img-border .elementor-image {
	position: relative;
}

.img-border .elementor-image:after {
	content: " ";
	position: absolute;
	top: 20px;
	left: 20px;
	right: 20px;
	bottom: 20px;
	border: 1px solid #FFF;
}

.img-overlay .elementor-image:before {
	content: " ";
	background: var( --e-global-color-ba996cc );
	width: 100%;
	height: 100%;
	position:absolute;
}


/************************Destinations ******************/
@media screen and (min-width: 1024px) {
	#dest-container .dest {
		/* transition: all 0.5s linear; */
	}
	
	#dest-container .dest.inactive {
		z-index: 1 !important;
	}

	
	#dest-container .dest:hover{
    width: 100%;
    left: 0 !important;
    transition: all 0.5s linear;
	 z-index: 2 !important;
	}

	#dest-container{
    position: relative
	}

	
	.dest .dest-logo {
		position: absolute;
		top:250px;

		transition: 0.5s linear;
	}
	.dest:hover   .dest-logo {
		transform: translateY(0);
		top:100px;
	}
	.dest .dest-details, 
	.dest .dest-cta{

		visibility:hidden;
		transition: all 0.8s ease-in-out;
		opacity: 0;
		
		
	}
	.dest:hover .dest-details {
	margin-top: 120px;
	}
	.dest:hover  .dest-details,
	.dest:hover  .dest-cta
	 {
		visibility:visible;
		opacity: 1;	
	}
	
}


.dest .dest-details {
	max-width: 500px !important;
}

@media screen and (max-width: 1024px) {
	#dest-container .dest {
		position: relative !important;
		left: auto !important;
		top: auto !important;
	}
}

/***************Footer*****************/
@media screen and (max-width: 1024px) {
		.menu-footer .elementor-nav-menu li {
		justify-content: center;
		display: flex;
	}
}

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

		.realisepar .elementor-image-box-wrapper {
				display: flex !important;
				flex-direction: row-reverse !important;
			}
}

	.menu-langues-footer .sub-menu {
		margin-left: 0 !important;
		min-width: 50px !important;
	}
	.menu-langues-footer ul.elementor-nav-menu--dropdown a {
		border: none !important
	}

/*Acces rapides */
/*Ancien code effet au hover*/
/*
#acces-direct {
	/* transition: width 0.2s linear;
}

#acces-direct:hover{
	--width: 250px !important;
	width: 250px !important;
}

.btn-sticky  {
	width:55px;
	transition: width 0.4s linear 0s,opacity 0.1s ease-in-out 0s,visibility 0.25s ease-in-out 0s,padding 0.25s ease-in-out 0s;
}
.btn-sticky:hover {
	width:230px;
}
.btn-sticky:hover .elementor-button {
	width: 230px;
	transition: none;
}
	

.btn-sticky .elementor-button-text {
	visibility:hidden;
	white-space: nowrap;
	opacity: 0;
	z-index: 7;
	transition: all 0.4s ease-in-out;
	
}
.btn-sticky:hover .elementor-button-text{
		visibility:visible;
		margin-left: 5px;
		opacity: 1;
	
}

.btn-sticky .elementor-button-content-wrapper {
	border: 1px solid #FFFFFF78;
	padding: 3px 10px;

}

.btn-sticky .elementor-button-icon {
	font-size:32px;
	margin-top: -4px;
	
}

.btn-sticky .elementor-button-content-wrapper {
	 display: flex;
	justify-content: center;
	align-items: center;
	
} 
*/
/* Nouveau code effet au hover */
#acces-direct {
	/* transition: width 0.2s linear;*/
	--width: 250px !important;
	width: 250px !important;
}

.btn-sticky  {
	width:230px;
}

.btn-sticky .elementor-button {
	width: 230px;
	transition: none;
}
	

.btn-sticky .elementor-button-text {
	white-space: nowrap;
	z-index: 7;
	visibility:visible;
	margin-left: 5px;
	opacity: 1;
}

.btn-sticky .elementor-button-content-wrapper {
	border: 1px solid #FFFFFF78;
	padding: 3px 10px;
}

.btn-sticky .elementor-button-icon {
	font-size:32px;
	margin-top: -4px;
}

.btn-sticky .elementor-button-content-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
} 
	
/* Groupe - Timeline */
.timeline .e-n-tab-title {
	padding-bottom:30px;
}
.timeline .e-n-tabs-heading {
	border-bottom:1px solid rgba(16,126,170, .52)
}

@media screen and (max-width: 768px) {
	.timeline .e-n-tab-title {
	padding-bottom:15px;
	}
}


/* etablissements - seminaires*/
.filter-btn.active .elementor-button{
	color:var( --e-global-color-27be0bc ) !important;
	background-color:var( --e-global-color-secondary ) !important;
}




/* gabarit - carrousel images */
.carrousel-images .elementor-swiper-button {
	top:100% !important;
	bottom:0;
}
.carrousel-images .elementor-swiper-button-prev {left:0 !important;}
.carrousel-images .elementor-swiper-button-next {left:50px;}

.slider-medias .eicon-chevron-left, 
 .slider-medias .eicon-chevron-right {
	font-family: 'eliofont' !important;
}
.slider-medias .eicon-chevron-left:before {
	content: "\f106" !important;
}

.slider-medias .eicon-chevron-right:before {
	content: "\f107" !important;
}

.slider-medias .elementor-swiper-button {
	top:auto !important;
	bottom:-45px;
}
.slider-medias .elementor-swiper-button-prev {left:0 !important;}
.slider-medias .elementor-swiper-button-next {left:45px;}


/*Page destination détail*/
.map-filter {
	    filter: brightness( 100% ) contrast( 100% ) saturate( 9% ) blur( 0px ) hue-rotate( 306deg );
}

/* Home swiper - liste etablissements */
.home-swiper {
		width: 100%;
		height: 100%;
		margin-left: auto;
		margin-right: auto;
		position: relative;
		overflow: hidden;
		list-style: none;
		z-index: 1;
		padding:0px;
		--grid-column-gap: 0 !important;
}
.home-swiper .home-etablissements {
		position: relative;
		width: 100%;
		height: 100%;
		z-index: 1;
		display: flex;
		transition-property: transform;
		box-sizing: content-box;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		padding:0;
		--grid-column-gap: 0 !important;
	}
.home-swiper .home-etablissements .elementor-widget-template {
		flex-shrink: 0;
		width: 100%; /* mobile */
		height: 100%;
		position: relative;
		transition-property: transform;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center; 
		justify-content: center;
		-webkit-box-align: flex-start;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: flex-start;
}

@media screen and (min-width: 768px) {
	.home-swiper .home-etablissements .elementor-widget-template {
		width:50%;
		padding-left:0;
	}
}
@media screen and (min-width: 1024px) {
		.home-swiper .home-etablissements .elementor-widget-template {
		width:33%;
	}
	.home-swiper .home-etablissements .elementor-widget-template:first-child {
		width: 48%;
		padding-left:15%;
	}
}



.home-etablissements .elementor-widget-container {width:100%;}

/* CTA - habillage */
.etablissement .elementor-cta__content {
	border: 1px solid white;
  margin: 20px 25px;
  width: calc( 100% - 50px);
}
.etablissement .elementor-cta__button-wrapper {
	  position: absolute;
    bottom: 50px;
    left: 0;
}

/* CTA media queries - car min-height pas pris en compte dans elementor si c'est dans un modèle */
.etablissement .elementor-cta__content {
    min-height: 400px !important;;
}
@media screen and (min-width: 768px) {
	.etablissement .elementor-cta__content {
			min-height: 500px !important;;
	}
}
@media screen and (min-width: 1367px) {
	.etablissement .elementor-cta__content {
			min-height: 600px !important;
	}
}

/* CTA - Destination */
.cta-border .elementor-cta__content {
	border: 1px solid white;
  margin: 40px 25px;
  width: calc( 100% - 50px);
}

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

	.cta-hover .elementor-cta__title {
		transform: translateY(150px);
		transition: .5s;
	}
	.cta-hover:hover .elementor-cta__title {

	  transform: translateY(0px);
		
	}
	.cta-hover .elementor-cta__button-wrapper a, .cta-hover .elementor-cta__description {
		visibility: hidden;
		opacity:0;
		transition: all 0.4s ease-in-out;
	}
	.cta-hover:hover .elementor-cta__button-wrapper a, .cta-hover:hover .elementor-cta__description {
		visibility: visible;
		opacity:1;
	}
	
}

@media screen and (max-width: 1023px) {
    .cta-hover .elementor-cta:not(:hover) .elementor-cta__bg-overlay {
        background-color: #00000080 !important
    }
}

.separateur-vertical {
	display: flex;
  flex-direction: column;
  justify-content: center;
}
.separateur-vertical .elementor-widget-container {
	height:60% !important;
}

.adresse-footer a:hover span {
	color:var(--e-global-color-ae594ab ) !important;
}

/* offres spésicales */

.offres-speciales .eliophot-offer__cta_button_main:focus {
	color: var( --e-global-color-accent ) !important;
}

/* Form contact */

.form-contact .elementor-field-option {
	display: flex;
}
.form-contact .elementor-acceptance-field {
	margin-right: 10px;
}

/* galerie photos */

.galerie-photos .elementor-gallery-title {
	margin-bottom: 10px;
}

/* Général */
@media (max-width: 767px){
    .elementor-widget-container .elementor-image img {
    object-fit: cover
 }
}


