.block-diner,.block-dejeuner{
	
	overflow-x: scroll;
	overflow-y: auto;
}.block-diner,.block-dejeuner{
	
	overflow-x: scroll;
	overflow-y: auto;
}/* ----------------
    SETTINGS
---------------- */


@font-face {
	font-family: 'cocolate';
	src: url('../fonts/Cocolatte.otf')  format('opentype');
    font-weight: normal;
    font-style: normal;
}

html, body {background: #EEE; font-size: 15px;}
a, a:hover {text-decoration: none;}
h1, h2, h3, h4, h5, h6 {margin: 0; color: #333;}
h1 {font-size: 4rem; text-align: center;}
h2 {margin-bottom: 20px; font-size: 2.2rem;}
h2 small {margin-left: 15px; font-size: 2.2rem; color: #ccc;}
h3 {margin-bottom: 20px; font-size: 1.8rem;}
h3 small {font-size: 1.5rem; color: #555;}
h4 {margin-bottom: 15px; font-size: 1.5rem;}
p {margin-bottom: 20px; font-family: sans-serif; font-size: 1rem; color: #888;}
p strong {font-weight: bold;}
ul {margin: 0; padding: 0;}
ul li {list-style-type: none;}
hr {margin: 40px 0;}
input[type="text"], textarea, select, button {border-radius: 0; outline: none; appearance: none; -webkit-appearance: none; -moz-appearance: none;}
select {cursor: pointer;}


/* ----------------
    GLOBAL
---------------- */
.titre_evenement{font-size: 3.3em;text-transform: lowercase;}
.title {margin-bottom: 15px;  font-size: 1.8rem; color: #333;}
.date {margin-bottom: 5px; font-size: 1.2rem; color: #BBB;}
.filter {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5); z-index: 0;}
.container {position: relative; z-index: 1;}
/*section .row:last-child .block {margin-bottom: 0;}*/
.table {margin: 0; border-bottom: 1px solid #EEE; text-align: center;}
.table th {font-weight: normal; }
.loader {display: none; width: 30px; height: 30px; margin: 20px auto; background: url('../images/loader.gif') no-repeat;}
.centime { font-size: .7em;  } 

/*----- BUTTONS -----*/
.btns {display: inline-block; vertical-align: middle; transition: .5s;}
.btns + .btns {margin-left: 15px;}
.btns_img {padding: 20px 25px; border: none; background: #FFF;}
.btns_img span {display: block; background: url('../images/sprite.png') no-repeat; opacity: 1; transition: .5s;}
.btns_img:hover span {opacity: 0.5;}
.btn_right {float: right;}

.btn_default {min-width: 150px; padding: 10px 15px; border: 1px solid #333; background: transparent; font-size: 1.2rem; color: #333; text-align: center;}
.btn_default:hover {background: rgba(51,51,51,0.05); color: #333;}
.btn_default.btn_white {border-color: #FFF; color: #FFF;}
.btn_default.btn_white:hover {border-color: #FFF; background: rgba(255,255,255,0.3);}
.btn_default span {display: inline-block; vertical-align: text-bottom; width: 12px; height: 22px; background: url('../images/sprite.png') no-repeat;}
.btn_default span.left {margin-right: 15px; background-position: -5px -50px;}
.btn_default span.right {margin-left: 15px; background-position: -45px -85px;}

.btn_title {margin: 0; margin-left: 11px !important; padding: 13px 15px; background: #FFF; font-style: italic; opacity: 0;}
.btn_right + .btn_title {float: right; margin-left: 0; margin-right: 15px;}
.btn_default:hover + .btn_title {display: inline-block; opacity: 1;}

.btn_icon {width: 40px; height: 40px; background: url('../images/sprite.png') no-repeat;}
.btn_icon.facebook {background-position: -85px -5px;}
.btn_icon.google {background-position: -130px -5px;}
.btn_icon.dailymotion {background-position: -175px -5px;}
.btn_icon.tripadvisor {background-position: -220px -5px;}
.btn_icon.facebook:hover {background-position: -85px -50px;}
.btn_icon.google:hover {background-position: -130px -50px;}
.btn_icon.dailymotion:hover {background-position: -175px -50px;}
.btn_icon.tripadvisor:hover {background-position: -220px -50px;}

.btn_share {width: 22%; height: 45px; padding: 10px; border: none; background: transparent;}
.btn_share + .btn_share {margin-left: 4%;}
.btn_share.share {border: 1px solid #333; cursor: default;}
.btn_share.facebook {background-color: #3B5B95;z-index:10}
.btn_share.facebook .fb-share-button{opacity:0;}
.btn_share.facebook:hover {background-color: #26518E;}
.btn_share.twitter {background-color: #09BFEB;}
.btn_share.twitter .twitter-share-button{opacity:0}
.btn_share.twitter:hover {background-color: #00B3D1;}
.btn_share.google {background-color: #C53524;}
.btn_share.google:hover {background-color: #C12216;}
.btn_share span {display: block; height: 20px; margin: 0 auto; background: url('../images/sprite.png') no-repeat;}
.btn_share.share span {width: 19px; background-position: -275px -15px; background-color: transparent;}
.btn_share.facebook span {width: 10px; background-position: -305px -15px;}
.btn_share.twitter span {width: 25px; background-position: -325px -15px;}
.btn_share.google span {width: 20px; background-position: -360px -15px;}

.btn_toggle {width: 30px; margin: 0 20px; padding: 0; border: none; background: transparent;}
.btn_toggle span {display: block; height: 2px; margin-bottom: 6px; background: #333;}
.btn_toggle span:last-child {margin: 0;}

.btn_more span {width: 30px; height: 30px; background-position: -5px -5px;}
.btn_close {background: #222;}
.btn_close span {width: 15px; height: 15px; background-position: -275px -60px;}

.btn_top {display: none; position: fixed; bottom: 30px; right: 15px; padding: 15px; border-radius: 30px; z-index: 10;}
.btn_top span {width: 22px; height: 22px; background-position: -45px -155px;}

/*----- FORM -----*/
.form label, .form input {display: block;}
.form input, .form select, .form textarea {border: 1px solid #CCC;}
.form label {margin-bottom: 10px; font-weight: normal; cursor: pointer;}
.form label.error {position: absolute; bottom: -20px; width: 100%; margin: 0; font-size: 0.9rem; line-height: 0.8rem; color: #F00; text-align: right;font-weight: bold;}
.form label sup {color: #B3071B;}
.form input[type="text"], .form input[type="number"], .form input[type="email"], .form select {width: 100%; height: 50px; padding: 0 15px;}
.form input[type="text"].error, .form input[type="number"].error, .form input[type="email"].error, .form select.error {border-color: #F00;border-width: medium;}
.form select {border-radius: 0; background: #fff;}
.form .select {position: relative;}
.form .select .arrow {position: absolute; top: 50%; right: 15px; width: 10px; height: 6px; margin-top: -3px; background: url('../images/sprite.png') -5px -125px;}
.form option[disabled] {display: none;}
.form textarea {width: 100%; height: 100px; padding: 15px; resize: none;}

.form_group {position: relative; margin-bottom: 30px;}
.form .warning {position: absolute; bottom: -25px; right: 0; margin: 0; font-size: 1rem; color: #CCC;}

/*----- DATEPICKER -----*/
.ui-datepicker {width: 385px; margin-top: -1px; padding: 15px; border-color: #CCC;}
.ui-datepicker td span, .ui-datepicker td a {padding: 10px 15px;}
.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl {border-radius: 0;}
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border-color: #CECD00; background: #FFF; color: #333;}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {border-color: #333; background: #333; color: #FFF;}
.ui-datepicker .ui-datepicker-header {padding: 10px 0; border: none;}
.ui-icon {width: 6px; height: 10px; transition: .5s;}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {top: 0; width: 30px; height: 100%;}
.ui-datepicker .ui-datepicker-next, .ui-datepicker .ui-datepicker-next-hover {right: 0;}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-prev-hover {left: 0;}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {margin-left: -3px; margin-top: -5px;}
.ui-widget-header .ui-icon {background-image: url('../images/sprite.png');}
.ui-icon-circle-triangle-w {background-position: -25px -125px;}
.ui-icon-circle-triangle-e {background-position: -45px -125px;}
.ui-widget-header .ui-state-hover, .ui-widget-header .ui-state-focus {border: none; background: inherit; cursor: pointer;}

/*----- BLOCK -----*/
.block {position: relative; margin-bottom: 30px; padding: 20px; background: #FFF;}
.block p {text-align: justify;}
.block div:last-child, .block p:last-child {margin-bottom: 0;}

.block_black {background: #222;color: white;text-align: center ;	}
.block_black p { font-size: 1.1rem; text-align: center;}
.block_black small {font-size: 1rem; color: #000;}
.block_black h2, .block_black h3, .block_black p {color: #FFF;}
.block_black .bigger {color: #FFF;display: inline-block; min-width: 100px; margin-bottom: 20px; padding: 10px 15px; border: 1px solid #FFF;font-size: 1.2rem;}
.block_border {border: 40px solid #CECD00;}

.block_title {margin: 0; border-top: 1px solid #333; background: transparent; text-align: center;}
.block_title.more {padding-bottom: 0;}
.block_title h1, .block_title h2 {margin: 0;}

.block_content {min-height: 410px;}
.block_diapo {min-height: 410px;height:calc(80vh-5px);overflow:hidden;}
.block_diapo p{font-size:1.5em;padding-top:5px;margin:0;color:black;}
.block_append {display: none; margin-top: 30px;}
.block_img {overflow: hidden;}

.block_btn {margin-top: 40px; padding-top: 40px; border-top: 1px solid #EEE; font-size: 0;}
.block_btn.fixed {position: absolute; bottom: 40px; width: calc(100% - 80px);}
.block_btn_img {position: absolute;}

.block_alert.informations {background: #49BEF2;}
.block_alert.success {background: #28BA63;}
.block_alert.attention {background: #F28705;}
.block_alert.error {background: #E74C3C;}
.block_alert p {color: #FFF;}

.block_carte {color: black;text-align: center ;	}
.block_carte p { font-size: 1.1rem; text-align: center;}
.block_carte small {font-size: 1rem; color: #000;}
.block_carte .bigger {display: inline-block; min-width: 100px; margin-bottom: 20px; padding: 10px 15px; border: 1px solid #000;font-size: 1.2rem;color:black}

.plat .row { margin-bottom: 20px; }
.plat{border-radius: 0px 0px 15px 15px;}
.formule{	border-radius: 15px;
			background-image: url("../images/fond.jpg");
			background-repeat:no-repeat;
			background-position: center;
			background-size: cover;
			}
.titre_carte_categorie{background:no-repeat center center; background-size: cover;height: 200px;margin:auto;padding: auto;display:flex;}
.menu_la_carte .titre_carte_categorie {margin:10px;border-radius: 15px;}
.titre_carte_categorie a{margin: auto;padding:auto }
.titre_carte_categorie h2{color: white;font-weight: bold;text-align: center;margin: auto;padding: auto;text-shadow: #000 5px 5px 5px;}

.block_formule {color: black;text-align: center;}
.block_formule .row {margin: 0 -1px 30px -1px;}
.block_formule div[class^="col-"] {padding: 0 1px;}
.block_formule h3, .block_formule p {width: 100%; margin: 0; padding: 15px; background: #FFF;}
.block_formule h3 + p {border-top: 2px solid #EEE;}
.block_formule .price {padding: 27px 15px; font-size: 2.7rem;}

.block_text {color: black;
			text-align: center;
			border-radius: 15px;
			background-image: url("../images/fond.jpg");
			background-repeat:no-repeat;
			background-position: center;
			background-size: cover;
			margin: 15px;}
.block_text .row {margin: 0 -1px 30px -1px;}
.block_text div[class^="col-"] {padding: 0 1px;}
.block_text h3, .block_text p {width: 100%; margin: 0; padding: 15px; }
.block_text h3 + p {border-top: 2px solid #EEE;}
.block_text p {color: black;font-size: 1.2em;}
.block_text .price {padding: 27px 15px;  font-size: 2.7rem;}

.block_suggestion{border-bottom:1px solid #fff;padding: 10px 0 10px 0}
.block_photo_sugg{background:no-repeat center center; background-size: cover;height: 150px;}

.block_find {min-height: 300px;}
.block_find p {font-size: 1.1rem; text-align: center;}
.block_map {width: 100%; height: 300px;}

.block_loader {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #EEE; text-align: center; z-index: 1000;}
.block_loader h1{font-family: cocolate;font-size: 6em!important;}
.block_loader img {margin-top: 0;}
.block_loader .loader {display: block;}
.block_loader p {margin-top: 30px;  font-size: 2rem;}


.block_info {position:fixed;top:15vh;right:0;width:auto;height:auto;background-color:#fff;padding:5px;text-align:center;z-index:50;border-radius: 5px;display:block;line-height:1}
.block_info img{display:block;width:18vw;height:auto;}
.block_info .btns_img {padding:13px 15px;}
.block_info .block_btn_img{position:relative;padding:0;margin:0}
.block_info h3{font-family: cocolate;font-size: 3em}
/*----- Carte - nav -----*/
.menu_carte {z-index: 1000;  position: fixed;  right: 10px;  top: 30%;  width: auto;  margin-top: -2.5em;}
.menu_carte p{margin-top: 20px; background-color: white;border-radius: 15px;padding:15px;font-size: 1.5em;}
.menu_carte a,.menu_carte a:active{color:gray;text-decoration:  none;}
.menu_carte a:hover{color: black}


/*----- MENU - MAIN -----*/
.menu {width: 100%; height: 85px; border-bottom: 1px solid #EEE; text-align: center; z-index: 10;}
.menu.fixed {position: fixed; top: 0;}
.menu.fixed + .block {margin-top: 85px;}
.menu_logo {display: none; position: absolute; top: 15px; left: 15px;}
.menu.fixed .menu_logo {display: block;}
.menu .container {position: relative; font-size: 0;}
.menu li {display: inline-block;}
.menu li a {display: block; height: 85px; padding: 30px; border-bottom: 1px solid transparent; font-size: 1rem; color: #333; text-transform: uppercase; transition: .5s;}
.menu li a:hover, .menu li a.active {border-color: #333; background: #F9F9F9; color: #444;}
.menu li:nth-child(1) a:hover, .menu li:nth-child(1) a.active {border-color: #583119;}
.menu li:nth-child(2) a:hover, .menu li:nth-child(2) a.active {border-color: #CECD00;}
.menu li:nth-child(3) a:hover, .menu li:nth-child(3) a.active {border-color: #B3071B;}
.menu li:nth-child(4) a:hover, .menu li:nth-child(4) a.active {border-color: #CE7106;}
.menu_rs {display: none; position: absolute; bottom: 60px; left: 0; width: 100%; text-align: center;}

/*----- MENU - MOBILE -----*/
.menu_mobile {display: none; font-size: 0;}
.mobile_logo, .mobile_btn {display: inline-block; vertical-align: top; width: 50%; line-height: 50px;}
.mobile_logo a {display: block; background: #583119;  font-size: 1.5rem; color: #FFF; text-align: center;}
.mobile_logo a:hover {background: #B3071B;}
.mobile_btn {text-align: right; cursor: pointer;}
.mobile_btn:hover {background: #EEE;}
.mobile_btn p {display: inline-block; vertical-align: middle; margin: 0; font-size: 1.2rem; color: #333;}

/*----- NEWSLETTER -----*/
.newsletter {padding: 40px 0; background: #CE7106; text-align: center;}
.newsletter_form {position: relative; font-size: 0;}
.newsletter_form label {display: block;}
.newsletter_form label, .newsletter_form input, .newsletter_form .select {display: inline-block; vertical-align: middle;}
.newsletter_form label {margin-right: 30px; font-size: 1.8rem; color: #FFF; cursor: pointer;}
.newsletter_form .select {width: 125px;}
.newsletter_form select {height: 47px; border-color: #FFF; border-right: 1px solid #CE7106; font-size: 1rem;}
.newsletter_form input[type="email"] {width: 200px; height: 47px; padding: 0 15px; border: 1px solid #FFF; font-size: 1rem; color: #888;}
.newsletter_form input[type="email"].error {border-color: #F00;}
.newsletter_form .form_group {margin-bottom: 0;}
.newsletter_form .form_checkbox {display: inline-block; vertical-align: middle; padding-left: 25px; border-left: 1px solid #FFF; text-align: right;}
.newsletter_form .form_checkbox label, .newsletter_form .form_checkbox input {margin-bottom: 0; font-size: 1rem;}
.newsletter_form .form_checkbox label {margin-right: 10px;}
.newsletter_form .form_checkbox input {width: auto; margin-right: 20px;}
.newsletter_form .btn_default {min-width: inherit; min-height: 47px; border-color: #FFF; color: #FFF;}
.newsletter_form .btn_default:hover {border-left: 1px solid #CE7106; background: #FFF; color: #CE7106;}
.newsletter_form label.error {display: none !important;}
.newsletter_form span.error {display: none; position: absolute; bottom: -30px; left: 0; width: 100%; font-size: 0.8rem; text-align: center;}

/*----- FOOTER -----*/
.footer {padding: 50px 0 40px; background: #333;}
.footer h4 {margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #444; color: #EEE;}
.footer ul li {margin-top: 5px;}
.footer a {color: #CCC;}
.footer a:hover {color: #EEE;}
.footer_rs {font-size: 0;}
.footer_rs .btn_icon {background-position-y: -50px;}
.footer_rs .btn_icon:hover {background-position-y: -95px;}
.footer img {margin: 0 auto;}
.footer .credits {margin: 40px 0 0; padding-top: 40px; border-top: 1px solid #444; font-size: 0.9rem; text-align: center;}


/* ----------------
    HOMEPAGE
---------------- */
.homepage .filter {background: rgba(0,0,0,0.1);}
.homepage h1 {font-size: 3rem;}
.homepage_header {position: relative; margin-top: 85px; background: url('../images/veranda.jpg') no-repeat center; background-size: cover;}
.homepage_header img {position: absolute; top: 50%; left: 50%; margin-top: -93.5px; margin-left: -100px; z-index: 1;}
.homepage section {padding: 100px 0; background: center right;}
.homepage .restaurant {background-image: url('../images/bg-home-restaurant.jpg');}
.homepage .carte {padding: 75px 0; background: #CECD00; text-align: center;}
.homepage .evenements {background-image: url('../images/bg-home-event.jpg');}
.homepage .evenements h3 {margin-bottom: 5px;}
.homepage .contact { text-align: center;}
.homepage .contact p {margin: 0;}
.homepage .contact .address p {text-align: right;}
.homepage .contact .phone p {text-align: left;}
.homepage .block_map {height: 400px; margin-top: 40px;}
/* the wrapper element that will become the outer circle */
.arrow-wrap {opacity: 0.8;position:absolute;z-index:1;left:50%;top:80%;margin-left:-5em;background:#FFF;width:10em;height:10em;padding:4em 2em;border-radius:50%;font-size:0.5em;display:block;box-shadow:0px 0px 5px 0px #333;}
/* a triangle to make the main part of the arrow. Adjust the border-color to fit your needs */
.fleche { float:left; position:relative; width: 0px; height: 0px; border-style: solid; border-width: 3em 3em 0 3em; border-color: #000000 transparent transparent transparent; -webkit-transform:rotate(360deg);/* added for better anti-aliasing on webkit browsers */
}
/* a pseudo element arrow placed on top of the other one with the same color as the wrapper */
.fleche:after { content:''; position:absolute; top:-3.2em; left:-3em; width: 0px; height: 0px; border-style: solid; border-width: 3em 3em 0 3em; border-color: #FFF transparent transparent transparent; -webkit-transform:rotate(360deg);/* added for better anti-aliasing on webkit browsers */}

@-webkit-keyframes arrows {0% { top:0; } 10% { top:12%; } 20% { top:0; } 30% { top:12%; } 40% { top:-12%; } 50% { top:12%; } 60% { top:0; } 65% { top:12%; } 70% { top:-12%; } 75% { top:12%; }  80% { top:0; } }
.arrow-wrap .fleche {-webkit-animation: arrows 2.8s 0.4s;-webkit-animation-delay: 3s;}

/* ----------------
    PAGE
---------------- */
.page section {margin-bottom: 50px;}

/*----- HEADER -----*/
.page_header {position: relative; max-height: 320px; margin: 85px 0 50px 0; padding: 125px 0; background: no-repeat center;}
.page_carte_interactive .page_header{ max-height: 220px; padding: 75px 0; }
.page_restaurant .page_header {background-image: url('../images/bg-restaurant.jpg');}
.page_carte .page_header {background-image: url('../images/bg-carte.jpg');}
.page_reservation .page_header {background-image: url('../images/bg-reservation.jpg');}
.page_evenements .page_header, .page_evenement .page_header {background-image: url('../images/bg-event.jpg');}
.page_brasero .page_header {background-image: url('../images/bg-brasero.jpg');}
.page_contact .page_header {background-image: url('../images/bg-contact.jpg');}
.page_header .filter {background-color: rgba(0,0,0,0.4);}
.page_header h1 {line-height: 5.2rem; letter-spacing: 2px; color: #FFF;}

/*----- RESTAURANT -----*/
.page_restaurant .block_btn_img {bottom: 0; background-color: #FFF;}
.page_restaurant .block_btn_img.right {right: 15px;}
.page_restaurant .block_btn_img.left {left: 15px;}
.modal-kraft{height:90vh; background-image: url(/images/fond_kraft.jpg);}
/*----- RESERVATION -----*/
.page_reservation .block_alert.informations {display: none;}
/*----- INTERACTIVE -----*/
.page_carte_interactive p, .block{font-size:1.2em}

/*----- EVENEMENTS -----*/
.page_evenements h2, .page_evenements h3 {margin-bottom: 0;}
.page_evenements h3 {min-height: 60px;}
.page_evenements h3 + img {margin: 10px 0;}
.page_evenements .block_content {min-height: inherit;}
.page_evenements .btn_more {background: #222;}
.page_evenements .btn_more span {background-position: -45px -5px;}
.cadre_img{	width:100%; height:200px; overflow:hidden;} /*pierre*/
.cadre_img img{	width:100%;}
.btn-video {display:block;position:fixed;bottom:5vh;left:40vw;width:10vw;height:5vh;background:#fff;padding:5px;border:1px #000 solid;z-index:50;text-align:center;font-size:1.2em}
.btn-video:hover {cursor:pointer}
/* ----------------
    GALERIE
---------------- */
.gallery {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; z-index: 15; overflow: hidden;}
.gallery .loader {position: absolute; top: 50%; left: 50%; width: 70px; height: 70px; border: 20px solid #222; background-image: url('../images/loader-w.gif'); z-index: 20;}
.gallery .block_btn_img {top: 0; bottom: inherit; right: 0; z-index: 15;}
.gallery_btn {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.gallery_btn a {position: absolute; top: 0; width: 50%; height: 100%; opacity: 0.5; transition: .5s;}
.gallery_btn a:hover {opacity: 1;}
.gallery_btn a span {position: absolute; top: 50%; width: 12px; height: 22px; margin-top: -11px; background: url('../images/sprite.png') no-repeat;}
.gallery_btn .left {left: 0;}
.gallery_btn .left span {left: 30px; background-position: -45px -50px;}
.gallery_btn .right {right: 0;}
.gallery_btn .right span {right: 30px; background-position: -5px -85px;}
.gallery .carousel-inner {top: 50%; margin-top: -33%;}
/* Galerie plein écran */
.gallery .carousel-inner > .item {
  display: none;
}
.gallery .carousel-inner > .item.active {
  display: block;
}

/*---------------------
CARTE INTERACTIVE
---------------------*/


.inter_plat{width: 50%; padding:auto;margin-left: auto;margin-right:auto; border-top:1px dotted black;}
.allergene {display: flex;position: left; width: 33px; height: 35px; transition: .5s;background-image: url('../images/long_shadow_preview-1.png');background-size: 250px 70px;background-repeat: no-repeat}
.POISSONS {background-position: top 0px left -72px;}
.GLUTEN {background-position: bottom 0px left -70px;}
.SOJA {background-position:top 0px right -35px;}
.LAIT {background-position: top 0px right 0px;}
.LUPIN {background-position: top 0px left 0px;}
.CRUSTACES {background-position:  bottom 0px left -35px;} 
.OEUF {background-position: bottom 0px left -145px;}
.ARACHIDES {background-position: bottom 0px left 0px;}
.FRUITS_A_COQUES {background-position: top 0px right -108px;  }
.CELERI {background-position: top 0px right -71px;} 
.SESAME {background-position: top 0px left -35px;}
.SULFITES {background-position: bottom 0px right -35px;}
.MOLLUSQUES {background-position: bottom 0px left -35px;} 
.MOUTARDE {background-position: bottom 0px right -107px;}

#allergènes .allergene{display: inline-block}
/* The switch - the box around the slider */
.switch {
  position: relative;
  display: inline-block;
  width: 45px;
  height: 20px;
}

/* Hide default HTML checkbox */
.switch input {display:none;}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before
{
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}


input:checked + .slider {
  background-color: #6FC48B;
}

input:focus + .slider {
  box-shadow: 0 0 1px #6FC48B;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
 }

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

/* ----------------
    POPUP
---------------- */

.popup {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); z-index: 25;}
.popup_content {position: absolute; top: 50%; left: 50%; width: 500px; margin-left: -250px; padding: 50px; background: #FFF; text-align: center;}
.popup_content .block_btn_img {top: 0; right: 0; z-index: 15;}
.popup_content .title {margin-bottom: 20px;}
.popup_content .newsletter_form input, .popup_content .newsletter_form select {border-color: #333; border-right: 0;}
.popup_content .newsletter_form input.error {border-color: #F00;}
.popup_content .newsletter_form input, .popup_content .newsletter_form .btn_default {border-color: #333; color: #333;}
.popup_content .newsletter_form .form_checkbox {border: none; padding: 0;}
.popup_content .newsletter_form .form_checkbox label {color: #333;}
.popup_content .newsletter_form .btn_default:hover {border-left: 1px solid #333; background: #333; color: #FFF;}
.popup_content .newsletter_form span.error {color: #F00;}
.popup_content.mail_send {left: 0; width: 100%; margin-top: -70px !important; margin-left: 0; padding: 50px 20px;}
.popup_content.mail_send p {margin: 0; font-size: 1.7rem; color: #FFF;}
.popup_content.popup_reservation {left: 0; width: 100%; margin-top: -70px !important; margin-left: 0; padding: 50px 20px;}
.popup_content.popup_reservation p {margin: 0; font-size: 1.7rem; color: #FFF;}
.popup_success {background: #28BA63;}
.popup_error {background: #E74C3C;}
.popup_video {left:12vw;right:12vw;width:75vw;margin:0}


/* ----------------
    ANIMATIONS
---------------- */
.block_info { -moz-animation:  fade  ease 4s  ; -webkit-animation: fade ease  4s ; animation: fade ease  4s ;}
.homepage .menu {-moz-animation: menu_top linear .8s; -webkit-animation: menu_top linear .8s; animation: menu_top linear .8s;}
.homepage_header {-moz-animation: fade linear .8s; -webkit-animation: fade linear .8s; animation: fade linear .8s;}
.homepage section .container {}
.homepage section .container.anime {-moz-animation: margin_top linear .5s forwards; -webkit-animation: margin_top linear .5s forwards; animation: margin_top linear .5s forwards;}
.page h1 {-moz-animation: fade linear 1s; -webkit-animation: fade linear 1s; animation: fade linear 1s;}
/*.page_header + .container {-moz-animation: page_margin_top linear 1.2s; -webkit-animation: page_margin_top linear 1.2s; animation: page_margin_top linear 1.2s;}*/
.page_header + .container {-moz-animation: fade linear 1.2s; -webkit-animation: fade linear 1.2s; animation: fade linear 1.2s;}

@-moz-keyframes menu_top {
    0% {top: -160px;}
    100% {top: 0;}
}
@-webkit-keyframes menu_top {
    0% {top: -160px;}
    100% {top: 0;}
}
@keyframes menu_top {
    0% {top: -160px;}
    100% {top: 0;}
}

@-moz-keyframes slide_left {
    0% {right: -20vw;}
	 50% {right: -20vw;}
    100% {right: 0;}
}
@-webkit-keyframes slide_left {
    0% {right: -20vw;}
	 50% {right: -20vw;}
    100% {right: 0;}
}
@keyframes slide_left {
    0% {right: -20vw;}
	   50% {right: -20vw;}
    100% {right: 0;}
}


@-moz-keyframes legende {
    0% {bottom: -160px;}
	 50% {bottom: -160px;}
    100% {bottom: 0;}
}
@-webkit-keyframes legende {
    0% {bottom: -160px;}
	 50% {bottom: -160px;}
    100% {bottom: 0;}
}
@keyframes legende {
    0% {bottom: -160px;}
	 50% {bottom: -160px;}
    100% {bottom: 0;}
}

@-moz-keyframes zoom { 
 100%{ 
	top:-100px;
    -moz-transform:  scale(1.5); 
    }
}
@-webkit-keyframes zoom { 
     100% { 
	 		top:-100px;
            -webkit-transform:  scale(1.5); 
        }
    }
    @keyframes zoom { 
       100% { 
	   		top:-100px;
            transform:  scale(1.5); 
        }
    }

@-moz-keyframes fade {
    0% {opacity: 0;}
    100% {opacity: 1;}
}
@-webkit-keyframes fade {
    0% {opacity: 0;}
    100% {opacity: 1;}
}
@keyframes fade {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

@-moz-keyframes diapo_fade {
    0% {opacity: 0;}
	5% {opacity: 1;}
	95% {opacity: 1;}
    100% {opacity: 0;}
}
@-webkit-keyframes diapo_fade {
   0% {opacity: 0;}
	5% {opacity: 1;}
	95% {opacity: 1;}
    100% {opacity: 0;}
}
@keyframes diapo_fade {
    0% {opacity: 0;}
	5% {opacity: 1;}
	95% {opacity: 1;}
    100% {opacity: 0;}
}




@-moz-keyframes margin_top {
    0% {margin-top: 50px;}
    100% {margin-top: 0;}
}
@-webkit-keyframes margin_top {
    0% {margin-top: 50px;}
    100% {margin-top: 0;}
}
@keyframes margin_top {
    0% {margin-top: 50px;}
    100% {margin-top: 0;}
}


@-moz-keyframes page_margin_top {
    0% {margin-top: 200px;}
    100% {margin-top: 50px;}
}
@-webkit-keyframes page_margin_top {
    0% {margin-top: 200px;}
    100% {margin-top: 50px;}
}
@keyframes page_margin_top {
    0% {margin-top: 200px;}
    100% {margin-top: 50px;}
}





/* ----------------
    RESPONSIVE
---------------- */
@media (max-width: 1200px) {
	/*----- MENU - MOBILE -----*/
	.menu {text-align: right;}
	
	/*----- BLOCK -----*/
	.block_img img {max-width: inherit; height: 410px;}
	
	/*----- PAGE -----*/
	.page .block_content {min-height: 450px;}
	.page_evenements .block_content {min-height: inherit;}
	.page .block_img img {max-width: inherit; width: auto; height: 450px;}
	.page_evenements .block_img img {height: 300px;}
}

@media (max-width: 991px) {
	/*----- MENU - MOBILE -----*/
	.menu {height: 61px;}
	.menu_logo {top: 10px;}
	.menu_logo img {width: 115px;}
	.menu li a {height: 61px; padding: 20px 12px;}
	
	/*----- BUTTONS -----*/
    .btn_title, .btn_default:hover + .btn_title {display: none;}
	
	/*----- BLOCK -----*/
	.block_formule .price {padding: 26px 15px; font-size: 1.9rem;}
	.block_border {border-width: 20px;}
	
	/*----- HEADER -----*/
	.homepage_header, .page_header {margin-top: 61px;}
	
	/*----- PAGE -----*/
	.page_evenements .block_img img {height: 341px;}
	
	/*----- PAGE EVENEMENTS -----*/
	/*.page_evenements article:nth-child(3) .block {margin-top: 30px;}*/
	.cadre_img {height: 150px;}  /*pierre*/
	
	/*----- NEWSLETTER -----*/
	.newsletter_form label {margin-right: 0;}
	.newsletter_form .form_checkbox {display: block; border: none; margin-bottom: 10px; padding-left: 15px; text-align: center;}
	.newsletter_form .form_group {display: inline-block;}
	
	/*----- FOOTER -----*/
	.footer .btn_icon.tripadvisor {margin-top: 15px; margin-left: 0;}
}

@media (max-width: 767px) {
	html, body {font-size: 12px;} 
	section .row:last-child .block {margin-bottom: 30px;}
	section .row:last-child div[class^="col-"]:last-child .block, section .row:last-child article[class^="col-"]:last-child .block {margin-bottom: 0;}
	
	/*----- MENU - MOBILE -----*/
	.menu {height: 50px;}
	.menu_mobile {display: block;}
    .menu_main, .menu_main.fixed {position: fixed; top: 50px; left: -300px; width: 300px; height: 100%; border-right: 1px solid #EEE; text-align: left; transition: .8s; z-index: 15;}
    .menu_main.active {left: 0;}
    .menu_main .container {padding: 0;}
    .menu.fixed .menu_logo {display: none;}
    .menu_main li {display: block;}
    .menu_main li a {width: 100%; height: auto; padding: 15px; border-bottom: 1px solid #EEE;}
    .menu_rs {display: block;}
    
    /*----- BUTTONS -----*/
    .block_btn_img .btns_img {padding: 10px 15px;}
    .btn_top {padding: 10px;}
    
    /*----- BLOCK -----*/
    .block_content, .page .block_content {min-height: inherit;}
    .block_img img {margin: 0 auto;}
    .block_find {min-height: inherit;}
	.block_info img{width: 50vw}
    .block_loader img{ padding: 0;margin: 0;}
    /*----- HEADER -----*/
	.homepage_header, .page_header {margin-top: 50px;}
	
	/*----- HOMEPAGE -----*/
	.homepage section, .homepage .carte {padding: 50px 0;}
	
	/*----- PAGE -----*/
	.page .block_img img, .homepage .block_img img {max-width: 100%; height: auto;}
	
	/*----- PAGE RESTAURANT -----*/
	.page_restaurant section .row .block_content {margin-bottom: 0;}
	.page_restaurant .block_btn_img.right, .page_restaurant .block_btn_img.left {top: 50%; bottom: inherit; left: 50%; right: inherit; margin-top: -25px; margin-left: -30px;}
	.page_restaurant section .block_alert.warning {margin-bottom: 30px;}
	
	/*----- PAGE EVENEMENTS -----*/
	.page_evenements section .row:last-child .block {margin-bottom: 0;}
	.page_evenements .block_img {margin-bottom: 20px !important;}
	
	/*----- NEWSLETTER -----*/
	.newsletter {padding: 30px 0;}
	.newsletter_form label {display: block;}
	.newsletter_form .form_checkbox label {display: inline-block;}
	
	/*----- FOOTER -----*/
	.footer {padding: 30px 0 20px 0;}
	.footer .col-xs-12 {margin-top: 25px; text-align: center;}
	.footer .col-xs-12 h4 {padding-top: 15px; border-top: 1px solid #444;}
	.footer_rs .btn_icon.tripadvisor {margin-top: 0; margin-left: 15px;}
	.footer .credits {margin: 25px 0 0; padding-top: 20px;}
	
	/*----- POPUP -----*/
	.popup_content {width: 480px; margin-left: -240px; padding: 20px;}
	.popup_content .title {margin-bottom: 10px;}
	.popup_video {left:0;right:0;margin:0}
	
	.menu_carte {display: none}
}

@media (max-width: 600px) {
		 .page_header h1 {
			  font-size: 4rem;
    line-height: 6.2rem;
    letter-spacing: 6px;
    color: #FFF;
	}
	
	/*----- NEWSLETTER -----*/
	.newsletter_form label {display: block; margin: 0; margin-bottom: 15px;}
	.popup_video {left:0;right:0;margin:0}
	
	/*----- BLOCK -----*/
	.block_info img{width: 40vw}
	.block_loader img{ padding: 0;margin: 0;}
	.menu_carte {display: none}
}

@media (max-width: 480px) {
	hr {margin: 30px 0;}
		 .page_header h1 {
			  font-size: 4rem;
    line-height: 6.2rem;
    letter-spacing: 6px;
    color: #FFF;
	}
	/*----- BLOCK -----*/
	.block {padding: 30px;}
	.block_btn {margin-top: 30px; padding-top: 30px;}
	.block_info img{width: 30vw}
	.block_loader img{ padding: 0;margin: 0;}
	/*----- HOMEPAGE -----*/
	.homepage .block_map {margin-top: 30px;}
	
	/*----- PAGE -----*/
	.page_header, .page section {margin-bottom: 40px;}
	
	/*----- POPUP -----*/
	.popup_content {width: 320px; margin-left: -160px; padding: 15px;}
	.popup_video {left:0;right:0;margin:0}
	
	.menu_carte {display: none}
	body{font-size: 20px;}
}

@media (max-width: 479px) {
	 .page_header h1 {
		 font-size: 4rem;
    line-height: 5.2rem;
    letter-spacing: 6px;
    color: #FFF;
	}
	
	/*----- NEWSLETTER -----*/
	.newsletter_form .select {display: block; width: 250px; margin: 0 auto 10px auto;}
	.newsletter_form select {border-right-color: #FFF;}
	.popup .newsletter_form select {border-right: 1px solid #333;}
	
	/*----- DATEPICKER -----*/
	.ui-datepicker {width: 230px; padding: 5px;}
	.ui-datepicker .ui-datepicker-header {padding: 5px 0;}
	.ui-datepicker td span, .ui-datepicker td a {padding: 7px;}
	
	/*----- PAGE EVENEMENTS -----*/
	.page_evenements section .col-xs-6 {float: none; max-width: 345px; width: 100%; margin: 0 auto;}
	/*.page_evenements article:nth-child(2) .block {margin-top: 30px;}*/
	
	.page_evenement .btn_right, .page_evenement .btn_left {width: 100%;}
	.page_evenement .btn_right {margin-bottom: 20px;}
	.popup_video {left:0;right:0;margin:0}
	
	/*----- BLOCK -----*/
	.block_info img{width: 40vw}
	.block_loader img{ padding: 0;margin: 0;}
	.menu_carte {display: none}
	body{font-size: 20px;}
}

@media (max-width: 320px) {
	/*----- BUTTONS -----*/
	.btns_img {padding: 10px 15px;}
	.block_btn_img .btns_img {padding: 5px;}
	
	/*----- BLOCK -----*/
	.block_loader{ padding: 0;margin: 0;}
	.block_loader img{ padding: 0;margin: 0;}
	.block_info img{width: 40vw}
	
	/*----- POPUP -----*/
	.popup_content {width: 290px; margin-left: -145px;}
	.popup_video {left:0;right:0;margin:0}
	
	body{font-size: 20px;}
	.menu_carte {display: none}
}

/* ----------------
   OVERRIDES GALERIE 2025-11-23
   (taille images + flèches + bouton fermer)
---------------- */

.gallery .carousel-inner {
  position: absolute;
  top: 100%;                       /* au lieu de 50% */
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90vw;
  height: 80vh;                   /* un peu moins haut */
  display: flex;
  align-items: center;
  justify-content: center;
}



.gallery .carousel-inner .item img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Bouton fermer */
.gallery .btn_close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 9999;
  width: 40px;
  height: 40px;
  border: none;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  cursor: pointer;
}

.gallery .btn_close span {
  background: none !important;
}

.gallery .btn_close span::before {
  content: "✕";
  color: #fff;
  font-size: 24px;
  line-height: 40px;
  text-align: center;
  display: block;
}

/* Flèches navigation */
.gallery_btn a {
  width: 40px !important;
  height: 40px !important;
  top: 50% !important;
  transform: translateY(-50%);
  opacity: 1 !important;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  z-index: 9999;
}

.gallery_btn .left {
  left: 20px !important;
}

.gallery_btn .right {
  right: 20px !important;
}

.gallery_btn a span {
  background: none !important;
}

.gallery_btn a.left span::before,
.gallery_btn a.right span::before {
  color: #fff;
  font-size: 32px;
  position: absolute;
  top: -2px;
}

.gallery_btn a.left span::before {
  content: "‹";
  left: 8px;
}

.gallery_btn a.right span::before {
  content: "›";
  left: 10px;
}

/* ----------------
   MENUS DE NOEL
---------------- */
.page_noel .page_header {
  background-size: cover;
  background-position: center;
}

.page_noel .page_header .filter {
  background: rgba(0, 0, 0, 0.45);
}

.page_noel .page_header h1,
.page_noel .noel_header_subtitle {
  color: #fff;
}

.noel_header_subtitle {
  max-width: 520px;
  font-size: 18px;
  margin-top: 10px;
}

.noel_grid {
  margin-top: 20px;
}

.noel_card {
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.noel_card .block_img {
  height: 260px;
  background-size: cover;
  background-position: center;
}

.noel_card .block_content {
  padding: 20px;
  flex: 1;
}

.noel_card h3 {
  margin-top: 0;
}

.noel_card .block_btn {
  margin-top: 12px;
}

.noel_infos {
  border-radius: 12px;
  background: #f6f0e8;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
}

.noel_promo {
  margin: 30px auto;
}

.noel_promo .block_img {
  min-height: 260px;
  border-radius: 12px;
  background-size: cover;
  background-position: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.noel_highlight {
  border-radius: 12px;
  background: #fff8f6;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
  padding: 30px;
}

.noel_highlight .block_btn {
  margin-top: 10px;
}

.noel_rappel {
  margin: 25px 0;
}

.footer_noel_banner {
  background: linear-gradient(120deg, #b2182b 0%, #7a0f1f 100%);
  color: #fff;
  padding: 18px 0;
}

.footer_noel_banner .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.footer_noel_banner h4 {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.footer_noel_banner p {
  margin: 0;
}

.footer_noel_banner .btns {
  background: #fff;
  color: #7a0f1f;
}

@media (max-width: 767px) {
  .noel_card .block_img {
    height: 220px;
  }

  .noel_header_subtitle {
    font-size: 16px;
  }

  .footer_noel_banner .container {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Noël à emporter */
.page_noel_emporter .noel_price {
  font-size: 18px;
  font-weight: 700;
  color: #7a0f1f;
  margin-bottom: 10px;
}

.page_noel_emporter .form_control,
.page_noel_emporter input[type="number"],
.page_noel_emporter input[type="text"],
.page_noel_emporter input[type="email"],
.page_noel_emporter input[type="tel"],
.page_noel_emporter textarea {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
}

.page_noel_emporter .total_commande {
  font-size: 20px;
  margin-top: 10px;
  margin-bottom: 10px;
}
