#widget-panier {
    left: 50%;
    width: auto;
    transform: translateX(-50%);
}

.OsPanier.api .ospanier.minitoggle .entete,
.OsPanier.api .ospanier.minitoggle.etat1 .entete {
    background: none;
    color: #000;
    height: auto;
    line-height: 1;
    padding: 0;
}

.w3-theme-l5 {color:#000 !important; background-color:#fdf3f3 !important}
.w3-theme-l4 {color:#000 !important; background-color:#f8d9d6 !important}
.w3-theme-l3 {color:#000 !important; background-color:#f2b2ad !important}
.w3-theme-l2 {color:#000 !important; background-color:#eb8c83 !important}
.w3-theme-l1 {color:#fff !important; background-color:#e4665a !important}
.w3-theme-d1 {color:#fff !important; background-color:#d13122 !important}
.w3-theme-d2 {color:#fff !important; background-color:#ba2b1e !important}
.w3-theme-d3 {color:#fff !important; background-color:#a3261a !important}
.w3-theme-d4 {color:#fff !important; background-color:#8b2017 !important}
.w3-theme-d5 {color:#fff !important; background-color:#741b13 !important}

.w3-theme-light {color:#000 !important; background-color:#fdf3f3 !important}
.w3-theme-dark {color:#fff !important; background-color:#741b13 !important}
.w3-theme-action {color:#fff !important; background-color:#741b13 !important}
.w3-text-theme-action {color: #741b13 !important}
.w3-border-theme-action {border-color:#741b13 !important}

.w3-theme {color:#fff !important; background-color:#dd3f31 !important}
.w3-text-theme {color:#dd3f31 !important}
.w3-border-theme {border-color:#dd3f31 !important}

.w3-hover-theme:hover {color:#fff !important; background-color:#dd3f31 !important}
.w3-hover-text-theme {color:#dd3f31 !important}
.w3-hover-border-theme:hover {border-color:#dd3f31 !important}

.w3-hover-theme-dark:hover {color:#fff !important; background-color:#741b13 !important}
.w3-hover-theme-action:hover {color:#fff !important; background-color:#741b13 !important}
.w3-hover-text-theme-action:hover {color:#741b13 !important}

#captcha {
    display: none;
}

html, body {
    height: 100%;
}

h2, h3  {
    font-family: 'Lobster', sans-serif;
}

section {
    position: relative;
}

.w3-modal {z-index: 999;}

.fa-ul {
    margin-left: initial;
    padding-left: 40px;
}

.fullscreen:first-of-type {
    height: 100%;
}

.fullscreen {
    height: calc(100% - 52px);
}

.btn-floating-xlarge {
    width: 112px;
    height: 112px;
    line-height: 112px;
}

.w3-btn-floating-large.w3-border {
    border-width: 3px !important;
}

.btn-up {
    border-top: 0;
    border-radius: 0 0 50% 50%;
}

.btn-down {
    border-bottom: 0;
    border-radius: 50% 50% 0 0;
}

.cursor {
    cursor: pointer;
}

#loader {
    position: absolute;
    top: 0;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    width: 100%;
    z-index: 9999;
    background-color: #fff;
}

#loader > div {
    margin: auto;
}

#header #logo a {
    transition: text-shadow .5s;
}

#header #logo a:hover {
    color: #fff;
    text-shadow: 0 8px 16px rgba(0,0,0,0.2),0 6px 20px rgba(0,0,0,0.19);
}

#nav {
    z-index: 3;
    font-family: 'Lobster', sans-serif;
    letter-spacing: 1px;
}

#section-intro {
    background: url(../../images/intro.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-position: center 0;
    background-repeat: no-repeat;
}

#section-intro > div {
    transition: opacity 1s ease;
    opacity: 1;
}

#section-intro > div.hidden {
    opacity: 0;
}

#section-intro header, #section-intro p {
    text-shadow : 0 4px 8px rgba(0,0,0,0.4), 0 3px 10px rgba(0,0,0,0.39);
}

#section-intro header {
    font-family: 'Lobster', sans-serif;
}

#section-intro p{
    font-weight: bold;
    letter-spacing: 1px;
    word-spacing: 5px;
}

#section-intro footer a {
    padding-top: 70px;
}

#section-intro footer a #discover {
    margin-top: 50px;
    text-transform: uppercase;
    font-family: 'Baloo Thambi', cursive;
    border-width: 3px !important;
    border-radius: 50%;
    letter-spacing: 2px;
}

#section-intro footer a:hover #discover{
    color:#fff !important; 
    background-color:#741b13 !important;
    border-color: #fff !important;
}

#section-intro footer a #chevron-down {
    /*position: absolute;*/
    /*top: 95%;*/
    /*left: 50%;*/
    width: 24px;
    height: 24px;
    margin-left: auto;
    margin-right: auto;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    box-sizing: border-box;
    opacity: 0;
}

#section-intro footer a:hover #chevron-down {
    animation: chevron-down 1.5s infinite;
}
@keyframes chevron-down {
    0% {
        transform: rotate(-45deg) translate(0, 0);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: rotate(-45deg) translate(-20px, 20px);
    }
}

#section-about {
    background: url(../../images/about.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-position: center 0;
    background-repeat: no-repeat;
    /*min-height: 700px;*/
    display: -ms-flexbox;
    display: flex;
}

#section-about > div {
    width: 50%;
    margin-bottom: auto;
    margin-top: auto;
    margin-left: auto;
    transition: margin-right 1s ease;
}

#section-about > div.hidden {
    margin-right: -50%;
}

#section-about #formule {
    padding-top: 16px !important;
}

#section-about #formule > div:nth-child(2) > div:before {
    content: '';
    width: 32px;
    height: 100%;
    position: absolute;
    left: -24px;
    top: 0;
    display: block;
    z-index: -1;
    box-shadow: 32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, 32px 32px 0 0 #fff, 32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15);
}

#section-about #formule > div:nth-child(2) > div {
    position: relative;
    z-index: 1;
}

#section-about #formule > div:nth-child(2) > div:after {
    content: '';
    width: 32px;
    height: 100%;
    position: absolute;
    right: -24px;
    top: 0;
    display: block;
    z-index: -1;
    box-shadow: -32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, -32px 32px 0 0 #fff, -32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15);
}

#section-about #formule .bed-formule {
    background-color: #666666;
}

#section-about #formule .cutlery-formule {
    background-color: #999999;
}

#section-about #formule .child-formule {
    background-color: #cccccc;
}

#section-about #features {
    width: 75%;
    margin: auto;
}

#section-about #features ul {
    line-height: 2em;
    margin-top: 0;
    margin-bottom: 0;
}

#section-about #features .fa-li {
    font-size: x-large;
}

#section-menu {
    background: url(../../images/menu.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-position: center 0;
    background-repeat: no-repeat;
    /*min-height: 700px;*/
    display: -ms-flexbox;
    display: flex;
}

#section-menu > div {
    width: 50%;
    margin-right: auto;
    transition: margin-left 1s ease;
}

#section-menu > div.hidden {
    margin-left: -50%;
}

[role="button"] {
    cursor: pointer;
}
.carousel {
    position: relative;
    height: calc(100% - 107px);
}
.carousel-inner {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: calc(100% - 50px);
}
.carousel-inner > .item {
    display: none;
    position: relative;
    transition: 0.6s ease-in-out left;
}

@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-inner > .item {
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        perspective: 1000px;
    }
    .carousel-inner > .item.next,
    .carousel-inner > .item.active.right {
        transform: translate3d(100%, 0, 0);
        left: 0;
    }
    .carousel-inner > .item.prev,
    .carousel-inner > .item.active.left {
        transform: translate3d(-100%, 0, 0);
        left: 0;
    }
    .carousel-inner > .item.next.left,
    .carousel-inner > .item.prev.right,
    .carousel-inner > .item.active {
        transform: translate3d(0, 0, 0);
        left: 0;
    }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
    display: block;
}
.carousel-inner > .active {
    left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%;
}
.carousel-inner > .next {
    left: 100%;
}
.carousel-inner > .prev {
    left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
    left: 0;
}
.carousel-inner > .active.left {
    left: -100%;
}
.carousel-inner > .active.right {
    left: 100%;
}
.carousel-control {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 15%;
    /*opacity: 0.5;*/
    /*filter: alpha(opacity=50);*/
    font-size: 20px;
    /*color: #ffffff;*/
    /*text-align: center;*/
    /*text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);*/
    /*background-color: rgba(0, 0, 0, 0);*/
}
.carousel-control.left {
    /*  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
      background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
      background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
      background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);*/
}
.carousel-control.right {
    left: auto;
    right: 0;
    /*  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
      background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
      background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
      background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);*/
}
.carousel-control:hover,
.carousel-control:focus {
    /*outline: 0;*/
    /*color: #ffffff;*/
    /*text-decoration: none;*/
    /*opacity: 0.9;*/
    /*filter: alpha(opacity=90);*/
}
.carousel-control > i {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    z-index: 5;
    display: inline-block;
}

.carousel-control.left > i {
    left: 50%;
    margin-left: -10px;
}

.carousel-control.left > i:first-of-type {
    margin-left: -30px;
    margin-top: -11px;
    opacity: 0;
}

.carousel-control.left:hover >i:first-of-type {
    animation: carousel-left-arrow 1s infinite;
}

@keyframes carousel-left-arrow {
    0% {
        transform: translate(0%, 0%);
        opacity: 0;
    }
    100% {
        transform: translate(50%, 0%);
        opacity: 1;
    }
}

.carousel-control.left:hover >i:last-of-type {
    animation: carousel-left-chevron 1s infinite;
}

@keyframes carousel-left-chevron {
    0% {
        transform: translate(0%, 0%);
        opacity: 1;
    }
    100% {
        transform: translate(50%, 0%);
        opacity: 0;
    }
}

.carousel-control.right > i {
    right: 50%;
    margin-right: -10px;
}

.carousel-control.right > i:last-of-type {
    margin-right: -30px;
    margin-top: -11px;
    opacity: 0;
}

.carousel-control.right:hover > i:last-of-type {
    animation: carousel-right-arrow 1s infinite;
}

@keyframes carousel-right-arrow {
    0% {
        transform: translate(0%, 0%);
        opacity: 0;
    }
    100% {
        transform: translate(-50%, 0%);
        opacity: 1;
    }
}

.carousel-control.right:hover >i:first-of-type {
    animation: carousel-right-chevron 1s infinite;
}

@keyframes carousel-right-chevron {
    0% {
        transform: translate(0%, 0%);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, 0%);
        opacity: 0;
    }
}

.carousel-indicators {
    max-width: 95%;
    margin-right: auto;
    margin-left: auto;
    font-family: 'Baloo Thambi', cursive;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.carousel-indicators li {
    display: block;
    padding: 8px 16px;
    cursor: pointer;
    transition: all .5s;
}

.carousel-indicators li:hover {color:#fff !important; background-color:#741b13 !important}

.carousel-indicators li.active {color:#fff !important; background-color:#dd3f31 !important}

.carousel-indicators img {
    max-height: 32px;
    max-width: auto;
}

@media screen and (min-width: 768px) {
    .carousel-control .glyphicon-chevron-left,
    .carousel-control .glyphicon-chevron-right,
    .carousel-control .icon-prev,
    .carousel-control .icon-next {
        width: 30px;
        height: 30px;
        margin-top: -10px;
        font-size: 30px;
    }
    .carousel-control .glyphicon-chevron-left,
    .carousel-control .icon-prev {
        margin-left: -10px;
    }
    .carousel-control .glyphicon-chevron-right,
    .carousel-control .icon-next {
        margin-right: -10px;
    }
    .carousel-caption {
        left: 20%;
        right: 20%;
        padding-bottom: 30px;
    }
    .carousel-indicators {
        bottom: 20px;
    }
}

.restaurant-menu-list {
    list-style: none;
    padding: 0 10%;
}

.restaurant-menu-list li {
    margin-bottom: 32px;
}

.restaurant-menu-name {
    display: table-cell;
    white-space: nowrap;
    padding-right: 4px;
    font-weight: bold;
}

.restaurant-menu-dots {
    height: 2px;
    background: radial-gradient(circle closest-side,#b3b3b3 99%,transparent 100%);
    background-position: 50% 77%;
    background-size: 4px 2px;
    background-repeat: repeat-x;
    display: table-cell;
    width: 98%;
    z-index: 1;
    position: relative;
}

.restaurant-menu-price {
    display: table-cell;
    padding-left: 4px;
    white-space: nowrap;
    color:#dd3f31 !important
}
#section-gallery {
    background: url(../../images/gallery.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-position: center 0;
    background-repeat: no-repeat;
    /*min-height: 700px;*/
    display: -ms-flexbox;
    display: flex;
}

#section-gallery > div {
    width: 50%;
    margin: auto;
    transition: transform 1.5s ease;
}

#section-gallery > div.hidden-bottom {
    -ms-transform: translateY(65%);
    transform: translateY(65%);
}

#section-gallery > div.hidden-top {
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

#section-gallery img {
    width: 100%;
}

#section-gallery #gallery {
    margin: 0 -16px 16px -16px;

}

#section-gallery #gallery > div {
    overflow: hidden;
}

#section-gallery #gallery img {
    transition: transform .3s;
}

#section-gallery #gallery img:hover {
    -ms-transform: scale(1.5);
    transform: scale(1.5);
}

#section-gallery .mySlides {
    display: none;
}

#section-contact > div {
    transition: transform 1s ease;
}

#section-contact > div.hidden {
    -ms-transform: scale(0);
    transform: scale(0);
}

#section-contact header {
    margin-top: 64px;
}

#section-contact iframe {
    border: 0;
    width: 100%;
    height: 500px;
}

#route-tabs {
    display: -ms-flexbox;
    display: flex;
}

#route-tabs a {
    text-decoration: none;
    display: -ms-flexbox;
    display: flex;
}

#route-tabs a div {
    margin: auto auto 0 auto;
}

.route {
    display: none;
}

.w3-progress-container {
    background-color: #ccc;
}

.partners a {
    display: inline-block;
}

.partners img {
    max-width: 100%;
}

@media screen and (max-width: 1600px) {
    #section-intro > div {
        width: 100%;
    }

    #section-menu .w3-container p {
        margin: 4px 0;
    }

    .carousel-indicators {
        font-size: smaller;
    }

    .restaurant-menu-list > li {
        margin-bottom: 16px;
        font-size: smaller;
    }

    .restaurant-menu-description p{
        margin: 4px 0;
    }

    #section-gallery > div {
        width: 41%;
    }

    .w3-modal-content {
        max-width: 600px;
    }

    #section-contact > div {
        font-size: smaller;
    }

    #section-contact iframe {
        height: 300px;
    }

    #lightbox {
        padding-top: 50px;
    }

    #section-contact .w3-row > .w3-half:first-child p {
        margin: 4px 0;
    }
}

@media screen and (min-width: 993px) {
    #header.alt ul {
        background-color: transparent !important;
        box-shadow: none !important;
    }

    #header.alt a {
        transition: text-shadow .5s;
    }

    #header.alt a:hover {
        background-color: transparent !important;
        text-shadow: 0 8px 16px rgba(0,0,0,0.2),0 6px 20px rgba(0,0,0,0.19);
    }
}

@media screen and (max-width: 992px) {
    header #nav {
        box-shadow: none !important;
    }

    .w3-opennav:hover {
        opacity: 1;
    }

    #open-nav {
        margin-top: 4px;
    }

    #open-nav:hover {
        background-color: transparent;
        color: #fff;
    }

    #open-nav div {
        background-color: #fff;
        border-radius: 1px;
        height: 4px;
        width: 25px;
        margin: 4px;
        transition: transform .2s ease;
    }

    #open-nav:hover div:nth-child(1) {
        -ms-transform: translateY(3px);
        transform: translateY(3px);
    }

    #open-nav:hover div:nth-child(3) {
        -ms-transform: translateY(-3px);
        transform: translateY(-3px);
    }

    #sidenav {
        width: 100%;
        margin-top: -245px;
        position: fixed;
        z-index: 2;
        transition: all .3s ease-in-out;
    }

    #sidenav.show {
        margin-top: 51px;
    }

    .w3-topnav, .w3-navbar {
        text-align: center;
    }

    .w3-navbar li:not(.w3-opennav) {
        float: none;
        width: 100%!important;
    }

    #section-intro > div {
        width: 100%;
    }


    /*    html, body {
            font-size: 12px;
        }*/

    /*    .w3-tiny{font-size:8px!important}.w3-small{font-size:10px!important}
        .w3-medium{font-size:12px!important}.w3-large{font-size:15px!important}
        .w3-xlarge{font-size:18px!important}.w3-xxlarge{font-size:24px!important}
        .w3-xxxlarge{font-size:36px!important}.w3-jumbo{font-size:48px!important}*/

    .fullscreen {
        height: initial;
    }

    /*    #header #logo a {
            padding: 0 2px;
        }*/

    /*    #open-nav {
            padding: 0;
        }*/

    /*    #section-intro h2 {
            font-size: 36px !important;
            line-height: 1;
        }
    
        #section-intro p {
            font-size: 15px !important;
            letter-spacing: normal;
            word-spacing: normal;
        }*/

    #section-about > div {
        width: 100%;
    }

    #section-about > div.hidden {
        margin: 0;
    }

    /*    #section-about #formule > div:nth-child(2) {
            border-top: 1px solid #999999;
            border-bottom: 1px solid #999999;
        }
    
        #section-about #formule > div:nth-child(2) > div:before {
            display: none;
        }
    
        #section-about #formule > div:nth-child(2) > div:after {
            display: none;
        }*/

    #section-about #formule h3, #section-about #formule p {
        margin: 0;
    } 

    #section-about #formule p {
        margin-bottom: 12px;
    }

    #section-menu > div {
        width: 100%;
    }

    #section-menu > div.hidden {
        margin: 0;
    }

    .carousel {
        height: initial;
    }

    .carousel-indicators {
        max-width: 100%;
    }

    .carousel-indicators > li.tablink {
        float: left;
        width: initial!important;
        padding: 4px 8px;
    }

    #section-gallery > div {
        width: 100%;
    }

    #section-gallery > div.hidden-bottom {
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    #section-gallery > div.hidden-top {
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    #route-tabs {
        display: block;
    }

    .partners a {
        display: block;
        margin-bottom: 12px;
    }
}

@media screen and (max-width: 600px) {
    html, body {
        font-size: 12px;
    }

    .w3-tiny{font-size:8px!important}.w3-small{font-size:10px!important}
    .w3-medium{font-size:12px!important}.w3-large{font-size:15px!important}
    .w3-xlarge{font-size:18px!important}.w3-xxlarge{font-size:24px!important}
    .w3-xxxlarge{font-size:36px!important}.w3-jumbo{font-size:48px!important}

    .fullscreen {
        height: initial;
    }

    #header #logo a {
        padding: 0 2px;
    }

    #open-nav {
        padding: 0;
    }

    #sidenav.show {
        margin-top: 28px;
    }

    #section-intro h2 {
        font-size: 36px !important;
        line-height: 1;
    }

    #section-intro p {
        font-size: 15px !important;
        letter-spacing: normal;
        word-spacing: normal;

    }

    #section-about > div {
        width: 100%;
    }

    #section-about > div.hidden {
        margin: 0;
    }

    #section-about #formule > div:nth-child(2) {
        border-top: 1px solid #999999;
        border-bottom: 1px solid #999999;
    }

    #section-about #formule > div:nth-child(2) > div:before {
        display: none;
    }

    #section-about #formule > div:nth-child(2) > div:after {
        display: none;
    }

    #section-about #formule h3, #section-about #formule p {
        margin: 0;
    } 

    #section-about #formule p {
        margin-bottom: 12px;
    }

    #section-menu > div {
        width: 100%;
    }

    #section-menu > div.hidden {
        margin: 0;
    }

    #section-gallery > div {
        width: 100%;
    }

    #section-gallery > div.hidden-bottom {
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    #section-gallery > div.hidden-top {
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    .carousel {
        height: initial;
    }

    .carousel-indicators {
        max-width: 100%;
    }

    .carousel-indicators > li.tablink {
        float: left;
        width: initial!important;
        padding: 4px 8px;
    }

    #route-tabs {
        display: block;
    }

    .partners a {
        display: block;
        margin-bottom: 12px;
    }
}