:root {
    --color0: #ffffff;
    --color1: #e5bc6e;
    --colordark: #000;
    --color2: #f7dfb0;
    --color3: #212121;
    --color4: #5a5a5a;
    --bg-facultatif: #f5f5f5;
    --font_family_1: 'Cinzel-Regular';
    --font_family_2: 'RobotoCondensed-Regular';
    --font_family_3:
    'Great_Vibes';
    --taille_font: 16px;
    --border-radius: 4px;
}


@media(max-width:1724px){
.tete .tel{
        padding: 8px 15px !important;
    }
    header p.tel.callTracker span {
    font-size: 15px !important;
}
    .container {
        max-width: 100%;
        width: 100%;
        padding: 0 0% !important;
    }
    .fluid-menu{
        padding: 1rem 2em 
    }
    .navh .menu_haut_principal a, .navh .menu_haut_principal a:visited{
        font-size: 17px !important;
    }
}
@media(max-width:1235px){
    .head-flex .col-md-2.nopad.right{
        display: none !important;
    }
    .head-flex .col-md-7.nopad{
        width: 70% !important;
    }
    
}
.reservation-container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-direction: row-reverse;
    padding: 0 10%;
}
.reservation-bg {
    position: relative;
    padding: 4rem 0rem 0rem 0rem;
    display: flex;
    width: 50%;
    /* height: 100%; */
    top: 0;
    left: 0;
    z-index: 0;
    transition: 0.5s cubic-bezier(0.19, 0.71, 0.71, 0.67);
    /* justify-content: center; */
}
.scroll-container {
    z-index: 10;
    width: 30px;
    height: 60px;
    border: 3px solid #fff;
    border-radius: 15px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 50px;
    opacity: 0.01;
    display: none;
}

.scroller {
    width: 16px;
    border-radius: 8px;
    background-color: #fff;
    position: absolute;
    top: 4px;
    left: 4px;
    bottom: 34px;
    animation: scroller 1.5s ease-out infinite
}

@keyframes scroller {
    0% {
        bottom: 34px
    }

    5% {
        top: 4px
    }

    32% {
        bottom: 4px
    }

    66% {
        top: 34px;
        bottom: 4px
    }

    100% {
        top: 4px;
        bottom: 34px
    }
}

.reserv-table .h1:after {
}

.propor-cont {
    position: relative;
    overflow: hidden
}

.propor-cont:hover .imagecont img {
    transform: scale3d(1.1,1.1,1);
    transition: .3s
}

.propor-cont .imagecont img {
    transition: .3s
}

.propor-cont:after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: .3s
}

.propor-cont:hover:after {
    background: #caa26f61!important;
    transition: .3s
}

.title-item-gallery {
    position: absolute;
    color: var(--color0);
    left: 50%;
    bottom: 5px;
    font-family: var(--font_family_1);
    transform: translateX(-50%);
    z-index: 1;
    font-weight: 600
}

.reserv-table {
    position: relative;
    padding: 5em 0;
    background-image: url(../images/bg-reservation.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
    text-align: center
}

.reserv-table:after {
    content: "";
    width: 100%;
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--colordark);
    z-index: -1;
    opacity: .8
}

.reserv-table h1:after {
    background: #272727
}

.reserv-table h1 {
    color: var(--color1)
}

.flex-intro {
    display: flex;
    margin: 60px 0;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.flex-left {
    position: relative;
    flex: 1;
    margin: auto
}

.flex-right {
    flex: 1;
    text-align: center
}

.head-flex {
    display: flex;
    align-items: center;
}

.two-pictures {
    display: flex;
    margin: auto;
    margin-right: 30px;
    min-height: 500px
}

.pic-1 {
    width: 45%;
    margin: auto;
    margin-right: 30px
}

.pic-2 {
    width: 55%;
    margin-right: 50px
}

.datepicker {
    padding: 20px
}

.reserv-table .titre-secondaire {
    color: var(--color0)
}


.modal-body .horaires span {
    color: var(--color2);
}

span.horaires-label-opening {
    color: #debb89!important
}

span.horaires-label-opened {
    color: #1f1!important
}

.second-div:after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    /* background-color: #04191d80; */
    width: 100%;
    height: 100%;
    content: "";
    z-index: -1
}

table.horaire-table {
    color: #ffffffb3
}

.coordonnees table.horaire-table {
    color: var(--colordark)
}

.modal-body table.horaire-table {
    color: var(--color3);
    margin-bottom: 50px!important
}

tbody tr:first-child {
    color: var(--color0)
}

.modal-content .horaire-table tbody tr:first-child {
    color: var(--color2)!important
}

.coordonnees tbody tr:first-child {
    color: var(--color2)
}

span.slogan-contact {
    color: var(--color0)
}

.button-contact {
    position: relative;
    margin-top: 60px;
    display: block
}

.services {
    position: relative;
    padding: 4em 0%;
    background: var(--color0) url(../images/services-bg.jpg) no-repeat center / cover fixed;
}

.body-page-1 .services:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color3);
    opacity: 0.8;
}

.services .container {
    max-width: 1440;
}

.services-container.services-flex {
    display: flex;
    position: relative;
    justify-content: space-between;
}

.services-block {
    overflow: hidden;
    position: relative
}

.Title-services {
    position: relative;
    bottom: 0;
    z-index: 1;
    width: 100%;
    text-align: center;
    padding: 20px;
    /* background: var(--color0); */
}

.Title-services a {
    padding: 10px;
}

.services-container {
    overflow: hidden;
    position: relative;
    /* padding: 0 30px; */
}
.service-slideshow {padding-bottom: 4rem;}
.services-container:hover .swiper-button-prev {
    opacity: 1;
    /* left: 0; */
}

.services-container:hover .swiper-button-next {
    opacity: 1;
    /* right: 0; */
}
.swiper-pagination-bullet-active{background: var(--color1);}
.services-container .chevron:before, .services-container .chevron:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color0);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
    -webkit-transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}
.services-container .swiper-button-next .chevron:before, .swiper-button-next .chevron:after {
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
}

.services-container .swiper-button-prev:hover .chevron:before {transform: rotate(-40deg);}
.services-container .swiper-button-prev:hover .chevron:after {transform: rotate(40deg);}

.services-container .swiper-button-next:hover .chevron:before {transform: rotate(40deg);}
.services-container .swiper-button-next:hover .chevron:after {transform: rotate(-40deg);}


.nav-button .swiper-button-prev {
    left: 0;
    right: inherit;
}

.swiper-button-prev {
    left: 0;
}

.nav-button .swiper-button-next {
    left: inherit;
    right: 0;
    color: var(--color0);
    background: black;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-button >div {
    background: black;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color0);
}

.service {
    position: relative;
    flex: 1;
    height: 460px;
    /* margin: 20px 7px; */
    /* box-shadow: 0 0 5px #00000057; */
    display: flex;
    flex-direction: column;
    border-radius: 0px;
    overflow: hidden;
    justify-content: flex-end;
    /* border-radius: var(--border-radius); */
}

.service:before {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1;
    /* background: -webkit-linear-gradient(top,rgb(0 0 0 / 0%) 0%,rgb(0 0 0 / 49%) 55%,rgb(0 0 0 / 73%) 100%); */
}

.service-fimg {
    margin: 0 0 20px;
    z-index: 1;
    position: absolute;
    overflow: hidden;
    transition: .3s ease-in-out;
    margin-bottom: 0;
    width: 100%;
    height: 100%;
    /* border-radius: var(--border-radius); */
    z-index: 0
}

.service-fimg:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgb(0 0 0 / 90%) 0, rgb(0 0 0 / 75%) 20%, rgb(255 255 255 / 0) 75%, rgb(255 255 255 / 0) 100%);
    opacity: 1;
    z-index: 1;
}

.service-fimg a:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    /* background: linear-gradient(to bottom,#0000,#000000e6)!important; */
    transition: .3s;
    z-index: 1
}

.service-fimg img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: brightness(0.8);
}

.picture {
    position: relative;
    width: 100%;
    padding: 0 10px;
    height: 100%
}

.picture-details {
    width: 100%;
    height: 100%;
    border-radius: var(--border-radius);
    overflow: hidden
}

.imagecont img {
    height: 100%;
    object-fit: cover
}

h2.cardTitle {
    font-family: var(--font_family_1);
    font-size: 24px;
    letter-spacing: 3px;
    color: var(--color0);
    text-align: center;
    margin: 0px 0 2rem;
    height: 50px;
}

.Title-services a {
    padding: 13px 25px
}

.nav-button {
    position: absolute;
    bottom: 0;
    text-align: center;
    transition: .3s opacity;
    right: 0;
    z-index: 1000;
    display: flex;
    color: var(--color1);
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-container.service-slideshow.swiper-initialized.swiper-horizontal.swiper-pointer-events.swiper-backface-hidden {
    padding-bottom: 90px;
    position: relative
}

.swiper-button-next:after,.swiper-button-prev:after {
    color: var(--color0);
    font-size: 26px!important;
    content: none!important
}

/** Atout **/
.atouts {padding: 8em 8%;position: relative;background: var(--color0);}

.atouts:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color1);
    opacity: 0;
}
.atouts .h1 {color: var(--color1) !important;}
.atouts-cont {max-width: 100%;margin: 0 auto;padding: 4rem 0 0;position: relative;}
.atouts-cont .atouts-cards {display: flex;justify-content: space-evenly;align-items: center;}
.atouts-cards .atout-card {display: flex;align-items: center;/* max-width: 40%; */margin: 0 1.5rem 2rem;padding: 1.5rem;/* border: 1px solid #ffffff4f; */}

.atouts-cards .cards-side1 .atout-card {
    flex-direction: row-reverse;
}
.atouts-img img {
    height: 100% !important;
    /* max-height: 460px; */
    width: auto !important;
    object-fit: cover;
    border-radius: inherit;
    transition: all 0.3s ease;
    aspect-ratio: 1/1;
}

.atouts-img {
    width: 25%;
    height: 100%;
    position: relative;
    transition: all 0.3s ease;
    border-radius: 220px;
}

.cards-side {
    width: 35%;
}
.atouts-cards .atout-card:nth-child(even) {
    /* flex-direction: row-reverse; */
    /* justify-content: flex-start; */
}
.atouts-cards img {
    width: 70px;
    height: auto;
}
.atouts-cards h3 {color: var(--color1);/* text-align: center; */font-size: 20px;}
.card-text {
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 80%;
    padding: 0 2rem;
    color: var(--color3);
    font-size: 14px;
}

.atout-card:nth-child(even) .card-text {
    /* text-align: right; */
    /* align-items: flex-end; */
}

.atout-ico {
    width: 20%;
    padding: 1rem;
    text-align: center;
}
/** **/

/** Intervention **/
.intervention {
    position: relative;
    padding: 4em 4%;
    /*! background: url(../images/interv-bg.jpg) no-repeat center / cover fixed; */
    background: var(--color1);
}

.intervention:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*! background: var(--color3); */
    /*! opacity: 0.8; */
}

.intervention .h1 {
    color: var(--color0) !important;
    text-shadow: -2px 0 2px #000000b8 !important;
}

.intervention .contenu {
    max-width: 1100px;
    margin: 0 auto;
    color: var(--colordark);
    /*! text-shadow: -2px 0 2px #000000b8 !important; */
}

.intervention .contenu .bouton-principal {
    margin-top: 2rem;
}


/** **/
.contact-us iframe {
    width: 100%;
    border-radius: var(--border-radius);
}

.carte .group:nth-child(even) {
    direction: rtl
}

.carte p {
    text-align: left;
}

.carteAncresListeBg {
    position: relative;
    right: 0;
    opacity: 1;
    border: none;
    z-index: 1;
    left: 0
}

.carteAncresListeBg .carteAncresListe {
    padding: 0;
    margin: 0;
    float: left;
    width: 100%;
    background-color: #fff;
    list-style: none;
    border: none;
    z-index: 1
}

.carteAncresListeBg .carteAncresListe li {
    display: inline-block;
    float: left;
    margin-bottom: 0;
    padding: 15px 15px 15px 15px
}

.carteAncresListeBg .carteAncresListe li a {
    font-size: 15px;
    color: #505050;
    text-transform: uppercase;
    padding: 0;
    display: block;
    position: relative;
    font-weight: 100;
    margin: 0;
    background-color: transparent;
    border-radius: 0;
    border: none;
    cursor: pointer
}

.carteAncresListeBg .carteAncresListe li a:focus,.carteAncresListeBg .carteAncresListe li a:hover,.carteAncresListeBg .carteAncresListe li.active a {
    text-decoration: none;
    background-color: transparent;
    border: none
}

.carteAncresListeBg .carteAncresListe li a:after {
    content: '';
    position: absolute;
    display: block;
    bottom: -15px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: var(--color2);
    transition: all .6s cubic-bezier(.35,.91,.46,.99)
}

.carteAncresListeBg .carteAncresListe li a:hover:after,.carteAncresListeBg .carteAncresListe li.active a:after {
    width: 100%
}

.class-added p {
    color: var(--color3);
    font-family: var(--font_family_2);
    font-size: var(--taille_font);
    font-weight: 500
}

.carte h1 {
    margin: 20px 0;
}

.faq-section {
    background: var(--bg-color-white);
    padding: 5em 10%;
    min-height: 70vh
}

.faq-title p {
    padding: 0 190px;
    margin-bottom: 10px
}

.first-faq {
    flex: 1;
    margin-right: 5px
}

.second-faq {
    flex: 1;
    margin-left: 5px
}

.faq {
    background: #fff;
    box-shadow: 0 2px 48px 0 rgba(0,0,0,.06);
    border-radius: 4px;
    display: flex;
    position: relative;
    padding: 0 15px
}

.faq .card {
    border: none;
    background: 0 0;
    border-bottom: 1px dashed #cee1f8
}

.faq .card .card-header {
    padding: 0;
    border: none;
    background: 0 0;
    -webkit-transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s
}

.faq .card .card-header:hover {
    background: #caa26f63;
    padding-left: 10px
}

.faq .card .card-header .faq-title {
    width: 100%;
    text-align: left;
    padding: 0;
    padding-left: 30px;
    padding-right: 30px;
    font-size: 16px;
    letter-spacing: 1px;
    color: var(--color2);
    text-decoration: none!important;
    -webkit-transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
    cursor: pointer;
    padding-top: 20px;
    padding-bottom: 20px
}

.faq .card .card-header .faq-title .badge {
    display: inline-block;
    width: 20px;
    height: 20px;
    line-height: 14px;
    float: left;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    border-radius: 100px;
    text-align: center;
    background: var(--color2);
    color: #fff;
    font-size: 12px;
    margin-right: 20px
}

.faq .card .card-body {
    padding: 30px;
    padding-left: 35px;
    padding-bottom: 16px;
    line-height: 28px;
    background: var(--color0);
    border-top: 1px solid #ededed
}

.faq .card .card-body p {
    margin-bottom: 14px
}

.services div#toMove {
    padding: 50px 0 0
}

.iframe-home {
    position: relative;
    display: inline-grid;
    width: 100%;
    height: 100%;
    /* max-width: 1440px; */
    margin: 0rem auto 0;
}

.body-contact .iframe-home {
    /* display: none; */
}

.iframe-home iframe {
    height: 420px;
    /* border-radius: 8px; */
    overflow: hidden;
}

.certifs {
    display: inline-block;
    width: 100%;
    position: relative;
    padding: 9em 10% 11em;
    background: url(../images/fil-a-fil-Rodez-14.jpg),linear-gradient(113deg,rgba(0,0,0,0.48) 0%,rgba(0,0,0,0) 100%) !important;
    background-size: cover !important;
    background-position: center !important;
}

.certifs .cell.gauche {
    display: block
}

.certifs .cell.gauche .contenu {
    padding: 3em 6%;
    background: var(--color0);
    width: fit-content;
    margin: auto;
}

.certifs .cell.droite {
    position: relative;
    display: block;
    padding: 2em 7% 4em
}

.certifs .logo-certifs {
    position: relative;
    padding: 30px 13% 20px
}

.certifs .swiper-slide {
    text-align: center
}

.certifs .swiper-slide .img-swiper {
    position: relative;
    display: inline-block;
    border-radius: var(--border-radius);
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: 69% auto;
    -moz-background-size: 6% auto;
    border: 1px solid #4e4f511f;
    background-color: var(--color0)
}

.certifs .swiper-slide img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    display: block
}

.certifs .swiper-button-prev {
    background-image: none;
    left: 0;
    margin-top: -22px;
    opacity: .8
}

.certifs .swiper-button-next {
    background-image: none;
    right: 0;
    margin-top: -22px!important;
    opacity: .8
}

.swiper-button-next,.swiper-button-prev {
    position: absolute;
    top: 50%;
    cursor: pointer;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    width: 44px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    transition: .3s ease;
    z-index: 99;
}

.swiper-button-prev {
    left: 3%;
}


.swiper-button-next {
    right: 30px;
}

.swiper-button-next {
    right: 4%;
}

.certifs .swiper-button-next i,.certifs .swiper-button-prev i {
    font-size: 23px;
    color: var(--color2)
}

.swiper-button-next:hover,.swiper-button-prev:hover {
    opacity: 1
}

.certifs .logo-certifs .row-certifs {
    position: relative;
    display: table;
    width: 100%
}

.certifs .logo-certifs .row-certifs .certif-inline {
    position: relative;
    display: table-cell
}

.certifs .logo-certifs .row-certifs .certif-inline>div {
    position: relative;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: 60% auto;
    -moz-background-size: 60% auto;
    background-size: 60% auto;
    text-align: center
}

.certifs .logo-certifs .row-certifs .certif-inline>div img {
    position: relative;
    overflow: hidden
}

form#contact_6 .row {
    display: flex;
    justify-content: stretch;
    align-items: stretch;
    width: 100%
}

.formulaire.gauche.col-md-6.nopad-l.nopad-sm.nopad-xs {
    width: 50%
}

.seo-form .formulaire.gauche.col-md-6.nopad-l.nopad-sm.nopad-xs {
    width: 100%
}

.formulaire.droite.col-md-6.nopad-r.nopad-sm.nopad-xs {
    width: 50%;
    padding: 0
}

.seo-form .formulaire.droite.col-md-6.nopad-r.nopad-sm.nopad-xs {
    width: 100%
}

.seo-form form#contact_6 .row {
    flex-direction: column;
    width: 100%
}

/* Loader */
.page_loader{display: flex;width:100%;height:100%;position:fixed;top:0;left:0;z-index: 9999;background: linear-gradient(45deg, #fff, #fff, #fff);align-items: center;justify-content: center;}


@-webkit-keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(255, 255, 255);
  }
}

@keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(255, 255, 255);
  }
}

.svg-elem-1 {
  -webkit-animation: animate-svg-fill-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
          animation: animate-svg-fill-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
}

.svg-elem-2 {
  -webkit-animation: animate-svg-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s both;
          animation: animate-svg-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s both;
}

/* *** */


@keyframes zoom {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
        50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}
p.slogan {
    position: relative;
    color: var(--color0);
    width: 100%;
    max-width: 1529px;
    padding: 0 4%;
    margin: 0 auto;
    text-align: left;
    z-index: 2;
    top: -30px;
    text-shadow: -2px 2px 2px var(--colordark);
}

.body-page-1 p.slogan {
    top: 50px;
    text-align: left;
    width: 100%;
    padding: 0px 0%;
    margin: 0 auto;
}

.body-page-1 p.slogan span.sous-titre {
    display: block;
    max-width: 720px;
}

.body-page-1 p.slogan strong.titre {
    font-size: 96px;
}

strong.titre {
    font-family: var(--font_family_1);
    letter-spacing: 5px;
    font-size: 64px;
    line-height: 1.2em;
    text-shadow: 0 0 3px var(--colordark);
    font-weight: 100;
}

span.sous-titre {
    opacity: 1;
    font-size: 32px;
    line-height: 41px;
    /* font-weight: 600; */
    letter-spacing: 4px;
}
.loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 90000
}
.pied .bande2 h2 {
    color: var(--color0);
    text-transform: initial;
    font-size: 25px;
    margin-bottom: 22px;
    font-family: var(--font_family_1);
}
.loader-section {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--color0);
    z-index: 89999;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center!important;
    -ms-flex-align: center!important;
    align-items: center!important;
}

.loader-section.section-right {
    left: 0;
}

.loaded .section-right {
    transition: all 1s .3s cubic-bezier(.645,.045,.355,1);
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    opacity: 0.5;
}

.loaded .loader {
    transition: all .4s ease-out;
    opacity: 0
}

.loaded .loader-wrapper {
    visibility: visible;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: all .7s 1s ease-out
}

.loaded .loader-spin {
    opacity: 0;
    transition: all .2s ease-out;
    position: relative;
    z-index: 90000
}

.loader-spin {
    border-radius: 50%;
    height: auto;
    width: 100%;
    text-align: center;
    margin: auto
}

@-webkit-keyframes spin {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes spin {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.loader-spin:after {
    content: '';
    position: absolute;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite;
    width: 150px;
    height: 150px;
    left: 50%;
    z-index: -1;
    right: 50%;
    margin-left: -75px;
    border-radius: 50%;
    background: linear-gradient(to right, black, #db2971);
}

.loader-spin img {
    width: 150px;
    height: 150px;
}

.title {
    position: relative;
    float: left;
    width: 100%;
    text-align: center;
    margin: 1em 0;
    font-family: var(--font_family_1);
    font-size: 34px;
}

body:after {
    content: url(../images/bx_loader.svg)!important;
    display: none
}

body,html {
    height: 100%
}

body {
    width: 100%;
    margin: 0;
    padding: 0
}

a {
    -webkit-transition: color .3s ease-out;
    -moz-transition: color .3s ease-out;
    -o-transition: color .3s ease-out;
    transition: color .3s ease-out
}

a img {
    border: none;
    z-index: 1
}

img {
    max-width: 100%
}

ol,ul {
    list-style-position: inside;
    padding-left: 15px
}

dir,menu {
    padding-left: 15px
}

.nav-top ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    padding: 0 0;
    width: 100%;
}

blockquote p {
    font-size: inherit
}

article,aside,footer,header,main,nav,section {
    display: block
}

iframe {
    border: none;
    width: 100%
}

[data-anim] {
    opacity: 0
}

.row {
    margin-right: 0!important;
    margin-left: 0!important
}

.nopad {
    padding-left: 0;
    padding-right: 0
}

.nopad-l {
    padding-left: 0
}

.nopad-r {
    padding-right: 0
}

.nomargin {
    margin: 0
}

.hide {
    display: none
}

.center {
    text-align: center
}

.right {
    text-align: right
}

.justify {
    text-align: justify
}

.clear:after {
    content: '';
    display: block;
    clear: both
}

.bold {
    font-weight: 700
}

.underline {
    text-decoration: underline
}

.relative {
    position: relative
}


.inline-block {
    display: inline-block;
    vertical-align: top
}

.noflicker {
    -webkit-transform: translateZ(0)
}

a.imagecont.noflicker.img1 {
    float: right;
    margin-left: 10px;
    margin-bottom: 10px
}

.retrait {
    margin-left: -15px!important;
    margin-right: -15px!important
}

.transition {
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -ms-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    -webkit-transform: translateZ(0)
}

.cover {
    -webkit-background-size: cover!important;
    -moz-background-size: cover!important;
    -o-background-size: cover!important;
    background-size: cover!important
}

.hide-print.banniere-img.parallax.cover {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    /* animation: zoom-in 19s ease-in-out; */
}

.hide-print.banniere-img.parallax.cover {}

hr.trait {
    height: 1px;
    margin: -.5em 0;
    padding: 0;
    color: #e0e0e1;
    background-color: #e0e0e1;
    border: 0
}

.body-page-1 .page-contenu {
    text-align: justify;
    height: 55vh;
}
.mCSB_dragger_bar {border-radius: 0px !important; width: 4px !important;}
.page-contenu img {
    margin: 10px
}

ol li.niveau2,ul li.niveau2 {
    margin-left: 30px
}



@media (min-width: 992px) {
    .container {
        max-width:970px
    }

p.slogan {
    /* max-width: 970px; */
}
}

@media (min-width: 1200px) {
    .container {
        max-width:1140px
    }
}

a.top-logo span {
    float: left;
    font-size: 10px;
    font-family: 'Forum';
}

a.top-logo {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 16px;
}

a.top-logo .sr {
    color: var(--color1);
    font-size: 24px;
    font-family: var(--font_family_1);
    font-weight: 100;
    padding-left: 1rem;
}

.tete .logo-site span {
    margin: -12px 11px 0;
    font-size: 32px;
    line-height: 1;
    color: var(--color0);
}

.logo-site a {
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    text-decoration: none !important;
    align-items: center;
    line-height: 1;
    font-weight: 100 !important;
}

.tete .logo-site img {
    width: 220px;
    height: auto;
    /* margin-top: -7px; */
    /* position: absolute; */
    top: 10px;
    height: auto;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
}

.tete.fixed .logo-site img {
    -webkit-filter: unset;
    filter: brightness(1) invert(1);
}

.tete.fixed .logo-site img {/*! height: 77px; *//* content: url(../images/logo-1.png); *//* border-radius: 10px; */}

body {
    color: var(--color3);
    font-family: var(--font_family_2);
    font-size: var(--taille_font);
    font-weight: 500
}

.body-gallery .fluid-contenu .gallery {
  padding: 5em 10%
}
body.body-page.body-page-35 {}

.blocks {
    position: relative;
    background: seashell;
    padding: 0 0 2em;
    display: none;
}

.block-1, .block-2 {
    padding: 3em 0 2em;
}

.block-1 img {
    /* filter: invert(1); */
    padding: 15px;
}

.flex-cont {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.flex-cont img {
    width: 150px;
    margin-right: 20px;
}

.cont {
    position: relative;
}



body.body-service-list .banniere {
    background: url(../images/banner-services.jpg) no-repeat center;
    background-position: bottom;
}


.res-btn {
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    border: 2px dotted;
    max-width: 350px;
    margin: auto;
}

.res-hour, .res-btn {
    text-align: center;
    max-width: 350px;
    margin: auto;
    padding: 20px;
    border: 2px dotted #ffffff2e;
    backdrop-filter: blur(5px);
    min-height: 320px;
}


.horaires .horaire-mention  span {
    font-family: var(--font_family_2) !important;
    font-size: 18px;
}

.res-blocks {
    background: url(../images/bg-2.jpg) no-repeat center;
    padding: 6em 5%;
    background-attachment: fixed;
    position: relative;
}

.res-blocks:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 30%;
    height: 100%;
    background: url(../images/res-img.jpg) no-repeat center /cover;
    z-index: 9;
    /* filter: brightness(0.7); */
}

.res-blocks .row >div,.res-blocks .row {
    height: 100%;
}

body.body-carte .banniere {
    background: url(../images/banner-carte.jpg) no-repeat center /cover;
}

body.body-gallery .banniere {
    background: url(../images/banner-menu.jpg) no-repeat center bottom;
}
body.body-menu .banniere {
    background: url(../images/banner-menu.jpg) no-repeat center;
}
body.body-contact .banniere {
    background: url(../images/reservation_bg.jpg) no-repeat center;
    background-position: bottom;
}
div#fd-feedback-button {
    background: var(--color1);
}

div#flex-infos {
    /* width: 20%; */
}

.flex-infos .infos {
    display: flex;
    width: 340px;
    justify-content: flex-end;
    align-items: center;
    /* flex-wrap: nowrap; */
}

a,a:link,a:visited {
    color: var(--color1);
    font-weight: 600;
}

a.btnp {
    margin-right: 15px;
}

a.btnp i {
    transition: .3s ease;
}

a.btnp:hover i,a.btnp:hover svg {
    transform: rotate(360deg);
    fill: var(--color3);
}

a:hover {
    text-decoration: underline;
}

.titre-secondaire {
    position: relative;
    font-size: 17px;
    line-height: 30px;
    padding: 4px 0 0;
    margin: 0;
    font-weight: 500;
    color: #4f4f4f;
    text-align: center;
    margin-bottom: 0;
    font-family: var(--font_family_2);
    display: block;
    text-transform: initial;
}

.h1,.h2,.h3,h1,h2,h3,h4,h5,h6 {
    color: var(--color1);
    font-family: var(--font_family_1);
    font-weight: 100;
}

.h1,h1 {
    color: var(--color1);
    font-family: var(--font_family_1);
    font-size: 64px;
    line-height: 1.2;
    margin-bottom: 20px;
    text-align: center;
    text-shadow: 1px 2px 3pxrgba(0,0,0,.7);
    position: relative;
    padding: 0 0 15px 0;
    margin: 0;
    transition: all .4s ease;
    margin-bottom: 30px;
    /* text-shadow: 0 0 9px BLACK; */
}

.corps h1 {
    visibility: hidden;
    position: absolute;
    z-index: -9;
}

.h1:before,h1:before {
    content: "";
    position: absolute;
    left: 13px;
    bottom: 1px;
    width: 29px;
    height: 2px;
    background-color: var(--color1);
    width: 78px;
    height: 2px;
    left: 50%;
    margin-left: -39px;
    z-index: 0;
    display: none;
}

body > div:nth-child(11) > div.main-page > main > div > div > h1:before {
    content: ' ';
    height: 0;
}

body > div:nth-child(11) > div.main-page > main > div > div > h1:after {
    content: '';
}

body-formule-list-1 h1:before {
    content: "";
    /* height: 4px !important; */
}

.h1:after,h1:after {
    content: "";
    z-index: 1;
    width: 20px;
    left: 50%;
    margin-left: -10px;
    content: "●";
    color: var(--color1);
    /* background: #e7e5e4; */
    line-height: 11px;
    font-size: 12px;
    border-radius: 0;
    height: 10px;
    bottom: -3px;
    padding-left: 6px;
    text-align: left;
    position: absolute;
    display: none;
}

/***/



.realisations .propor{
    height:100%;
}
.recup-photos .propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%;
    transition: all .3s ease;
}

.recup-photos .propor .propor-cont .imagecont:hover img {
    scale: 1.05;
    /* rotate: 5deg; */
}

.recup-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
    border-radius: var(--border-radius);
    overflow: hidden
}

.recup-photos .propor:after {
    padding-top: 80%;
    display: block;
    content: ''
}

.recup-photos .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.recup-photos .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

.recup-photos .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    width: 100%;
    height: 100%;
    transition: .5s;
    background-color: var(--color1);
    background-image: url(../images/ico-zoom.svg);
    background-repeat: no-repeat;
    background-position: center center
}

.recup-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: 0;
    filter: alpha(opacity=70)
}

.recup-photos .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15)
}

.realisations .row.recup-photos.gallery .col-md-3 {
    width: 100%;
    margin: 0;
    padding: 0
}


.realisations .row.recup-photos.gallery {padding: 0;display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;grid-template-areas:
"item1 item2 item3 item4";grid-template-rows: 300px;grid-gap: 10px;position: relative;}

.realisations .row.recup-photos.gallery:before {

}

.realisations .row.recup-photos.gallery .col-md-3:first-child {
    grid-area: item1
}

.realisations .row.recup-photos.gallery .col-md-3:last-child,.realisations .row.recup-photos.gallery .col-md-3:nth-child(5) {
    grid-area: item5;
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(2) {
    grid-area: item4
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(3) {
    grid-area: item3
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(4) {
    grid-area: item2
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(5) {
    grid-area: item7
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(6) {
    grid-area: item8
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(7) {
    grid-area: item6
}
.realisations {
    padding: 0em 10% 7em;
}

.realisations a.bouton-principal {
    width: 300px;
}


/***/

.faq-section .h1:after {
    background: var(--color0)
}

.contain-GMB .h1:after {
    background: var(--coloe1);
    color: var(--color0);
    line-height: 11px
}

.certifs .h1.sans-image {
  color: var(--color0);
}
.body-page-1 .h1,.body-page-1 h1 {
    color: var(--color1);
    margin: 0 0 10px 0;
    background: 0 0;
    /* text-shadow: 0 0 2px #000000b8; */
    text-align: center;
    font-size: 64px;
    letter-spacing: 5px;
}

.body-page-1 .corps h1, .body-pageseo .corps h1, .body-contact .corps.huhu h1 {
    text-align: left;
    position: relative;
    visibility: visible;
    z-index: 0;
}

.body-contact .corps.huhu h1 {
    text-align: center;
    padding-top: 0em;
}

.h2,h2 {
    font-size: 24px;
}

.h3,h3 {
    font-size: 28px;
}

h4,h5,h6 {
    font-size: 18px
}

.h1 a,.h1 a:link,.h1 a:visited,.h2 a,.h2 a:link,.h2 a:visited,.h3 a,.h3 a:link,.h3 a:visited,h1 a,h1 a:link,h1 a:visited,h2 a,h2 a:link,h2 a:visited,h3 a,h3 a:link,h3 a:visited,h4 a,h4 a:link,h4 a:visited,h5 a,h5 a:link,h5 a:visited,h6 a,h6 a:link,h6 a:visited {
    font-size: inherit;
    color: inherit;
    text-decoration: none
}

.h1 a:hover,.h2 a:hover,.h3 a:hover,h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover {
    text-decoration: underline
}

h1:before {
    cursor: pointer
}

.alert.alert-warning-prepwebserver-custom.alert-dismissable {
    display: none!important
}

.nav-top {
    height: 50px;
    background-color: var(--color2);
    position: relative;
}

.nav-top ul li {
    color: var(--color0);
    font-size: 13px;
    float: left;
    margin-right: 13px;
    height: 50px;
    line-height: 50px;
    list-style: none
}

.nav-top ul li.social-bloc {
    float: right;
    margin-right: 0;
}

.nav-top ul li i {
    color: var(--color1);
    margin-right: 10px;
    font-size: 14px
}

.social-bloc a.btnp {
    display: inline-block;
    margin-left: 2px;
}

.nav-top ul li.social-bloc a i {
    font-size: 15px;
    color: var(--bg-facultatif);
    transition: .3s
}

.nav-top ul li.social-bloc a:hover i {
    color: var(--color1)
}

.tete .btn-partage .icones {
    /* fill: var(--color1); */
    top: 9px !important;
}

.flex-menu {
    /* float:right; */
    /* padding:25px 0 0 15px; */
    text-transform: uppercase;
    font-weight: 600;
    /* display:block!important; */
    height: auto!important;
    padding-bottom: 0;
    overflow: visible!important;
    width: 70%;
    display: flex;
    justify-content: center;
}
.contact-us {
    position: relative;
    padding: 0 0 4em;
}

.contact-us .container {max-width: 820px;padding: 0;}

.Parent-div {
    display: flex;
    /* margin-top: -64px; */
    position: relative;
    background: #151515;
    /* flex-direction: row-reverse; */
    background: url(../images/bg_1.jpg) no-repeat center / cover fixed;
    border-radius: var(--border-radius);
}

.body-contact .Parent-div {
    width: 100%;
}

.first-div, .third-div, .second-div {
    flex: 1;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    width: 100%;
    height: auto;
    text-align: center;
    background-color: #fff;
    padding: 16px 0;
    border-radius: 5px 0 0 5px;
    background: #1e1e1eb0;
}

.third-div {
    border-radius: 0 5px 5px 0;
}

.second-div {
    position: relative;
    /* z-index: 1; */
    /* padding: 5em 5%; */
}

.second-div h4 {
    font-size: 30px;
    color: var(--color0)
}

.third-div {
    flex: 1;
}

.first-div, .third-div,.second-div {
    color: #ffffffb3;
    font-family: var(--font_family_2)
}

.first-div h4, .horaires span,.second-div h4 {
    color: var(--color0);
    font-weight: 700;
    font-size: 19px;
    font-family: var(--font_family_1);
    text-transform: inherit;
}

span.horaires-label-closed {}

.navbar {
    height: 100px;
    position: relative;
    min-height: 50px;
    width: 100%;
    max-width: 1530px;
    border-radius: 0;
    margin: 1rem auto;
    border: 1px solid #0000;
    /* background: var(--color0); */
    transition: 0.2s ease;
    /* box-shadow: -1px 0px 9px 2px #00000047; */
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0rem 2%;
    backdrop-filter: blur(3px);
}

.navbar.MenuFixed {
    height: 90px;
    background: var(--color0);
    margin: 0 auto;
}

.navbar:before,.navbar:after {
    display: none;
}

.navh ul li {
    position: relative;
    display: block;
    float: left
}

.navh .menu_principal a {
    padding-bottom: 30px;
    position: relative;
    overflow: hidden;
    margin-left: 20px;
    font-size: 13px;
    color: var(--colordark);
    text-decoration: none;
    padding: 5px 7px;
    font-family: var(--font_family_1);
    font-weight: 100;
    letter-spacing: 2px;
    /* background: black; */
    margin: 0 7px;
    transition: 0.2s ease;
}

.navh .menu_principal a:hover {
    color: var(--color1);
}

.fixed .navh .menu_principal a {
    /* background: var(--color2); */
}

.navh .menu_principal a:before {
    width: 140%;
    left: 0;
    border-top: 2px solid white;
    z-index: -1;
    content: "";
    bottom: 0px;
    height: 1px;
    position: absolute;
    transition: 0.3s;
    transition-timing-function: cubic-bezier(.58,.3,.005,1);
    bottom: 0;
    left: 50%;
    transform: translate(-50%,-50%) scale(0);
    opacity: 1;
}

.navh .menu_principal a:before {
    bottom: -4px;
    /* top: auto; */
}

.navh .menu_principal li.active>a:before, .navh .menu_principal li>a:hover:before {
    transform: translate(-50%,-50%) scale(0.7);
    /* opacity: 1; */
}

ul#menu_principal {
    margin: 0
}
.res-btn a {
    color: white;
    font-family: var(--font_family_1);
    font-size: 29px;
    font-weight: bold;
}

.res-btn a:hover {
    text-decoration: none;
    /* color: #7c1704; */
}

.main-page {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.tete {
    position: relative;
    width: 100%;
    z-index: 99999;
}

.tete.fixed {
    position: fixed;
}
.logo-flex {display: flex;align-items: center;}
.tete .logo-site {
    padding: 3px 0;
    font-family: var(--font_family_1);
    font-size: 20px;
    /* width: 15%; */
    margin: 0;
}

.tete .tel{color: var(--color0);padding: 1rem 1.5rem;/* background: url(../images/tel.png) no-repeat 8px 42%; *//* text-transform: uppercase; */text-align: left;margin: 0;float: right;font-family: var(--font_family_1);border: 1px solid var(--color0);border-radius: var(--border-radius);}

.tete .tel:hover {
    background: var(--color1);
    border-color: var(--color1);
}

.tete .tel:hover span, .tete .tel:hover a {
    color: var(--color3);
}

.tete.fixed .tel {
    color: var(--color3);
    background: url(../images/tel-h.png) no-repeat left 40%;
    border: 1px solid var(--color3);
}
.tete .tel a{color:inherit;text-decoration:none }

.tete .tel .icones {
    width: 19px;
    margin: 0 7px -3px 0;
    height: 17px;
    fill: var(--color1);
}

.btn-partage .btnp:hover .icones {
    /* fill: var(--color1); */
}

.btn-partage .icones {
    /* inset: unset !important; */
    top: 0px !important;
}

svg.icones {
    transition: .3s ease;
}

svg.icones.icone-share {
    display: none;
}

.tete .infos.infos_small .btn-partage .icones {
    top: 5px;
    left: 0
}

.tete .btn-descendre {
    position: absolute;
    bottom: 0;
    left: 50%;
    background: url(../images/btn-descendre.png) no-repeat center top;
    margin-left: -33px;
    z-index: 9997;
    height: 67px;
    width: 67px;
    display: none;
}

.tete .btn-descendre:hover {
    opacity: .8;
    filter: alpha(opacity=80)
}

.fluid-menu {
    padding: 1rem 4%;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    /* background: var(--color1) !important; */
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    z-index: 9999
}

header.fixed .fluid-menu {
    background: var(--color0) !important;
}

header p.tel.callTracker span {
    text-align: center !important;
    text-decoration: none;
    width: auto;
    font-size: ;
}

.sidebar-scroll-right .callTracker {
    width: 100%;
    height: 50px
}

.callTracker {
    position: relative
}

.callTracker a,.callTracker span {
    display: inline-block;
    text-align: center;
    min-width: 145px;
    padding: 0;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    height: 100%;
    line-height: 0.64em;
    text-decoration: none
}

.callTracker .t_phone {
    opacity: 0;
    display: none
}

.callTracker .t_affiche {
    cursor: pointer
}

.banniere img {
    /* filter: blur(7px); */
    width: 100%
}

header .callTracker a,header .callTracker span {
    top: 5px
}

.callTracker.active .t_phone {
    opacity: 1;
    display: inline-block;
    text-align: center;
    color: var(--color0);
}

.fixed .callTracker.active .t_phone {
    color: var(--color3);
}

.callTracker.active .t_affiche {
    opacity: 0;
    display: none
}

.coordonnees .callTracker a,.pied .callTracker a {
    position: relative;
    left: 0
}

.pied .callTracker span.t_affiche {
    font-weight: 700;
    text-decoration: underline
}


.menu-open-close{transition:all 400ms ease;position:relative;float:right;margin: 0 30px 0 12px;height: 80px;width:80px;border:none;background-color:transparent;}
.menu-open-close.open-menu span.line1{-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg);margin-top:0;}
.menu-open-close.open-menu span.line2{opacity:0;filter:alpha(opacity=0);width:2px;margin-left:-1px;}
.menu-open-close.open-menu span.line3{-webkit-transform:rotate(-135deg);-moz-transform:rotate(-135deg);-o-transform:rotate(-135deg);transform:rotate(-135deg);margin-top:0;}
.menu-open-close span{transition:all 400ms ease;display:block;position:absolute;top:50%;left:50%;width:40px;margin-left:-20px;height:2px;background-color: var(--color0);}

.fixed .menu-open-close span {
    background: var(--color3);
}
.menu-open-close span.line1{margin-top:-8px;}
.menu-open-close span.line3{margin-top:8px;}
.menu-open-close:focus{outline:none;}
.menu-mortel{position:fixed;top:0px;left:0px;opacity:0;text-align:center;padding: 180px 0 0 0;background:rgba(255, 255, 255, 0.9);z-index:9998;width:100%;display:none;-webkit-transition:all 400ms ease;transition:all 400ms ease;}
.navh-mortel{margin:0;z-index:8000;}
.navh-mortel .menu_haut_secondaire{margin:0;padding:0;list-style:outside none;display:block;/*table-layout:fixed;*/width:100% }
.navh-mortel .menu_haut_secondaire > li{position:relative;display:block;text-align:center;padding:0px 0px;}
.navh-mortel .menu_haut_secondaire a,.navh-mortel .menu_haut_secondaire a:visited{color: var(--color3);display:block;font-size: 32px;font-weight: 100;padding:10px 5px 10px 5px;text-decoration:none;font-family: var(--font_family_1);-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;-o-transition:all 400ms ease;transition:all 400ms ease;}
.navh-mortel .menu_haut_secondaire a:hover,.navh-mortel .menu_haut_secondaire li.active > a{padding-left:20px;}
.navh-mortel .menu_haut_secondaire li.active > a:hover{cursor:default }
.menu-mortel .btn-partage{text-align:center;padding:30px 0px 0px 0px;display:inline-block;float: unset;}
.menu-mortel .btn-partage .btnp{margin:0 5px;background-repeat:no-repeat;background-position:center center;display:inline-block;transition:all 400ms ease;width:36px;height:36px;border-radius:36px;background-color: var(--color1);}
.menu-mortel .btn-partage .btnp:hover{transform:rotate(360deg) }
.navh{margin:0;z-index:8000;}
.navh .menu_haut_principal{margin:0;padding:0;list-style:outside none;display:table;/*table-layout:fixed;*/
 display:block;float:right;width:100%;text-align:center;}
.navh .menu_haut_principal > li{position:relative;display:table-cell;display:inline-block;vertical-align:middle;text-align:center;padding:0px 0px;padding:0px 20px;}
.navh .menu_haut_principal a,.navh .menu_haut_principal a:visited{white-space:nowrap;color: var(--color0);display:block;font-size: 22px;font-weight: 100;padding: 16px 5px;text-decoration:none;background: url(../images/btn-h.png) center 70px no-repeat;font-family: var(--font_family_1);-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;-o-transition:all 400ms ease;transition:all 400ms ease;}

.fixed .navh .menu_haut_principal a {
    color: var(--color3);
}
.navh .menu_haut_principal a:hover,.navh .menu_haut_principal li.active > a{background:url(../images/btn-h-2.png) center bottom no-repeat; }
.navh .menu_haut_principal li.active > a:hover{cursor:default }
.tabb{display:table;margin:0;padding:0;width:100%;}
.tabb .cell{display:table-cell;vertical-align:top;}
.tabb .cell.cellg{width:33.3333%;background:url(../images/photo1.jpg) no-repeat center top;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;}
.tabb .cell.celld{}


.tabb {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%
}

.tabb .cell {
    display: table-cell;
    vertical-align: top
}

.tabb .cell.cellg {
    width: 33.3333%;
    background: url(../images/photo1.jpg) no-repeat center top;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb2 {
    display: flex;
    margin: 0 auto;
    padding: 8em 0;
    width: 100%;
    /* max-width: 1440px; */
    /* background: var(--color3) url(../images/bg_1.jpg) no-repeat center / cover fixed; */
    position: relative;
    z-index: 1;
    justify-content: center;
    align-items: center;
}

.tabb2 .reservation-bg:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--colordark);
    opacity: 0;
    z-index: -1;
}

.tabb2 .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
    width: 50%;
}

.tabb2 .cell.cellg {
    width: 33.3333%;
    /* background: url(../images/bg-1.jpeg) no-repeat; */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb2 .cell.celld {
    width: 30%;
    /* background: url(../images/reser-2.jpeg) no-repeat; */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb2 .cell .reser {
    display: flex;
    position: relative;
    /* top: 50px; */
    padding: 0;
    left: 0px;
    right: 0px;
    /* bottom: 50px; */
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    background: rgba(0,0,0,0.6);
    text-align: center;
    flex-wrap: wrap;
    color: #fff;
    flex-direction: row;
    align-content: center;
    text-align: center;
    justify-content: center;
    align-items: center;
    background: url(../images/tableau-.png) no-repeat center / contain;
    background-size: 100% 100%;
}

.tabb2 .cell .reser >div {
    padding: 60px 80px;
    /* backdrop-filter: blur(11px); */
    /* background: #00000040; */
    border-radius: 0px;
    /* box-shadow: 0 0 9px #000000b3; */
    min-height: 380px;
}

.tabb2 .celld .reser >div {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10%;
    width: 100%;
    max-width: 360px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    background: url(../images/mascot.png) no-repeat center / cover;
    -webkit-animation: anim-mover 2s ease infinite alternate;
    animation: anim-mover 2s ease infinite alternate;
}

@-webkit-keyframes anim-mover {
    0% { transform: translateY(0%); }
    100% { transform: translateY(-5%); }
}
@keyframes anim-mover {
    0% { transform: translateY(0%); }
    100% { transform: translateY(-5%); }
}

.tabb2 .celld .reser >div:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--colordark);
    opacity: 0.4;
}

.tabb2 .cell .reser .block {
    display: table;
    width: auto;
    height: 100%;
    text-align: center;
    font-size: 19px
}

.tabb2 .cell .reser div a {
    /* vertical-align: middle; */
    /* display: table-cell; */
    color: var(--color0);
    /* text-transform: uppercase; */
    text-decoration: none;
    /* padding: 0 20px; */
    font-size: 28px;
    font-family: var(--font_family_1);
    font-weight: bold;
    text-shadow: 0 0 9px BLACK;
    transition: .3s ease;
    width: 100%;
    position: relative;
}

.tabb2 .cell .reser div a:hover {
    color: var(--color0);
    text-shadow: 0 0 4px BLACK;
}

.tabb2 .cell .reser div p span {
    display: block;
    text-transform: uppercase;
    color: #ffffff;
    text-align: center;
    font-size: 24px;
}

.tabb2 .cell .reser:hover {
    /* background: rgb(0 0 0 / 82%); */
}

.tabb2 .cell .contt {
    padding: 10px 6%;
    min-height: 560px;
    /* background: #ebebeb; */
    border-radius: 0px;
}

.tabb2 .cell .contt h2 {
    text-align: center;
    font-size: 56px;
    color: var(--color1);
    border-bottom: 1px solid #979797;
    padding: 20px 0 15px 0;
    font-family: var(--font_family_1);
    margin: 10px 0;
}

.tabb-specialites {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%
}

.tabb-specialites .cell {
    display: table-cell;
    vertical-align: top
}

.tabb-specialites .cell.cellg {
    width: 33.3333%;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb-specialites .corps {
    padding: 40px 60px 50px 60px!important
}

.tabb-specialites h2 {
    text-align: center;
    margin-bottom: 50px
}

.tabb-reservation {
    display: flex;
    flex-direction: row;
    /* background: url(../images/reservation_bg.jpg) no-repeat center / cover; */
    align-content: center;
    justify-content: center;
    position: relative;
}

.tabb-reservation:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--bg-facultatif);
    opacity: 0.8;
}

.tabb-reservation .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
    width: 50%;
}

.tabb-reservation .cell.celld {
    display: flex;
    align-items: center;
    justify-content: center;
}

.tabb-reservation .cell.cellg {
    width: 50%;
    background: url(../images/BACKGROUND.jpg);
    padding: 20px 20px;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb-reservation .cell .reser {
    display: block;
    position: static;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    background: rgba(0,0,0,.5)
}

.tabb-reservation .cell .reser:hover {
    background: rgba(0,0,0,.7)
}

.tabb-reservation .cell .contt {
    padding: 10px 30px 30px 30px;
    color: #fff;
    padding: 40px 30px 50px 30px;
    text-align: left;
}

.tabb-reservation .cell .contt h2 {
    text-align: center;
    font-size: 25px;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 40px
}

.tabb-reservation .cell ol {
    list-style-type: decimal;
    margin: 30px 0
}

.tabb-reservation .cell ol li {
}

.tabb-reservation .corps {
    padding: 40px 60px 50px 60px!important
}

.bootstrap-timepicker-widget table td input {
    font-size: 15px;
    border: 0;
    min-width: 30px;
    color: var(--color3);
}

.ui-datepicker .ui-datepicker-title {color: var(--color3);}

.ui-datepicker {
    width: 100%;
    border: none;
    padding: 0;
    background: 0 0;
    position: relative
}

.ui-datepicker .ui-datepicker-header {
    position: static;
    background: 0 0;
    color: var(--color1);
    border: none;
    text-transform: uppercase;
    font-size: 28px;
    padding: 30px 0 60px 0
}

.ui-datepicker table {
    border: none;
}

.ui-datepicker th {
    text-transform: uppercase;
    color: var(--color3);
}

.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default {
    font-weight: 400;
    background: 0 0;
    color: var(--color3);
    text-align: center;
    padding: 20px 0;
    /* border: 1px solid var(--color0); */
    border-radius: var(--border-radius);
    background: rgb(255 255 255 / 11%);
    backdrop-filter: blur( 16px );
    -webkit-backdrop-filter: blur( 4px );
}

.ui-datepicker .ui-state-active {
    background: var(--color2);
}

.ui-state-default:hover,.ui-widget-content .ui-state-default:hover,.ui-widget-header .ui-state-default:hover {
    background: var(--color4);
    color: white;
    border-color: var(--color4) !important;
}

.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight {
    background: var(--color1);
    border-color: var(--color1) !important;
    color: var(--color3);
}

.ui-state-highlight:hover,.ui-widget-content .ui-state-highlight:hover,.ui-widget-header .ui-state-highlight:hover {
    background: var(--color4);
    color: #fff
}

.ui-widget-header a:hover .ui-icon {
    background-image: url(images/ui-icons_999999_256x240.png);
    opacity: .8;
    filter: alpha(opacity=80)
}

.ui-datepicker .ui-datepicker-next,.ui-datepicker .ui-datepicker-prev {
    background: #f7f7f7;
    border-radius: 0;
    top: 20px;
    cursor: pointer;
    width: 2.4em;
    height: 2.4em
}

.ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-prev:hover {
    border: none
}

.ui-datepicker .ui-datepicker-prev {
    left: 0
}

.ui-datepicker .ui-datepicker-next {
    right: 0
}

.body-page-1 .ui-datepicker .ui-datepicker-next,.body-page-1 .ui-datepicker .ui-datepicker-prev {
    top: 0;
    border-radius: var(--border-radius);
    width: 1.5em;
    height: 1.5em;
    background: var(--color3);
}

.body-page-1 .ui-datepicker .ui-datepicker-prev {
    left: 0
}

.body-page-1 .ui-datepicker .ui-datepicker-next {
    right: 0
}

.body-page-1 .ui-state-default,.body-page-1 .ui-widget-content .ui-state-default,.body-page-1 .ui-widget-header .ui-state-default {
    padding: 12px 0;
    border-radius: var(--border-radius);
    transition: none;
    border: 1px solid var(--colordark);
}

.body-page-1 .ui-datepicker .ui-datepicker-header {
    padding: 0px 0 20px 0;
}

.body-page-1 .ui-datepicker .ui-datepicker-title {
    font-size: 22px
}

.modal {
    z-index: 9999
}

.modal-backdrop {
    z-index: 9996
}

.modal-content {
    border-radius: 0
}

.modal-content .modal-header {
    border-bottom: none;
    height: 60px
}

.modal-content .modal-header .close {
    font-size: 36px;
    line-height: 26px
}

.modal-content .modal-body {
    border-radius: 0;
    padding: 0 60px 60px 60px;
    color: var(--colordark);
}

.modal-content h2 {
    text-align: center;
    margin-bottom: 20px;
    color: #3f3f3f;
}

.modal-content .horaires {
    color: #9c9c9c;
    margin: 0;
    font-size: 15px;
    text-align: center
}

.modal-content .horaires span {
    display: block
}

.modal-content label.checkbox.label-rgpd span.text-warning {
    position: absolute;
    bottom: -20px
}

.modal-content .form-group:after {
    clear: both;
    display: table;
    content: " "
}

.modal-content input {
    height: 48px;
    line-height: 1;
    line-height: 48px\9;
    padding: 0 12px;
    box-shadow: none;
    border-radius: var(--border-radius);
    border: 1px solid #ccc
}

.modal-content textarea {
    padding: 10px;
    box-shadow: none;
    border-radius: var(--border-radius);
    border: 1px solid #ccc
}

.modal-content input[type=number] {
    padding-right: 0
}

.modal-content label {
    padding-left: 0;
    font-size: 14px;
    padding-top: 13px;
    font-weight: 400
}

.modal-content input[name=captchaReservation] {
    width: 100%!important;
    height: 38px!important;
    display: inline-block;
    float: none!important;
    margin-right: 2%!important;
    vertical-align: top;
    min-width: 0
}

.modal-content input[name=captchaReservation]+a {
    width: 30%!important;
    display: inline-block;
    margin-right: 2%;
    vertical-align: top
}

.modal-content #captcha3 {
    width: 100%;
    height: 38px!important;
    border-radius: 0;
    padding: 0
}

.modal-content .btn-default {
    width: 100%;
    display: inline-block
}

.modal-content .btn-default {
    background: #fff;
    border: 1px solid var(--color1);
    text-transform: uppercase;
    color: var(--color1);
    border-radius: 0;
    font-size: 17px;
    text-decoration: none;
    transition: all .4s ease;
    max-width: 300px;
    margin: 0 auto;
    display: block;
    height: 63px
}

.modal-content .btn-default:hover {
    color: var(--color3);
    background: var(--color1);
}

.modal-content .description {
    margin: 20px 0 0 0;
    font-size: 14px;
    text-align: left
}

.modal-content .obligatoire {
    font-size: 12px;
    color: red;
    font-style: italic;
    display: block
}

.bootstrap-timepicker-widget {
    z-index: 9999!important
}

.bootstrap-timepicker-widget table,.bootstrap-timepicker-widget table td,.bootstrap-timepicker-widget table th {
    border: none
}

.fluid-slider {
    background: #171717
}

.fluid-contenu {
    position: relative;
    padding: 0px 0 0px;
}

main.fluid-contenu {}

.body-contact-551 .fluid-contenu {
    text-align: center;
}

main {
    background: url(../images/bg3.jpg);
}

main.fluid-contenu {/* background: #ebebeb; *//* padding: 0 4%; */}

.body-page-1 main.fluid-contenu {
    background: var(--color0);
    position: relative;
}

.body-page-1 main.fluid-contenu:before {
    content: "";
    position: absolute;
    left: 0%;
    top: 50%;
    transform: translateY(-50%);
    width: 30%;
    height: 420px;
    /* background: url(
    ../images/bg1.png) no-repeat bottom center/ contain; */
    /* opacity: 0.1; */
    /* filter: opacity(0.5); */
    -webkit-animation: mover 2s infinite alternate;
    animation: mover 2s ease infinite alternate;
    width: 0;
    height: 0;
}
@-webkit-keyframes mover {
    0% { transform: translateY(-50%); }
    100% { transform: translateY(-60%); }
}
@keyframes mover {
    0% { transform: translateY(-50%); }
    100% { transform: translateY(-55%); }
}
@-webkit-keyframes zoom-in {
    0% { transform: scale(1); }
    100% { transform: scale(1.2); }
}
@keyframes zoom-in {
    0% { transform: scale(1); }
    100% { transform: scale(1.2); }
}
.fluid-contenu .corps {
    padding: 60px 14%;
}

.tabb-reservation .cell.celld .corps {
    width: 100%;
}

.fluid-contenu .corps.huhu {
    padding: 6em 0% 8em;
}

.body-page-1 .corps.huhu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

body.body-page.body-page-35 .corps.huhu {
    padding: 60px 0;
}

.body-page-93 .corps.huhu {
    padding: 20px 0 0;
}

.body-service-list-0 .fluid-contenu .corps {padding: 60px 20%;background: none;}

.body-page-1 .fluid-contenu .corps>article {
    padding: 2em 2% 20px;
    color: var(--color3);
    width: 60%;
    height: 100% !important;
    /*! max-height: 597px !important; */
}
.qsn-pics{width:40%;display:flex;flex-direction:column;justify-content:center;position:relative}
.qsn-pic{/* aspect-ratio:1/1; *//*! max-width:420px; */width: 40%;padding:1rem;/*! border-radius: 200px 200px 0 0; *//*! background: url(../images/bg_1.jpg) no-repeat center / cover fixed; */}

.qsn-pic.qsn-pic1 {
    /* height: 460px; */
}
.qsn-pic2{width: 30%;/* position:absolute; */right:0;bottom:-30%}
.qsn-pic img{object-fit:cover;height:100%;/*! border-radius: inherit; */}
.gallery {padding-top: 2em;}

.sidebar {
    padding-top: 30px;
    text-align: right
}

.sidebar .photoa {
    background: url(../images/photo-accueil.jpg) right top no-repeat;
    height: 187px
}

.fluid-app {
    background: url(../images/bg-app.jpg) no-repeat center top;
    height: 730px;
    padding: 60px 0 0 0;
    position: relative;
    z-index: 8000
}

.fluid-app h2 {
    text-align: center;
    font-size: 39px;
    text-transform: uppercase;
    color: #c9ad8c;
    margin-bottom: 5px
}

.fluid-app .soustitre {
    text-align: center;
    font-size: 22px;
    color: #fff;
}

.fluid-app .boutiques {
    display: block;
    list-style-image: none;
    list-style-type: none;
    margin: 0;
    padding: 50px 0 30px 0;
    text-align: center
}

.fluid-app .boutiques li.boutique {
    display: inline-block
}

.fluid-app .services {
    display: inline-block;
    list-style-image: none;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.fluid-app .services li {
    display: block;
    background: url(../images/ico-puce.png) no-repeat 0 6px;
  
    padding: 0 0 15px 20px;
    font-size: 20px;
    color: #fff
}

.fluid-app .qrcode {
    position: relative;
    margin: 175px 0 0 0;
    display: inline-block
}

.fluid-app .qrcode .fleche {
    width: 97px;
    height: 67px;
    background: url(../images/fleche.png) no-repeat center top;
    position: absolute;
    top: -90px;
    left: 10px
}

.fluid-app .application {
    position: absolute;
    top: 260px;
    left: 450px;
    width: 500px;
    height: 300px
}

.fluid-app .application .app {
    position: absolute;
    top: 300px;
    left: 500px;
    width: 500px;
    height: 300px;
    width: 630px
}

.fluid-app .application .app.app1 {
    top: 0;
    left: 0;
    height: 401px;
    background: url(../images/app1.png) no-repeat center top;
    z-index: 9995
}

.fluid-app .application .app.app2 {
    top: 0;
    left: 125px;
    height: 405px;
    background: url(../images/app2.png) no-repeat center top;
    z-index: 9996
}

.fluid-app .application .app.app3 {
    top: 0;
    left: 255px;
    height: 408px;
    background: url(../images/app3.png) no-repeat center top;
    z-index: 9997
}

.pied {
    position: relative;
    background-attachment: fixed;
    z-index: 1;
    text-align: center;
    background: url(../images/interv-bg.jpg) no-repeat center / cover fixed;
}

footer.hide-print.pied:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #56523f;
    /* opacity: 0.6; */
    z-index: -1;
}

footer.hide-print.pied h3 {
    color: white;
}

footer.hide-print.pied h2 {
    color: white;
}

.pied .bande1 {
    padding: 70px 0 80px 0;
    background: #c9ad8c
}

.reserv-table .h1 {
    color: var(--color1);
    font-family: var(--font_family_1);
    font-size: 39px;
    line-height: 38px;
}

.texte1 {
    color: var(--color0);
    text-align: justify;
}

.pied .bande2 {
    padding-bottom: 10px;
    padding: 0 20px;
}



.pied .bande1 h2 {
    padding: 0 0 20px 0;
    margin: 0 0 30px 0;
    background: url(../images/trait.png) no-repeat center bottom;
    color: #fff
}

.pied .navf {
    text-align: center
}

.pied .navf .menu_footer {
    color: #fff;
    padding: 15px 0 18px 0;
    list-style-type: none;
    margin: 0
}

.pied .navf .menu_footer li {
    display: inline;
    margin-right: -4px
}

.pied .navf .menu_footer li a,.pied .navf .menu_footer li a:visited {
    font-size: 17px;
    text-transform: uppercase;
    padding: 0 8px;
    color: inherit;
    text-decoration: none
}

.pied .navf .menu_footer li a:hover {
    text-decoration: underline
}

.pied .navf .menu_footer li.active a:hover {
    cursor: default;
    text-decoration: none
}

.pied address {
    margin: 0;
    padding: 15px 0 15px 0;
    color: #fff;
    font-size: 18px
}

.pied address p {
    background-repeat: no-repeat;
    margin: 0
}

.pied address p.adresse {
    padding: 0 0 22px 0
}

.pied address p.tel a {
    color: inherit;
    text-decoration: none
}

.pied address p a {
    text-decoration: none;
    color: inherit
}

.pied address p a:hover {
    text-decoration: underline
}

.pied .horaires {
    /* padding: 0; */
    /* margin: 0; */
    text-align: center;
}

.pied .smartfood {
    margin: 80px 0 0 0;
    text-align: center
}

.pied .abus {
    text-align: center;
    margin: 0
}

.pied .abus span {
    display: inline-block;
    background: url(../images/ico-abus.png) no-repeat 0 0;
    padding: 0 0 20px 40px;
    color: #adadad;
    font-size: 9px
}

.pied .copyright-footer {
    margin: 15px 0;
    color: #fff;
    font-size: 10px;
    text-align: center
}

.pied .copyright-footer a {
    color: inherit;
    text-decoration: none
}

.pied .copyright-footer a:hover {
    text-decoration: underline
}

#logoFD svg * {
    fill: #fff
}

#logoFD svg {
    width: 200px
}

.pied .btn-partage {
    text-align: center;
    bottom: 0px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.pied .btn-partage .btnp {
    display: flex;
    width: 36px;
    height: 36px;
    border-radius: 36px;
    /* background-color: var(--color1); */
    line-height: 36px;
    align-items: center;
    justify-content: center;
    margin-right: 2px;
}

.pied .btn-partage .btnp i {
    font-size: 15px;
    color: #fff;
    transition: .3s
}

.pied .btn-partage .btnp:hover i {
}

.btn-partage img {
    width: 19px;
    height: 19px;
    margin-top: -5px;
}

.btn-partage {
    float: right;
    display: flex;
}

.btn-partage i {
    color: white;
    font-size: 18px;
}

.pied .btn-partage .btnp:hover {
    transform: rotate(360deg);
    background: var(--color1);
    border: 1px solid var(--color1);
}

.pied .btn-partage .btnp.btn-google {
    background-image: url(../images/ico-google-h.png)
}
@media(max-width: 1376px) {
    .flex-infos {
        display:none
    }

    }
.banniere {
    position: relative;
    top: 0;
    margin-left: 0;
    height: 100%;
    left: 0;
    width: 100%;
    /* max-width: 1440px; */
    margin: 0 auto;
    display: flex;
    background-position: center 0px;
    justify-content: flex-start;
    align-items: center;
    z-index: -1;
    padding: 94px 0 0;
    background: url(../images/banner-00.jpg) no-repeat center;
}

.slider-container {width: 100%;height: 100%;position: absolute;top: 0;overflow: hidden;}
.banner_swiper .swiper-button-prev,.banner_swiper .swiper-button-next{display:block;width:50px;height:50px;background:#00000029;display:flex;align-items:center;justify-content:center;border:1px solid #fff;background-repeat:no-repeat;background-position:center;display:none}
.banner_swiper .swiper-button-prev{background-image:url(../images/left.png)}
.banner_swiper .swiper-button-next{background-image:url(../images/right.png)}
.swiper-button-prev:after,.swiper-button-next:after{display:none}
.avis-container .swiperBtnCont{position:relative;padding-bottom:70px}
.banner_swiper .swiper-pagination-bullet{background:#fff;opacity:1;width:6px;height:6px;transition:.3s ease}
.banner_swiper span.swiper-pagination-bullet{height:3px;border-radius:0;width:26px}
.banner_swiper span.swiper-pagination-bullet.swiper-pagination-bullet-active{width:44px;background:var(--color1)}
.banner_swiper .swiper-pagination-bullet-active{width:8px;height:8px}
.banner_swiper .swiper-container-horizontal > .swiper-pagination-bullets{display:flex;align-items:center;justify-content:center;bottom:50px}
.banner_swiper .swiper-container{height:calc(100vh - 120px);margin:60px}
.banner_swiper .swiper-slide{overflow:hidden;height: 100lvh;}
.slide-inner{position:absolute;width:100%;height: 100%;left:0;top:0;background-size:cover;background-position:center}
.banniere-img {position: absolute; width: 100%; height: 100%; top: 0;}
.body-page-1 .hide-print.banniere.parallax.cover {
    background-position: center bottom;
}

.hide-print.banniere.parallax.cover video {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
}

.banniere img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(9px);
    pointer-events: none;
    display: none;
}

.banniere:before {
    display: block;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 1;
    background-position: center;
    background-repeat: repeat;
    content: "";
    z-index: 2;
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(253deg,rgba(0,0,0,0.61) 0%,rgba(0,0,0,0.41) 100%);
}

.body-formule-list .banniere {
    background-image: url(../images/banner-menu.jpg);
    background-position: bottom center !important;
}

.body-gallery-22 .banniere {
    background-image: url(../images/ban2.jpg)
}

.body-page-16 .banniere {
    background-image: url(../images/ban3.jpg)
}

.body-contact .banniere {
    /* background-image: url(../images/ban4.jpg); */
}

.body-page-21 .banniere {
    background-image: url(../images/ban5.jpg)
}

.cont-slider {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1000px;
    width: 2000px
}

.sudo-slider,.sudo-slider img {
    width: 100%
}

.cont-slider .controls {
    display: none
}

.cont-slidergal {
    position: relative
}

.sudo-slidergal,.sudo-slidergal img {
    width: 100%
}

a.sudoliengal.precedent,a.sudoliengal.suivant {
    z-index: 9000;
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 18px;
    height: 40px;
    margin-top: -20px;
    opacity: 0
}

a.sudoliengal.precedent {
    left: 10px;
    background: url(../images/g.png)
}

a.sudoliengal.suivant {
    right: 10px;
    background: url(../images/d.png)
}

.cont-slidergal:hover a.sudoliengal.precedent,.cont-slidergal:hover a.sudoliengal.suivant {
    opacity: 1
}

.cont-slidergal .controls {
    display: none
}

.sudo-slidergal .propor:after {
    padding-top: 72%;
    display: block;
    content: ''
}

.sudo-slidergal .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.sudo-slidergal .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0)
}

.sudo-slidergal .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

label.checkbox.label-rgpd {
    font-size: 11px!important
}

.form-group .label-rgpd strong,.info-rgpd a,.info-rgpd a:visited,.info-rgpd strong {
    color: #000
}

.form-horizontal .checkbox,.form-horizontal .radio {
    display: inline-block;
    vertical-align: top;
    margin: 0 20px 0 0;
    font-weight: 400
}

.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio] {
    position: static;
    width: auto;
    margin: 7px 5px 0 0
}

.corps-contact.formulaire {
    padding: 4rem 0;
}

.tabb-contact {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%
}

.tabb-contact .cell {
    display: table-cell;
    vertical-align: top
}

.tabb-contact .cell.cellg {
    width: 33.3333%;
    background: #f5f5f5
}

.tabb-contact .corps-contact {
    padding: 90px 60px 10px 60px
}

.contact h2 {
    text-align: center;
    padding: 0 0 20px 0;
    margin: 0 0 30px 0;
    background: url(../images/trait.png) no-repeat center bottom;
}

.contact .plan h2 {
    margin-top: 20px
}

.contact .plan {
    font-size: 0
}

.contact .plan .block #googlemapapi,.contact .plan iframe {
    width: 100%!important;
    height: 350px!important
}

.contact iframe {
    /* display: none; */
}

.contact .coordonnees {
    padding: 20px 0 70px 0;
    display: none;
}

.contact .coordonnees address p.tel a {
    color: inherit;
    text-decoration: none
}

.contact .coordonnees address p a {
    text-decoration: none;
    color: inherit
}

.contact .coordonnees address p a:hover {
    text-decoration: underline
}

.contact .description-contact {
    padding: 0 0 20px 0;
    text-align: center
}

.contact .formulaire .form-group label.col-md-4 {
    padding-left: 0!important;
    padding-right: 0!important
}

.contact .formulaire .form-group div.col-md-8 {
    padding-left: 0!important;
    padding-right: 0!important
}

.contact .formulaire .form-group .col-md-4 {
    display: none
}

.contact .formulaire .form-group div.col-md-8 {
    width: 100%!important
}

.contact .formulaire .control-label {
    text-align: left!important;
    font-weight: 400
}

.contact .formulaire .form-group {
    margin-bottom: 5px;
    padding: 0!important;
    margin-left: 0!important;
    margin-right: 0!important
}

.contact .formulaire .form-group .form-control {
    background: #fff;
    border: 1px solid #c8c8c8;
    box-shadow: none;
    border-radius: var(--border-radius);
    font-size: inherit
}

.contact .formulaire .form-group textarea.form-control {
    height: 104px;
    position: static;
    width: 100%!important
}

.contact .formulaire .form-group input.form-control {
    height: 48px;
    line-height: 1;
    line-height: 48px\9;
    padding: 0 12px
}

.contact .formulaire .form-group select.form-control {
    height: 48px;
    line-height: 48px;
    padding: 5px
}

.contact .formulaire .form-group input[name=captcha] {
    width: 41%!important;
    height: 48px!important;
    display: inline-block;
    float: none!important;
    margin-right: 2%!important;
    vertical-align: top
}

.contact .formulaire .form-group input[name=captcha]+a {
    width: 25%;
    display: inline-block;
    margin-right: 2%;
    vertical-align: top
}

.contact .formulaire .form-group #captcha {
    width: 100%;
    height: 48px!important;
    border-radius: 0;
    padding: 0;
    border: 1px solid #c8c8c8
}

.contact .formulaire .form-group input.btn-primary {
    width: 30%;
    display: inline-block
}

.contact .formulaire .form-actions {
    font-size: 12px;
    color: red;
    font-style: italic
}

.contact a.btn.btn-default {
    float: right
}

.body-error404 a.btn.btn-default,.contact .formulaire input.btn-primary,.contact a.btn.btn-default {
    padding: 10px 25px;
    transition: .3s ease-in-out;
    margin: 0;
    color: var(--font_family_2);
    font-weight: 500;
    color: var(--color1);
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none;
    border-radius: var(--border-radius);
    font-weight: 700;
    position: relative;
    border-color: var(--color1);
    background: transparent;
}

.btn-primary:before {
    content: '';
    height: 7px;
    position: absolute;
    bottom: -7px;
    border-radius: 0 0 5px 5px;
    opacity: .6;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    left: 18px
}

.btn-primary:hover:before {
    bottom: -5px
}

.body-error404 a.btn.btn-default:active,.body-error404 a.btn.btn-default:hover,.contact .formulaire input.btn-primary:active,.contact .formulaire input.btn-primary:hover,.contact a.btn.btn-default:active,.contact a.btn.btn-default:hover {
    color: var(--color3);
    background: var(--color1);
    /* border: none; */
}

::-webkit-input-placeholder {
    color: #4b4b4b!important
}

:-moz-placeholder {
    color: #4b4b4b!important;
    opacity: 1!important
}

::-moz-placeholder {
    color: #4b4b4b!important;
    opacity: 1!important
}

:-ms-input-placeholder {
    color: #4b4b4b!important
}

.pageseo .formulaire .form-group input[name=captcha] {
    width: 100%!important;
    margin-right: 0!important;
    text-align: left!important
}

.pageseo .formulaire .form-group input[name=captcha]+a {
    position: absolute;
    width: 140px;
    top: 0;
    right: 0;
    margin-right: 0!important
}

.pageseo .formulaire .form-group input.btn-primary {
    width: 50%;
    margin-top: 0
}

.flex-seoContain {
    position: relative;
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap
}

.flex-seoContain .seo-content {
    width: 55%;
    padding-top: 1em;
}

.flex-seoContain .seo-content h1,.flex-seoContain .seo-form h2.h1 {
    text-align: left
}

.flex-seoContain .seo-content h1:before,.flex-seoContain .seo-form h2.h1:before {
    left: 0;
    margin-left: 0
}

.flex-seoContain .seo-form {
    width: 43%;
    padding: 2em 2% 3em;
    background: var(--bg-facultatif);
    border-radius: var(--border-radius);
}

.img-seo img {
    border-radius: var(--border-radius);
    width: 240px;
    height: auto
}

.elemelem {
    margin: 0 0 30px 0
}

.gallery .kikoolol {
    padding: 10px 0 30px 60px
}

.gallery .sansimage .kikoolol {
    padding: 10px 0 30px 0
}

.gallery .description-galerie {
    padding: 0;
    text-align: justify
}

.gallery .description-galerie p:last-child {
    margin-bottom: 60px
}

.gallery .ligne-photos .col-md-1,.gallery .ligne-photos .col-md-2,.gallery .ligne-photos .col-md-3,.gallery .ligne-photos .col-md-4,.gallery .ligne-photos .col-md-6 {
    padding-left: 5px!important;
    padding-right: 5px!important
}

.gallery .ligne-photos {
    margin-left: -5px!important;
    margin-right: -5px!important
}

.gallery .ligne-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px
}

.gallery .ligne-photos .propor:after {
    padding-top: 72%;
    display: block;
    content: ''
}

.gallery .ligne-photos .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

figure.propor-cont:hover .masque {
    opacity: 1!important
}

span.masque.transition {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #00000061!important;
    transition: .3s;
    opacity: 0
}

.gallery .ligne-photos .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    border: 1px solid #d4d4d4;
    width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0)
}

.gallery .ligne-photos .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

.gallery .ligne-photos .propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%
}

.gallery .ligne-photos .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15)
}

.gallery .nav {
    margin: 10px 0;
    padding-right: 10px
}

.gallery .nav li {
    display: inline-block;
    width: 100%;
    margin-bottom: 10px
}

.gallery .nav {
    margin: 10px 0;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.gallery .nav li {
    display: inline-block;
    margin-bottom: 10px;
    background: none;
    padding: 0 3px 0 5px;
    width: 19%;
    height: 160px;
    position: relative;
}

.gallery .nav li::after {
    position: absolute;
    font-size: 20px;
    right: 0;
    top: 0;
    width: 0px;
    height: 0px;
    background: var(--color1);
    border-radius: 5px;
    display: block;
    content: " ";
    opacity: 1;
    z-index: 1;
}

.gallery .nav li:last-child::after {
    display: none
}

.gallery .nav li a {
    display: block;
    text-transform: uppercase;
    font-size: 16px;
    font-family: var(--font_family_3);
    text-align: center;
    border-radius: var(--border-radius);
    background: var(--color1);
    text-decoration: none;
    height: 100%;
    display: flex;
    align-items: end;
    justify-content: center;
    text-shadow: 0 0 20px #153d49;
    border: none;
    color: white;
    font-weight: bold;
    position: relative;
    z-index: 1;
}



.gallery .nav li a.hvr-shutter-out-horizontal:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /*! background: var(--color1); */
    transition: .3s ease;
    opacity: 0.5;
    width: 100%;
    height: 100%;
}
.gallery .nav li a.hvr-shutter-out-horizontal:after {
    content: "" !important;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    background: var(--color3);
    opacity: 0.4;
    width: 100%;
    height: 100%;
    display: block !important;
    transform: none;
}

.gallery .nav li a:hover,.gallery .nav li.active a {
    background: #424445;
    color: #fff
}

.gallery .nav li.active a {
    cursor: default
}

.gallery .tab-content {
    padding-top: 10px;
    padding-bottom: 10px
}

.gallery .tab-content h2 {
    padding-left: 15px;
    margin-bottom: 20px
}

.tabb-formule {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%
}

.tabb-formule.sansimage {
    display: inline-table;
    width: 60%
}

.tabb-formule .cell {
    display: table-cell;
    vertical-align: top;
    position: relative
}

.tabb-formule .cell.cellg {
    width: 50%;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover
}

.tabb-formule .cell.cellg.cell1.pair {
    display: none
}

.tabb-formule .cell.cellg.cell2.impair {
    display: none
}

.tabb-formule .cell.celld .contt {
    padding: 30px 50px 30px 40px
}

.formules .formule {
    margin: 0 0 50px 0;
    text-align: center
}

.formules .formule .haut {
    margin: 0 0 10px 0
}

.formules .formule .haut h2 {
    margin: 0;
    padding: 5px 0 5px 0;
    font-size: 40px;
    text-align: center
}

.formules .formule ul {
    list-style-type: none;
    list-style-image: none;
    padding: 0;
    padding: 45px 10px;
    text-align: center;
    border-top: 1px solid #57575738;
    border-bottom: 1px solid #57575738;
}

.formules .formule ul .item {
    padding: 5px 0 10px 0;
    font-size: 17px
}

.formules .formule ul .item .titre {
    font-size: 20px;
    font-weight: 600;
    font-family: var(--font_family_1);
}

.formules .formule ul .item .description {
    font-size: 16px;
}

.formules .formule ul .item .prix-item {
    font-weight: 700
}

.formules .formule hr {
    height: 5px;
    background: url(../images/ico-titre.png) no-repeat center top;
    border: none;
    filter: grayscale(1);
}

.formules .formule .prix {
    padding: 5px 0 0 0;
    font-size: 18px;
    font-size: 26px;
    color: var(--colordark);
    text-align: center;
    font-family: var(--font_family_1);
}

.tabb-carte {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%
}

.tabb-carte .cell {
    display: table-cell;
    vertical-align: top;
    position: relative
}

.carte .group:nth-child(even) .cell {
    direction: ltr;
    padding: 0 30px 0 0;
}

.cell.celld.sansimage {
    padding: 0 !important;
}

.tabb-carte .cell.cellg {
    width: 33.3333%;
    background: url(../images/photo2.jpg) no-repeat center top;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover !important;
}

.tabb-carte .cell.celld .contt {
    padding: 0 0 30px 30px;
}

.carte .group:nth-child(even) .cell .contt {
    padding: 0 0 30px 0;
}

.tabb-carte .cell.celld.sansimage .contt {
    padding: 0 0 30px 0
}

.carte .tableau {
    display: table;
    /* table-layout: fixed; */
    width: 100%;
    /* margin-left: 4%; */
    padding-top: 0.5rem;
    border-bottom: 1px solid #c2c2c2;
}

.carte .cellule {
    display: table-cell;
    vertical-align: top
}

.carte .group {
    padding: 2em 0;
}

.carte .group:nth-child(odd) {
    /* background: var(--color0); */
    padding: 2em 0 5em;
}

.carte h2 {
    padding: 10px 0;
    /* color: #7c1704; */
    font-size: 32px;
}

.carte .price {
    width: 100px;
    padding: 8px 0 0 0;
    font-size: 17px;
}

.carte ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    list-style-image: none
}

.carte ul li.item {
    display: flex;
    table-layout: fixed;
    width: 100%;
    /* border-bottom: 1px solid #c2c2c2; */
    justify-content: flex-start;
    align-items: flex-end;
    /* margin: 0rem auto; */
    /* max-width: 1200px; */
}

.item .item-img img {object-fit: cover; width: 100%;}
.item-img {width: 50%;}

.carte ul li.item:last-child {
    /* border: none; */
}

.carte ul li.item .item-title {
    display: table-cell;
    vertical-align: top;
    padding: 6px 0;
    text-transform: uppercase;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: bold;
}

.carte ul li.item .item-title h3 {
    margin: 0 0 24px;
}

.carte ul li.item .price {
    display: table-cell;
    vertical-align: top;
    text-align: right;
    font-weight: 600;
}

.carte ul li.item.multiprix .price {
    text-align: center;
    font-size: 17px;
}

.carte ul li.item small {
    display: block;
    color: var(--color4);
    text-transform: none;
    font-size: 14px;
    font-weight: 100;
    /* padding-left: 4%; */
}

.carte .group .propor {
    width: 100%;
    position: relative;
    margin-bottom: 20px
}

.carte .group .propor:after {
    padding-top: 72%;
    display: block;
    content: ''
}

.carte .group .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.carte .group .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    border: 1px solid #81b836;
    width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 10px
}

.carte .group .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

.carte .group .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.5) url(../images/ico-zoom.png) no-repeat center center
}

.carte .group .propor .propor-cont .imagecont:hover .masque {
    top: 0
}

.carte .group .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15)
}

.carte .group .noimage {
    background: #fff url(../images/noim.jpg) no-repeat center center;
    background-size: auto!important;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden
}

.header-sidebars,.sidebar-left,.sidebar-right {
    background-color: #fff;
    letter-spacing: 1px
}

.contactButton,.nav-item-active,.sidebar-bottom-controls a,.sidebar-divider-text,.sidebar-form label,.sidebar-left a,.sidebar-right a,.sidebar-send-button {
    color: #fff!important
}

.header-sidebars {
    height: 65px;
    z-index: 9999;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.1)
}

.header-sidebars .header-top {
    display: table;
    height: 65px;
    background: var(--color1) url(../images/bg_1.jpg) no-repeat center / cover;
    width: 100%
}

.top-logo {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 9999;
    text-align: center;
    /* overflow-y: hidden; */
}

.top-logo img {
    position: relative;
    left: 10px;
    top: 6px;
    height: 24px;
    width: auto;
    margin-right: 20px;
}

.deploy-left-sidebar {
    display: table-cell;
    background-color: #f78e1e;
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/nav.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center
}

.deploy-right-sidebar {
    border-left: 1px #fff solid;
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/nav.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center
}

.deploy-right-mail {
    border-left: 1px #fff solid;
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/mail.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
    position: absolute;
    right: 65px;
    top: 0
}

.deploy-right-call {
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/telephone.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center 16px;
    position: absolute!important;
    right: 130px;
    top: 0
}

.deploy-back-home {
    background-image: url(../images/menu-mobile-3/home.png);
    background-repeat: no-repeat;
    background-color: #f9fafc;
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px
}

.delete-right-sidebar {
    display: none;
    background-image: url(../images/menu-mobile-3/contact.png);
    background-repeat: no-repeat;
    background-color: #f9fafc;
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px
}

.sidebar-left {
    font-family: Nunito-Regular,Helvetica!important;
    width: 270px;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: -270px;
    bottom: 0;
    overflow: hidden;
    position: fixed;
    box-shadow: 3px 0 3px 0 rgba(0,0,0,.1)
}

.sidebar-scroll-left {
    padding-right: 20px;
    left: 0;
    width: 310px;
    overflow: scroll!important;
    overflow-x: hidden!important;
    -webkit-overflow-scroll: touch!important;
    height: 100%;
    background-color: #c31c26
}

.sidebar-scroll-right {
    width: 275px;
    overflow: auto!important;
    overflow-x: hidden!important;
    height: 100%;
    background-color: var(--color1);
}

.sidebar-right {
    font-family: Nunito-Regular,Helvetica!important;
    background-repeat: repeat;
    position: fixed;
    overflow: hidden;
    z-index: 99999;
    right: -280px;
    top: 0;
    bottom: 0;
    width: 270px;
    margin-right: 10px;
    box-shadow: -2px 0 2px 0 rgba(0,0,0,.1)
}

.sidebar-decoration {
    background-image: url(../images/menu-mobile-3/sidebar-deco.png);
    background-repeat: repeat-x;
    height: 2px;
    margin-bottom: 15px
}

.sidebar-left a,.sidebar-right a {
    text-decoration: none;
    display: block;
    overflow: hidden;
    position: relative;
    color: #fff!important;
    z-index: 1
}

.sidebar-header-left {
    height: 65px;
    background-color: #f78e1e;
    position: relative
}

.sidebar-left-logo {
    max-height: 75px;
    position: absolute;
    top: -2px;
    left: 8px;
    margin-right: 179px
}

.sidebar-right-logo {
    margin-left: 84px;
    top: 9px;
    display: none;
    right: 1px;
    max-width: 180px;
    float: inherit;
    max-height: 46px;
    position: relative;
    filter: brightness(4)
}

.close-sidebar-left {
    background-image: url(../images/menu-mobile-3/left-chevron.svg);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 205px;
    display: block
}

.sidebar-divider-text {
    font-size: 20px;
    padding-top: 15px;
    padding-left: 20px;
    padding-bottom: 15px;
    margin-bottom: 0;
    color: var(--color0)!important;
    font-weight: 600;
    background: var(--color1);
}

.home-nav {
    background-image: url(../images/menu-mobile-3/home.png)
}

.info-nav {
    background-image: url(../images/menu-mobile-3/infoabout.png)
}

.folio-nav {
    background-image: url(../images/menu-mobile-3/bendedright.png)
}

.mail-nav {
    background-image: url(../images/menu-mobile-3/mail.svg)
}

.newsletter-nav {
    background-image: url(../images/menu-mobile-3/rss.png)
}

.call-nav {
    background-image: url(../images/menu-mobile-3/phonehook.svg)
}

.text-nav {
    background-image: url(../images/menu-mobile-3/speechbubble4.png)
}

.facebook-nav {
    background-image: url(../images/menu-mobile-3/facebook.png)
}

.twitter-nav {
    background-image: url(../images/menu-mobile-3/twitter.png)
}

.sidebar-bottom-controls {
    background-color: #f78e1e
}

.sidebar-bottom-controls p {
    margin-top: 3px
}

.sidebar-bottom-controls a {
    font-size: 12px;
    background-repeat: repeat-y;
    text-align: center;
    float: left;
    width: 33%;
    line-height: 10px;
    display: block
}

.facebook-bottom {
    display: block;
    padding-top: 26px;
    background-image: url(../images/menu-mobile-3/facebook.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.twitter-bottom {
    display: block;
    background-image: url(../images/menu-mobile-3/twitter.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.close-bottom-left,.close-bottom-right {
    display: block;
    padding-top: 26px;
    background-image: url(../images/menu-mobile-3/accessdenied.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.nav-item {
    font-size: 16.2px;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    background-size: 22px auto;
    background-color: #c9323b;
    height: 60px;
    line-height: 61.5px;
    background-repeat: no-repeat;
    padding-left: 60px;
    background-position: 20px center;
    margin-bottom: 1px
}

.icon-active {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/location.png);
    background-size: 10px 15px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px
}

.icon-page {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
    background-size: 8px 11px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px
}

.icon-drop {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/godrop.png);
    background-size: 10px 8px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 239px
}

.submenu a {
    text-shadow: 0 2px 0 rgba(0,0,0,1);
    background-image: url(../images/menu-mobile-3/sidebar-deco.png);
    background-repeat: repeat-x;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 25px;
    font-size: 10px;
    color: #878787;
    text-transform: uppercase;
    font-weight: 900
}

.submenu a em {
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
    background-size: 8px 11px;
    background-repeat: no-repeat;
    float: left;
    width: 10px;
    height: 15px;
    display: block;
    margin-top: 5px;
    padding-right: 35px
}

.submenu a:first-child {
    background-image: none!important
}

.submenu {
    display: none
}

.submenu-active {
    display: block
}

.sidebar-notifications a {
    margin-bottom: 15px;
    background-repeat: no-repeat;
    background-position: 0 center;
    padding-left: 38px;
    margin-left: 20px;
    font-size: 10px;
    color: #878787;
    font-family: Lato,sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 10px
}

.sidebar-header-right {
    height: 65px;
    background-color: var(--color1);
    position: relative
}

.close-sidebar-right {
    background-image: url(../images/menu-mobile-3/right-chevron.svg);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 0;
    display: block
}

.sidebar-left .close-sidebar-left,.sidebar-right .close-sidebar-right {
    position: absolute!important
}

.right-sidebar-copyright {
    margin: 20px 0
}

.footer-text a {
    padding-top: 10px;
    font-size: 10px;
    color: #8a8a8a
}

.copyright-sidebar {
    font-size: 10px;
    text-align: center;
    text-transform: uppercase
}

.menu-mobile-dynamique {
    margin: 0;
    padding: 0;
    list-style-type: none;
    list-style-position: inside;
    list-style-image: none
}

.menu-mobile-dynamique li {
    width: 100%;
    margin-bottom: 1px;
    background: var(--color1);
    padding-left: 18px
}

.menu-mobile-dynamique .sub-menu li {
    background-color: transparent;
    margin-bottom: 0
}

.menu-mobile-dynamique .sub-menu li a {
    height: 42px;
    text-transform: none
}

.menu-mobile-dynamique .sub-menu {
    background-image: linear-gradient(to bottom,#cbb190,#cbb190);
    padding-top: 18px;
    padding-bottom: 18px
}

.menu-mobile-dynamique li.parent {
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.svg);
    background-position: 241px 26.2px;
    background-repeat: no-repeat;
    background-size: 9px auto
}

.menu-mobile-dynamique li a {
    display: table-cell;
    width: 270px;
    vertical-align: middle;
    text-decoration: none!important;
    line-height: 18px;
    font-size: 16.2px;
    background-image: url(../images/menu-mobile-3/bendedright.svg);
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    background-size: 8px auto;
    text-transform: uppercase;
    color: #fff;
    height: 55px;
    background-repeat: no-repeat;
    padding-left: 29px;
    background-position: 6px 20.9px;
    font-family: var(--font_family_1);
}

.menu-mobile-dynamique ul {
    list-style-image: none;
    list-style-position: inside;
    list-style-type: none;
    padding-left: 0
}

.menu-mobile-dynamique ul li a {
    background: 0 0;
    color: #bebebe
}

.small-notification p {
    margin: 10px 13px;
    padding-bottom: 2px;
    line-height: 18px
}

.text-input {
    overflow: hidden;
    position: relative;
    font-size: 11px;
    color: #666;
    width: 230px;
    margin-left: 20px;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px;
    display: block;
    box-sizing: border-box;
    background-color: rgba(255,255,255,.1);
    border: solid 1px #3d3d3d
}

#contactEmail {
    margin-bottom: -5px!important
}

#contactMessage {
    display: none
}

#contactName {
    display: none;
    margin-bottom: 10px
}

#left_label_name {
    overflow: hidden;
    position: relative;
    display: none;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: #8c8c8c;
    opacity: .3;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px
}

#name_label {
    overflow: hidden;
    position: relative;
    display: none;
    margin-top: 20px;
    margin-left: 20px;
    font-family: Lato,sans-serif;
    font-size: 12px;
    color: #c5c5c5
}

#email_label {
    margin-top: 20px;
    margin-left: 20px;
    font-size: 12px;
    color: #c5c5c5;
    display: block;
    overflow: hidden;
    position: relative
}

#left_label_mail {
    display: block;
    overflow: hidden;
    position: relative;
    line-height: 18px;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: #8c8c8c;
    opacity: .3;
    font-family: 'Open Sans',sans-serif;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px
}

.contact-button-house {
    line-height: 18px;
    margin-bottom: 20px;
    font-size: 11px;
    display: block;
    overflow: hidden;
    position: relative;
    vertical-align: baseline;
    outline: 0
}

.contactButton {
    display: block;
    overflow: hidden;
    position: relative;
    margin-left: 20px;
    margin-top: 30px;
    height: 36px;
    font-family: Lato,sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    width: 230px;
    background-color: rgba(255,255,255,.1);
    border: solid 1px #3d3d3d
}

.buttonWrap {
    padding: 10px!important;
    min-width: 43%
}

.contactSubmitButton {
    display: block!important;
    height: 36px!important;
    margin-right: 4px;
    float: left;
    margin-bottom: 20px
}

.contactNameField {
    padding-bottom: 5px;
    font-size: 12px
}

.contactField {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: #fff;
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px
}

.contactTextarea {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: #fff;
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    margin-bottom: 20px;
    line-height: 18px;
    height: 90px;
    padding: 9px 12px
}

.menu-mobile-dynamique input {
    -webkit-appearance: none;
    border-radius: 0
}

.sidebar-form {
    display: none;
    margin-left: 20px;
    width: 230px;
    box-sizing: border-box
}

.sidebar-form2 {
    display: none
}

.sidebar-form label {
    font-size: 13px;
    border-radius: 0!important;
    color: #c5c5c5;
    text-transform: uppercase;
    padding-top: 10px;
    display: block;
    opacity: .8;
    filter: alpha(opacity=80)
}

.sidebar-form label span {
    text-transform: lowercase;
    float: right;
    opacity: .5
}

.sidebar-form input {
    background-color: rgba(255,255,255,.1);
    border: solid 1px #3d3d3d
}

.sidebar-form textarea {
    background-color: rgba(255,255,255,.1);
    border: solid 1px #3d3d3d;
    margin-bottom: 0
}

.sidebar-send-button {
    font-size: 13px;
    display: block;
    width: 100%;
    color: #d2d2d2;
    font-family: Lato,sans-serif;
    text-transform: uppercase;
    font-weight: 700
}

.success-subscribe {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px
}

.sidebar-form {
    margin-bottom: 0!important;
    margin-top: -10px!important
}

.sidebar-form .formSuccessMessageWrap {
    width: 230px;
    margin-top: 20px;
    margin-bottom: 0
}

.sidebar-form .small-notification {
    margin-top: 20px
}

.sidebar-form #emailError {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0;
    height: 36px
}

.sidebar-form #emailError p {
    text-align: center;
    color: #ff8181;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.sidebar-form #emailError2 {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0;
    height: 36px
}

.sidebar-form #emailError2 p {
    text-align: center;
    color: #ff8181;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.subscribe-notification {
    width: 230px!important;
    margin-left: 20px;
    border-radius: 0!important;
    margin-bottom: -15px!important;
    margin-top: 20px!important;
    background-image: none!important
}

.subscribe-notification p {
    background-image: none!important;
    text-align: center;
    color: #ff8181!important;
    margin: 8px 0;
    display: block;
    text-transform: uppercase;
    padding-left: 0;
    margin-top: 20px
}

.formValidationError {
    margin-bottom: -15px
}

.sidebar-form .formValidationError div {
    margin-top: 20px;
    width: 230px;
    border-radius: 0!important;
    height: 36px;
    margin-top: 20px!important
}

.sidebar-form .formSubmitButtonErrorsWrap {
    overflow: visible!important;
    margin-bottom: 20px
}

.sidebar-form .formValidationError p {
    text-align: center;
    color: #ff8181!important;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.menu-mobile-dynamique label {
    display: block;
    overflow: hidden;
    position: relative;
    border: 0;
    vertical-align: baseline;
    outline: 0
}

.red-notification {
    background-color: rgba(219,84,84,.5);
    border-radius: 5px;
    border: solid 1px #cbb190
}

.formValidationError .red-notification p {
    background-image: none!important;
    display: block!important;
    padding-left: 0!important;
    text-align: center!important
}

.no-bottom {
    margin-bottom: 0!important
}

.menu-mobile-dynamique .sub-menu {
    display: none
}

.remonter {
    position: fixed;
    z-index: 9999;
    display: none;
    bottom: 10px;
    right: 10px;
    width: 44px
}

.remonter button {
    display: block!important;
    padding: 9px;
    text-align: center;
    border: none;
    background: var(--color1);
    border-radius: var(--border-radius);
    height: 46px;
    width: 46px;
    border-radius: 50%;
}

.remonter i {
    color: var(--color0);
    width: 20px;
    height: 20px;
    font-size: 20px;
    position: relative;
    top: 2px;
}

.remonter button:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.deprecated-ie p {
    line-height: 30px;
    margin: 0
}

.deprecated-ie a {
    line-height: 30px;
    font-family: Helvetica,arial,sans-serif;
    font-size: 13px;
    color: #000;
    text-decoration: underline
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .lightboxOverlay {
        overflow:scroll
    }

    .lightboxOverlay::-webkit-scrollbar {
        width: 0
    }
}



@media (min-width: 768px) and (max-width:991px) {
    .nbr-services-2 .nav-button{display:none !important;}
    .pad-sm {
        padding-left:15px!important;
        padding-right: 15px!important
    }

    .pad-sm-l {
        padding-left: 15px!important
    }

    .pad-sm-r {
        padding-right: 15px!important
    }

    .nopad-sm {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .nopad-sm-l {
        padding-left: 0!important
    }

    .nopad-sm-r {
        padding-right: 0!important
    }

    .gallery .kikoolol {
        padding: 10px 0 30px 30px
    }

    .corps-contact.formulaire {
        padding: 0 160px
    }

    .scrolled-content {
        height: 190px
    }
}
.nbr-services-1 .nav-button{display:none !important;}
@media (max-width: 1299px) {
    .navh .menu_principal a{
    font-size: 12px;
    margin-left: 13px;
}
    .res-hour, .res-btn{
        max-width: 249px;
    }
    .remonter {
        display:none!important
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 100%;
        width: 100%;
        padding: 0 7%;
    }

    .modal-lg {
        width: 1100px
    }

    .scrolled-content {
        height: 101px;
    }
}
@media (max-width: 1464px) {
    .head-flex .col-md-2.nopad.right{
        /*! display: none !important; */
    }
    .container {
        max-width: 100%;
        width: 100%;
        padding: 0 0% !important;
    }
}
@media (max-width: 1240px) {
    
    .body-page-1 .corps.huhu{
        flex-wrap: wrap;
        padding: 4rem 6%;
    }
    .qsn-pic.qsn-pic1 {
        order: 99;
    }
    .qsn-pic {
        width: 50%;
    }
    .body-page-1 .fluid-contenu .corps>article, .qsn-pics {
        width: 100%;
    }
}
@media (max-width: 991px) {
    .body-page-1 main.fluid-contenu:before{display:none}
    #inner img{width:200px}
    .res-blocks{
    padding: 3em 20px;
}

.res-hour, .res-btn {
    margin-bottom: 20px;
    max-width: 400px;
}
    .res-blocks:before{
        display:none;
    }
    .tabb-formule.sansimage {
        display:inline-table;
        width: 100%
    }

    .formules .formule {
        margin: 0;
        text-align: center
    }

    .tabb2 .cell .reser .block {
        display: block
    }

    .h1,h1 {
        margin: 0 0 30px 0;
        text-shadow: none;
        margin: 22px 0 20px 0;
        font-size: 30px
    }

    .h1,.pied h2,h1 {
        font-size: 30px;
        line-height: 31px;
    }

    .carte h1 {
        margin: 0 0 30px!important;
        padding: 30px
    }

    .tabb2 .cell .reser div a,.tabb2 .cell .reser div p {
        /* padding: 30px 20px; */
        display: block;
    }

    .container {
        max-width: none;
        width: auto;
        padding: 0;
    }

.contact-us .container {
    padding: 0;
}

.Parent-div {
    margin-top: 0;
}

    .contact .formulaire .form-group .col-md-4 {
        width: 100%!important
    }

    .contact .formulaire .form-group .col-md-8 {
        width: 100%!important
    }

    input[type=date],input[type=datetime-local],input[type=month],input[type=time] {
        width: 100%!important
    }

    .contact .formulaire .form-group input[name=captcha] {
        width: 100%!important;
        margin-right: 0!important;
        text-align: left!important
    }

    .contact .formulaire .form-group input[name=captcha]+a {
        position: absolute;
        width: 140px;
        top: 0;
        right: 0;
        margin-right: 0!important
    }

    .contact .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px
    }

    .modal-content input[name=captchaReservation] {
        width: 100%!important;
        margin-right: 0!important;
        text-align: left!important
    }

    .modal-content input[name=captchaReservation]+a {
        position: absolute;
        width: 140px;
        top: 0;
        right: 0;
        margin-right: 0!important
    }

    .modal-content .btn-default {
        width: 100%;
        margin-top: 8px
    }

    .lb-prev {
        opacity: 1!important;
        background: url(../images/lightbox-g.png) left 48% no-repeat
    }

    .lb-next {
        opacity: 1!important;
        background: url(../images/lightbox-d.png) right 48% no-repeat
    }

    .scrollbars {
        width: 100%;
        height: auto
    }

    .scrollbar-content {
        padding: 0
    }

    body {
        font-size: 16px
    }

.block-1,.block-2 {
    padding: 0 20px;
}

    .miettes-externes {
        display: none
    }

    .cont-slider .controls {
        display: none
    }

    .fluid-contenu .corps.huhu {
        padding: 50px 5%;
    }

.body-page-1 .corps.huhu {
    /* flex-direction: column; */
    flex-wrap: wrap;
}

p.slogan {
    padding: 0 4%;
}

    .cont-slider {
        position: static;
        margin-left: 0;
        width: 100%
    }

    .fluid-contenu .corps {
        padding: 30px 15px 30px 15px
    }

    .body-page-1 .fluid-contenu .corps>article {
        padding: 10px 10px 20px 10px;
    }

.body-page-1 .fluid-contenu .corps>article, .qsn-pics {
    width: 100%;
}

.qsn-pic {
    width: 50%;
}

.qsn-pic.qsn-pic1 {
    order: 99;
}

    .body-page-1 .h1,.body-page-1 h1 {
        margin: 15px 0 21px 0;
        font-size: 56px;
        line-height: 1;
        letter-spacing: 2px;
    }

    .faq-title.text-center.pb-3 {
        margin-bottom: 60px
    }

    .tabb .cell.cellg {
        display: none
    }

    .tabb2 {
        display: block;
        margin: 0;
        padding: 0;
        width: 100%
    }

    .tabb2 .cell {
        display: block;
        vertical-align: top;
        position: relative;
        width: 100%!important
    }

.reservation-bg {
    display: none;
}

    .tabb2 .cell .reser {
        /* display: block; */
        position: static;
        text-align: center;
        background-size: contain;
        height: 520px;
    }

    .tabb2 .cell .reser p a {
        padding: 90px 20px
    }

    .tabb2 .cell .contt {
        padding: 20px 4% 30px;
        min-height: 0
    }

.atouts-cont .atouts-cards {
    flex-direction: column;
}

.atouts-cards .cards-side1 .atout-card {
    flex-direction: row;
}

.cards-side {
    width: 100%;
}

.atouts-cards .atout-card {
    margin: 8px;
}

.atouts-img {
    display: none;
}

    .tabb2 .cell .contt h2 {
        font-size: 40px;
        padding: 0 0 15px 0
    }

    .modal-content .modal-body {
        border-radius: 0;
        padding: 0 5px 40px 5px
    }

    .modal-content h2 {
        margin-bottom: 20px;
        font-size: 18px
    }

    .modal-content .btn-default {
        padding: 10px 0;
        width: 100%
    }

    .tabb2 {
        padding: 0 0 40px 0;
        padding: 0 !important;
    }

main.fluid-contenu {
    margin-top: 0 !important;
}

    .pied .smartfood {
        margin: 20px 0 0 0
    }

    .pied .smartfood img {
        max-width: 170px
    }

    .pied .copyright-footer {
        margin: 15px 0 20px 0
    }

    .pied .copyright-footer img {
        max-width: 110px
    }

    .pied .bande2 {
        padding: 25px 20px 30px 20px;
    }

    .pied .bande1 {
        padding: 10px 0 80px 0
    }

    .pied .bande1 .tel {
        margin: 0 0 40px 0
    }

    .pied .horaires {
        padding: 0;
        margin: 0 20px 40px 25px;
    }

    .tabb-contact {
        display: block
    }

    .tabb-contact .cell {
        display: block;
        width: 100%!important
    }

    .contact .plan .block #googlemapapi,.contact .plan iframe {
        height: 250px!important
    }

    .tabb-contact .corps-contact {
        padding: 40px 15px 10px 15px
    }

    .contact .description-contact {
        padding: 0 0 10px 0
    }

    .contact .formulaire .form-group {
        /* margin-bottom: 10px; */
    }

    .tabb-reservation {
        display: block
    }

    .tabb-reservation .cell {
        display: block;
        width: 100%!important
    }

    .tabb-reservation .corps {
        padding: 10px 0 20px 0!important
    }

    .ui-datepicker .ui-datepicker-header {
        font-size: 22px
    }

    .ui-datepicker .ui-datepicker-next,.ui-datepicker .ui-datepicker-prev {
        top: 36px;
        width: 1.3em;
        height: 1.3em
    }

    .ui-datepicker .ui-datepicker-prev {
        left: 0
    }

    .ui-datepicker .ui-datepicker-next {
        right: 0
    }

    .tabb-specialites {
        display: block
    }

    .tabb-specialites .cell {
        display: block;
        width: 100%!important
    }

    .tabb-specialites .corps {
        padding: 10px 15px 20px 15px!important
    }

    .tabb-specialites h2 {
        margin-bottom: 20px
    }

    .tabb-specialites .cell.cellg {
        height: 160px
    }

    .tabb-specialites .cell.celld {
        padding: 0 0 30px 0
    }

    .tabb-carte {
        display: block
    }

    .tabb-carte .cell {
        display: block;
        width: 100%!important
    }

    .tabb-carte .corps {
        padding: 10px 15px 20px 15px!important
    }

    .tabb-carte h2 {
        margin-bottom: 20px
    }

    .tabb-carte .cell.cellg {
        height: 160px
    }

    .carte .group {
        margin: 0 0 20px 0;
        padding: 2em 4%!important;
    }

    .tabb-carte .cell.celld {
        padding: 0
    }

    .tabb-carte .cell.celld .contt {
        padding: 0 0 10px 0
    }

    .tabb-carte h2 {
        margin-bottom: 10px;
        font-size: 23px
    }

    .carte .price {
        width: 80px;
        font-size: 18px
    }

    .carte ul li.item:last-child {
        border-bottom: none
    }

.item-img {
    width: 100%;
}

.carte ul li.item {
    flex-direction: column;
}

    .tabb-formule {
        display: block;
        margin: 0;
        padding: 0;
        width: 100%
    }

    .tabb-formule .cell {
        display: block;
        vertical-align: top;
        position: relative
    }

    .tabb-formule .cell.cellg {
        width: 100%;
        height: 150px
    }

    .tabb-formule .cell.cellg.cell1 {
        display: block!important
    }

    .tabb-formule .cell.cellg.cell2 {
        display: none!important
    }

    .tabb-formule .cell.celld .contt {
        padding: 50px 80px 40px 80px
    }

    .banniere {
        position: relative;
        height: 45vh!important;
        padding: 0 0;
        background-position: center !important;
        z-index: 9;
    }

.body-page-1 p.slogan {
    width: 90%;
    padding: 0 4%;
    text-align: center;
}

strong.titre {
    font-size: 64px;
}

.body-page-1 p.slogan strong.titre {
    font-size: 64px;
}

.slogan span.sous-titre {
    font-size: 24px;
}
}

@media (min-width: 991px) and (max-width:1299px) {
    .navh .menu_haut_principal a,.navh .menu_haut_principal a:visited {
        font-size: 18px;
        line-height: 32px;
        padding: 5px 5px 10px 5px;
    }

    .body-page-1 p.slogan {
        padding: 0 8%;
    }
    .atouts-img {
        display: none;
    }
    
    .cards-side {
        width: 50%;
    }
    
    .atouts-cards {align-items: flex-start !important;}
    
    .atout-card {
        /* height: 200px; */
    }

    .pied .navf .menu_footer li a,.pied .navf .menu_footer li a:visited {
        font-size: 14px;
        padding: 0 12px
    }

    .pied address {
        font-size: 16px
    }

    .logo-site span {
        display: none;
    }

    .pied .horaires {
        font-size: 16px
    }

    .tabb-reservation .cell.cellg {
        width: 50%
    }

    .tete .logo-site,div#flex-infos {
        /* width: 10%; */
    }

.logo-site {}

.tete .logo-site img {
    /* width: 100%; */
    /* height: auto; */
}

    .corps-contact.formulaire {
        /* padding: 0 230px; */
    }

    .scrolled-content {
        height: 190px
    }
}


.responsive {
    margin: 10px auto 10px!important
}

.help-block {
    font-size: 14px
}

.description-groupe {
    margin-bottom: 30px
}

.description-groupe p {
    text-align: left!important
}

#menu_referencement {
    list-style-type: disc;
    width: 100%;
    text-align: justify;
    padding: 0
}

.menu_content {
    margin: 0;
    padding: 0
}

.menu_content ul li {
    display: inline
}

.menu_content ul li a {
    color: #fff;
    font-size: 13px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500
}

.menu_content ul li a:hover {
    color: var(--color1);
}

.menu_content ul li:after,.menu_footer ul li:after {
    content: " - ";
    color: var(--bg-facultatif);
}

.menu_content ul li:last-child:after,.menu_footer ul li:last-child:after {
    content: ""
}

.menu_footer ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    margin: 0 2px;
}

.menu_footer {
    display: block
}

.menu_footer ul {
    display: flex;
    text-transform: uppercase;
    font-size: 16px;
    color: #cbb190;
    padding: 0;
    list-style-type: none;
    flex-wrap: wrap;
    justify-content: center;
}

.menu_footer ul li {
    position: relative;
    display: inline-block
}

.menu_footer ul li a:hover {
    color: var(--color1);
    /* text-decoration: underline; */
}

.menu_footer ul li.active a,.menu_referencement li.active a {
    color: var(--color1);
    /* text-decoration: underline; */
}

.g-recaptcha {
    display: block;
    margin: 0 auto;
    width: 303px
}

.contact .g-recaptcha {
    float: left
}

.contact .btn-primary {
    float: right;
    height: 63px
}

img.blazy {
    width: 100%;
    background-image: url(../images/bx_loader.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #ddd
}

img.blazy.b-error {
    background-image: url(../images/noImage.png)
}

.blazy {
    width: 100%;
    background-image: url(../images/bx_loader.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #ddd;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none
}

.blazy[class*=col-] {
    width: initial
}

.blazy img {
    width: 100%
}

.blazy.b-error {
    background-image: url(../images/noImage.png)
}

.blazy.imgLoaded {
    background-size: cover
}

.isServiceList .content {
    padding: 0;
    width: 100%
}

.nosServicesBg {
    padding-top: 40px;
    padding-bottom: 40px;
    position: relative;
    background-color: #fff;
    color: #fff
}

.nosServicesBg .h {
    color: #c9ad8c;
    text-align: left
}

.nosServicesBg .hicon:after {
    background-color: transparent;
    margin: 0!important
}

.nosServicesBg .content {
    padding: 40px 0;
    float: left;
    background-color: transparent
}

.linkList {
    padding: 0;
    margin: 10px 0 0 0;
    list-style: none;
    float: left
}

.linkList li {
    display: block;
    width: 100%;
    float: left
}

.linkList li a {
    font-size: 18px;
    color: #c9ad8c;
    padding: 10px 15px 10px 50px;
    background-image: url(../images/r_arr.png);
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: 15px 50%;
    display: inline-block;
    margin: 0 0 19px 0;
    border: 1px solid #c9ad8c;
    min-width: 100%;
    text-align: left;
    text-decoration: none
}

.linkList li a:hover {
    background-image: url(../images/r_arr_h.png);
    color: #fff;
    border: 1px solid #fff;
    background-color: #c9ad8c;
    text-decoration: none
}

.body-service-list .fluid-contenu .container {
    width: 100%;
    max-width: 100%
}

.hvr-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle
}

.hvr-shutter-out-horizontal:before {
    content: ""
}

a.bouton-secondaire {
    margin-left: 30px;
    color: var(--color0);
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500
}

a.bouton-principal,button.bouton-principal {
    position: relative;
    padding: 10px 20px;
    transition: .3s ease-in-out;
    /* background: var(--color1); */
    border: 1px solid var(--color1);
    margin: 0;
    font-family: var(--font_family_2);
    font-weight: 100;
    font-size: 18px;
    line-height: 23px;
    color: var(--color1);
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none;
    border-radius: var(--border-radius);
    border-color: var(--color1);
    /* border-radius: 0; */
}

.Title-services a.bouton-principal {
    padding: 0;
    font-size: 15px;
    background: none;
    font-family: var(--font_family_2);
    border: none;
    color: var(--bg-facultatif);
    text-transform: initial;
    letter-spacing: 2px;
    border: 1px solid;
    padding: 0.8rem 1.5rem;
}

.body-service-list .services .tableGrid.row  a.bouton-principal {
    padding: 8px 16px;
    font-size: 15px;
}

.slogan a.bouton-principal {
    margin-left: 4px;
    text-shadow: 0 0 BLACK;
    border-color: var(--color1);
    color: var(--color1) !important;
}

a.bouton-principal:hover {
    color: var(--color3);
    background: var(--color1);
    border-color: var(--color1);
}

.Title-services a.bouton-principal:hover {
    /* letter-spacing: 1px; */
}

a.bouton-principal:hover:before {
    transform: scale(.95);
    bottom: -5px
}

.page-contenu a.bouton-principal:before {
    background: var(--color4)
}

.flex-right a.bouton-principal {
    float: left;
}

.btn-service {
    text-align: center;
    margin: 10px 0
}

a.bouton-principal.btn-gris {
    background: #ffffff12;
    border-color: var(--color1);
    color: var(--color3);
    padding: 15px 30px;
    font-size: 14px;
}

.tabb2 .cell .contt .bouton-principal.btn-gris {
    width: 100%;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    border-color: var(--color3);
}

.tabb2 .cell .contt .bouton-principal.btn-gris:hover {
    background: var(--color1);
    color: var(--color3);
    border-color: var(--color1);
}

a.bouton-principal.btn-gris:hover {
    background: var(--color1);
    border-color: var(--color1);
    color: var(--color3) !important;
}

.body-service-list .services .tableGrid.row {
    overflow-x: hidden;
    margin-bottom: 60px;
}

.body-service-list .services .tableGrid.row {}

.body-service-list .services .tableGrid.row:nth-of-type(odd) {
    direction: rtl
}

.body-service-list .services .tableGrid.row:nth-of-type(even) {
    direction: ltr;
    /* background-color: #fff; */
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) [class*=col-] {
    direction: ltr;
    /* background-color: var(--color2); */
    /* color: #fff; */
}

.body-service-list .services .tableGrid.row .h {
    text-align: center;
    margin-bottom: 1em;
    color: var(--color1);
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .h {
    color: var(--color1);
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .service_sub_title {
    font-size: 22px;
    color: #fff;
    padding: 0 0 5px
}

.body-service-list .services .tableGrid.row .bodyContent {
    text-align: center;
    padding: 5vw 5vw
}

.body-service-list .services .tableGrid.row .bodyContent p {
    padding: 0 0 20px
}

.isServiceList #main {
    width: 100%
}

.body-service-list .main_bg {
    padding-bottom: 0;
    padding-bottom: 80px;
    min-height: 600px;
    z-index: 1;
    position: relative
}

.body-service-list .bodyContent .h {
    text-align: initial
}

.service_sub_title {
    font-size: 22px;
    color: #a7a7a7;
    padding: 12px 0 5px
}

.nosServicesBg ul {
    padding: 0
}

.nosServicesBg .mainSectionSlider .show {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent
}

.nosServicesBg .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent
}

.services .mainSectionSlider .show {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent
}

.services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent
}

.row.ligne-photos.retrait.centerservice2 {
    margin: 0 16%!important
}

.row.ligne-photos.retrait.centerservice {
    margin: 0 33%!important
}

.nosServicesBg .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0
}

.nosServicesBg .bx-viewport {
    position: absolute!important;
    height: 100%!important;
    width: 100%!important;
    top: 0!important;
    left: 0!important
}

.nosServicesBg .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0
}

.services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0
}

.services .bx-viewport {
    position: absolute!important;
    height: 100%!important;
    width: 100%!important;
    top: 0!important;
    left: 0!important
}

.services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none
}

.nosServicesBg .bx-viewport li,.services .bx-viewport li {
    height: 100%;
    list-style: none
}

.mainSectionSliderBg .bx-pager,.services .bx-pager {
    z-index: 9999
}

.tableGrid,.tableGrid>.row {
    display: table;
    margin: 0;
    padding: 0;
    position: relative;
    height: 100%
}

.tableGrid>.table-row {
    height: 100%;
    display: table-row
}

.tableGrid.fullWidth {
    width: 100%
}

.tableGrid>.row>.table-row>[class*=col],.tableGrid>.row>[class*=col],.tableGrid>.table-row>[class*=col],.tableGrid>[class*=col] {
    display: table-cell;
    vertical-align: top;
    float: none;
    height: 100%;
    position: relative
}

.noPaddingCells>.row>.table-row>[class*=col],.noPaddingCells>.table-row>[class*=col],.noPaddingCells>[class*=col] {
    padding: 0
}

.tableGrid.nopadding>.row>.table-row>[class*=col],.tableGrid.nopadding>.row>[class*=col],.tableGrid.nopadding>.table-row>[class*=col],.tableGrid.nopadding>[class*=col] {
    padding: 0
}

.tableGrid.va-middle>.row>.table-row>[class*=col],.tableGrid.va-middle>.row>[class*=col],.tableGrid.va-middle>.table-row>[class*=col],.tableGrid.va-middle>[class*=col] {
    vertical-align: middle
}

.body-service-list .main_bg {
    padding: 50px 0 0 0
}

.body-service-list .main_bg .container {
    width: 100%;
    padding: 0
}

.dtable {
    display: table;
    margin: 0 auto;
    float: none
}

.dtable [class*=col-] {
    display: table-cell;
    vertical-align: middle;
    float: none
}

.dtable #submitReservation {
    width: 100%
}

@media (min-width: 768px) and (max-width:979px) {
    .dtable {
        display:block;
        margin: 0 auto;
        float: none
    }

    .dtable [class*=col-] {
        display: block;
        vertical-align: middle;
        float: left
    }

    .dtable #submitReservation {
        width: 100%
    }

    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 0!important
    }

    .row.ligne-photos.retrait.centerservice {
        margin: 0 25%!important
    }

    .tableGrid,.tableGrid>.row {
        display: block
    }

    .tableGrid>.row>.table-row>[class*=col],.tableGrid>.row>[class*=col],.tableGrid>.table-row>[class*=col],.tableGrid>[class*=col] {
        display: block;
        vertical-align: top;
        float: left;
        height: 100%;
        position: relative
    }

    .nosServicesBg .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .nosServicesBg .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .nosServicesBg .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none
    }

    .nosServicesBg .bx-viewport li,.services .bx-viewport li {
        height: 100%;
        list-style: none
    }

    .mainSectionSliderBg .bx-pager,.services .bx-pager {
        z-index: 9999
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block
    }
}
@media (max-width: 767px) {
    .realisations .row.recup-photos.gallery {
        padding: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "item1 item2"
            "item3 item4";
        grid-template-rows: 150px 150px;
        grid-gap: 10px;
    }
    .flex-cont{
    flex-direction: column;
    gap: 10px;
}

.flex-cont img {
    max-width: 170px;
    width: 100%;
    margin: 20px 0;
}
    .body-page-1 p.slogan {
        position:absolute!important;
        background: #000000a3 !important;
        width: 100%!important;
        text-align: center!important;
        padding: 20px 0 !important;
        bottom: -0px;
        top: auto!important;
        transform: unset;
    }

    .slogan {
        width: 100%!important;
        left: 0;
        padding: 0 15px!important;
        top: auto!important;
        text-align: center!important
    }

    strong.titre {
        font-size: 40px;
    }

.body-contact .corps.huhu h1 {
    font-size: 40px;
    line-height: 56px;
}

.body-page-1 strong.titre {
    font-size: 24px;
}

.body-page-1 p.slogan strong.titre {
    font-size: 32px;
    letter-spacing: 2px;
}

.qsn-pics {
    display: none;
}
.atouts-cards .atout-card {
    flex-direction: column !important;
    align-items: flex-start;
}
.atouts {padding: 4rem 4%;}

.card-text {
    padding: 0;
    width: 100%;
}

.body-page-1 .h1, .body-page-1 h1 {
    font-size: 40px;
}

    span.sous-titre {
        font-size: 15px!important;
        letter-spacing: 0;
        line-height: 1;
    }

    .slogan a.bouton-principal {
        display: none
    }

    .fluid-contenu {
        margin: 0!important
    }

.h1, .pied h2, h1 {
    font-size: 27px;
    line-height: 27px;
}

.contact h2 {
    font-size: 22px;
    line-height: 1;
}

    .services div#toMove {
        padding: 0!important
    }

    .body-service-list .services .tableGrid.row .bodyContent {
        padding: 30px 20px!important
    }

    .services-container {
        margin-top: 50px
    }

.services-container.services-flex {
    /* flex-direction: column; */
    padding: 0 20px;
}

.services-container.services-flex .service {
    width: 100%;
    height: 300px;
    flex: inherit;
    margin: 0;
}

    .nav-button {
    }

    .body-page-1 .services {
        padding: 3em 4% 2em!important;
    }

    .services {
        padding: 2em 0 0!important;
    }

    .faq {
        display: block!important;
        padding: 0!important
    }

    .faq-section {
        padding: 3em 5%!important
    }

    .Parent-div {
        flex-direction: column;
        border: var(--border-radius);
        margin-top: -30px!important
    }

    .first-div {
        border-radius: 5px 5px 0 0!important
    }

    .third-div {
        border-radius: 0 0 5px 5px!important
    }

    .dtable {
        display: block;
        margin: 0 auto;
        float: none
    }

    .dtable [class*=col-] {
        display: block;
        vertical-align: middle;
        float: left
    }

    .dtable #submitReservation {
        width: 100%
    }

    .pad-xs {
        padding-left: 15px!important;
        padding-right: 15px!important
    }

    .pad-xs-l {
        padding-left: 15px!important
    }

    .pad-xs-r {
        padding-right: 15px!important
    }

    .nopad-xs {
        padding-left: 0!important;
        padding-right: 0!important
    }

    .nopad-xs-l {
        padding-left: 0!important
    }

    .nopad-xs-r {
        padding-right: 0!important
    }

    .corps-contact.formulaire {
        padding: 0 0
    }

    .pied .abus {
        text-align: left
    }

    .ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default {
        padding: 10px 0
    }

    .body-page-1 .ui-state-default,.body-page-1 .ui-widget-content .ui-state-default,.body-page-1 .ui-widget-header .ui-state-default {
        padding: 10px 0
    }

    .ui-datepicker table {
        font-size: 14px
    }

    .body-page-1 .ui-datepicker .ui-datepicker-title {
        font-size: 18px;
        padding: 4px 0
    }

    .tabb-reservation .cell.cellg {
        padding: 30px 15px
    }

    .tabb-reservation .cell .contt {
        padding: 20px 15px 30px 15px
    }

    .tabb-reservation .cell .contt h2 {
        margin-bottom: 20px
    }

    .tabb-formule .cell.celld .contt {
        padding: 30px 15px 40px 15px!important
    }

    .formules .formule hr {
        margin: 10px 0
    }

    .formules .formule ul {
        padding: 15px 10px!important
    }

    .gallery .kikoolol {
        padding: 10px 0 10px 0
    }

    .contact .coordonnees address {
        margin-bottom: 50px
    }

    .contact .coordonnees .horaires {
        margin-bottom: 50px
    }

    .pied .bande2 h2 {
        text-align: center;
        font-size: 25px!important
    }
}
@media (max-width: 767px) {
    .tabb2 .cell .reser{
    /* height: 490px; */
    background-size: 110% 100%;
    padding: 0;
}
    .dtable {
        display:block;
        margin: 0 auto;
        float: none
    }

    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 0!important
    }

    .row.ligne-photos.retrait.centerservice {
        margin: 0 0!important
    }

    .dtable [class*=col-] {
        display: block;
        vertical-align: middle;
        float: left
    }

    .dtable #submitReservation {
        width: 100%
    }

    .tableGrid,.tableGrid>.row {
        display: block
    }

    .tableGrid>.row>.table-row>[class*=col],.tableGrid>.row>[class*=col],.tableGrid>.table-row>[class*=col],.tableGrid>[class*=col] {
        display: block;
        vertical-align: top;
        float: left;
        height: 100%;
        position: relative
    }

    .nosServicesBg .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .nosServicesBg .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .nosServicesBg .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none
    }

    .nosServicesBg .bx-viewport li,.services .bx-viewport li {
        height: 100%;
        list-style: none
    }

    .mainSectionSliderBg .bx-pager,.services .bx-pager {
        z-index: 9999
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block
    }
}

@media (max-width: 980px) {
    .flex-seoContain {
        flex-wrap:wrap
    }

    .flex-seoContain .seo-content {
        width: 100%;
        background: 0 0
    }

    .flex-seoContain .seo-form {
        width: 100%
    }

    .img-seo img,a.imagecont.noflicker.img1 {
        width: 100%;
        height: auto;
        margin: 0 0 16px;
        display: block
    }

    .bande_contact_footer .row1 {
        padding: 5rem 11%
    }
}

@media (max-width: 480px) {
    .dtable {
        display:block;
        margin: 0 auto;
        float: none
    }

    .dtable [class*=col-] {
        display: block;
        vertical-align: middle;
        float: left
    }

    .dtable #submitReservation {
        width: 100%
    }

    .tableGrid,.tableGrid>.row {
        display: block
    }

    .tableGrid>.row>.table-row>[class*=col],.tableGrid>.row>[class*=col],.tableGrid>.table-row>[class*=col],.tableGrid>[class*=col] {
        display: block;
        vertical-align: top;
        float: left;
        height: 100%;
        position: relative
    }

    .nosServicesBg .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .nosServicesBg .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .nosServicesBg .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0
    }

    .services .bx-viewport {
        position: relative!important;
        height: 250px!important;
        width: 100%!important;
        top: 0!important;
        left: 0!important
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        margin: 0;
        list-style: none
    }

    .nosServicesBg .bx-viewport li,.services .bx-viewport li {
        height: 100%;
        list-style: none
    }

    .mainSectionSliderBg .bx-pager,.services .bx-pager {
        z-index: 9999
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block
    }
}

@media(max-width:500px){
	.note-avis{
		flex-direction: column;
	}
}   
div#contactButtonsMobile a {background-color: var(--color1) !important;text-align: center !important;border: 0 !important;}


.reservation-pic {
    border-radius: 0;
    /*! max-width: 570px; */
    /*! border-radius: 10rem 0rem 10rem 0rem; */
    overflow: hidden;
    height: 100%;
}

.reservation-pic img {
    height: 100%;
    object-fit: cover;
}
.reservation-pic.reservation-pic2 {
    position: absolute;
    bottom: -19%;
    left: 0;
    width: 50%;
}

[data-aos="radius-animation1"] {
    transform: scale(0.8);
    border-radius: 0px 0px 0 0;
    transition-property: all;
}

[data-aos="radius-animation1"].aos-animate {
    transform: scale(1);
    border-radius: 300px 300px 0 0;
}

[data-aos="radius-animation2"] {
    transform: scale(0.8);
    border-radius: 4rem 0rem 4rem 0rem;
    transition-property: all;
}

[data-aos="radius-animation2"].aos-animate {
    transform: scale(1);
    /*! border-radius: 50rem 50rem 0 0rem; */
}

[data-aos="radius-animation3"] {
    transform: scale(0.8);
    border-radius: 50px;
    transition-property: all;
}

[data-aos="radius-animation3"].aos-animate {
    transform: scale(1);
    border-radius: 220px;
}
.demande-container {
            background-image: url(../images/fil-a-fil-Rodez-22.jpg),linear-gradient(113deg,rgba(0,0,0,0.48) 0%,rgba(0,0,0,0) 100%) !important;
            width: 100%;
            position: center;
            padding: 12em 10%;
            background-position: center;
            background-size: cover;
        }

       

        .demande-title {
            color: white;
            font-size: 2.5rem;
            font-weight: bold;
            text-align: center;
            margin-bottom: 40px;
            text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
            position: relative;
            z-index: 2;
        }

        .demande-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 30px;
            position: relative;
            z-index: 2;
        }
        
.demande-container .h1.center {
  color: var(--color0);
  margin-bottom: 1em;
}
        .demande-item {
            background: rgba(255,255,255,0.1);
            border-radius: 20px;
            padding: 30px 20px;
            text-align: center;
            transition: all 0.3s ease;
            backdrop-filter: blur(10px);
            border: 2px solid rgba(255,255,255,0.2);
            cursor: pointer;
        }

        .demande-item:hover {
            transform: translateY(-10px);
            background: rgba(255,255,255,0.2);
            box-shadow: 0 15px 30px rgba(0,0,0,0.3);
        }

        .demande-icon {
            width: 80px;
            height: 80px;
            margin: 0 auto 20px;
            background: rgba(255,255,255,0.9);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }

        .demande-item:hover .demande-icon {
            background: white;
            transform: scale(1.1);
        }

        .demande-icon svg {
            width: 40px;
            height: 40px;
            fill: #8B4513;
        }

        .demande-service-title {
            color: white;
            font-size: 20px;
            font-weight: 600;
        }

        @media (max-width: 768px) {
            .demande-title {
                font-size: 2rem;
            }
            
            .demande-grid {
                grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
                gap: 20px;
            }
            
            .demande-item {
                padding: 20px 15px;
            }
            
            .demande-icon {
                width: 60px;
                height: 60px;
            }
            
            .demande-icon svg {
                width: 30px;
                height: 30px;
            }
        }
@media (min-width: 2000px) { 
    .tete .tel{color: var(--color0);padding: 1rem 2.5rem;/* background: url(../images/tel.png) no-repeat 8px 42%; *//* text-transform: uppercase; */text-align: left;margin: 0;float: right;font-family: var(--font_family_1);border: 1px solid var(--color0);border-radius: var(--border-radius);}

    .first-div .PhoneCall {
  margin-top: 1em;
}
    
    .contact-us {
    position: relative;
    padding: 2em 0 3em;
}
.body-page-1 .page-contenu {
    text-align: justify;
    height: 48vh;
}
    :root {
    --taille_font: 30px;
    --border-radius: 4px;
}
    .qsn-pics{width:40%;display:flex;flex-direction:column;justify-content:center;position:relative}
.qsn-pic{/* aspect-ratio:1/1; *//*! max-width:420px; */width: 38%;padding:1rem;/*! border-radius: 200px 200px 0 0; *//*! background: url(../images/bg_1.jpg) no-repeat center / cover fixed; */display: flex;justify-content: end;}

.qsn-pic.qsn-pic1 {
    /* height: 460px; */
}
.qsn-pic2{width: 30%;/* position:absolute; */right:0;bottom:-30%}
.qsn-pic img{object-fit:cover;height:100%;/*! border-radius: inherit; */}
.gallery {padding-top: 2em;}
.body-page-1 .h1,.body-page-1 h1 {
    color: var(--color1);
    margin: 0 0 10px 0;
    background: 0 0;
    /* text-shadow: 0 0 2px #000000b8; */
    text-align: center;
    font-size: 85px;
    letter-spacing: 5px;
}
.Title-services a.bouton-principal {
    padding: 0;
    font-size: 25px;
    background: none;
    font-family: var(--font_family_2);
    border: none;
    color: var(--bg-facultatif);
    text-transform: initial;
    letter-spacing: 2px;
    border: 1px solid;
    padding: 1.5rem 2.5rem;
    margin-bottom: 17px;
}
    h2.cardTitle {
    font-family: var(--font_family_1);
    font-size: 35px;
    letter-spacing: 3px;
    color: var(--color0);
    text-align: center;
    margin: 0px 0 2rem;
    height: 50px;
}
    .service {
    position: relative;
    flex: 1;
    height: 800px;
    /* margin: 20px 7px; */
    /* box-shadow: 0 0 5px #00000057; */
    display: flex;
    flex-direction: column;
    border-radius: 0px;
    overflow: hidden;
    justify-content: flex-end;
    /* border-radius: var(--border-radius); */
}
    
    .reservation-pic {
    border-radius: 0;
    max-width: 100%;
    /*! border-radius: 10rem 0rem 10rem 0rem; */
    overflow: hidden;
    height: 100%;
}
    .tabb2 .cell .contt .bouton-principal.btn-gris {
    width: 100%;
    text-align: center;
    font-size: 23px;
    font-weight: 600;
    border-color: var(--color3);
}
    .reservation-bg {
    position: relative;
    padding: 0rem 0rem 0rem 0rem;
    display: flex;
    width: 50%;
    /* height: 100%; */
    top: 0;
    left: 0;
    z-index: 0;
    transition: 0.5s cubic-bezier(0.19, 0.71, 0.71, 0.67);
    /* justify-content: center; */
}
    .demande-container {
            background-image: url(../images/fil-a-fil-Rodez-22.jpg),linear-gradient(113deg,rgba(0,0,0,0.48) 0%,rgba(0,0,0,0) 100%) !important;
            width: 100%;
            position: center;
            padding: 12em 10%;
            background-position: center;
            background-size: cover;
        }

       

        .demande-title {
            color: white;
            font-size: 2.5rem;
            font-weight: bold;
            text-align: center;
            margin-bottom: 40px;
            text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
            position: relative;
            z-index: 2;
        }

        .demande-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 30px;
            position: relative;
            z-index: 2;
        }
        
.demande-container .h1.center {
  color: var(--color0);
  margin-bottom: 1em;
}
        .demande-item {
            background: rgba(255,255,255,0.1);
            border-radius: 20px;
            padding: 70px 20px;
            text-align: center;
            transition: all 0.3s ease;
            backdrop-filter: blur(10px);
            border: 2px solid rgba(255,255,255,0.2);
            cursor: pointer;
        }

        .demande-item:hover {
            transform: translateY(-10px);
            background: rgba(255,255,255,0.2);
            box-shadow: 0 15px 30px rgba(0,0,0,0.3);
        }

        .demande-icon {
            width: 150px;
            height: 150px;
            margin: 0 auto 20px;
            background: rgba(255,255,255,0.9);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }

        .demande-item:hover .demande-icon {
            background: white;
            transform: scale(1.1);
        }

        .demande-icon svg {
            width: 75px;
            height: 75px;
            fill: #8B4513;
        }

        .demande-service-title {
            color: white;
            font-size: 35px;
            font-weight: 600;
        }

    .tabb2 .cell .contt h2 {
    text-align: center;
    font-size: 85px;
    color: var(--color1);
    border-bottom: 1px solid #979797;
    padding: 20px 0 15px 0;
    font-family: var(--font_family_1);
    margin: 10px 0;
}
    .atouts .h1 {color: var(--color1) !important;}
.atouts-cont {max-width: 100%;margin: 0 auto;padding: 4rem 0 0;position: relative;}
.atouts-cont .atouts-cards {display: flex;justify-content: space-evenly;align-items: center;}
.atouts-cards .atout-card {display: flex;align-items: center;/* max-width: 40%; */margin: 0 1.5rem 2rem;padding: 1.5rem;/* border: 1px solid #ffffff4f; */}

.atouts-cards .cards-side1 .atout-card {
    flex-direction: row-reverse;
}
.atouts-img img {
    height: 100% !important;
    /* max-height: 460px; */
    width: auto !important;
    object-fit: cover;
    border-radius: inherit;
    transition: all 0.3s ease;
    aspect-ratio: 1/1;
}

.atouts-img {
    width: 25%;
    height: 100%;
    position: relative;
    transition: all 0.3s ease;
    border-radius: 220px;
}

.cards-side {
    width: 35%;
}
.atouts-cards .atout-card:nth-child(even) {
    /* flex-direction: row-reverse; */
    /* justify-content: flex-start; */
}
.atouts-cards img {
    width: 117px;
    height: auto;
}
.atouts-cards h3 {color: var(--color1);/* text-align: center; */font-size: 50px;}
.card-text {
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 80%;
    padding: 0 2rem;
    color: var(--color3);
    font-size: 30px;
}

.atout-card:nth-child(even) .card-text {
    /* text-align: right; */
    /* align-items: flex-end; */
}

.atout-ico {
    width: 20%;
    padding: 1rem;
    text-align: center;
}
    .intervention .contenu {
    max-width: 100%;
    margin: 0 auto;
    color: var(--colordark);
    /*! text-shadow: -2px 0 2px #000000b8 !important; */
    padding: 0 13%;
}
    
    .pied .bande2 h2 {
    color: var(--color0);
    text-transform: initial;
    font-size: 40px;
    margin-bottom: 22px;
    font-family: var(--font_family_1);
}
    .menu_content ul li a {
    color: #fff;
    font-size: 25px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500
}
    .menu_footer ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 25px;
    font-weight: 500;
    margin: 0 2px;
}
    .first-div h4, .horaires span,.second-div h4 {
    color: var(--color0);
    font-weight: 700;
    font-size: 35px;
    font-family: var(--font_family_1);
    text-transform: inherit;
}
    .body-page-1 p.slogan strong.titre {
    font-size: 115px;
}

strong.titre {
    font-family: var(--font_family_1);
    letter-spacing: 5px;
    font-size: 64px;
    line-height: 1.2em;
    text-shadow: 0 0 3px var(--colordark);
    font-weight: 100;
}

span.sous-titre {
    opacity: 1;
    font-size: 45px;
    line-height: 47px;
    /* font-weight: 600; */
    letter-spacing: 4px;
}
    
    .body-page-1 p.slogan span.sous-titre {
    display: block;
    max-width: 100%;
}

a.bouton-principal.btn-gris {
    background: #ffffff12;
    border-color: var(--color1);
    color: var(--color3);
    padding: 18px 36px;
    font-size: 25px;
}
    .navh .menu_haut_principal a,.navh .menu_haut_principal a:visited{white-space:nowrap;/*! color: var(--color0); */display:block;font-size: 35px;font-weight: 100;padding: 16px 5px;text-decoration:none;background: url(../images/btn-h.png) center 70px no-repeat;font-family: var(--font_family_1);-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;-o-transition:all 400ms ease;transition:all 400ms ease;}
    .callTracker a,.callTracker span {
    display: block;
    text-align: center;
    min-width: 145px;
    padding: 0;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    height: auto !important;
    line-height: 1.64em;
    text-decoration: none
}
    header p.tel.callTracker span {
    text-align: left!important;
    text-decoration: none;
    width: auto;
    font-size: 25px;
    line-height:  unset !important;
}
    .contact-us .container {max-width: 1440px;padding: 0;}

    
.realisations .row.recup-photos.gallery {padding: 0;display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;grid-template-areas:
"item1 item2 item3 item4" "item5 item6 item7 item8";grid-template-rows: 600px 600px;grid-gap: 10px;position: relative;}
     .brasserie-image img {
            width: 100%;
            height: 767px !important;
            object-fit: cover;
            transition: transform 0.3s ease;
        }
    
}


/************************************ Brasserie*****************************************/


.brasserie-container {
            max-width: 100%;
            margin: 0 auto;
            padding: 8em 10% 0em;
        }

        .brasserie-header {
            text-align: center;
            margin-bottom: 50px;
        }

        .brasserie-title {
            /*! font-size: 3.5rem; */
            /*! font-weight: 300; */
            /*! color: #2c2c2c; */
            /*! margin-bottom: 30px; */
            /*! letter-spacing: 2px; */
        }

        .brasserie-description {
            /*! font-size: 1.1rem; */
            /*! line-height: 1.6; */
            /*! color: #555; */
            /*! max-width: 800px; */
            /*! margin: 0 auto; */
        }

        .brasserie-gallery {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
            gap: 30px;
            margin-top: 50px;
        }

        .brasserie-image {
            position: relative;
            overflow: hidden;
            border-radius: 10px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            transition: transform 0.3s ease;
        }

        .brasserie-image:hover {
            transform: translateY(-5px);
        }

        .brasserie-image img {
            width: 100%;
            height: 367px;
            object-fit: cover;
            transition: transform 0.3s ease;
        }

        .brasserie-image:hover img {
            transform: scale(1.05);
        }

        .brasserie-overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(to bottom, rgba(0,0,0,0.1), rgba(0,0,0,0.6));
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .brasserie-image:hover .brasserie-overlay {
            opacity: 1;
        }

        .brasserie-label {
            position: absolute;
            bottom: 20px;
            left: 20px;
            color: white;
            font-size: 1.2rem;
            font-weight: 500;
            text-shadow: 0 2px 4px rgba(0,0,0,0.5);
            opacity: 0;
            transform: translateY(20px);
            transition: all 0.3s ease;
        }

        .brasserie-image:hover .brasserie-label {
            opacity: 1;
            transform: translateY(0);
        }

        .brasserie-features {
            display: flex;
            justify-content: center;
            gap: 40px;
            margin-top: 60px;
            flex-wrap: wrap;
        }

        .brasserie-feature {
            text-align: center;
            padding: 20px;
            background: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.08);
            min-width: 200px;
            transition: transform 0.3s ease;
        }

        .brasserie-feature:hover {
            transform: translateY(-3px);
        }

        .brasserie-feature-icon {
            font-size: 2rem;
            margin-bottom: 15px;
            color: #d4af37;
        }

        .brasserie-feature-title {
            font-size: 1.1rem;
            font-weight: 600;
            color: #2c2c2c;
            margin-bottom: 10px;
        }

        .brasserie-feature-text {
            font-size: 0.9rem;
            color: #666;
            line-height: 1.4;
        }

        @media (max-width: 768px) {
            .brasserie-title {
                font-size: 2.5rem;
            }
            
            .brasserie-gallery {
                grid-template-columns: 1fr;
            }
            
            .brasserie-features {
                flex-direction: column;
                align-items: center;
            }
        }


/***************************************************************************/
