@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@font-face {
  font-family: Unison;
  src: url(./fonts/Unison-Pro-Bold.otf);
  font-weight: 700;
}

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

html{
width:100%;
}

.main_width{
width:90vw;
margin:auto;
}


body{
font-family: 'Fira Sans', sans-serif;
font-weight:400;
color: #fff;
background-color: #161519;
width:100%;
max-width: 2200px;
margin: 0 auto;
}


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

p{
color:#fff;
line-height:24px;
font-size:18px;
}

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

h1{
font-family: 'Unison', sans-serif;
font-weight: 700;
color:#161519;
text-transform: uppercase;
font-size: 24px;
line-height: 34px;
text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff,
             1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
letter-spacing: 1px;
}

h2{
font-family: 'Unison', sans-serif;
font-weight: 700;
color:#161519;
text-transform: uppercase;
font-size: 27px;
line-height: 35px;
text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff,
             1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
letter-spacing: 1px;
}


.button{
display: block;
width: fit-content;
background-color: #c50614;
color: #fff;
font-size: 15px;
text-transform: uppercase;
padding: 6px 15px;
transition: all 0.4s;
text-decoration: none;
}

.button:hover{
padding: 6px 25px;
}

.reservation-button{
display: block;
width: fit-content;
background-color: #c50614;
color: #fff;
font-size: 15px;
text-transform: uppercase;
padding: 6px 15px 6px 35px;
background-image: url(images/icon-karting.svg);
background-size: 25px;
background-repeat: no-repeat;
background-position: left 5px center;
transition: all 0.4s;
text-decoration: none;
}

.reservation-button:hover{
padding: 6px 15px 6px 45px;
background-position: left 10px center;
}

a{
color:inherit;
text-decoration: none;
transition: all 0.2s ease-in-out;
cursor: pointer;
}

p a:hover{
color: #c50614;
text-decoration: underline;
}



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

#heading p{
color: white;
margin: 0;
padding: 0 70px;
box-sizing: border-box;
font-size: 14px;
}



/* *********************** BANNER / MENU *********************** */
#banner{
position: fixed;
left: 50%;
transform: translateX(-50%);
width: 100%;
padding: 10px 5vw;
box-sizing: border-box;
max-width: 2200px;
display: flex;
justify-content: space-between;
align-items: center;
background: rgb(22,21,25);
background: linear-gradient(0deg, rgba(22,21,25,0) 0%, rgba(22,21,25,0.7091211484593838) 25%, rgba(22,21,25,1) 71%);
z-index: 99;
}

#banner:after{
content:'';
position: absolute;
left: 0;
top: 0;
background-color: #c50614;
height: 4px;
width: 100%;
}

#banner .logo{
width: 300px;
max-width:30vw;
min-width: 200px;
height: auto;
margin-top: 7px;
}

#banner .logo img{
width: 100%;
height: auto;
}

#banner .big-menu{
flex: 1;
max-width: 430px;
text-align: right;
margin-top: 7px;
}

#banner .contact-menu{
display: none;
}

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

#banner .burger{
flex: 1;
text-align: left;
}

.menu-links img{
cursor: pointer;
}

.menu-links.open{
flex: 1;
text-align: right;
}

.menu-links.open img{
width: 27px;
height: 27px;
margin-right: 20px;
}

.menu-links.close{
padding: 20px 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: #2c2b27;
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{
	padding: 20px 20px;
}

#banner .burger ul a{
text-transform: uppercase;
font-size: 17px;
}

#banner .burger ul a:not(.reservation-button){
transition: none;
}

#banner .burger ul a:not(.reservation-button):hover, #banner .burger ul a.selected{
border-bottom: 1px solid #c50614;
}

html:not([data-scroll='0']) #banner{
	top: 0;
}

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


/* ***** HOME ***** */
#home .c1{
height: 720px;
background-image: url(images/home-intro-karting-liege.jpg);
background-size: cover;
background-repeat: no-repeat;
background-position: top -100px left -150px;
position: relative;
overflow: hidden;
}

#home .c1 .video{
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	width: 100%;
	height: 500px;
}

#home .c1 .video video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .c1 .content{
width: 100%;
background-color: #161519;
position: absolute;
left: 0;
bottom: 0;
z-index: 10;
padding: 30px;
box-sizing: border-box;
}

#home .c1 .content:after{
content: '';
position: absolute;
left: 0;
top: -60px;
width: 100%;
height: 60px;
background: rgb(22,21,25);
background: linear-gradient(180deg, rgba(22,21,25,0) 0%, rgba(22,21,25,0.7091211484593838) 25%, rgba(22,21,25,1) 71%);
z-index: 11;
}

#home h1{
margin-bottom: 20px;
}

#home .c1 .reservation-button{
border: 1px solid #fff;
margin-top: 30px;
}

#home .c1 .sponsors{
display: none;
}

#home .c1:before{
content: '';
position: absolute;
height: 100%;
width: 675px;
right: -200px;
top: 0;
z-index: 8;
background-image: url(images/deco-speed-1.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#home .c1 .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#home .c1 .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#home .c2{
margin-top: 50px;
}

#home .c2 a{
display: block;
width: 100%;
max-width: 400px;
margin: 0 auto 30px;
}

#home .c2 .image{
width: 100%;
height: 360px;
position: relative;
overflow: hidden;
}

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

#home .c2 a:hover img{
transform: scale(1.1);
}

#home .c2 .image:after{
content:'';
width: 100%;
height: 200px;
background: rgb(22,21,25);
background: linear-gradient(180deg, rgba(22,21,25,0) 0%, rgba(22,21,25,0.41220238095238093) 25%, rgba(22,21,25,0.7959558823529411) 71%);
position: absolute;
left: 0;
bottom: 0;
z-index: 1;
}

#home .c2 .image:before{
content:'';
width: 100%;
height: 200px;
bottom: -50px;
left: 0;
background-image: url(images/image-deco-liege-karting.svg);
background-position: center;
background-size: contain;
background-repeat: no-repeat;
z-index: 2;
position: absolute;
}

#home .c2 a .title{
background-color: #161519;
padding: 20px;
}

#home .c2 a .title span{
font-family: 'Unison', sans-serif;
font-weight: 700;
font-size: 25px;
text-transform: uppercase;
color:#fff;
letter-spacing: 1px;
}

#home .c3{
background-color: #fff;
padding: 200px 0;
margin-top: -150px;
}

#home .c3 span{
color:#161519;
}

#home .c3 .sub_title{
font-size: 18px;
margin-bottom: 5px;
display: block;
}

#home .c3 h2{
color:#fff;
text-shadow: 1px 0 #c50614, -1px 0 #c50614, 0 1px #c50614, 0 -1px #c50614, 1px 1px #c50614, -1px -1px #c50614, 1px -1px #c50614, -1px 1px #c50614;
letter-spacing: 1px;
margin-bottom: 50px;
}

#home .c3 .items{
text-align: center;
}

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

#home .c3 .item .count{
text-shadow: 1px 0 #161519, -1px 0 #161519, 0 1px #161519, 0 -1px #161519, 1px 1px #161519, -1px -1px #161519, 1px -1px #161519, -1px 1px #161519;
letter-spacing: 1px;
font-size: 74px;
display: block;
line-height: 74px;
margin-bottom: 10px;
color: #fff;
font-family: 'Unison', sans-serif;
font-weight: 700;
}

#home .c3 .item .title{
font-size: 27px;
line-height: 30px;
display: block;
}

#home .no_overflow{
width: 100%;
overflow: hidden;
height: 245px;
transform: translateY(-160px);
position: relative;
margin-bottom: -160px;
}

#home .no_overflow:before{
content: '';
width: 58vw;
height: 155px;
background-color: #161519;
z-index: -1;
position: absolute;
right: 0;
bottom: 0;
}

#home .c4{
width: 120%;
height: 85px;
text-align: center;
background-color: #c50614;
position: relative;
overflow: hidden;
transform: rotate(356deg) translate(-16px, 70px);
}

#home .c4 div{
color: white;
text-align: center;
display: block;
position: absolute;
overflow: hidden;
width: 200%;
height: 85px;
animation: marquee 12s linear infinite;
}

#home .c4 p{
float: left;
width: 50%;
line-height: 85px;
font-size: 63px;
text-transform: uppercase;
font-family: 'Unison', sans-serif;
font-weight: 700;
letter-spacing: 2px;
color: #c50614;
text-shadow: 2px 0 #fff, -2px 0 #fff, 0 2px #fff, 0 -2px #fff, 2px 2px #fff, -2px -2px #fff, 2px -2px #fff, -2px 2px #fff;
}

#home .c4 p span:nth-of-type(2){
color: #fff;
text-shadow: none;
}

#home .c4 p span+span{
margin-left: 20px;
position: relative;
}

#home .c4 p span+span:after{
content: '';
width: 15px;
height: 15px;
position: absolute;
left: -35px;
top: 50%;
transform: translateY(-50%);
background-color: #fff;
border-radius: 30px;
}

#home .c4 p+p{
margin: 0;
}


@keyframes marquee {
  0% { left: 0; }
  100% { left: -100%; }
}

#home .c5{
margin-top: 50px;
}

#home .c5 .owl-carousel{
	width: 85%;
	margin: 30px auto 0;
}

#home .c5 .item{
margin: 0 15px;
position: relative;
}

#home .c5 .item .reservation-button{
position: absolute;
right: 10px;
top: 10px;
}

#home .c5 .item .image{
width: 100%;
height: 300px;
overflow: hidden;
position: relative;
}

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

#home .c5 .item:hover .image img{
transform: scale(1.1);
}

#home .c5 .item .image:after{
content:'';
position: absolute;
right: 0;
bottom: 0;
width: 150px;
height: 200px;
background-image: url(images/vignette-deco.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: right bottom;
}

#home .c5 .item .infos{
margin-top: 8px;
}

#home .c5 .item h3{
font-family: 'Unison', sans-serif;
font-weight: 700;
font-size: 16px;
line-height: 23px;
text-transform: uppercase;
color: #fff;
letter-spacing: 1px;
margin-bottom: 3px;
}

#home .c5 .item .date{
font-size: 15px;
line-height: 18px;
}

#home .c5 .owl-carousel .owl-nav button.owl-prev span{
display: none;
}

#home .c5 .owl-carousel .owl-nav button.owl-next span{
display: none;
}

/* ***** ACTIVITES ***** */

#activites .intro{
	background-image: url(images/activites-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom 87px left -320px;
	height: 700px;
	position: relative;
	overflow: hidden;
}

#activites .intro .intro-with-background{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 90%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(8px);
	-webkit-filter: blur(8px);
}

#activites .intro .contain-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: calc( 100% - 250px );
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 2;
}

#activites .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#activites .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
}

#activites .intro .content h1{
	color: #c50614;
    margin-bottom: 20px;
}

#activites .intro:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 675px;
    right: -200px;
    top: 0;
    z-index: 8;
    background-image: url(images/deco-speed-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

#activites .intro .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#activites .intro .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#activites .intro p.date{
	margin-bottom: 20px;
	font-family: 'Unison', sans-serif;
	letter-spacing: 1px;
    font-weight: 700;
	width: fit-content;
	text-transform: uppercase;
	font-size: 14px;
	margin-top: -10px;
}

#activites .intro .reservation-button{
border: 1px solid #fff;
margin-top: 30px;
}

#activites .c1{
margin: 100px auto 0;
text-align: center;
}

#activites .c1 .item{
position: relative;
display: block;
width: 100%;
margin: 0 auto 50px;
max-width: 400px;
text-align: left;
}

#activites .c1 .item .reservation-button{
position: absolute;
right: 10px;
top: 10px;
}

#activites .c1 .item .image{
width: 100%;
height: 300px;
overflow: hidden;
position: relative;
}

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

#activites .c1 .item:hover .image img{
transform: scale(1.1);
}

#activites .c1 .item .image:after{
content:'';
position: absolute;
right: 0;
bottom: 0;
width: 150px;
height: 200px;
background-image: url(images/vignette-deco.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: right bottom;
}

#activites .c1 .item .infos{
margin-top: 8px;
}

#activites .c1 .item h3{
font-family: 'Unison', sans-serif;
font-weight: 700;
font-size: 16px;
line-height: 23px;
text-transform: uppercase;
color: #fff;
letter-spacing: 1px;
margin-bottom: 3px;
}

#activites .c1 .item .date{
font-size: 15px;
line-height: 18px;
}


#activites .old-events{
	text-align: center;
	margin-top: 100px;
}

#activites .old-events .demo-gallery{
text-align: center;
margin-top: 50px;
}



#activites .old-events .item {
	position: relative;
	display: inline-block;
	width: 45%;
	max-width: 250px;
	margin: 0 1% 50px;
	height: 250px;
	min-width: 200px;
	overflow: hidden;
}

#activites .old-events .item: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%);
}

#activites .old-events .item:hover:after{
	opacity: 1;
}

#activites .old-events .item .img{
	width: 100%;
	height: 100%;
}

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

#activites .old-events .item .description{
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #c50614b0;
	width: 100%;
	padding: 20px 20px 20px 40px;
	box-sizing: border-box;
	transition: all 0.4s;
	text-align: left;
	font-size: 15px;
	line-height: 18px;
}

#activites .old-events .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: 19px;
}

#activites .old-events .item .description p{
    color: #fff;
}

.pswp p{
	color: #fff;
}

#activites .old-events .item:hover img{
	transform: scale(1.1);
}

#activites .old-events .item a:before {
    content: '';
    position: absolute;
    width: 40%;
    height: 300px;
    right: 0;
    bottom: 20px;
    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;
}

#activites .old-events .item a:hover:before {
    opacity: 0;
}

#activites .c2{
padding: 100px 0 0;
}

#activites .c2 .date{
display: block;
color: #b5b5b5;
text-transform: uppercase;
font-size: 13px;
max-width: 800px;
margin: 0 auto;
}

#activites .c2 h1{
max-width: 800px;
margin: 10px auto 30px;
}

#activites .c2 .content{
width: 100%;
max-width: 550px;
margin: 0 auto;
color: #fff;
}

#activites .c2 .content p{
margin-bottom: 16px;
}

#activites .c2 .content h2{
font-size: 26px;
line-height: 38px;
font-style: unset;
color: #fff;
padding: 20px 0px;
}

#activites .c2 .content .reservation-button{
	margin-top: 30px;
}

#activites .c2 .pdfs{
	margin-top: 80px;
	text-align: center;
}

#activites .c2 .pdfs a{
	display: inline-block;
    width: 45%;
	max-width: 200px;
	margin: 0 1% 30px;
    height: 200px;
    overflow: hidden;
    position: relative;
background-color:#fff;
}

#activites .c2 .pdfs a img{
	width: 100%;
    height: auto;
	transition: all 0.6s;
}

#activites .c2 .pdfs a:hover img{
	transform: scale(1.1);
}

#activites .c2 .pdfs a .description{
	position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #c50614;
    color: white;
    padding: 5px 10px;
    box-sizing: border-box;
    line-height: 20px;
}

#activites .c2 .demo-gallery{
display: flex;
margin-top: 80px;
align-items: center;
justify-content: center;
flex-wrap: wrap;
}

#activites .c2 .pdfs+.demo-gallery{
	margin-top: 50px;
}

#activites .c2 .demo-gallery .item{
width: 45%;
max-width: 250px;
height: 200px;
overflow: hidden;
cursor: pointer;
}

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

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

#activites .microdata{
	display: none;
}

#activites .related{
margin: 150px auto 0;
display: flex;
justify-content: center;
flex-wrap: wrap;
align-items: flex-start;
}

#activites .related h2{
	text-align: center;
    margin: 0 auto 50px;
}

#activites .related .item{
position: relative;
display: block;
width: 100%;
margin: 0 auto 50px;
max-width: 400px;
text-align: left;
}

#activites .related .item .reservation-button{
position: absolute;
right: 10px;
top: 10px;
}

#activites .related .item .image{
width: 100%;
height: 300px;
overflow: hidden;
position: relative;
}

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

#activites .related .item:hover .image img{
transform: scale(1.1);
}

#activites .related .item .image:after{
content:'';
position: absolute;
right: 0;
bottom: 0;
width: 150px;
height: 200px;
background-image: url(images/vignette-deco.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: right bottom;
}

#activites .related .item .infos{
margin-top: 8px;
}

#activites .related .item h3{
font-family: 'Unison', sans-serif;
font-weight: 700;
font-size: 16px;
line-height: 23px;
text-transform: uppercase;
color: #fff;
letter-spacing: 1px;
margin-bottom: 3px;
}

#activites .related .item .date{
font-size: 15px;
line-height: 18px;
}

/* ***** ENFANTS ***** */

#enfants .intro{
	background-image: url(images/enfants-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom right -250px;
	height: 700px;
	position: relative;
	overflow: hidden;
}

#enfants .intro .intro-with-background{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 90%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(8px);
	-webkit-filter: blur(8px);
}

#enfants .intro .contain-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 2;
}

#enfants .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#enfants .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
}

#enfants .intro .content h1{
	color: #c50614;
    margin-bottom: 20px;
}

#enfants .intro:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 675px;
    right: -200px;
    top: 0;
    z-index: 8;
    background-image: url(images/deco-speed-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

#enfants .intro .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#enfants .intro .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#enfants .links{
	display: none;
}

#enfants .activites{
}

#enfants .activites .item{
	padding: 85px 20px 30px;
	box-sizing: border-box;
	overflow: auto;
	box-sizing: border-box;
	text-align: center;
}

#enfants .activites .item .image{
	display: block;
	width: 100%;
	max-width: 550px;
	margin: 0 auto 50px;
}

#enfants .activites .item .image img{
	width: 100%;
	height: auto;
}

#enfants .activites .item .content{
	display: block;
	width: 100%;
	max-width: 550px;
	margin: 0 auto;
	text-align: left;
}

#enfants .activites .item h2{
    margin-bottom: 20px;
	color: #2c2b30;
	font-size: 22px;
	line-height: 31px;
}

#enfants .activites .item .infos{
	margin-top: 30px;
	font-size: 15px;
	text-transform: uppercase;
}

#enfants .activites .item .infos span{
	margin-bottom: 12px;
	padding-left: 30px;
	background-size: 17px;
	background-repeat: no-repeat;
	background-position: left center;
	display: block;
	line-height: 20px;
}

#enfants .activites .item .infos span.qui{
	background-image: url(images/activite-icon-qui.svg);
}

#enfants .activites .item .infos span.quand{
	background-image: url(images/activite-icon-quand.svg);
}

#enfants .activites .item .infos span.prix{
	background-image: url(images/activite-icon-prix.svg);
}

#enfants .activites .item .infos span.plus-infos{
	background-image: url(images/activite-icon-infos.svg);
}

#enfants .activites .item .reservation-button{
	margin-top: 30px;
}

/* ***** GROUPES ***** */

#groupes .intro{
	background-image: url(images/groupes-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom 150px left -100px;
	height: 700px;
	position: relative;
	overflow: hidden;
}

#groupes .intro .intro-with-background{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 90%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(8px);
	-webkit-filter: blur(8px);
}

#groupes .intro .contain-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 2;
}

#groupes .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#groupes .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
}

#groupes .intro .content h1{
	color: #c50614;
    margin-bottom: 20px;
}

#groupes .intro:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 675px;
    right: -200px;
    top: 0;
    z-index: 8;
    background-image: url(images/deco-speed-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

#groupes .intro .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#groupes .intro .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#groupes .links{
	display: none;
}

#groupes .activites{
}

#groupes .activites .item{
	padding: 85px 20px 30px;
	box-sizing: border-box;
	overflow: auto;
	box-sizing: border-box;
	text-align: center;
}

#groupes .activites .item .image{
	display: block;
	width: 100%;
	max-width: 550px;
	margin: 0 auto 50px;
}

#groupes .activites .item .image img{
	width: 100%;
	height: auto;
}

#groupes .activites .item .content{
	display: block;
	width: 100%;
	max-width: 550px;
	margin: 0 auto;
	text-align: left;
}

#groupes .activites .item h2{        
	font-size: 22px;
	line-height: 31px;
    margin-bottom: 20px;
	color: #2c2b30;
}

#groupes .activites .item .infos{
	margin-top: 30px;
	font-size: 15px;
	text-transform: uppercase;
}

#groupes .activites .item .infos span{
	margin-bottom: 12px;
	padding-left: 30px;
	background-size: 17px;
	background-repeat: no-repeat;
	background-position: left center;
	display: block;
	line-height: 20px;
}

#groupes .activites .item .infos span.qui{
	background-image: url(images/activite-icon-qui.svg);
}

#groupes .activites .item .infos span.quand{
	background-image: url(images/activite-icon-quand.svg);
}

#groupes .activites .item .infos span.prix{
	background-image: url(images/activite-icon-prix.svg);
}

#groupes .activites .item .infos span.plus-infos{
	background-image: url(images/activite-icon-infos.svg);
	background-position: left top;
}

#groupes .activites .item .reservation-button{
	margin-top: 30px;
}

/* ***** INFRASTRUCTURE ***** */

#infrastructure .intro{
	background-image: url(images/groupes-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom center;
	height: 700px;
	position: relative;
	overflow: hidden;
}

#infrastructure .intro .intro-with-background{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 90%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(8px);
	-webkit-filter: blur(8px);
}

#infrastructure .intro .contain-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 2;
}

#infrastructure .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#infrastructure .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
}

#infrastructure .intro .content h1{
	color: #c50614;
    margin-bottom: 20px;
	font-size: 21px;
	line-height: 28px;
}

#infrastructure .intro:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 675px;
    right: -200px;
    top: 0;
    z-index: 8;
    background-image: url(images/deco-speed-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

#infrastructure .intro .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#infrastructure .intro .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#infrastructure .c2{
margin-top: 100px;
text-align: center;
}

#infrastructure .c2 .owl-carousel{
	width: 85%;
	margin: 30px auto 0;
}

#infrastructure .c2 .item{
margin: 0 15px;
position: relative;
text-align: left;
}

#infrastructure .c2 .item .image{
width: 100%;
height: 300px;
overflow: hidden;
position: relative;
}

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

#infrastructure .c2 .item .image:after{
content:'';
position: absolute;
right: 0;
bottom: 0;
width: 150px;
height: 200px;
background-image: url(images/vignette-deco.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: right bottom;
}

#infrastructure .c2 .item .infos{
margin-top: 8px;
}

#infrastructure .c2 .item h3{
font-family: 'Unison', sans-serif;
font-weight: 700;
font-size: 16px;
line-height: 23px;
text-transform: uppercase;
color: #fff;
letter-spacing: 1px;
margin-bottom: 3px;
}

#infrastructure .c2 .item .date{
font-size: 15px;
line-height: 18px;
}

#infrastructure .c2 .owl-carousel .owl-nav button.owl-prev span{
display: none;
}

#infrastructure .c2 .owl-carousel .owl-nav button.owl-next span{
display: none;
}

#infrastructure .c2 .owl-carousel .owl-nav{
display: block;
}


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

#infrastructure .c3 h2{
	font-size: 22px;
	line-height: 32px;
}

#infrastructure .c3 .demo-gallery{
text-align: center;
margin-top: 50px;
}

#infrastructure .c3 .item {
    position: relative;
	display: inline-block;
	width: 45%;
	max-width: 250px;
	margin: 0 1% 50px;
	height: 250px;
	min-width: 200px;
	overflow: hidden;
}

#infrastructure .c3 .item: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%);
}

#infrastructure .c3 .item:hover:after{
	opacity: 1;
}

#infrastructure .c3 .item .img{
	width: 100%;
	height: 100%;
}

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

#infrastructure .c3 .item .description{
	position: absolute;
    left: 0;
    bottom: 0;
    background-color: #c50614b0;
    width: 100%;
    padding: 20px 20px 20px 40px;
    box-sizing: border-box;
	transition: all 0.4s;
	text-align: left;
	font-size: 15px;
	line-height: 18px;
}

#infrastructure .c3 .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: 19px;
}

#infrastructure .c3 .item .description p{
    color: #fff;
}

#infrastructure .c3 .item:hover img{
	transform: scale(1.1);
}

#infrastructure .c3 .item a:before {
    content: '';
    position: absolute;
    width: 40%;
    height: 300px;
    right: 0;
    bottom: 20px;
    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;
}

#infrastructure .c3 .item a:hover:before {
    opacity: 0;
}

/* ***** CHRONOS ***** */

#chronos .intro{
	background-image: url(images/chronos-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom right -288px;
	height: 700px;
	position: relative;
	overflow: hidden;
}

#chronos .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#chronos .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
	}

#chronos .intro .content h1{
	color: #c50614;
    margin-bottom: 20px;
}

#chronos .intro:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 675px;
    right: -200px;
    top: 0;
    z-index: 8;
    background-image: url(images/deco-speed-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
}

#chronos .intro .deco:before{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -460px;
top: 0;
z-index: 7;
background-image: url(images/deco-speed-2.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#chronos .intro .deco:after{
content: '';
position: absolute;
height: 100%;
width: 990px;
right: -440px;
top: 0;
z-index: 6;
background-image: url(images/deco-speed-3.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: left top;
}

#chronos iframe{
	width: 100%;
	margin: 0 auto;
}


/* ***** CONTACT ***** */

#contact .intro{
	height: 700px;
	position: relative;
	overflow: hidden;
	margin-bottom: 100px;
}

#contact .intro:before{
	content:'';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(images/contact-intro-background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom center;
	filter: blur(8px);
    -webkit-filter: blur(8px);
}

#contact .intro iframe{
	position: absolute;
    left: 50%;
	transform: translateX(-50%);
    top: 180px;
    width: 70vw;
    height: calc( 100% - 300px );
    object-fit: contain;
    z-index: 2;
}

#contact .intro:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: rgb(22, 21, 25);
    background: linear-gradient(180deg, rgba(22, 21, 25, 0) 0%, rgba(22, 21, 25, 0.7091211484593838) 25%, rgba(22, 21, 25, 1) 71%);
    z-index: 11;
}

#contact .intro .content{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 12;
	padding: 30px;
	background-color: #c50614;
	width: 100%;
	box-sizing: border-box;
	}

#contact .intro .content h1{
	color: #c50614;
}

#contact .intro+.main_width{
	text-align: center;
}

#contact .tarifs{
	text-align: center;
	margin-bottom: 150px;
	position: relative;
}

#contact .tarifs:after{
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 90px;
	width: 410px;
	height: 270px;
	background-image: url(images/tarifs-deco.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	max-width: 100%;
}

#contact .tarifs h2{
    margin-bottom: 25px;
}

#contact .tarifs table {
	border-collapse: collapse;
	background-color: #161519;
	margin: 290px auto 0;
	position: relative;
	z-index: 1;
}

#contact .tarifs table td{
  border: 1px solid #fff;
  padding: 10px;
  text-align: left;
  font-size: 15px;
  line-height: 22px;
}

#contact .tarifs table .jour{
color: #c50614;
font-size: 15px;
display: block;
}

#contact .tarifs .important{
	padding: 5px 10px;
	font-size: 13px;
	color: #c50614;
	text-align: center;
}

#contact.new .tarifs table.table-tarifs:after{
content: 'Tarifs';
font-family: 'Unison', sans-serif;
font-weight: 700;
color: #161519;
text-transform: uppercase;
font-size: 30px;
line-height: 30px;
text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff, 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
letter-spacing: 1px;
position: absolute;
top: -27px;
left: 50%;
transform: translateX(-50%);
background-color: #161519;
padding: 5px 10px;
}

#contact.new .tarifs table.table-horaires{
	width: 628px;
	margin-top: 60px;
	max-width: 100%;
}

#contact.new .tarifs table.table-horaires:after{
content: 'Horaires';
font-family: 'Unison', sans-serif;
font-weight: 700;
color: #161519;
text-transform: uppercase;
font-size: 30px;
line-height: 30px;
text-shadow: 1px 0 #fff, -1px 0 #fff, 0 1px #fff, 0 -1px #fff, 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
letter-spacing: 1px;
position: absolute;
top: -27px;
left: 50%;
transform: translateX(-50%);
background-color: #161519;
padding: 5px 10px;
}

#contact.new .tarifs table.table-horaires .today{
	color: #c50614;
}

#contact.new.reel .tarifs table.table-horaires{
	margin-top: 80px;
	text-align: center;
}

#contact.new.reel .tarifs table.table-horaires td{
	border: none;
}

#contact.new.reel .tarifs table.table-horaires td:first-of-type{
	width:90px;
}

#contact.new.reel .tarifs table.table-horaires:after{
top: -40px;
}

#contact.new.reel .tarifs:after{
	display: none;
}

#contact.new.reel .tarifs table{
	transform: none;
	display: block;
	vertical-align: top;
	margin: 80px auto 0;
	width: fit-content;
}

#contact.new.reel .tarifs table.table-horaires td{
	padding: 5px 10px;
}

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

#contact .c1 h2{
margin-bottom: 25px;
}

#contact .c1 p span.head{
display:block;
width:100%;
color: #c50614;
font-size: 15px;
}

#contact .c1 a:not(.reservation-button):hover{
	color: #fff;
	text-decoration: underline;
	background-color: transparent;
}

#contact .reservation-button{
	margin-top: 30px;
}

#contact .c1 p.logo img{
display:none;
}

#contact .microdata{
	display: none;
}

#contact .c2{
display:block;
width:100%;
max-width: 550px;
margin: 0 auto;
}

#contact .c2 .streetview{
width:100%;
height:357px;
}

/* ***** RESERVATION FORM ***** */
#reservation-form .background{
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #161519c7;
	transition: all 0.4s;
	opacity: 0;
    z-index: -1;
}

#reservation-form.open .background{
	opacity: 1;
    z-index: 100;
}

#reservation-form .pop-up{
	background-color: #fff;
	position: fixed;
    top: -200%;
	transition: all 0.4s;
    left: 50%;
	transform: translate(-50%, -50%);
    z-index: 101;
	width: 80vw;
	max-width: 700px;
	padding: 30px 15px;
	box-sizing: border-box;
	height: auto;
	max-height: 90vh;
	overflow: auto;
}

#reservation-form.open .pop-up{
    top: 50%;
}

#reservation-form h2{
	color: #fff;
	text-shadow: 1px 0 #161519, -1px 0 #161519, 0 1px #161519, 0 -1px #161519, 1px 1px #161519, -1px -1px #161519, 1px -1px #161519, -1px 1px #161519;
    letter-spacing: 1px;
	margin-bottom: 30px;
	font-size: 20px;
}

#reservation-form form{
	text-align: center;
}

#reservation-form label{
	display: block;
    width: 100%;
    color: #161519;
    font-size: 14px;
	margin-bottom: 5px;
}

#reservation-form .form_part{
	margin-bottom: 25px;
	text-align: left;
	position: relative;
}

#reservation-form .form_part .important{
	position: absolute;
    bottom: -15px;
    font-size: 10px;
    color: #b5b5b5;
    left: 0px;
}

#reservation-form input, #reservation-form select{
	width: 100%;
	font-size: 15px;
	padding: 6px 8px;
	box-sizing: border-box;
	font-family: 'Fira Sans', sans-serif;
    font-weight: 400;
    color: #161519;
	border: 1px solid #161519;
	border-radius: none;
}

#reservation-form textarea{
	width: 100%;
	height: 100px;
	min-width: 100%;
	max-width: 100%;
	min-height: 50px;
	font-size: 15px;
	padding: 6px 8px;
	box-sizing: border-box;
	font-family: 'Fira Sans', sans-serif;
    font-weight: 400;
    color: #161519;
	border: 1px solid #161519;
	border-radius: none;
}

#reservation-form .small{
    font-size: 10px;
    color: #b5b5b5;
	text-align: left;
	line-height: 12px;
	margin-top: -22px;
}

#reservation-form .small+.small{
	margin-top: 8px;
}

#reservation-form .opt_in{
	text-align: left;
	margin-top: 20px;
}

#reservation-form .opt_in input{
min-height: unset;
display: inline-block;
width: 13px;
max-width: unset;
min-width: unset;
margin-right: 5px;
vertical-align: baseline;
transform: translateY(1px);
border-radius: none;
}

#reservation-form .opt_in label{
text-transform: none;
display: inline-block;
width: unset;
vertical-align: baseline;
margin: 0;
cursor: pointer;
}

#reservation-form .button{
	cursor: pointer;
	border: none;
	width: fit-content;
	color: #fff;
	margin: 0 auto;
	padding: 6px 20px;
	border-radius: none;
}

#reservation-form .pop-up .close{
	position: absolute;
	right: 15px;
	top: 15px;
	height: 25px;
	width: 25px;
	cursor: pointer;
	background-image: url(images/common/close-black.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}

.form_response{
position: fixed;
bottom: 50px;
right: -700px;
background-color: #74b643;
padding: 20px 50px;
-webkit-box-shadow: 0px 0px 4px 2px #c0c0c0;
box-shadow: 0px 0px 4px 2px #c0c0c0;
animation-name: response;
animation-duration: 6s;
animation-delay: 1s;
z-index: 100;
}

.form_response p{
	color: #fff;
}

.form_response.error{
background-color: #a34040;
}

@keyframes response {
0% {right: -700px;}
10% {right: 0;}
90% {right: 0;}
100% {right: -700px;}
}


/* ***** Mentions légales ***** */
#legal{
text-align:center;
margin-bottom:100px;
padding-bottom:30px;

}

#legal .main_width{
padding-top:250px;
padding-bottom:30px;
}


#legal h1{
text-align:center;
background-position:bottom center;
margin-bottom:73px;
}

#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:#161519;
border-radius:13px;
}

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

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

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

#legal .c2{
width:90%;
padding:1%;
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:#161519;
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{
text-align:center;
padding: 250px 0 50px;
}

#e404 h1{
text-align:center;
margin-bottom:73px;
}


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

#footer{
position: relative;
padding-top: 150px;
background-image: url(images/footer-line.svg);
background-size: calc(100% + 200px);
background-repeat: no-repeat;
background-position: top 50px left -100px;
}

#footer .background{
display: none;
}

#footer .content{
display: block;
width: 100%;
text-align: center;
margin: 0 auto;
padding: 0;
}

#footer .logo{
width: 300px;
max-width: 100%;
height: auto;
margin: 0 auto 30px;
display: block;
}

#footer .logo img{
width: 100%;
height: auto;
}

#footer .content a.map, #footer .content a.mail, #footer .content a.tel{
display: block;
width: fit-content;
color: #a0a0a0;
font-size: 16px;
padding-left: 25px;
background-size: 15px;
background-repeat: no-repeat;
background-position: left center;
width: fit-content;
text-align: center;
margin: 0 auto 27px;
}

#footer .content a.map:hover, #footer .content a.mail:hover, #footer .content a.tel:hover{
text-decoration: underline;
}

#footer .content a.map{
background-image: url(images/icon-map.svg);
background-size: 10px;
background-position: left 5px top;
}

#footer .content a.mail{
background-image: url(images/icon-mail.svg);
}

#footer .content a.tel{
background-image: url(images/icon-tel.svg);
background-position: left top 1px;
}

#footer .reservation-button{
margin: 30px auto 0;
}

#footer p.copyright{
color:white;
text-align:center;
font-size:14px;
margin-top:90px;
padding-bottom:15px;
margin-bottom:0px;
}

#footer p.copyright a{
color:white;
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.65;
}


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

.grecaptcha-badge { 
	visibility: hidden; 
}


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

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

#cookieChoiceInfo a{
	display: inline-block;
}

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

.fade_container {
    overflow-x: hidden;
}