@font-face {
  font-family: Avenir;
  src: url(./fonts/AvenirLTStd-Book.otf);
  font-weight: 400;
}

@font-face {
  font-family: Avenir;
  src: url(./fonts/AvenirLTStd-Roman.otf);
  font-weight: 500;
}

@font-face {
  font-family: Avenir;
  src: url(./fonts/AvenirLTStd-Black.otf);
  font-weight: 900;
}

*{
	padding:0px;
	border:0px;
	margin:0px;
}

html{
width:100%;
scroll-behavior: smooth;
}

.main_width{
width:85vw;
margin:0 auto;
}


body{
font-family: 'Avenir', sans-serif;
font-weight:500;
width:100%;
}


/* *********************** COMMON *********************** */

p{
color:#0F0F0F;
line-height:24px;
font-size:17px;
}

p+p{
	margin-top: 15px;
}

h1{
color:#0F0F0F;
text-transform: uppercase;
font-size: 60px;
font-weight: 900;
line-height: 80px;
margin-bottom: 30px;
}

h2{
background-color: #FFCC00;
width: fit-content;
padding: 5px 10px;
text-transform: uppercase;
font-size: 36px;
font-weight: 900!important;
line-height: 46px;
margin-bottom: 30px;
box-sizing: border-box;
}



.button{
display: block;
width: fit-content;
color: #0F0F0F;
padding: 7px 40px 7px 12px;
margin: 30px 0 0 0;
font-weight: 700;
font-size: 16px;
text-decoration:none;
transition:all 0.3s;
position: relative;
}

.button:after{
content:'';
position: absolute;
right: 0;
width: 20px;
height: 20px;
background-image: url(images/button-arrow-yellow.svg);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}

.button:hover{
padding: 7px 35px 7px 12px;
}

p a{
color:#606060;
text-decoration:underline;
transition:all 0.3s;
}

p a:hover{
color:#FFCC00;
}



/* *********************** HEADING MSG*********************** */
#heading{
width:100%;
text-align:center;
background-color:#0F0F0F;
z-index: 99;
}

#heading p{
color: #fff;
margin: 0;
padding: 0 70px;
box-sizing: border-box;
}



/* *********************** BANNER / MENU *********************** */
#banner{
width:100%;
transition: all 0.4s;
background-color: transparent;
position: fixed;
left: 0;
top: 0;
padding: 20px 0;
z-index: 100;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
}

#banner .main_width{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#banner .logo{
	width: 220px;
	max-width: 50vw;
	height: auto;
	display: block;
}
/*
html[data-scroll='0'] #banner .home-logo{
	opacity: 0;
}
*/
#banner .logo img{
	width: 100%;
	height: auto;
}

#banner .logo img.positif{
	display: none;
}

#banner .menu-links{
	cursor: pointer;
}

.menu-links.open{
flex: 1;
text-align: right;
margin-top: 10px;
}

.menu-links.open img{
width: 28px; 
height: 28px;
}

.menu-links.close{
padding: 35px 0 0 20px;
text-align: left;
}

.menu-links.close img{
width: 20px; 
height: 20px;
}

.burger{
position: fixed;
top: 0;
right: -400px;
width: 350px;
max-width: 100%;
height: 100vh;
background-color: #0F0F0F;
padding-top: 25px;
margin: 0;
-webkit-box-shadow: 0px 2px 15px 0px #363636;
box-shadow: 0px 2px 15px 0px #363636;
transition: all 0.6s;
overflow-y: auto;
z-index: 100;
}

.burger.open{
right: 0;
}

.burger li:hover > ul{
display: none;
}

.burger li:hover > ul li{
margin-bottom: 3px;
}

.burger li:hover > ul li:last-of-type{
margin-bottom: 0;
}

.burger li:hover > ul a{
padding: 0 20px;
}

.burger ul {
text-align: left;
padding: 25px 0 25px;
list-style: none;
}

.burger ul li > a{
line-height: 64px;
display: block;
position: relative;
color: #fff;
padding: 0 20px;
font-size: 21px;
text-decoration: none;
}
.burger ul  li > a:after{
content: " ";
position: absolute;
width: 20px;
height: 20px;
right: 50px;
top: 18px;
opacity: 0;
transition: all 0.4s;
}
.burger ul li > a:hover:after{
right: 20px;
opacity: 1;
}
.burger ul li > a.selected, .burger ul li > a:hover{
color: #FFCC00;
} 
.burger ul li > a:hover{
color: #FFCC00!important;
}

#banner .sub_menu{
	display: none;
}

#banner .langues{
position: absolute;
right: 0;
z-index: 100;
top: 0;
background-color: #606060;
padding: 4px 10px 6px;
border-bottom-left-radius: 13px;
}

#banner .langues a{
color: #fff;
transform: uppercase;
font-size: 14px;
padding: 0 5px 0 9px;
line-height: 16px;
text-decoration: none;
display: inline-block;
}

#banner .langues a.selected{
	font-weight: 900;
}

#banner .langues a+a{
	border-left: 1px solid #fff;
}

html:not([data-scroll='0']) #banner{
background-image: url(images/home-background.jpg);
animation-name: banner;
animation-duration: 1s;
}

@keyframes banner {
  from {top: -200px;}
  to {top: 0;}
}

/* *********************** PAGES *********************** */

/* ***** HOME ***** */
#home .c1{
	background-image: url(images/home-background.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	position: relative;
	height: 800px;
}

#home .c1 .content{
	text-align: center;
}

#home .c1 .content svg{
	width: 350px;
	max-width: 85vw;
	height: auto;
	margin: 250px auto 50px;
}

#home .c1 h1{
	text-align: center;
	color: #fff;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 20px;
}

#home .c1 h1 .separator{
	color: #FFCC00;
	position: relative;
	top: -3px;
	padding: 0 8px;
}

#home .c1 .scroll{
	position: absolute;
    bottom: 150px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#home .c1 .scroll img{
	width: 50px;
	height: auto;
}

@keyframes scroll_animation { 
	from { transform:translateY(20px) translateX(-50%); } 
	to { transform:translateY(0) translateX(-50%); }  
}

#home .c1 .contact-intro{
	position: absolute;
	bottom: 20px;
	right: 0;
	width: 100%;
	background-image: url(images/home-intro-deco.png);
	background-size: 1800px;
	background-position: right center;
	background-repeat: no-repeat;
	height: 270px;
}

#home .c1 .contact-intro .main_width{
	display: flex;
	height: 100%;
}

#home .c1 .contact-intro a{
	color:#0F0F0F;
	font-size: 18px;
	padding-left: 25px;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: left center;
	background-image: url(images/icon-mail.svg);
	align-self: flex-end;
	margin-bottom: 55px;
	text-decoration: none;
}

#home .c1 .contact-intro a+a{
	margin-left: 20px;
	padding-left: 20px;
	background-size: 13px;
	background-position: left 3px center;
	background-image: url(images/icon-tel.svg);
}

@media screen and (min-width: 2400px) {
	#home .c1 .contact-intro{
		background-image: none;
	}
	#home .c1 .contact-intro a{
		color: #fff;
	}
}

#home h2.c2-title{
	margin-top: 100px;
}

#home .c2{
	margin: 0 auto 100px;
}

#home .c2 .item{
	with: 100%;
	max-width: 550px;
	margin: 0 auto 50px;
	height: 600px;
	position: relative;
}

#home .c2 .item .image{
	width: 100%;
	position: relative;
	height: 100%;
}

#home .c2 .item .image:after{
	content:'';
	position: absolute;
	width: 40%;
	height: 300px;
	right:0;
	bottom: 50px;
	background-image: url(images/photo-deco-yellow.png);
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: contain;
	transition: all 0.6s;
}

#home .c2 .item:hover .image:after{
	opacity: 0;
}

#home .c2 .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .c2 .item .image+a{
	position: absolute;
    top: 45px;
    left: 0;
    margin-top: 10px;
    text-align: left;
    color: #0F0F0F;
    font-size: 29px;
    line-height: 38px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    padding: 0 7%;
    font-weight: 900;
    box-sizing: border-box;
    color: #fff;
}

#home .c2.c2-de .item .image+a{
	font-size: 20px;
	line-height: 31px;
}

#home .c2.c2-nl .item .image+a{
	font-size: 21px;
	line-height: 27px;
}

#home .c2 .item .image+a:hover{
	color: #FFCC00;
}	

#home .c2 .links{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 86%;
	height: auto;
	opacity: 0;
	transition: all 0.7s;
}

#home .c2 .item:hover .links{
	opacity: 1;
}

#home .c2 .links a{
	font-size: 17px;
	text-transform: uppercase;
	padding: 20px 10px;
	border-bottom: 1px solid #fff;
	display: block;
	width: 100%;
	box-sizing: border-box;
	color: #fff;
	text-decoration: none;
	transition: all 0.6s;
}

#home .c2 .links a:first-of-type{
	border-top: 1px solid #fff;
}

#home .c2 .links a:hover{
	color: #FFCC00;
}

#home .video_container{
	margin: 0 auto 100px;
	width: 100%;
	max-width: 800px;
}

#home .video_container iframe{
	width: 100%;
	height: 300px;
}

#home .c3{
	margin-bottom: 150px;
}

#home .c3 .intro{
	display: block;
	width: 100%;
	height: 400px;
	background-image: url(images/home-c3-deco.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	margin-bottom: 50px;
}

#home .c3 .intro.intro-en{
	background-image: url(images/home-c3-deco-en.png);
}

#home .c3 .intro.intro-es{
	background-image: url(images/home-c3-deco-es.png);
}

#home .c3 .intro.intro-de{
	background-image: url(images/home-c3-deco-de.png);
}

#home .c3 .intro.intro-nl{
	background-image: url(images/home-c3-deco-nl.png);
}

#home .c3 .item{
	border-bottom: 1px solid #F4F4F4;
	padding: 20px 30px;
	box-sizing: border-box;
	position: relative;
}

#home .c3 .item:after{
	content:'01';
	font-size: 11px;
	color: #757575;
	position: absolute;
	top: 27px;
	left: 0;
}

#home .c3 .item:nth-of-type(2):after{
	content:'02';
}

#home .c3 .item:nth-of-type(3):after{
	content:'03';
}

#home .c3 .item:first-of-type{
	border-top: 1px solid #F4F4F4;
}

#home .c3 .item .title{
	width: 100%;
	max-width: 550px;
	margin: 0 auto 10px;
}

#home .c3 .item .title h3{
	font-weight: 500;
	font-size: 24px;
	line-height: 40px;
	text-transform: uppercase;
}

#home .c3 .item .title h3 a{
color:#606060;
text-decoration:underline;
transition:all 0.3s;
}

#home .c3 .item .title h3 a:hover{
color:#FFCC00;
}

#home .c3 .item .content{
	width: 100%;
	max-width: 550px;
	margin: 0 auto;
}

#home .c3 .item .content p{
	font-size: 16px;
	text-align: left;
}

#home .c4{
	margin-bottom: 150px;
	position: relative;
}
	
#home .c4 .content{
	width: 100%;
	max-width: 550px;
	margin: 0 auto;
	text-align: left;
}
	
#home .c4 .content h2{
	font-size: 23px;
    line-height: 33px;
}

#home .c4 .images{
	width: 100%;
	margin: 0 0 0 auto;
	position: relative;
}

#home .c4 .images .background{
	display: none;
}

#home .c4 .images .image{
	width: 100%;
	height: auto;
	margin: 50px auto 0;
}

#home .c4 .images .image img{
	width: 100%;
	height: auto;
}

.deco-background>.background{
	position: fixed;
	left: -300px;
	bottom: 20vh;
	width: 15vw;
	height: 400px;
	z-index: -1;
	background-image: url(images/home-deco-background.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	opacity: 0;
	transition: all 0.4s;
}

#home .c5{
	text-align: center;
	background-image: url(images/realisations-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

#home .c5 .realisations{
	text-align: left;
	display: inline-block;
	width: 100%;
}

#home .c5 .realisations>a{
	display: block;
	margin: 30px 0;
	text-decoration: none;
}

#home .c5 .realisations>a .image{
	display: block;
	width: 80%;
	height: 150px;
	margin: 0 auto 20px;
	overflow: hidden;
}

#home .c5 .realisations>a .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .c5 .realisations>a .content{
	display: block;
	width: 80%;
	margin: 0 auto;
}

#home .c5 .realisations>a .content .title{
    font-size: 23px;
    line-height: 30px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    font-weight: 900;
    box-sizing: border-box;
}

#home .c5 .realisations>a .content .date{
	text-transform: uppercase;
	font-size: 12px;
	margin: 0;
}

#home .c5 .realisations>a .content .button{
	margin-top: 5px;
	padding-left: 0;
}

#home .c5>.content{
	background-color: #ffcc00;
	text-align: center;
	padding-bottom: 50px;
}

#home .c5>.content img{
	width: 280px;
	height: auto;
	margin: 50px auto;
}

#home .c5>.content .button{
	color:#fff;
	margin: 0 auto;
}

#home .c5>.content .button:after{
background-image: url(images/button-arrow-white.svg);
}

/* ***** QUI SOMMES NOUS ***** */
#qui-sommes-nous .c1{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#qui-sommes-nous .c1 .content{
	text-align: center;
}

#qui-sommes-nous .c1 .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#qui-sommes-nous .c1 h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#qui-sommes-nous .c1 .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#qui-sommes-nous .c1 .scroll img{
	width: 40px;
	height: auto;
}

.split-div{
	text-align: center;
	padding: 30px 0;
	margin-bottom: 100px;
}

.split-div .image{
	width: 100%;
	max-width: 550px;
	margin: 30px auto;
	height: 400px;
	display: inline-block;
	vertical-align: top;
}

.split-div .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#durable.partenaires .split-div .image img{
	object-position: top center;
}

.split-div .content{
	width: 100%;
	max-width: 550px;
	margin: 30px auto;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
}

.split-div .content .part{
	text-align: left;
}

.split-div .content .part+.part{
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #F4F4F4;
}

.split-div .content h2{
	font-weight: 500;
    font-size: 30px;
    line-height: 43px;
    text-transform: uppercase;
	color: #0F0F0F;
	margin-bottom: 10px;
}

.split-div .content h3{
	font-weight: 500;
    font-size: 18px;
    line-height: 26px;
    text-transform: uppercase;
	color: #0F0F0F;
	margin-bottom: 10px;
}

.split-div .content p+h3{
	margin-top: 20px;
}

.split-div .content p{
	text-align: justify;
}

.split-div .content .button+p{
	margin-top: 30px;
}

.split-div .content ul{
	list-style: none;
	margin: 10px 0;
}

.split-div .content ul li, #services .deco-liste li{
	font-size: 16px;
	color: #606060;
	line-height: 20px;
	margin-bottom: 10px;
	padding-left: 15px;
	position: relative;
}

.split-div .content ul li .title{
	font-weight: 600;
}

.split-div .content ul li:after{
	content: '';
    width: 8px;
    height: 8px;
    border-radius: 10px;
    background-color: #FFCC00;
    position: absolute;
    left: 0;
    top: 3px;
}

#qui-sommes-nous .c3{
margin-bottom: 100px;
text-align: center;
}

#qui-sommes-nous .c3>div{
display: block;
width: 100%;
max-width: 550px;
margin: 0 auto;
text-align: center;
}

#qui-sommes-nous .c3 h2{
font-size: 38px;
line-height: 45px;
margin-bottom: 20px;
text-align: left;
background-color: transparent;
color: #FFCC00;
padding: 0;
}

#qui-sommes-nous .c3 p{
line-height: 28px;
text-align: justify;
font-style: italic;
position: relative;
text-align: left;
}

#qui-sommes-nous .c3 p:last-of-type:after{
	content:'';
	width:70px;
	height: 80px;
	background-image: url(images/text-deco.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	right: -20px;
	bottom: -20px;
	z-index: -1;
}

#qui-sommes-nous .c3>div+div{
margin-top: 50px;
}

#qui-sommes-nous .c3 img.profil{
	width: 100%;
	height: auto;
	margin: 0 auto 30px;
	max-width: 300px;
}

#qui-sommes-nous .link-image a{
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
}

#qui-sommes-nous .link-image img{
	transition: all 0.4s;
}

#qui-sommes-nous .link-image:hover img{
	transform: scale(1.1);
}

#qui-sommes-nous .link-image a:after{
    content: '';
	width: 50px;
	height: 50px;
	background-image:url(images/icon-voir.svg);
	background-size: contain;
	background-repeat: no-repeat;
	backgroun-position: center;
	opacity: 0;
	transition: all 0.4s;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

#qui-sommes-nous .link-image:hover a:after{
	opacity: 1;
}





#durable .content .link-image{
	width: 100%;
	height: 400px;
	background-color: #F4F4F4;
	margin-top: 30px;
}

#durable .content .link-image a{
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
}

#durable .content .link-image img{
	transition: all 0.4s;
	width: auto;
	height: 100%;
}

#durable .content .link-image:hover img{
	transform: scale(1.1);
}

#durable .content .link-image a:after{
    content: '';
	width: 50px;
	height: 50px;
	background-image:url(images/icon-voir.svg);
	background-size: contain;
	background-repeat: no-repeat;
	backgroun-position: center;
	opacity: 0;
	transition: all 0.4s;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
}

#durable .content .link-image:hover a:after{
	opacity: 1;
}

#durable .content .link-image a:before{
	content:'';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background-color: #9f9f9f5e;
	opacity: 0;
	transition: all 0.4s;
}

#durable .content .link-image:hover a:before{
	opacity: 1;
}

#qui-sommes-nous .c4.split-div .image{
	height: 700px;
}

#qui-sommes-nous .c4.split-div .image img{
	object-position: top;
}

/* ***** DURABLE ***** */
#durable .c1{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#durable .c1 .content{
	text-align: center;
}

#durable .c1 .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#durable .c1 h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#durable .c1 .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#durable .c1 .scroll img{
	width: 40px;
	height: auto;
}

#durable .c2{
	margin-bottom: 50px;
	text-align: center;
}

#durable .c2 p{
	max-width: 600px;
	margin: 0 auto;
	text-align: justify;
}

#durable .c3 .image{
	position: relative;
}

#durable .c3 .image.durable{
	margin-bottom: 200px;
}

#durable .c3 .image.durable:after{
	content:'';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -165px;
	width: 150px;
	height: 150px;
	background-image: url(images/icon-green.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* ***** SERVICES ***** */
#services .c1{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#services .c1 .content{
	text-align: center;
}

#services .c1 .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#services .c1 h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#services .c1 .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#services .c1 .scroll img{
	width: 40px;
	height: auto;
}

#services .c2{
	margin: 150px auto;
}

#services .c2 .item{
	with: 100%;
	max-width: 550px;
	height: 600px;
	margin: 0 auto 50px;
	position: relative;
}

#services .c2 .item .image{
	width: 100%;
	position: relative;
	height: 100%;
}

#services .c2 .item .image:after{
	content:'';
	position: absolute;
	width: 40%;
	height: 300px;
	right:0;
	bottom: 50px;
	background-image: url(images/photo-deco-yellow.png);
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: contain;
	transition: all 0.6s;
}

#services .c2 .item .image:before{
	content:'';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #0F0F0F;
	opacity: 0.3;
}

#services .c2 .item:hover .image:after{
	opacity: 0;
}

#services .c2 .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#services .c2 .item .image+.title{
	position: absolute;
    top: 45px;
    left: 0;
    margin-top: 10px;
    text-align: left;
    color: #fff;
    font-size: 29px;
    line-height: 38px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    padding: 0 7%;
    font-weight: 900;
    box-sizing: border-box;
	transition: all 0.6s;
}

#services .c2 .item .image+.title{
font-size: 21px;
line-height: 27px;
}

#services .c2 .item:hover .image+.title{
	color: #FFCC00;
}

#services.single-service .c2{
	width: 100%;
	max-width: 550px;
	margin: 0 auto;
}

#services.single-service .c2 h2{
	width: 100%;
}

#services.single-service .c2 .content{
	width: 100%;
}

#services.single-service .c2 .content p{
    line-height: 29px;
}

#services.single-service .c4+.c2{
	margin: 150px auto;
}

#services .c5{
	width: 100%;
	max-width: 550px;
	margin: 150px auto;
}

#services.single-service .c5 h2{
	width: 100%;
}

#services.single-service .c5 .content{
	width: 100%;
}

#services.single-service .c5 .content p{
    line-height: 29px;
}

#services.single-service .c6{
	text-align: center;
}

#services.single-service .c6 h2{
	font-weight: 500;
    font-size: 24px;
    line-height: 36px;
    text-transform: uppercase;
    color: #0F0F0F;
    margin-bottom: 10px;
	background-color: transparent;
	padding: 0;
}

#services.single-service .c6 h2 a{
	color: #606060;
    text-decoration: underline;
    transition: all 0.3s;
}

#services.single-service .c6 h2 a:hover{
	color: #FFCC00;
}

#services.single-service .c6 .filter{
	margin: 50px 0 0;
}

#services.single-service .c6 .filter a{
	display: inline-block;
    color: #fff;
    margin: 0 10px;
    background-color: #606060;
    padding: 5px 10px;
    font-size: 15px;
    text-decoration: none;
}

#services.single-service .c6 .filter a.active{
    background-color: transparent;
    color: #606060;
    border: 1px solid #606060;
}

#services.single-service .c6 .demo-gallery{
    margin-top: 50px;
}

#services.single-service .c6 .demo-gallery a{
    display: inline-block;
    width: 100%;
	max-width: 300px;
    margin: 0 auto 30px;
    text-decoration: none;
}

#services.single-service .c6 .demo-gallery a .img{
	width: 100%;
    height: 200px;
	overflow: hidden;
}

#services.single-service .c6 .demo-gallery a .img img{
	width: 100%;
    height: 100%;
    object-fit: cover;
	transition: all 0.4s;
}

#services.single-service .c6 .demo-gallery a:hover .img img{
	transform: scale(1.1);
}

#services.single-service .c6 .demo-gallery .filtre{
	display: none;
}

#services.single-service .c6 .demo-gallery .description{
	display: block;
    width: 100%;
    color: #0F0F0F;
    font-weight: 500;
    font-size: 16px;
    text-decoration: none;
    transition: all 0.3s;
    position: relative;
    margin-top: 0;
    padding: 10px 10px;
    box-sizing: border-box;
    text-align: left;
}

#services .deco-liste{
	position: relative;
	list-style: none;
}

#services .deco-liste:before{
	content:'';
	position: absolute;
	left: 5px;
	top: 0;
	width: 3px;
	height: 100%;
	background-color: #F4F4F4;
}

#services .deco-liste li{
	position: relative;
}

#services .deco-liste li:after {
	content: '';
	width: 12px;
	height: 12px;
	border-radius: 10px;
	background-color: #FFCC00;
	position: absolute;
	left: 0;
	top: 3px;
}

#services .deco-liste li{
	margin-bottom: 26px;
	padding-left: 22px;
}

#services .encadres_techniques .background{
	width: 70%;
	max-width: 2200px;
	min-width: 85vw;
	margin: 0 auto 30px;
    height: 400px;
    position: relative;
    background-image: url(images/encadres-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top -50px center;
	opacity: 0.7;
}

#services .encadres_techniques h2{
	text-align: center;
}

#services .encadres_techniques .encadre{
background-color: #d7d7d7;
padding: 20px 20px;
position: relative;
cursor: pointer;
}

#services .encadres_techniques .encadre+.encadre{
margin-top: 20px;
}

#services .encadres_techniques .encadre .infos{
font-size: 17px;
line-height: 26px;
opacity: 0;
height: 0;
overflow: hidden;
transition: all 0.6s;
transform: translateY(-10px);
text-align: center;
}

#services .encadres_techniques .encadre.open .infos{
opacity: 1;
height: fit-content;
transform: translateY(0);
margin-top: 30px;
padding-bottom: 20px;
}

#services .encadres_techniques .encadre .content{
display: block;
width: 100%;
max-width: 550px;
margin: 0 auto 30px;
text-align: left;
}

#services .encadres_techniques .encadre .image{
display: block;
width: 100%;
max-width: 300px;
}

#services .encadres_techniques .encadre .image img{
width: 100%;
height: auto;
}

#services .encadres_techniques .encadre .image img+img{
margin-top: 20px;
}

#services .encadres_techniques .encadre .arrow{
position: absolute;
right: 9px;
top: 16px;
width: 30px;
height: 30px;
background-size: 100%;
background-repeat: no-repeat;
background-position: center;
background-image: url(images/encadres-arrow.svg);
transform: rotate(0);
transition: all 0.6s;
}

#services .encadres_techniques .encadre.open .arrow{
	transform: rotate(180deg);
}

/* ***** DURABILITE ***** */
#durabilite .c1{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#durabilite .c1 .content{
	text-align: center;
}

#durabilite .c1 .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#durabilite .c1 h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#durabilite .c1 .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#durabilite .c1 .scroll img{
	width: 40px;
	height: auto;
}

#durabilite .c2{
	margin: 150px auto;
}

#durabilite .c2 .item{
	with: 100%;
	max-width: 550px;
	height: 600px;
	position: relative;
	margin: 0 auto 50px;
}

#durabilite .c2 .item .image{
	width: 100%;
	position: relative;
	height: 100%;
}

#durabilite .c2 .item .image:after{
	content:'';
	position: absolute;
	width: 40%;
	height: 300px;
	right:0;
	bottom: 50px;
	background-image: url(images/photo-deco-yellow.png);
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: contain;
	transition: all 0.6s;
}

#durabilite .c2 .item .image:before{
	content:'';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #0F0F0F;
	opacity: 0.3;
}

#durabilite .c2 .item:hover .image:after{
	opacity: 0;
}

#durabilite .c2 .item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#durabilite .c2 .item .image+.title{
	position: absolute;
    top: 45px;
    left: 0;
    margin-top: 10px;
    text-align: left;
    color: #fff;
    font-size: 29px;
    line-height: 38px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    padding: 0 7%;
    font-weight: 900;
    box-sizing: border-box;
	transition: all 0.6s;
}

#durabilite .c2 .item:hover .image+.title{
	color: #FFCC00;
}

/* ***** NEWS ***** */
#news .intro{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#news .intro .content{
	text-align: center;
}

#news .intro .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#news .intro h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#news .intro .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#news .intro .scroll img{
	width: 40px;
	height: auto;
}

#news .c1{
	margin: 0 auto;
}

#news .news-item {
    width: 100%;
	max-width: 550px;
	margin: 0 auto 50px;
	height: 280px;
	position: relative;
}

#news .news-item .image{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#news .news-item .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#news .news-item:hover img{
	transform: scale(1.1);
}

#news .news-item .content{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: fit-content;
	padding: 40px 30px 10px;
	box-sizing: border-box;
	background: linear-gradient(0deg, rgba(0,0,0,0.5382528011204482) 57%, rgba(0,0,0,0) 100%);
}

#news .news-item .content h2{
	font-size: 19px;
    line-height: 26px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    font-weight: 900;
    box-sizing: border-box;
	color: #fff;
	margin: 0;
	background-color: transparent;
	padding: 0;
}

#news .news-item .content .button{
    margin-top: 5px;
    padding-left: 0;
	color: #fff;
}

#news .photo-item {
    width: 100%;
	max-width: 550px;
	margin: 0 auto 50px;
	height: auto;
	position: relative;
}

#news .photo-item a:after{
    content: '';
	width: 50px;
	height: 50px;
	background-image:url(images/icon-voir.svg);
	background-size: contain;
	background-repeat: no-repeat;
	backgroun-position: center;
	opacity: 1;
	transition: all 0.4s;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

#news .photo-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#news .photo-item a:after{
    content: '';
	width: 50px;
	height: 50px;
	background-image:url(images/icon-voir.svg);
	background-size: contain;
	background-repeat: no-repeat;
	backgroun-position: center;
	opacity: 0;
	transition: all 0.4s;
	position: absolute;
	top: 115px;
	left: 50%;
	transform: translateX(-50%);
}

#news .photo-item:hover a:after{
	opacity: 1;
}

#news .photo-item img{
	width: 100%;
	height: 280px;
	object-fit: cover;
	transition: all 0.4s;
}

.pswp p{
	color: #fff;
}

#news .photo-item a{
	text-decoration: none;
}

#news .photo-item .description{
	display: block;
    background-color: #ffcc008f;
    width: 100%;
    padding: 20px 20px 20px 40px;
    box-sizing: border-box;
	transition: all 0.4s;
	position: relative;
	top: -10px;
	z-index: -1;
}

#news .photo-item .description:after{
	content: '';
	background-image: url(images/icon-infos.svg);
	background-size: 18px;
	background-repeat: no-repeat;
	background-position: center;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 15px;
	top: 23px;
}

#news .photo-item:hover .description{
    background-color: #ffcc00;
}

#news .photo-item .description p{
    color: #fff;
}

#news .photo-item a:before {
    content: '';
    position: absolute;
    width: 40%;
    height: 280;
    right: 0;
    top: 0;
    background-image: url(images/photo-deco-yellow.png);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: contain;
    transition: all 0.6s;
	z-index: 1;
}

#news .photo-item a:hover:before {
    opacity: 0;
}

#news .microdata{
	display: none;
}

#news .intro.single-news-intro h1{
}

#news .c2{
	text-align: center;
}

#news .c2 .content{
	max-width: 800px;
	margin: 0 auto;
	text-align: left;
	color:#0F0F0F;
	line-height:24px;
	font-size:17px;
}

#news .c2 .demo-gallery{
	max-width: 800px;
	margin: 100px auto 0;
}

#news .c2 .demo-gallery .photo_principale{
	width: 100%;
	height: 300px;
	max-width: 450px;
	margin: 0 auto 10px;
	overflow: hidden;
	display: block;
}

#news .c2 .demo-gallery img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.4s;
}

#news .c2 .demo-gallery a:hover img{
	transform: scale(1.1);
}

#news .c2 .demo-gallery a{
	display: inline-block;
	width: 30%;
	margin: 0 1% 10px;
	height: 200px;
	overflow: hidden;
}

#news .c2 .items_nav{
	margin: 50px 0 0;
}

#news .c2 .items_nav a{
	display: block;
	width: fit-content;
	color: #fff;
	margin: 0 auto 20px;
	background-color: #606060;
	padding: 5px 10px;
	font-size: 15px;
	text-decoration: none;
}

#news .c2 .items_nav a.liste{
	background-color: transparent;
    color: #606060;
    border: 1px solid #606060;
}

#news .c2 .related{
	margin-top: 100px;
}

#news .c2 .related h2{
	font-weight: 500;
    font-size: 24px;
    line-height: 36px;
    text-transform: uppercase;
    color: #0F0F0F;
    margin-bottom: 30px;
}

#news .c2 .related h3{
	font-size: 19px;
    line-height: 26px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    width: 100%;
    font-weight: 900;
    box-sizing: border-box;
    color: #fff;
    margin: 0;
}

#news .c2 .related .news-item{
	display: block;
	width: 100%;
	max-width: 550px;
	margin: 0 auto 20px;
}

#news.jobs .c2_c1 a.pdf{
	display: block;
    width: 100%;
	max-width: 450px;
    height: 300px;
    border: 3px solid #FFCC00;
    position: relative;
    box-sizing: border-box;
	margin: 30px auto 0;
}

#news .c2 a.pdf+.demo-gallery{
	margin-top: 30px;
}

#news.jobs .c2_c1 a.pdf:after{
    content: '';
	width: 50px;
	height: 50px;
	background-image:url(images/icon-voir-yellow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	backgroun-position: center;
	opacity: 0;
	transition: all 0.4s;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

#news.jobs .c2_c1 a.pdf:hover:after{
	opacity: 1;
}

#news.jobs .c2_c1 a.pdf .image{
	width: 100%;
    height: 100%;
}

#news.jobs .c2_c1 a.pdf .image img{
	display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
	transition: all 0.4s;
}

#news.jobs .c2_c1 a.pdf:hover .image img{
	opacity: 0.6;
}

/* ***** CONTACT ***** */
#contact .c1{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
	margin-bottom: 100px;
}

#contact .c1 .content{
	text-align: center;
}

#contact .c1 .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#contact .c1 h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 180px 0 100px;
	font-weight: 900;
	font-size: 38px;
	line-height: 45px;
	width: 100%;
	max-width: 85vw;
}

#contact .c1 .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#contact .c1 .scroll img{
	width: 40px;
	height: auto;
}


#contact .c2{
display:block;
text-align: left;
width: 100%;
max-width: 520px;
margin: 0 auto;
}

#contact .c2 .microdata{
display: none;
}

#contact .c2 p+p{
	margin-top: 40px;
}

#contact .c2 a{
	color:#0F0F0F;
}

#contact .c2 a.linkedin{
	text-align: center;
	display: inline-block;
	width: fit-content;
	margin: 30px auto 0;
	padding-left: 30px;
	background-image: url(images/icon-linkedin.svg);
	background-size: 20px;
	line-height: 25px;
	background-repeat: no-repeat;
	background-position: left top 2px;
	text-decoration: none;
	font-size: 15px;
	color: #0e76a8;
}

#contact .c2 a.linkedin:hover{
	text-decoration: underline;
	color: #0e76a8;
}

#contact .c2 a:hover{
	color:#FFCC00;
}

#contact .c2 a.map{
	padding-left: 28px;
	background-size: 18px;
	background-position: left 3px center;
	background-image: url(images/icon-map.svg);
	background-repeat: no-repeat;
	text-decoration: none;
	line-height: 27px;
	display: block;
	width: fit-content;
	margin-bottom: 12px;
}

#contact .c2 .title{
	font-weight: 900;
}

#contact .c2 .sub_title{
	font-weight: 900;
	font-size: 12px;
	margin-bottom: 10px;
	display: inline-block;
}

#contact .c2 a.tel{
	padding-left: 25px;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: left center;
	background-image: url(images/icon-mail.svg);
	text-decoration: none;
	display: block;
	width: fit-content;
	margin-bottom: 12px;
}

#contact .c2 a.mail{
	padding-left: 28px;
	background-size: 15px;
	background-position: left 3px center;
	background-image: url(images/icon-tel.svg);
	background-repeat: no-repeat;
	text-decoration: none;
	line-height: 27px;
	display: block;
	width: fit-content;
	margin-bottom: 12px;
}


#contact .c3{
	text-align: center;
	margin-top: 100px;
}


#contact .c3 iframe{
	display: block;
	width: 100%;
	margin: 0 auto 50px;
	max-width: 550px;
	height: 400px;
}




/* ***** Mentions légales ***** */
#legal .intro{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
    height: 400px;
	margin-bottom: 100px;
}

#legal .intro .content{
	text-align: center;
}

#legal .intro .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#legal .intro h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-weight: 900;
    font-size: 50px;
    line-height: 62px;
}

#legal .intro .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#legal .intro .scroll img{
	width: 40px;
	height: auto;
}


#legal{
text-align:center;
margin-bottom:100px;
padding-bottom:30px;

}

#legal h2{
background-position: 0px 7px;
position: relative;
bottom: 0px;
margin-top: 14px;
margin-bottom: 14px;
font-size:28px;
line-height:30px;
background-position: bottom left;
padding-bottom: 7px;
}

#legal h3{
line-height:23px!important;
padding-bottom: 6px!important;
}

#legal p{
margin-bottom:5px;
}

#legal p span{
display:inline-block;
vertical-align:top;
width:166px;
text-decoration:underline;
}

#legal .c0{
width:600px;
text-align:left;
display:inline-block;
vertical-align:top;
border:1px solid #c0c0c0;
text-align:left;
padding:1%;
margin-bottom:30px;
background-color:white;
border-radius:13px;
}

#legal .c1{
display:inline-block;
vertical-align:top;
width:36%;
margin-right:6%;
padding:1%;
border:1px solid #c0c0c0;
text-align:left;
margin-bottom:30px;
min-height:262px;
background-color:white;
border-radius:13px;
}

#legal .c1.last{
margin-right:0px;
}

#legal .c1 p{
margin-bottom:8px;
font-size:13px;
line-height:22px;
}

#legal .c2{
width:36%;
padding:1%;
margin-right:4%;
text-align:left;
display:inline-block;
vertical-align:top;
border:1px solid #c0c0c0;
margin-bottom:30px;
height:600px;
overflow:auto;
padding-bottom:30px;
background-color:white;
border-radius:13px;
}

#legal .c2 h3{

}

#legal .c2 h4{

}

#legal .c2 p{
margin-bottom:8px;
font-size:13px;
line-height:22px;
}

#legal .c2 ul li{
margin-bottom:5px;
font-size:13px;
line-height:22px;
padding-left:15px;
list-style-type:none;
}

#legal .c2 ul ul li{
padding-left:30px;
}

#legal .c2.last{
margin-right:0px;
}


/* ***** 404 ***** */
#e404 .intro{
	background-image: url(images/home-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    position: relative;
    height: 400px;
	margin-bottom: 100px;
}

#e404 .intro .content{
	text-align: center;
}

#e404 .intro .content img{
	width: 450px;
	height: auto;
	margin: 300px auto 100px;
}

#e404 .intro h1{
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-weight: 900;
    font-size: 50px;
    line-height: 62px;
}

#e404 .intro .scroll{
	position: absolute;
    bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	animation: 1s ease-in 0s infinite alternate scroll_animation;
	z-index: 10;
}

#e404 .intro .scroll img{
	width: 40px;
	height: auto;
}

#e404{
text-align:center;
margin-bottom:100px;
padding-bottom:30px;
}


/* *********************** FOOTER *********************** */


#footer{
width:100%;
margin-top: 150px;
background-color: #0F0F0F;
position: relative;
text-align: center;
padding-top: 80px;
}

#footer .c1{
	display: block;
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

#footer .c1 img{
	width: 100%;
	max-width: 200px;
	height: auto;
	display: block;
	margin: 0 auto 50px;
}

#footer .c1 .links{
	text-align: left;
}

#footer .c1 .links p+p{
	margin-top: 40px;
}

#footer .c1 .links a{
	color:#fff;
}

#footer .c1 .links a:hover{
	color:#FFCC00;
}

#footer .c1 .links a.map{
	padding-left: 28px;
    background-size: 18px;
    background-position: left 3px center;
    background-image: url(images/icon-map.svg);
    background-repeat: no-repeat;
    text-decoration: none;
    line-height: 27px;
    display: block;
	width: fit-content;
	margin-bottom: 12px;
}

#footer .c1 .links .title{
	font-weight: 900;
	color:#fff;
}

#footer .c1 .links .sub_title{
	font-weight: 900;
	font-size: 12px;
	margin-bottom: 10px;
	display: inline-block;
	color:#fff;
}

#footer .c1 .links .country{
	font-weight: 900;
	color:#FFCC00;
}

#footer .c1 .links a.mail{
	padding-left: 25px;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: left center;
	background-image: url(images/icon-mail.svg);
	text-decoration: none;
    display: block;
	width: fit-content;
	margin-bottom: 12px;
}

#footer .c1 .links a.tel{
	padding-left: 28px;
    background-size: 15px;
    background-position: left 3px center;
    background-image: url(images/icon-tel.svg);
    background-repeat: no-repeat;
    text-decoration: none;
    line-height: 27px;
    display: block;
	width: fit-content;
	margin-bottom: 12px;
}

#footer .c2{
	display: block;
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

#footer .c2>img{
	width: 100%;
    height: auto;
    margin: 40px auto 0;
    max-width: 70px;
}

#footer .c2>p{
	text-align: center;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 19px;
	display: block;
	width: 130px;
	margin: 0 auto;
	color: #fff;
}

#footer .c2>p a{
	text-decoration: none;
}

#footer .c2>p img{
	width: 130px;
	height: auto;
	display: block;
	margin: 0 auto 0;
}

#footer .c3{
	display: block;
	width: 100%;
	text-align: center;
}

#footer .c3 ul{
	list-style: none;
}

#footer .c3 ul a{
	text-decoration: none;
	color: #fff;
	border-bottom: 1px solid #ffffff99;
	width: 100%;
	display: block;
	padding: 20px 10px;
	box-sizing: border-box;
	text-align: left;
	font-size: 13px;
	line-height: 14px;
	text-transform: uppercase;
}

#footer .c3 ul a.selected{
	color: #FFCC00;
}

#footer .c3 ul li:first-of-type a{
	border-top: 1px solid #ffffff99;
}

#footer:after{
	content:'';
	position: absolute;
	width: 15%;
	left: 0;
	bottom: 0;
	height: 100%;
	background-image: url(images/footer-decoration.svg);
	background-size: contain;
	background-position: left bottom;
	background-repeat: no-repeat;
}

#footer p.copyright{
color:#fff;
text-align:center;
font-size:14px;
padding-bottom:15px;
max-width: 80vw;
margin: 90px auto 0;
}

#footer p.copyright a{
color:#fff;
text-decoration:underline;
}

#footer p.copyright+a{
width: 100px;
display: block;
margin: 0 auto;
padding-bottom: 30px;
}

#footer p.copyright+a img{
width: 100%;
height: auto;
opacity: 0.7;
}




/* ***** CAPTCHA ***** */

.grecaptcha-badge { 
	visibility: hidden; 
}


/* ***** COOKIES ***** */

#cookieChoiceInfo{
	box-sizing: border-box;
}

#cookieChoiceInfo a{
	display: inline-block;
}

/* ***** AOS ***** */

.fade_container {
    overflow-x: hidden;
}




@media screen and (max-width: 1550px) {
	.deco-background>.background{
		background-image: url(images/home-deco-background-grey.svg);
	}
}

@media screen and (max-width: 500px) {
	#home .c1 .contact-intro{
		background-image: none;
		text-align: center;
	}
	#home .c1 .contact-intro a{
		color: #fff;
		margin: 0 auto;
		width: fit-content;
		line-height: 26px;
	}
	#home .c1 .contact-intro .main_width{
		display: block;
	}
	#home .c1 .contact-intro .main_width a{
		display: block;
	}
	#home .c1 .contact-intro a+a {
		margin: 20px auto 0;
		background-position: left 5px center;
    }
	#home .c1 .scroll {
        position: absolute;
        bottom: 30px;
        left: 50%;
        transform: translateX(-50%);
        animation: 1s ease-in 0s infinite alternate scroll_animation;
        z-index: 10;
    }
	#banner{
		padding: 40px 0 20px;
	}
}



/* ***** SVG ANIME ***** */

svg .svg-elem-1 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.1s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.1s;
}

svg.active .svg-elem-1 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-2 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s;
}

svg.active .svg-elem-2 {
  fill: rgb(255, 204, 0);
}

svg .svg-elem-3 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.30000000000000004s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.30000000000000004s;
}

svg.active .svg-elem-3 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-4 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s;
}

svg.active .svg-elem-4 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-5 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s;
}

svg.active .svg-elem-5 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-6 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s;
}

svg.active .svg-elem-6 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-7 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7000000000000001s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7000000000000001s;
}

svg.active .svg-elem-7 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-8 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}

svg.active .svg-elem-8 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-9 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}

svg.active .svg-elem-9 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-10 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

svg.active .svg-elem-10 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-11 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}

svg.active .svg-elem-11 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-12 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
}

svg.active .svg-elem-12 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-13 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3000000000000003s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3000000000000003s;
}

svg.active .svg-elem-13 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-14 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
}

svg.active .svg-elem-14 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-15 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5000000000000002s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5000000000000002s;
}

svg.active .svg-elem-15 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-16 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
}

svg.active .svg-elem-16 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-17 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7000000000000002s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7000000000000002s;
}

svg.active .svg-elem-17 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-18 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8000000000000003s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8000000000000003s;
}

svg.active .svg-elem-18 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-19 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s;
}

svg.active .svg-elem-19 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-20 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}

svg.active .svg-elem-20 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-21 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s;
}

svg.active .svg-elem-21 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-22 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s;
}

svg.active .svg-elem-22 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-23 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3000000000000003s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3000000000000003s;
}

svg.active .svg-elem-23 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-24 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4000000000000004s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4000000000000004s;
}

svg.active .svg-elem-24 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-25 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5000000000000004s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5000000000000004s;
}

svg.active .svg-elem-25 {
  fill: rgb(255, 255, 255);
}

svg .svg-elem-26 {
  fill: transparent;
  -webkit-transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s;
          transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s;
}

svg.active .svg-elem-26 {
  fill: rgb(255, 255, 255);
}