@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap');

html {
  scroll-behavior: smooth;
}

body {
	font-family: 'Lato', sans-serif;
	font-size: 18px;
	line-height: 1.4;
	color: #ffffff;
	font-weight:400;
}
strong {
	font-weight: 700;
}
a, a:visited {
    color: #27C961;
}
a:hover, a:focus {
    color: #27C961;
	text-decoration: underline;
}
ul {
    margin-bottom: 0;
    padding-left: 1em;
}
ul li {
    margin-bottom: .3em;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Lato', sans-serif;
	font-weight: 700;
	line-height: 1.4;
}
h1 {
    font-weight: 700;
    font-size: 2em;
    margin-bottom: 2em
}
h2 {
	font-size: 2em;
    margin-bottom: 1em
}

h3 {
	font-size: 1.25em;
    margin-top: 0;
    margin-bottom: 1em
}
.elementor-heading-title {
    margin-bottom: .5em;
}
img {
	max-width: 100%;
}
.elementor-button, [type=button], [type=reset], [type=submit], .elementor-kit-25 button, .elementor-kit-25 input[type="button"], .elementor-kit-25 input[type="submit"], .elementor-kit-25 .elementor-button {
	display: inline-block;
	border-radius: 50px;
	background-color: #15D1CC;
    border: 0;
    color: #ffffff;
    cursor: pointer;
    font-size: 16px;
    line-height: 1.4;
    padding: .8em 2em .8em;
	margin-top:1em;
    outline: none;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    text-decoration: none;
}
button:hover, .elementor-button:hover, button:focus, .elementor-button:focus, a.elementor-button:hover {
    background-color: #48E8E3;
    color: #ffffff;
    text-decoration: none;
}
section.elementor-top-section {
    padding-top:5em;
    padding-bottom: 7em;
}

.site-header {
    background-color: #ffffff !important;
    padding: 20px 0;
}
.site-header .site-branding {
    max-width:236px;
}
.site-header .site-header-inner {
     justify-content: flex-start!important
}
.site-header .site-header-inner > div {
        flex: 1 0 0%;
}
.site-header .main-navigation ul li {
    font-family: 'Lato', sans-serif;
    line-height: 1.4;
    padding-bottom: 0;
    text-transform: none;
    font-size: 14px;
}
.site-header .main-navigation {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    
}

.overlap-light .site-header:not(.stuck) .main-navigation div>ul:not(.cart_list)>li>a {
    color: #212429;

}
.overlap-light .site-header:not(.stuck) .main-navigation div>ul:not(.cart_list)>li>a:hover {
    text-decoration: none;
    color: #212429;
 }
 .link-underline.main-navigation div > ul:not(.cart_list) > li:hover > a {
    color: #212429;
    border-color: #15D1CC;
     text-decoration: none
 }
.site-header .lang-switch.menu-down {
    display: none;
}
.popup-holder, .popup-resource-holder, .popup-webinar-holder {
    display: none;
}
.overlap-light .site-header:not(.stuck) #mobile-menu-button svg path {
    fill:#2E3549 ;
}
.site-header .main-navigation .elementor-button {
    background-color: #15D1CC;
    padding:.5em 1em .5em;
    margin:0;
    color: #212429;
}
.site-header .main-navigation .menu-menu-principal-container, .site-header .main-navigation .menu-menu-principal-french-container {
    padding-left: 2em;
    padding-right: 2em;
}
.site-header .main-navigation .elementor-button:hover {
    background-color: #A1FFFA;
}
/*.site-header .header-menu {
    padding-left: 2em;
}*/
.lang-switch {
    display: none;
    position: absolute;
    text-align: center;
    right: 0;
    width: 140px;
    background: #fff;
    padding: 15px;
    z-index: 100;
    top: 52px;
    box-shadow: 0 1px 1px rgb(0 0 0 / 11%), 0 2px 2px rgb(0 0 0 / 11%), 0 4px 4px rgb(0 0 0 / 11%), 0 6px 8px rgb(0 0 0 / 11%), 0 8px 16px rgb(0 0 0 / 11%);
}
.lang-switch__title {
    color: #212429;
    margin: 0;
    font-weight: 600;
    font-size: 16px;
}
.site-header .menu-contact {
    display: flex;
    align-items: center;
    display: none
}
.site-header .menu-contact .menu-secondary {
    padding-left: 15px;
    padding-right: 15px;
}
#mobile-navigation ul li {
    font-family: 'Lato', sans-serif;
}
#mobile-navigation ul li a {
    color: #2E3549;
}
.menu-secondary-mobile {
    display: none;
}
.bloc-hero {
    position: relative;
}
.bloc-hero .bloc-lottie {
    max-width: 300px; 
    max-height: 300px;
    position: absolute;
    right: 0;
    top: 60%;
    z-index: 1;

}

.roll-bastille img {
    position: relative;
    transform: rotate(0);
    animation: 4s linear infinite anim-rotate;
    -webkit-animation: 4s linear infinite anim-rotate;
}
@keyframes anim-rotate {
    0%{
        transform: rotate(0);
    }
    
    100%{
       transform: rotate(360deg);
    }
}
@-webkit-keyframes anim-rotate {
    0%{
        transform: rotate(0);
    }
    
    100%{
       transform: rotate(360deg);
    }
}
.site-footer {
    padding-top: 5em;
    background-color: #1E232D;
    color: #EAEBED;
}
.site-footer .widgets .widget a {
    color: #EAEBED;
}
.site-footer .widgets .widget a:hover, .site-footer .widgets .widget a:focus {
    color: #27C961;
    text-decoration: none;
}
.site-footer .menu-item-357 img {
    max-width: 35px;
}
input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], 
input[type=number], input[type=password], input[type=range], input[type=search], input[type=tel], input[type=text], input[type=time], 
input[type=url], input[type=week], .fancybox-content textarea, .fancybox-content select {
    border: 1px solid #EAEBED;
    color: #4f4c4a;
    font-family: 'Lato', sans-serif;
}
.fancybox-content h3 {
    color: #27C961;
}
.fancybox-content .wpcf7-not-valid-tip {
    font-size: .8em;
}
.fancybox-button svg path {
    fill: #27C961;
}
.fancybox-slide--html .fancybox-button.fancybox-close-small {
    background-color: #EAEBED;
    transition: background-color .2s;
}
.fancybox-slide--html  .fancybox-button.fancybox-close-small:hover {
    background-color: #ffffff !important;
}
.fancybox-content .SumoSelect > .CaptionCont {
    border: 1px solid #EAEBED;
    color: #4f4c4a;
}
.fancybox-content {
	 color:#4f4c4a
}
.wpcf7-validation-tip, .wpcf7-response-output, .screen-reader-response, .wpcf7-form-control-wrap, .use-floating-validation-tip {
    color:#4f4c4a !important;
}
@media (min-width:768px) {
    h1, h2 {
        font-size: 2.7em;
    }
    .bloc-hero .bloc-lottie {
        max-width: 600px; 
        max-height: 600px;
        top: 24%;
    }
    .site-header .menu-contact {
        display: flex;
    }

}
@media (min-width:992px) {
    .bloc-hero .bloc-lottie {
        max-width: 850px; 
        max-height: 850px;
        right: inherit;
        left: calc(50% - 306px);
        top: 47%;
    }
    
}

/* TEOWeb 2024-05*/
.elementor-1911 .elementor-element.elementor-element-08629fe:not(.elementor-motion-effects-element-type-background),
.elementor-1911 .elementor-element.elementor-element-08629fe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-position-x: center!important;
    background-position-y: 61px!important;
}
#modal {
	display: none;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    position: fixed;
    background: rgba(0,0,0,0.7);
    align-items: center;
	justify-content: center;
}
#modal .teo-team-link,
#modal .teo-team-popin {
	display:none;
}
.modal-content {
    background-color: #2E3549;
    margin: 15% auto;
    padding: 20px;
    border: none;
    width: 90%;
	border-radius:20px;
	max-width:960px;
	position: relative;
}

.close {
	color: #fff;
    float: right;
    font-size: 28px;
    font-weight: bold;
    display: flex;
    width: 35px;
    height: 35px;
    background-color: #15D1CC;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
	position: absolute;
    right: 5px;
    top: 5px;	
	z-index:9999;
}

.close:hover,
.close:focus {
    text-decoration: none;
    cursor: pointer;
}

.teo-header-section {
    padding-bottom: 0!important;
}
/*teo-team-link*/
/*teo-team-popin*/
/*teo-close-popin*/
.teo-close-popin,
.teo-team-link,
.teo-team-popin {
	cursor:pointer;
}
div.teo-txt-truncate p {
	opacity:0;
	padding:0 0.8em;
}
#modal div.teo-txt-truncate p {
	opacity:1;
	font-size: 16px;
	padding:0 2em;
	line-height: 1.4;
}
#modal img {
    width: 150px;
    height: auto;
}

@media (max-width:768px) {
	.teo-title-popin {margin-bottom:0!important}
	.teo-content-section{padding-top:2em!important}
	.elementor-1911 .elementor-element.elementor-element-08629fe:not(.elementor-motion-effects-element-type-background),
	.elementor-1911 .elementor-element.elementor-element-08629fe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-position-x: center!important;
		background-position-y: 0px!important;
	}	
	.teo-portrait {margin-bottom:0!important}
	.modal-content {
		background-color: #2E3549;
		margin: 15px auto;
		padding: 0;
		border: none;
		width: 350px;
		border-radius:20px;
		max-width:90%;
	}	
	#modal div.teo-txt-truncate p {
		opacity: 1;
		font-size: 1.04em;
		padding: 0 1em;
		line-height: 1.4;
		/*overflow:auto;
		height:70vh;*/
	}	
	#modal img {
    	/*width: 100px;
    	height: auto;*/
		display:none;
	}
	.teo-photo {
		margin: 10px 0 0 0!important;
	}	
	.teo-name {
    	margin: 10px 0 0 0!important;
	}
	#modal {
		align-items: flex-start;
	}	
}
/* modif menu suite ajout OUR TEAM */
.main-navigation ul li {
    margin: 0 15px -10px 0;
}
.teo-menu-link.current-menu-item a {
	border-color:transparent!important;	
}
li.teo-menu-link.current-menu-item:hover a {
	border-color:#15D1CC!important;	
}