/* Global style site */

@font-face {
	font-family: 'ElegantIcons';
	src:url('../fonts/ElegantIcons.eot');
	src:url('../fonts/ElegantIcons.eot?#iefix') format('embedded-opentype'),
		url('../fonts/ElegantIcons.woff') format('woff'),
		url('../fonts/ElegantIcons.ttf') format('truetype'),
		url('../fonts/ElegantIcons.svg#ElegantIcons') format('svg');
	font-weight: normal;
	font-style: normal;
}

/*TARTEAUCITRON*/
html body #tarteaucitronRoot.tarteaucitronBeforeVisible{
    z-index: 999999;
    &:before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 9998;
    }
    #tarteaucitronAlertBig {
        display: flex !important;
        flex-direction: column;
        max-width: 285px !important;
        @media screen and (max-width: 980px){
            max-width: 100% !important;
        }
        @media screen and (max-width: 600px) {
            width: 85%;
            padding: 20px 15px;
        }
        &:before{
            font-size: 26px !important;
            font-weight: 700 !important;
            padding-top: 20px !important;
            @media screen and (max-width: 600px) {
                font-size: 24px;
            }
        }
        #tarteaucitronPersonalize, #tarteaucitronPersonalize2,.tarteaucitronCTAButton,.tarteaucitronAllow {
            font-size: 18px !important;
            height: 40px !important;
            border-radius: 10px !important;
            border: 1px solid #F1F0F2;
        }
        #tarteaucitronPersonalize2 {
            order: 1;
            border-color: transparent;
            &:hover {
                opacity: 0.8;
            }
        }
        #tarteaucitronCloseAlert {
            order: 2;
            font-size: 18px !important;
            height: 40px !important;
            border-radius: 10px !important;
        }
        #tarteaucitronAllDenied2 {
            order: 3;
            border-color: #D9DCE0;
        }
        #tarteaucitronPrivacyUrl{
            color: #ADADAD !important;
            text-decoration: underline;
            padding-top: 10px;
            order: 4;
            background: none;
            font-weight: 400;
            font-size: 12px !important;
            margin-top: 5px;
            width: auto;
            &:hover {
                opacity: 0.8;
            }
        }
        #tarteaucitronDisclaimerAlert {
            font-size: 17px !important;
            font-weight: 500 !important;
            margin-top: 20px !important;
            @media screen and (max-width: 600px) {
                font-size: 16px;
            }
        }
        #tarteaucitronCloseCross{
            font-size: 1rem !important;
            right: 6px !important;
        }
    }
}

/* Use the following CSS code if you want to use data attributes for inserting your icons */
.icon-divi:before,
.icon-divi:after {
	font-family: 'ElegantIcons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ui-loader{
	display: none!important;
}

*, ::after, ::before {
  box-sizing: border-box;
}

html {
  box-sizing: border-box;
}

body{
  margin: 0;
	font-family: var(--font-family-general);
	font-size: var(--size-p-global);
	line-height: var(--size-p-line-height-global);
	color: var(--color-p-global);
}

body a{
  text-decoration: none;
  transition: all 0.3s ease;
	color: var(--color-p-global);
}

body img{
	display: block;
  max-width: 100%;
	height: auto;
	box-sizing: border-box;
  position: relative;
}

.row-global{
  width: var(--row-global);
  max-width: 100%;
  padding-left: var(--row-global-padding-left);
  padding-right: var(--row-global-padding-right);
  padding-top: var(--row-global-padding-top);
  padding-bottom: var(--row-global-padding-bottom);
  margin: auto;
	position: relative;
}

.row-global.full{
  width: 100%;
  max-width: 100%;
}

h1,h2,h3,h4,h5{
	font-family: var(--font-family-title);
}

.white,
.white h1,
.white h2,
.white h3,
.white h4,
.white h5,
.white p,
.white label,
.white a{
	color: #FFFFFF;
}

h1{
	font-size: var(--size-title-h1);
	line-height: var(--size-title-h1);
}

h2{
	margin-top: 0px;
	margin-bottom: 40px;
	font-size: var(--size-title-h2);
	line-height: var(--size-title-h2);
}

h3{
	margin-top: 0px;
	font-size: var(--size-title-h3);
	line-height: var(--size-title-h3);
}

h4{
	font-size: var(--size-title-h4);
	line-height: var(--size-title-h4);
}

h5{
	font-size: var(--size-title-h5);
	line-height: var(--size-title-h5);
}

header{
	width: 100%;
  height: var(--header-height);
	background: var(--header-background);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	box-shadow: 0px 0px 15px rgba(0,0,0,0.05);
}

header .nav-resp{
	display: none;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	width: var(--header-nav-icon-resp-size);
	height: var(--header-nav-icon-resp-size);
	cursor: pointer;
	flex-direction: column;
	justify-content: center;
}

header .nav-resp span{
	display: block;
	width: 100%;
	height: 5px;
	background-color: var(--header-button-menu-resp-color);
	margin-bottom: 7px;
	border-radius: 2px;
	transition: all 0.3s ease;
}

header.open .nav-resp span:first-child{
	transform: rotate(30deg);
	transform-origin: top left;
}

header.open .nav-resp span:nth-child(2){
	width: 0;
}

header.open .nav-resp span:last-child{
	transform: rotate(-30deg);
	transform-origin: bottom left;
}

header .nav-resp span:last-child{
	margin-bottom: 0px;
}

header .bloc-infos-resp{
	display: none;
	position: absolute;
	top: 50%;
	right: calc(var(--header-nav-icon-resp-size) + var(--row-global-padding-right) + 35px);
	transform: translateY(-50%);
}

header .row-global{
	display: flex;
	justify-content: space-between;
  align-items: center;
  padding-left: 35px!important;
  padding-right: 35px!important;
  padding-top: 0!important;
  padding-bottom: 0!important;
	height: 100%;
}

header #logo{
  flex-basis: var(--header-bloc-logo-width);
  padding-right: 30px;
}

header #logo a{
  cursor: pointer;
	display: block;
}

header #logo img{
  max-height: 95%;
	display: block;
}

header .content-nav-site{
  flex-basis: var(--header-bloc-nav-width);
  display: flex;
  flex-direction: column;
	justify-content: flex-end;
	height: 100%;
}

header .content-nav-site .bloc-social,
footer .bloc-social{
  display: flex;
  justify-content: flex-end;
	padding-bottom: 20px;
}

footer .bloc-social{
  justify-content: flex-start;
}

header .content-nav-site .bloc-social a,
header .bloc-infos-resp a{
  display: flex;
  color: var(--color-social-link);
	background-color: var(--background-social-link);
  width: var(--header-social-link-size);
  height: var(--header-social-link-size);
  margin-right: 16px;
  border-radius: 50%;
	justify-content: center;
	align-items: center;
}

footer .bloc-social a{
	display: flex;
  color: var(--footer-color-social-link)!important;
	background-color: var(--footer-background-social-link);
  width: var(--footer-social-link-size);
  height: var(--footer-social-link-size);
  margin-right: 16px;
  border-radius: 50%;
	justify-content: center;
	align-items: center;
}

header .content-nav-site .bloc-social a:last-child,
header .bloc-infos-resp a:last-child{
  margin-right: 0;
}

header .content-nav-site .bloc-social a:hover,
footer .bloc-social a:hover{
  opacity: 0.7;
}

header .content-nav-site .bloc-social a:before,
header .bloc-infos-resp a:before,
footer .bloc-social a:before{
	content: attr(data-icon);
  font-size: calc(var(--header-social-link-size) / 1,5);
  line-height: calc(var(--header-social-link-size) / 1,5);
	width: calc(var(--header-social-link-size) / 1,5);
  height: calc(var(--header-social-link-size) / 1,5);
}

header .bloc-infos-resp a.email:before{
	margin-top: -5px;
}

header .content-nav-site #nav-site > ul{
  display: flex;
  justify-content: flex-end;
	margin: 0;
	list-style: none;
}

header .content-nav-site #nav-site > ul > li{
	margin-right: 25px;
	position: relative;
	padding-bottom: var(--header-padding-bottom);
}

header .content-nav-site #nav-site > ul > li:last-child{
	margin-right: 0;
}

header .content-nav-site #nav-site > ul > li > a{
	color: var(--color-nav-link);
	font-size: var(--size-link-menu);
	line-height: var(--size-link-menu);
	font-weight: var(--weight-link-menu);
	cursor: pointer;
	pointer-events: auto;
	position: relative;
	text-transform: uppercase;
}

header .content-nav-site #nav-site > ul > li > a:before{
	content: "";
	position: absolute;
	bottom: -8px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 2px;
	background-color: #FFFFFF;
	max-width: 100%;
	opacity: 0;
	transition: all 0.3s ease;
}

header .content-nav-site #nav-site > ul > li.current > a:before{
	opacity: 0.7;
	width: 25px;
}

header .content-nav-site #nav-site > ul > li.sub-menu > a span{
	display: inline-block;
	position: relative;
	width: var(--size-link-menu);
	height: var(--size-link-menu);
	font-size: var(--size-link-menu);
	line-height: var(--size-link-menu);
	margin-left: 5px;
}

header .content-nav-site #nav-site > ul > li.sub-menu > a span:after{
	content: "\33";
	font-family: 'ElegantIcons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: var(--size-link-menu);
	height: var(--size-link-menu);
}

header .content-nav-site #nav-site > ul > li > a:hover{
	opacity: 0.6;
}

header .content-nav-site #nav-site > ul > li > ul{
	position: absolute;
	padding: 25px;
	background-color: #FFFFFF;
	top: calc(100% - 1px);
	left: 0;
	width: var(--header-sub-menu-width);
	list-style: none;
	box-shadow: 0px 5px 15px rgb(0 0 0 / 10%);
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s ease;
}

header .content-nav-site #nav-site > ul > li > ul > li{
	margin-bottom: 20px;
}

header .content-nav-site #nav-site > ul > li > ul > li:last-child{
	margin-bottom: 0;
}

header .content-nav-site #nav-site > ul > li > ul > li > a{
	color: var(--color-nav-link);
	font-size: var(--size-link-sub-menu);
	line-height: var(--size-link-sub-menu);
	font-weight: var(--weight-link-sub-menu);
	cursor: pointer;
	pointer-events: auto;
	display: block;
}

header .content-nav-site #nav-site > ul > li > ul > li > a:hover{
	color: var(--color-general-primary);
}

header .content-nav-site #nav-site > ul > li:hover > ul{
	visibility: visible;
	opacity: 1;
}

section{
	padding-top: var(--section-padding-top);
	padding-bottom: var(--section-padding-bottom);
}

#container-site{
	padding-top: var(--header-height);
}

#entete-site{
	height: calc(100vh - var(--header-height));
	background: var(--entete-background-color);
	/* touch-action: none; */
	padding-top: 0px;
	padding-bottom: 0px;
}

#entete-site .entete-image,
#entete-site .entete-slider,
#entete-site .entete-video{
	width: 100%;
	height: 100%;
}

#entete-site .entete-image .slide > img,
#entete-site .entete-image .slide > video{
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 1;
	position: absolute;
	left: 0;
	top: 0;
}

#entete-site .entete-image .slide{
	display: none;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

#entete-site .entete-image .slide:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.3);
	width: 100%;
	height: 100%;
	z-index: 4;
}

#entete-site .entete-image .row-global{
	height: 100%;
	display: flex;
	align-items: center;
	z-index: 5;
}

#entete-site .entete-image .row-global.center{
	justify-content: center;
}

#entete-site .entete-image .row-global .content-text-entete{
	text-align: center;
}

#entete-site .entete-image .row-global .content-text-entete h1{
	color: var(--entete-title-h1-color);
	font-size: var(--entete-title-h1-size);
	line-height: var(--entete-title-h1-line-height);
	margin-top: 0px;
	margin-bottom: 15px;
}

#entete-site .entete-image .row-global .content-text-entete p{
	color: var(--entete-p-color);
	font-size: var(--entete-p-size);
	line-height: var(--entete-p-line-height);
	margin-top: 25px;
	letter-spacing: 3px;
	font-weight: 700;
}

#entete-site .entete-image .row-global.center .content-text-entete h1,
#entete-site .entete-image .row-global.center .content-text-entete p,
.row-global.center h2,
.row-global.center p,
.row-global.center{
	text-align: center;
}

.nav-slider-arrow{
	display: none;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 95%;
	height: 0;
	transform: translateX(-50%) translateY(-50%);
	z-index: 10;
	justify-content: space-between;
	transition: all 0.3s ease;
	opacity: 0;
}

.nav-slider-arrow .next,
.nav-slider-arrow .prev{
	position: relative;
	color: #FFFFFF;
	font-size: 50px;
	line-height: 50px;
	cursor: pointer;
}

.nav-slider-arrow .next:before,
.nav-slider-arrow .prev:before{
	font-family: 'ElegantIcons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.nav-slider-arrow .next:before{
	content: "\3d";
}

.nav-slider-arrow .prev:before{
	content: "\3c";
}

.nav-slider-bullet{
	display: none;
	position: absolute;
	bottom: 40px;
	width: auto;
	max-width: 100%;
	left: 50%;
	transform: translateX(-50%);
	justify-content: center;
	z-index: 10;
}

.nav-slider-bullet span{
	width: 80px;
	height: 10px;
	display: block;
	margin-left: 10px;
	margin-right: 10px;
	background-color: transparent;
	border: 1px solid #FFFFFF;
	border-radius: 5px;
	cursor: pointer;
	transition: all 0.3s ease;
}

.nav-slider-bullet span.current{
	background-color: #FFFFFF;
}

.nav-slider-arrow.active,
.nav-slider-bullet.active{
	display: flex;
}

#entete-site:hover .nav-slider-arrow.active{
	opacity: 1;
}

.mouse-down{
	position: absolute;
	z-index: 99;
	left: 50%;
	bottom: 80px;
	border-radius: 15px;
	width: 30px;
	height: 50px;
	border: 2px solid #FFFFFF;
	transform: translateX(-50%);
	cursor: pointer;
}

.mouse-down:before{
	content: "";
	position: absolute;
	left: 50%;
	top: 8px;
	width: 3px;
	height: 8px;
	background: #FFFFFF;
	transform: translateX(-50%);
}

#contact{
	background-color: var(--color-general-primary);
}

#contact .details-infos-form{
	margin-top: 20px;
	margin-bottom: 30px;
}

#contact .details-infos-form.last{
	margin-bottom: 0;
}

#contact .details-infos-form .horaires,
#contact .details-infos-form .tel,
#contact .details-infos-form .email,
#contact .details-infos-form .adresse{
	padding-left: 40px;
	display: block;
	position: relative;
	margin-top: 8px;
	margin-bottom: 15px;
}

#contact .details-infos-form .horaires:before,
#contact .details-infos-form .tel:before,
#contact .details-infos-form .email:before,
#contact .details-infos-form .adresse:before{
	content: attr(data-icon);
  font-size: 25px;
  line-height: 25px;
	position: absolute;
	left: 0;
	top: 0;
}

#contact .maps{
	width: 576px;
	max-width: 100%;
	display: block;
	margin-top: 20px;
	border-radius: 3px;
	background-color: #FFF;
	padding: 6px;
}

#contact #contactform{
	display: flex;
	flex-direction: column;
	margin-top: 20px;
}

#contact #contactform > div{
	width: 100%;
	margin-bottom: 20px;
}

#contact #contactform > div > label{
	width: 100%;
	display: block;
	margin-bottom: 8px;
}

#contact #contactform > div input,
#contact #contactform > div textarea{
	width: 100%;
	padding: 12px;
	border: 1px solid #CCC;
	border-radius: 3px;
	font-size: var(--size-p-global);
	font-family: var(--font-family-general);
	font-size: var(--size-p-global);
	line-height: var(--size-p-line-height-global);
	color: var(--color-p-global);
}

#contact #contactform > div textarea{
	height: 160px!important;
}

#contact #contactform > div.pdc label{
	display: flex;
	align-items: center;
}

#contact #contactform > div.pdc label a{
	text-decoration: underline;
	cursor: pointer;
}

#contact #contactform > div.pdc label > input{
	margin-right: 10px;
	flex-basis: 15px;
}

#contact #contactform > div.pdc label > div{
	flex-basis: 100%;
}

#contact #contactform > div span.error{
	color: #e94b4b;
	font-size: 14px;
	line-height: 14px;
}

#contact #contactform #msgReturnValue{
	display: none;
}

#contact #contactform > div .content-msg{
	padding: 8px;
	color: #FFFFFF;
	background-color: #e94b4b;
	text-align: center;
	margin-top: 10px;
	border-radius: 3px;
}

#contact #contactform > div .content-msg.send{
	color: #FFFFFF;
	background-color: green;
}

#contact #contactform .notice{
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 14px;
}

#contact #contactform > div #submitSendEmail{
	background-color: var(--color-general-secondary);
	color: #FFFFFF;
	cursor: pointer;
	padding: 12px;
	padding-left: 15px;
	padding-right: 15px;
	border-radius: 3px;
	text-transform: uppercase;
	transition: all 0.3s ease;
	display: inline-block;
	width: 100%;
	text-align: center;
}

#contact #contactform > div #submitSendEmail:hover{
	background-color: #FFFFFF;
	color: var(--color-general-primary);
}

footer{
	background-color: var(--footer-background);
	color: var(--footer-link-color);
}

footer .logo-footer{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

footer .content-footer h3{
	color: var(--footer-link-color);
	margin-top: 5px;
}

footer .content-footer a{
	color: var(--footer-link-color);
}

footer .bloc-infos-footer{
	display: flex;
	flex-direction: column;
}

footer .bloc-infos-footer a{
	margin-bottom: 15px;
}

footer .bloc-infos-footer a:last-child{
	margin-bottom: 0;
}

footer .copyright{
	background-color: var(--footer-copyright-background);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-top: var(--footer-copyright-padding-top);
	padding-bottom: var(--footer-copyright-padding-bottom);
}

footer .copyright a{
	cursor: pointer;
}

footer .copyright a,
footer .copyright span{
	color: var(--footer-copyright-link-color);
	font-size: 14px;
	line-height: 14px;
	margin-left: 10px;
	margin-right: 10px;
	margin-top: 5px;
	margin-bottom: 5px;
}

footer .copyright a:hover{
	opacity: 0.7;
}

.popup-legal-pages{
	position: fixed;
	z-index: 99999;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	display: none;
	align-items: center;
	justify-content: center;
}

.popup-legal-pages .fond-noir{
	position: absolute;
	z-index: 9;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0,0,0,0.8);
	cursor: zoom-out;
}

.popup-legal-pages .content-popup{
	background-color: #FFFFFF;
	width: 980px;
	max-width: 90%;
	height: 80%;
	padding: 30px;
	border-radius: 5px;
	z-index: 10;
	position: relative;
}

.popup-legal-pages .content-popup .close{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	font-size: 45px;
	line-height: 45px;
	color: #333;
	background: #FFFFFF;
	border-radius: 50%;
	box-shadow: 0px 0px 15px rgba(0,0,0,0.5);
	cursor: pointer;
	font-weight: bold;
}

.popup-legal-pages .content-popup .close:before{
	content: "\4d";
	font-family: 'ElegantIcons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.popup-legal-pages .content-popup .text{
	padding: 15px;
	padding-right: 30px;
	overflow: auto;
	max-height: 100%;
}

.popup-legal-pages .content-popup .text h2{
	text-align: center;
	background: #333;
	color: #FFF;
	padding: 15px;
	border-radius: 5px;
	margin-top: 15px;
	margin-bottom: 30px;
	font-size: 30px;
	line-height: 30px;
}

.popup-legal-pages .content-popup .text h3{
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 24px;
	line-height: 24px;
}

.popup-legal-pages .content-popup .text table{
	margin-bottom: 30px;
}

.popup-legal-pages .content-popup .text a{
	color: #000;
	text-decoration: underline;
}

.popup-legal-pages .content-popup .text::-webkit-scrollbar {
  width: 12px;
  border-radius: 3px;
  transition: all 0.3s ease;
}

.popup-legal-pages .content-popup .text::-webkit-scrollbar-thumb {
  background: #333333;
  transition: all 0.3s ease;
  border-radius: 5px;
}

.popup-legal-pages .content-popup .text::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 5px;
  transition: all 0.3s ease;
}

/**/

#presentation{
	background-color: var(--color-general-primary);
}

#presentation .logo-presentation{
	margin-bottom: 50px;
}

#presentation .logo-presentation img{
	margin-left: auto;
	margin-right: auto;
}

#presentation h3{
	text-align: center;
	position: relative;
	padding-bottom: 25px;
}

#presentation h3:before{
	content: "";
	position: absolute;
	width: 90px;
	height: 2px;
	background-color: #FFFFFF;
	opacity: 0.7;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}

#presentation p{
	text-align: left;
	opacity: 0.8;
}

p.intro{
	text-transform: uppercase;
	font-weight: 900;
	opacity: 1!important;
	text-align: center;
	font-size: 16px;
	line-height: 24px;
	position: relative;
	padding-bottom: 40px;
}

p.intro:before{
	content: "";
	width: 80px;
	height: 2px;
	opacity: 0.6;
	left: 50%;
	bottom: 10px;
	transform: translateX(-50%);
	display: block;
	background: #FFFFFF;
	position: absolute;
}

#presentation p.intro{
	padding-bottom: 0px;
}

#presentation p.intro:before{
	display: none;
}

#presentation .image-rotate,
#le-restaurant .image-rotate,
#carte .image-rotate,
#equipe .image-rotate{
	display: inline-block;
	max-width: 90%;
	padding: 6px;
	border-radius: 5px;
	margin: auto;
	margin-top: 50px;
	margin-bottom: 10px;
	background-color: #FFFFFF;
	height: 300px;
}

#equipe .image-rotate{
	height: 650px;
}

#equipe .image-rotate{
	margin-top: 20px;
}

#carte .image-rotate{
	max-width: 95%;
	margin-top: 20px;
}

#presentation .image-rotate img,
#le-restaurant .image-rotate img,
#carte .image-rotate img,
#equipe .image-rotate img{
	max-width: 100%;
	display: block;
	border-radius: 5px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#presentation .image-rotate.left{
	transform: rotate(-3deg);
}

#presentation .image-rotate.center{
	transform: rotate(3deg);
}

#presentation .image-rotate.right{
	transform: rotate(2deg);
}

#carte .image-rotate.right{
	transform: rotate(2deg);
}

#le-restaurant{
	background-image: url("../img/maison-bebelle-background-le-restaurant.webp");
	background-attachment: fixed;
	background-size: cover;
}

#le-restaurant .images-restaurant{
	display: flex;
	align-items: center;
	margin-top: 20px;
}

#le-restaurant .images-restaurant .image-rotate{
	margin-left: 40px;
	margin-right: 40px;
}

#le-restaurant p{
	opacity: 0.8;
}

#le-restaurant .images-restaurant .image-rotate.left{
	transform: rotate(-2deg);
}

#le-restaurant .images-restaurant .image-rotate.right{
	transform: rotate(6deg);
}

#equipe{
	background-image: url("../img/maison-bebelle-background-equipe.jpg");
	background-size: cover;
}

#equipe .equipe-list{
	display: flex;
	flex-wrap: wrap;
	margin: auto;
	margin-top: 60px;
	justify-content: center;
	width: 980px;
	max-width: 100%;
}

#equipe .equipe-list .equipe-bloc{
	background-color: #FFFFFF;
	padding: 10px;
	border-radius: 5px;
	flex-basis: 20%;
	margin-left: 2%;
	margin-right: 2%;
	margin-bottom: 4%;
}

#equipe .equipe-list .equipe-bloc:first-child{
	transform: rotate(-3deg)
}

#equipe .equipe-list .equipe-bloc:nth-child(2n){
	transform: rotate(-5deg)
}

#equipe .equipe-list .equipe-bloc:nth-child(3n){
	transform: rotate(3deg)
}

#equipe .equipe-list .equipe-bloc:nth-child(5n){
	transform: rotate(3deg)
}

#equipe .equipe-list .equipe-bloc:nth-child(7n){
	transform: rotate(-3deg)
}

#equipe .equipe-list .equipe-bloc .image{
	background-color: #CCCCCC;
	padding: 10px;
	border-radius: 5px;
	width: 100%;
	height: 180px;
	margin-bottom: 10px;
}

#equipe .equipe-list .equipe-bloc .image img{
	border-radius: 5px;
}

#equipe .equipe-list .equipe-bloc .text{
	color: var(--color-general-primary);
	font-family: var(--font-family-title);
	font-size: 20px;
	line-height: 15px;
}

#equipe .equipe-list .equipe-bloc .text span{
	color: var(--color-general-secondary);
	font-family: var(--font-family-general);
	display: inline-block;
	margin-left: 8px;
	font-size: 15px;
	line-height: 15px;
	text-transform: uppercase;
	font-weight: bold;
}

#carte{
	background-image: url("../img/maison-bebelle-ardoise-background.jpg");
	background-size: cover;
	background-attachment: fixed;
}

#carte .row-global.center{
	padding-bottom: 0px;
}

#carte .row-global.liste-carte{
	padding-top: 0px;
}

#carte .bloc-content-plats h3{
	background: #77002d;
	padding: 15px;
	text-align: center;
	border-radius: 5px;
	font-size: 22px;
	line-height: 22px;
	margin-top: 20px;
}

#carte .bloc-content-plats h3.title-prix{
	display: flex;
	align-items: center;
	justify-content: center;
}

#carte .bloc-content-plats h3.title-prix div{
	width: 60px;
	height: 60px;
	color: #77002d;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 20px;
	font-weight: 900;
	font-size: 22px;
	line-height: 22px;
	font-family: var(--font-family-general);
	position: relative;
	z-index: 2;
}

#carte .bloc-content-plats h3.title-prix div span{
	position: relative;
	z-index: 2;
}

#carte .bloc-content-plats h3.title-prix div:after{
	content: "";
	position: absolute;
	width: 80%;
	height: 80%;
	background-color: #FFFFFF;
	transform: rotate(45deg);
	z-index: 1;
}

#carte .bloc-content-plats .plat{
	display: flex;
	padding-top: 14px;
	padding-bottom: 12px;
	font-size: 20px;
	line-height: 22px;
	position: relative;
	padding-left: 15px;
	padding-right: 15px;
	align-items: center;
}

#carte .bloc-content-plats .plat:after{
	content: "";
	width: calc(100% - 30px);
	border-bottom: 1px dashed #FFFFFF;
	position: absolute;
	bottom: 0;
	left: 50%;
	opacity: 0.5;
	transform: translateX(-50%);
}

#carte .bloc-content-plats .plat:last-child:after{
	display: none;
}

#carte .bloc-content-plats .plat > .title{
	flex-basis: 80%;
	opacity: 0.8;
}

#carte .bloc-content-plats .plat.center > .title{
	opacity: 1;
	flex-basis: 30%;
	font-weight: 700;
}

#carte .bloc-content-plats .plat > .prix{
	flex-basis: 20%;
	text-align: right;
	font-weight: 700;
	font-size: 24px;
	line-height: 24px;
}


#carte .bloc-content-plats .plat .desc{
	flex-basis: 70%;
	text-align: left;
	opacity: 0.8;
	font-size: 17px;
	line-height: 22px;
	padding-left: 20px;
}

#photos{
	background-color: #333333;
}

#photos p.intro,
#contact p.intro{
	padding-bottom: 10px;
	margin-bottom: 0px;
}

#photos .filter{
	display: flex;
	margin-top: 0;
	justify-content: center;
}

#photos .filter > div{
	padding: 8px;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 6px;
	margin-left: 10px;
	margin-right: 10px;
	cursor: pointer;
	transition: all 0.3s ease;
	background-color: rgba(0,0,0,0.2);
}

#photos .filter > div.current{
	background: #000000;
}

#photos .filter > div:hover{
	opacity: 0.8;
}

#photos .content-galerie{
	display: flex;
	flex-wrap: wrap;
	margin-top: 50px;
	transition: all 0.3s ease;
}

#photos .content-galerie.disable{
	visibility: hidden;
	opacity: 0;
}

#photos .content-galerie a{
	flex-basis: 23%;
	height: 200px;
	margin-left: 1%;
	margin-right: 1%;
	margin-bottom: 2%;
	display: block;
	border-radius: 5px;
	order: 1;
	position: relative;
}

#photos .content-galerie a:before{
	content: "\50";
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-family: 'ElegantIcons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 30px;
	line-height: 30px;
	background-color: rgba(0,0,0,0.7);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

#photos .content-galerie a:hover:before{
	opacity: 1;
	visibility: visible;
}

#photos .content-galerie a.disable:before{
	display: none;
}

#photos .content-galerie a.disable{
	opacity: 0.3;
	pointer-events: none;
	order: 2;
}

#photos .content-galerie a img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 5px;
}

/* Responsive */
@media screen and (max-width: 1200px) {
	#carte .bloc-content-plats .plat{
		font-size: 18px;
		line-height: 20px;
	}

	#carte .bloc-content-plats .plat .desc{
		font-size: 16px;
		line-height: 18px;
	}
}

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

	.mouse-down{
		bottom: 30px;
	}

	header .row-global{
	  padding-left: 20px!important;
	  padding-right: 20px!important;
	}

	#presentation .logo-presentation{
		max-width: 90%;
	}

	#photos .content-galerie{
		margin-top: 30px;
	}

	#photos .content-galerie a{
		flex-basis: 31.3333%;
	}

	#carte .bloc-content-plats .plat:after{
    width: calc(100% - 10px);
	}

	#carte .bloc-content-plats .plat{
		padding-left: 5px;
		padding-right: 5px;
	}

	#carte .image-rotate{
		display: none;
	}

	#equipe .equipe-list .equipe-bloc{
		flex-basis: 46%;
		margin-bottom: 50px;
	}

	#le-restaurant .images-restaurant .image-rotate{
		margin-left: 15px;
		margin-right: 15px;
	}

	#le-restaurant .images-restaurant .image-rotate.right {
    transform: rotate(-2deg);
	}

	#presentation .image-rotate{
		margin-top: 30px;
		margin-bottom: 30px;
	}

	#presentation .image-rotate img{
		max-height: 30vh;
	}

	#presentation p{
		text-align: center;
	}

	section{
		padding-top: var(--section-padding-top-resp);
		padding-bottom: var(--section-padding-bottom-resp);
	}

	.row-global{
	  padding-left: 10px;
	  padding-right: 10px;
	}

	header{
		height: var(--header-height-resp);
	}

	header #logo{
		flex-basis: auto;
		max-width: 50%;
		padding-right: 0px;
	}

	header #logo img{
		max-width: 100%;
	}

	header .nav-resp{
		display: flex;
	}

	header .bloc-infos-resp{
		display: flex;
	}

	header .content-nav-site .bloc-social{
		position: fixed;
		top: var(--header-height-resp);
		height: var(--header-height-resp);
		background: var(--header-background-bloc-social);
		left: 0;
		width: 100%;
		justify-content: center;
		align-items: center;
		padding: 20px!important;
		visibility: hidden;
		opacity: 0;
		transition: all 0.3s ease;
	}

	header .content-nav-site .bloc-social a{
		color: var(--color-social-link-resp);
	}

	header #nav-site{
		position: fixed;
		top: calc(var(--header-height-resp) * 2);
		left: 0;
		width: 100%;
		height: calc(100vh - (var(--header-height-resp) * 2));
		background: var(--header-background-menu-resp);
		visibility: hidden;
		opacity: 0;
		transition: all 0.3s ease;
	}

	header.open #nav-site,
	header.open .content-nav-site .bloc-social{
		visibility: visible;
		opacity: 1;
	}

	header .content-nav-site #nav-site>ul{
		flex-direction: column;
		width: 100%;
		padding: 40px;
		padding-top: 80px;
		text-align: center;
		height: 100%;
		overflow: auto;
		justify-content: flex-start;
	}

	header .content-nav-site #nav-site>ul>li{
		margin-right: 0px;
		padding-bottom: 0px;
		margin-bottom: 30px;
		width: 100%;
	}

	header .content-nav-site #nav-site>ul>li>a,
	header .content-nav-site #nav-site>ul>li>ul>li>a{
		color: var(--color-nav-link-resp);
		text-align: center;
	}

	header .content-nav-site #nav-site>ul>li>a,
	header .content-nav-site #nav-site>ul>li>ul>li>a{
		color: var(--color-nav-link-resp);
		text-align: center;
	}

	header .content-nav-site #nav-site>ul>li>a{
		font-size: var(--size-link-menu-resp);
		line-height: var(--size-link-menu-resp);
		font-weight: var(--weight-link-menu-resp);
		padding: 15px;
		display: block;
	}

	header .content-nav-site #nav-site>ul>li>ul>li>a{
		font-size: var(--size-link-sub-menu-resp);
		line-height: var(--size-link-sub-menu-resp);
		font-weight: var(--weight-link-sub-menu-resp);
		text-align: center;
	}

	header .content-nav-site #nav-site>ul>li>a:hover,
	header .content-nav-site #nav-site>ul>li>ul>li>a:hover{
		color: var(--color-nav-link-resp);
		opacity: 0.9;
	}

	header .content-nav-site #nav-site>ul>li.sub-menu>a span{
		width: var(--size-link-menu-resp);
		height: var(--size-link-menu-resp);
		font-size: var(--size-link-menu-resp);
		line-height: var(--size-link-menu-resp);
	}

	header .content-nav-site #nav-site>ul>li>ul,
	header .content-nav-site #nav-site>ul>li:hover>ul{
		width: 100%;
		position: relative;
		background: var(--header-background-sub-menu-resp);
		margin: auto;
		margin-top: 25px!important;
		padding: 25px!important;
		border-radius: 5px;
		top: 0;
		visibility: hidden;
    opacity: 0;
		max-height: 0!important;
		padding: 0!important;
		margin-top: 0!important;
	}

	header .content-nav-site #nav-site>ul>li>ul.open{
		visibility: visible;
    opacity: 1;
		max-height: 100%!important;
		margin-top: 20px!important;
	}

	header .content-nav-site #nav-site>ul>li>ul>li{
		padding-top: 0;
		padding-bottom: 0;
		margin-bottom: 0px;
	}

	header .content-nav-site #nav-site>ul>li>ul>li:first-child{
		padding-top: 15px;
	}

	header .content-nav-site #nav-site>ul>li>ul>li:last-child{
		padding-bottom: 15px;
	}

	header .content-nav-site #nav-site>ul>li>ul>li>a{
		padding: 12px;
		margin-top: 2px;
		margin-bottom: 2px;
	}

	#container-site{
		padding-top: var(--header-height-resp);
	}

	#entete-site{
		height: calc(100vh - var(--header-height-resp));
	}

	#entete-site .entete-image .row-global .content-text-entete h1{
		font-size: var(--entete-title-h1-size-resp);
		line-height: var(--entete-title-h1-line-height-resp);
	}

	#entete-site .entete-image .row-global .content-text-entete p{
		font-size: var(--entete-p-size-resp);
		line-height: var(--entete-p-line-height-resp);
	}

	.nav-slider-arrow{
		display: none!important;
	}

	.content-form{
		margin-bottom: 40px;
	}

	.liste-photos{
		padding-top: 0px;
	}

	footer .logo-footer{
		padding-right: 0px!important;
		text-align: center;
		margin-bottom: 20px;
	}
}

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

	#photos .filter{
		flex-wrap: wrap;
	}

	#photos .filter>div{
		margin-top: 10px;
		margin-bottom: 10px;
		text-align: center;
	}

	#photos .content-galerie a{
		flex-basis: 48%;
	}

	#le-restaurant .images-restaurant{
		flex-wrap: wrap;
		justify-content: center;
	}

	h2 {
    margin-bottom: 30px;
    font-size: 40px;
    line-height: 40px;
	}

	footer .content-footer .container-flex .col-flex{
		padding: 0!important;
		margin-bottom: 25px;
		text-align: center;
	}

	footer .content-footer .container-flex .col-flex:last-child{
		margin-bottom: 0;
	}

	footer .bloc-social{
		justify-content: center;
	}
}

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

	#presentation .image-rotate,
	#le-restaurant .image-rotate,
	#carte .image-rotate,
	#equipe .image-rotate{
		height: 30vh;
	}

	#equipe .image-rotate{
		height: 30vh;
	}

	h2 {
		margin-bottom: 30px;
		font-size: 34px;
		line-height: 34px;
	}

	#carte .bloc-content-plats .plat.center{
		flex-direction: column;
	}

	#carte .bloc-content-plats .plat.center .desc{
		margin-top: 5px;
		text-align: center;
		width: 300px;
		max-width: 100%;
	}

	header .content-nav-site #nav-site>ul{
		padding-top: 50px;
	}
}
