
:root {
    --color0: #fff7ed;
    --color1: #E3BD50;
    --color2: #181818;
    --color3: #7F6254;
    --light: #ffffff;
    --color4: #ffffff;
    --font_family_1: 'Philosopher-Bold', sans-serif;
    --font_family_2: 'Cabin-Regular', sans-serif;
    /* --font_family_3: 'Niconne-Regular', sans-serif; */
    --taille_font: 16px
}
.load-row {
  width: 100px;
  height: 50px;
  line-height: 50px;
  text-align: center;
}

.load-row span {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: var(--color1);
  border-radius: 50px;
  animation: up-down6 0.5s ease-in infinite alternate;
}

.load-row span:nth-child(2) {
  background: var(--color3);
  animation-delay: 0.16s;
}

.load-row span:nth-child(3) {
  background: var(--color1);
  animation-delay: 0.32s;
}

.load-row span:nth-child(4) {
  background: var(--color3);
  animation-delay: 0.48s;
}

@keyframes up-down6 {
  0% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(10px);
  }
}
.news .item .h,
.view .item .h {
    font-weight: 900;
    text-transform: uppercase
}

.view .item a img,
div.row.divAvis h2,
div.row.divAvis p {
    margin-bottom: 10px
}

.deprecated-ie a,
.news .item a:hover,
.news .voirtous a,
.newsList .item .h3 a:hover,
.view .voirtous a,
a {
    text-decoration: underline
}

.carte .group-title,
.carte .item-title,
.h1,
.hicon,
.news .item .h,
.view .item .h,
h1 {
    text-transform: uppercase
}

#inner,
.navbar {
    align-content: center
}

input[type=search],
select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px
}

#left_label_mail,
#left_label_name {
    margin-left: 200px;
    opacity: .3;
    padding-bottom: 5px
}

.fluid-slider {
    background: var(--light)
}
 
.body-contact-39 .contact,
.carte li:nth-child(2n) .group .groupContent,
.carte li:nth-child(odd) .group .groupContent,
.noPaddingCells>.row>.table-row>[class*=col],
.noPaddingCells>.table-row>[class*=col],
.noPaddingCells>[class*=col],
.nopadding,
.nosServicesBg ul,
.tableGrid.nopadding>.row>.table-row>[class*=col],
.tableGrid.nopadding>.row>[class*=col],
.tableGrid.nopadding>.table-row>[class*=col],
.tableGrid.nopadding>[class*=col],
.zone03 ul,
section.section.row.pageseo {
    padding: 0
}

.fluid-contenu {
    position: relative;
    z-index: 8000
}

.fluid-contenu .corps {
    padding: 20px 0 40px
}

.sidebar {
    padding-top: 30px;
    text-align: right
}

.sidebar .photoa {
    background: url(../images/photo-accueil.jpg) right top no-repeat;
    height: 187px
}

.body-news-list .view .item:hover:before,
.carte .group-title,
.carte .itemTr:nth-child(2n),
.carte .itemTr:nth-child(odd),
.imagecont,
.news .actuAadding {
    background-color: var(--color0);
}

.view .item {
    padding: 0;
    margin: 0;
    float: left;
    width: 100%;
    position: relative
}

.news .item {
    padding: 0 0 30px;
    margin: 0 0 40px;
    border-bottom: 1px solid var(--color0)
}

.body-news-list .view .item:before {
    content: '';
    width: 110vw;
    left: 50%;
    top: 0;
    margin-left: -80%;
    height: 100%;
    background-color: transparent;
    position: absolute;
    display: none
}

.view .actu:first-child .item {
    border-bottom: 1px solid var(--color0);
    padding: 15px 0 30px
}

.view .actu:last-child .item {
    border-bottom: 0 solid var(--color0)
}

.right-sidebar-copyright,
.storeLinksBg,
.view .item a.voirtous {
    margin: 20px 0
}

.view .item a img {
    width: 100%;
    position: relative;
    z-index: 1;
    border-radius: 6px;
    background-size: cover;
}

.imagecont {
    display: block;
    background-image: url(../images/bx_loader.gif);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    border-radius: 6px
}

.body-formule-list .main_bg,
.formuleBg {
    background-image: url(../images/encartBg.jpg)
}

.view .item .h {
    margin: 0 0 11px;
    font-size: 1.1vw;
    color: var(--light)
}

.date-article,
.news .item .date_post,
.view .item .date_post {
    font-size: 15px;
    color: var(--light);
    display: inline-block;
    margin: 10px 0;
    font-family: var(--font_family_2)
}

.news .item .propor,
.view .item .propor {
    width: 100%;
    position: relative
}

.news .item .propor:after,
.view .item .propor:after {
    padding-top: 75%;
    display: block;
    content: ''
}

.news .item .propor .propor-cont,
.propor .propor-cont,
.view .item .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.news .item .propor .imagecont,
.view .item .propor .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative
}

.news .item .propor .imagecont .imagefond,
.propor .propor-cont .imagecont .imagefond,
.view .item .propor .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

.news .voirtous a:hover,
.view .voirtous a:hover {
    text-decoration: none
}

.view .articleContent {
    color: var(--light);
    font-size: .8vw;
    margin: 10px 0 30px
}

.cont-slider .controls ol li,
.section.carte .reserver,
.view .imagefond {
    display: inline-block
}

.paddingCont {
    border: none;
    padding: 30px 0
}

.NewsletterBg {
    padding: 78px 20px 60px;
    background-color: var(--color2);
    text-align: center;
    margin-top: 0;
}

.NewsletterBg .h, .NewsletterBg p, .hvr-shutter-out-horizontal:active, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:hover, .nosValeurs .h span, .notification-box p, .salon-content *, .titreAbdelhamid span, footer .callTracker.active .t_phone, footer .flex-horaires .horaires i, footer .horaire-infos{
    color: var(--light);
}

.salon-content p {
    font-size: 20px;
    text-align: center;
}
.block #newsletter_form {
    display: flex;
    width: 100%;
    margin: 0 auto;
}

.block #newsletter_form label {
    font-weight: 400;
    display: none
}

.block #newsletter_form input {
    border: none;
    border-radius: 0;
    display: table-cell;
    vertical-align: middle
}

.block #newsletter_form input[type=text] {
    background-color: transparent;
    line-height: 1;
    padding: 0 12px;
    width: 100%;
    margin: 0;
    font-size: 16px;
    color: var(--color0);
    border: 1px solid var(--color0);
    height: 50px;
}

.block #newsletter_form input[type=submit] {
    background: var(--color0);
    border: 2px solid var(--color0);
    color: var(--light)
}

.block #newsletter_form input[type=submit]:hover {
    border: 2px solid var(--color0);
    color: var(--color0);
    background: var(--color2)
}

.blockCenter.gallery-iflex {
    margin: 0 -15px
}

#lol,
.bootstrap-timepicker,
.bxslider,
.carte li:nth-child(2n),
.cont-slider,
.contact_footer_container,
.container,
.item-news,
.price.label,
.row,
.slide,
.slide img,
.theReservationText ol li {
    position: relative
}

.bootstrap-timepicker-widget table td span,
.datepicker-inline,
.form-horizontal .form-group .col-md-8,
.headerAdress,
.isServiceList #main,
.news .item a.plus,
.sudo-slider,
.sudo-slider img,
.tableGrid.fullWidth {
    width: 100%
}

a.sudolien.precedent,
a.sudolien.suivant {
    z-index: 9000;
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 30px;
    height: 32px;
    margin-top: -15px
}

a.sudolien.precedent {
    left: 0;
    background: url(../images/g.png)
}

a.sudolien.suivant {
    right: 0;
    background: url(../images/d.png)
}

.remonter button:hover,
a.sudolien.precedent:hover,
a.sudolien.suivant:hover {
    opacity: .8
}

.cont-slider .controls {
    z-index: 9000;
    display: inline-block;
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
    text-align: center
}

.ReservationBg .theReservationText .h::after,#contactMessage, .actuAndNewsletter.actuAndNewsletter02.NewsletterBg>div.block.block-2>h2, .addthis_toolbox a svg, .bannier .banner h1:after, .body-contact label, .body-contact-100+#modal-evenement .modal-header .btn-prev, .body-formule-list .formuleBg, .body-page-1+#modal-evenement .modal-header .btn-prev, .body-service-list .services .tableGrid.row .h:after, .carte .price:last-child:after, .cont-slider .controls ol li a span, .contact label, .datepicker-container .h:after, .item p span.price:nth-child(3):after, .menu_footer>li:first-child:before, .menu_referencement li:first-child:before, .modal-content .h:after, .navbar-nav>li:first-child:before, .newsItem .div-rs .btn-partage .btn-gmb, .salon-block .salon-content h2:after, .sidebar-form2, .slogan :after, .submenu, body:after, button.btn.btn-prev, input[name=captcha]+a+a, p.header .price.label1:after {
    display: none
}

.cont-slider .controls ol {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.cont-slider .controls ol li a {
    display: block;
    width: 19px;
    height: 19px;
    background: url(../images/miette.png) center center no-repeat;
    margin: 0 2px
}

.cont-slider .controls ol li.current a {
    background: url(../images/miette-h.png) center center no-repeat
}

.caption {
    position: absolute;
    top: 15px;
    left: 15px;
    font-size: 20px;
    color: var(--color0);
    opacity: 0
}

.caption.active {
    -webkit-animation: 2s ease-in-out forwards caption;
    -moz-animation: 2s ease-in-out forwards caption;
    -o-animation: 2s ease-in-out forwards caption;
    animation: 2s ease-in-out forwards caption
}

@-webkit-keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@-moz-keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@-o-keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

.news .item .h {
    margin: 15px 0;
    font-size: 19px;
    color: var(--color3)
}

.news .actuAadding {
    padding: 20px
}

.news .articleContent {
    color: var(--light);
    font-size: 14px;
    margin: 0 0 30px;
    height: auto
}

.formule .h,
.formule .prix {
    font-size: 26px;
    -webkit-text-shadow: 4px 2px 4px var(--light);
    -moz-text-shadow: 4px 2px 4px var(--light);
    -ms-text-shadow: 4px 2px 4px var(--light);
    -o-text-shadow: 4px 2px 4px var(--light);
    text-shadow: 4px 2px 4px var(--light);
    font-weight: 100
}

.carte .label,
.carte .label:last-child,
.navbar-nav>li:last-child {
    margin-right: 0
}

.news .imagefond {
    display: inline-block;
    width: 100%;
    background-size: cover;
    border-radius: 6px
}

.news a img {
    width: 100%;
    position: relative;
    z-index: 1
}

.body-formule-list .main_bg {
    background-repeat: repeat;
    background-position: 50% 0;
    padding: 0 0 10px;
    position: relative;
    z-index: 2
}

.formule02:after,
.formuleBg {
    background-repeat: no-repeat;
    background-position: 50% 0
}

.formuleBg {
    padding: 80px 0 50px;
    height: 500px;
    position: relative;
    z-index: 2
}

.formule {
    width: 100%;
    padding: 46px 30px 20px;
    background-image: url(../images/formule.jpg);
    background-repeat: repeat;
    background-position: 50% 0;
    text-align: center;
    margin-bottom: 30px;
    -webkit-box-shadow: 6px 0 24px var(--light);
    -moz-box-shadow: 6px 0 24px var(--light);
    -ms-box-shadow: 6px 0 24px var(--light);
    -o-box-shadow: 6px 0 24px var(--light);
    box-shadow: 6px 0 24px var(--light)
}

.formuleBg .container:after,
.formuleBg .container:before {
    content: '';
    background-repeat: no-repeat;
    background-position: 50% 0;
    position: absolute;
    top: -90px;
    z-index: -1
}

.formuleBg .container:before {
    background-image: url(../images/formuleBgBefore.png);
    width: 277px;
    height: 499px;
    left: -270px;
    top: -30px
}

.formuleBg .container:after {
    background-image: url(../images/formuleBgAfter.png);
    width: 302px;
    height: 585px;
    right: -240px
}

.formule .h {
    color: var(--color3);
    margin-bottom: 27px
}

.formule .prix {
    color: var(--color0)
}

.formule ul {
    padding: 0 0 20px;
    margin: 0 0 20px;
    line-height: 1.2;
    min-height: 182px;
    border-bottom: 1px solid var(--color1)
}

.formule li,
.formule p {
    color: var(--color0);
    font-size: 18px
}

.formule li.item,
.text-GMB {
    padding: 15px 0
}

.atout-container .item p,
.body-page-1 .header,
.body-pageseo .header,
.carte .group.group-title-p,
.copyright-footer,
.encart p,
.news .date_post .s1,
.notification-box h4 {
    margin-bottom: 0
}

.carte .group.group-title-p br {
    display: none;
}

.carte li,
.formule li,
.gallery ul.tab-content li {
    list-style: none;
    background: #f6f6f6;
    padding: 40px;
}
.carte li{
    padding: 40px 40px 0px;
}

.encart p span {
    font-size: 22px;
    margin: 30px auto;
    display: inline-block
}

.formule02:after {
    content: '';
    position: absolute;
    top: -21px;
    right: 10px;
    background-image: url(../images/m.png);
    width: 54px;
    height: 50px
}

.formule.formule03 {
    padding: 100px 30px
}

.carte .group-left>ul,
.carte .group-right>ul,
.img_thumbnail_figcaption {
    background-color: transparent
}

.carte ul {
    padding: 0;
    margin: 0 0 40px;
    float: left;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
}

.carte td {
    padding: 10px
}

.carte .group {
    list-style: none;
    float: left;
    width: 100%;
    margin-bottom: 40px;
    position: relative
}

.carte .group-title {
    color: var(--color2);
    border: 1px solid var(--color2);
    border-radius: 50px
}

.carte .group-title:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 5px;
    background-color: var(--color2);
    top: 15px;
    left: 0;
    z-index: -1;
    background-image: url(../images/dots3.png);
    background-repeat: repeat-x;
    background-position: 50% 0;
    display: none
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) {
    direction: rtl
}

.bodyContent:nth-of-type(odd),
.carte li:nth-child(2n) .group .h,
.carte li:nth-child(2n) .group tr {
    direction: ltr
}

.carte li .group .groupContent,
sup {
    vertical-align: top
}

.carte li:nth-child(2n):before {
    content: '';
    position: absolute;
    top: 0
}

.carte .item-title {
    color: var(--color3);
    font-size: 20px;
    padding: 0;
    font-weight: 100
}

.carte .item p {
    margin-bottom: 0;
    background-repeat: repeat-x;
    background-position: 50% 12px
}

.carte .item .item-description,
.carte .item small {
    color: var(--light);
    text-align: justify;
    padding: 3px 3px 0 0;
    display: inline-block;
    width: 100%;
    margin-bottom: 0;
    font-weight: 100;
    text-transform: none;
    color: var(--color2);
    opacity: .8;
    font-size: 15px
}

.carte .price {
    float: none;
    color: var(--light);
    font-size: 25px;
    position: relative;
    font-weight: 100;
    text-align: center;
    width: 69px
}

.carte .price:after {
    content: '';
    height: 40px;
    width: 1px;
    background-color: var(--color0);
    float: right;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -20px
}

.carte .yesLabels .price {
    font-size: 17px
}

.carte .labels .label,
.h6,
h6 {
    font-size: 12px
}

.carte .item .yesLabels .price {
    border-right: 1px solid var(--color0)
}

.carte .item .yesLabels .price:last-child {
    border-right: 0 solid var(--color0)
}

.carte .label {
    border-radius: 0;
    color: var(--color2);
    display: table-cell
}

.priceVide {
    text-align: center !important
}

.carte .labels {
    border-bottom: 0 solid var(--color3);
    margin-top: 0;
    margin-bottom: 0
}

.carte .blazy,
.modal-content .form-group,
p,
ul {
    margin-bottom: 20px
}

.section.carte .reserver img {
    vertical-align: text-top;
    margin: 3px 0 0
}

code,
div.row.divAvis .etoiles {
    margin: 10px 0
}
.etoiles i {
    color: orange;
}

.carte .price span {
    display: block;
    white-space: nowrap
}

.carte .item .item-description .blazy {
    float: left;
    margin: 5px 10px 10px 0;
    width: auto
}

.deprecated-ie {
    text-align: center;
    color: var(--light);
    background: var(--color0)
}

.deprecated-ie p {
    line-height: 30px;
    margin: 0
}

.deprecated-ie a {
    line-height: 30px;
    font-family: var(--font_family_1);
    font-size: 13px;
    color: var(--light)
}

.navbar-brand,
.navbar-nav>li>a,
.sitemap a {
    text-decoration: none
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .lightboxOverlay {
        overflow: scroll
    }

    .lightboxOverlay::-webkit-scrollbar {
        width: 0
    }
}

.bg,
.body-gallery .main_bg,
.newsItem .photo img {
    overflow-x: hidden
}

body:after {
    content: url(../images/bx_loader.svg) !important
}

input:-moz-autofill,
input:-webkit-autofill,
select:-moz-autofill,
select:-webkit-autofill,
textarea:-moz-autofill,
textarea:-webkit-autofill {
    background-color: var(--color3) !important;
    background-image: none;
    color: var(--color0) !important
}

.page_loader {
    display: table;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background: #ecdccd;
}

.block-group,
body {
    background: var(--light);
    position: relative
}

#inner {
    display: flex;
    width: 100%;
    height: 100vh;
    vertical-align: middle;
    justify-content: center;
    align-items: center;
    background-color: var(--light);
}

#inner img {
    width: 200px
}

.body-service-list .services .tableGrid.row {
    overflow-x: hidden;
    margin: 35px 0
}

.tableGrid,
.tableGrid>.row {
    display: table;
    margin: 0;
    padding: 0;
    position: relative;
    height: 100%
}

.tableGrid>.table-row {
    height: 100%
}

.table-row {
    display: table-row
}

.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
}

.headerTel .table-cell,
.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
}

.NosCartes02 .h small,
.NosCartes02 ul li,
.NosCartes02 ul li small,
.NosCartesLink,
.NosPlanDAcces02 p strong,
.ReservationBg .h,
.ReservationText p,
.accroche p,
.activites p,
.address p,
.beforeFooter p,
.beforeFooter ul li,
.btn,
.carte .group-title,
.carte .item-title,
.contact .h,
.datepicker table tr td,
.form-actions,
.form-control,
.formule li,
.formule p,
.h span,
.headerTel,
.modal-content,
.modal-content label,
.nav-pills>li>a,
.tel p,
.tel strong,
.view .item .h,
body {
    font-family: var(--font_family_2)
}

em {
    font-style: italic !important
}

.navbar-nav>li>a:after {
    content: "";
    position: absolute;
    width: 0;
    height: 1px;
    background: var(--color1);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    transition: .3s
}

.navbar-nav>.active>a:after,
.navbar-nav>li>a:after:hover,
.navbar-nav>li>a:hover:after {
    width: 80%
}

.carte .group-subtitle {
    margin: 15px 0;
    font-size: .9em;
    text-align: center;
    color: var(--color2)
}

.contact .form-actions,
.flex-seoContain .seo-content h1,
.flex-seoContain .seo-form h2.h1,
.intervention,
caption,
div.row.divAvis,
th {
    text-align: left
}

div.row.divAvis {
    background: var(--light);
    padding: 30px;
    margin: 15px;
    box-shadow: 0 5px 50px #0000000d;
    line-height: 1.5
}

section p img {
    margin: 5px 10px 10px
}

img[style="float:right;"],
section figure.right {
    margin: 0 5px 20px 0
}

img[style="float:left;"],
section figure.left {
    margin: 0 20px 5px 0
}

.sidebar-scroll-right .callTracker {
    width: 100%;
    height: 50px
}

.callTracker {
    position: relative;
    margin-top: 24px
}

.callTracker .t_phone,
.callTracker.active .t_affiche {
    opacity: 0;
    display: none
}

.callTracker .t_affiche,
input[type=submit] {
    cursor: pointer
}

.callTracker.active .t_phone {
    opacity: 1;
    display: inline-block;
    text-decoration: unset
}

.coordonnees .callTracker a,
.pied .callTracker a {
    position: relative;
    left: 0
}

.coord {
    padding: 0 3%
}

i.fas.fa-phone-alt {
    margin-right: 6px;
    margin-top: -4px
}

.form-group .btn-primary:active,
.form-group .btn-primary:focus,
.form-group .btn-primary:hover,
:focus,
input:focus,
select:focus,
textarea:focus {
    outline: 0
}

html {
    height: 100%;
    font-size: 62.5%;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%
}

blockquote,
body,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
html,
input,
p,
pre {
    margin: 0;
    padding: 0
}

.atout-mobile .atouts-cont .swiper-button-next {
    position: absolute;
    right: 40%;
    font-size: 25px;
    top: 95%;
}

.atout-mobile .atouts-cont .swiper-button-prev {
    font-size: 25px;
    position: absolute;
    left: 40%;
    top: 95%;
}

.atout-mobile .atouts-cont {padding: 5% 0;}

.atout-mobile .atouts-cont .item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid #00000033;
    padding: 20px;
}

.atout-mobile .atouts-cont .item img {
    width: 80px;
    padding-bottom: 20px;
}

.atout-mobile {
    padding: 5% 10%;
    position: relative;
    margin-bottom: 5%;
}

.owl-carousel .owl-item {}

.actuAndNewsletter-container .block.block-2 {
    width: 100%;
}

.container-fluid.ReservationBg.accueil div.row {
    margin: 0;
    padding: 7% 10% 4%;
    display: flex;
    background: var(--light);
    justify-content: center;
    align-items: center;
    position: relative;
}

.formulaire h2 {
    /* color: var(--color0); */
    /* font-size: 30px; */
}

.intervention {
    display: flex;
    line-height: 1.7;
    flex-direction: column;
    padding: 2% 4%;
    align-items: flex-start;
    gap: 30px;
    color: var(--color0);
}

.atouts,
.testimony {
    flex-direction: column
}

.intervention ul {
    column-count: 2
}

.intervention h2,.bloc-GMB h2.h1 {
    position: relative;
    padding-bottom: 0;
    margin-bottom: 20px;
    /* color: var(--light); */
    /* font-size: 30px; */
    text-align: left;
    width: 100%;
}

.bloc-GMB h2.h1 {text-align: center;}

.sitemap a,
body {
    color: var(--color2);
}

.block-group {
}

.livre-ligne {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 4%
}

.testimony {
    position: relative;
    padding: 4% 10% 2%;
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 00px;
    background: var(--light);
}

.testimony h2 {
    margin-bottom: 40px;
    color: var(--color2);
}

.formulaire.contact-footer.text-center {
    padding: 5%;
}

address,
caption,
cite,
code,
em,
pre,
strong,
th {
    font-style: normal;
    line-height: 1.5;
}

fieldset,
input {
    border: none
}

.address span,
.body-service-list .services .h,
.form h2+p,
.h1,
.headerTel,
.hicon,
.navbar-header,
.navbar-nav,
.navbar-nav>li,
.notification-box,
.zone02,
h1 {
    text-align: center
}

.table,
table {
    border-collapse: collapse;
    width: 100%;
    border-spacing: 0
}

.modal .horaire-table tr td {
    color: var(--color2);
    font-size: .8vw;
}
#footer .horaire-table tr td {
    color: var(--light);
    line-height: 1.5;
}

textarea {
    overflow: auto;
    resize: none
}

b,
strong {
    font-weight: 600
}

input[type=search] {
    text-overflow: ''
}

code {
    background-color: var(--light);
    padding: 0 5px;
    border: 1px dotted var(--light);
    display: inline-block;
    text-shadow: 0 1px 0 var(--light)
}

sub,
sup {
    font-size: .8rem;
    line-height: 18px;
    margin: 0;
    padding: 0
}

sub {
    vertical-align: bottom
}

nav {
    padding: 0;
    margin: 0
}

blockquote {
    padding-left: 20px;
    border-color: var(--color2)
}

body {
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    font-size: 18px;
    font-family: var(--font_family_2);
    letter-spacing: 1px
}

body.body-pageseo .NosPlanDAccesBg {
    padding: 60px 5%;
}

a {
    font-size: inherit;
    font-family: inherit;
    color: var(--color1)
}

.sitemap a {
    line-height: 1.5
}

a:focus,
a:hover {
    text-decoration: underline;
    color: var(--color3)
}

::selection {
    color: var(--color0);
    background-color: var(--color1)
}

::-moz-selection {
    color: var(--color0);
    background-color: var(--color1)
}

.h,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-style: normal;
    margin: 12px 0;
    font-weight: 400;
    display: block;
    color: var(--color3);
}

.copyright h3 {
    margin: 0 0 10px;
    font-size: 40px;
}

.h1,
.hicon,
h1 {
    color: var(--color2);
    font-size: 40px;
    line-height: 1;
    font-family: var(--font_family_1);
    position: relative;
    display: table;
    margin: auto
}

.bannier .banner h1 small,
.sous-titre,
span.titre-secondaire {
    font-family: var(--font_family_2);
}

.bannier .banner h1 {
    position: relative;
    left: 0;
    text-align: center;
    color: var(--light);
    z-index: 9;
    font-size: 3em;
    width: 100%;
}
.bannier .banner h1 span{font-family: var(--font_family_1) !important;text-align: left;font-weight: 100;color: var(--color0);font-size: 1.2em;letter-spacing: 1px;}

.body-page-1 .bannier .banner h1 span {
    font-size: 25px;
    font-family: var(--font_family_1) !important;
    color: var(--color2);
    opacity: .7;
}
.body-page-1 .bannier .banner h1{position: relative;top: 0;text-align: left;color: var(--color2);font-size: 3.5em;margin: 0;}
body.body-pageseo .bannier .banner h1{font-size: 45px;}
.bannier .banner h1 small {
    color: #fffc;
    text-transform: initial;
    padding: 0 45% 0 0;
    float: left;
    line-height: 1.5
}

.form h2 {
    margin-bottom: 40px;
    color: var(--color2);
}

.form h2:after {bottom: -20px;}

.form {
    padding: 0 25%
}

.h1:after, .hicon:after, h1:after,.ReservationBg .h:after {
    content: "";
    position: absolute;
    width: 50px;
    height: 50px;
    background: url(../images/pic.png);
    left: 50%;
    top: -60px;
    transform: translate(-50%, 0);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.ReservationBg .h:after {bottom: -15px;}

.intervention h2:after {
    bottom: 0;
    background: var(--light);
}
.bloc-GMB h2.h1:after {
    bottom: 0;
}
.h2,
.hicon:after,
h2 {
    font-size: 24px
}

.NewsletterBg .h::after {
}

.h3,
h3 {
    font-size: 22px
}

.h4,
h4 {
    font-size: 30px;
}

.alert,
.h5,
h5 {
    font-size: 14px
}

.bg {
    background-color: var(--light);
    background-position: 50% 0;
    background-repeat: no-repeat;
    position: relative
}

.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
}

.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;
    transform: translate(0)
}

.flex-seoContain .seo-form {
    width: 44%;
    padding: 1em 3% 3em;
    background: var(--color0);
}

.img-seo img {
    border-radius: var(--border-radius);
    width: 100%;
    height: 100%;
}
.imagecont.noflicker.img1 {
    display: block;
    margin: 1vh 0 2vh;
    height: 30vh;
    overflow: hidden;
}

.flex-seoContain .seo-content img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.corps .page-contenu h2:first-of-type, .corps .gallery h2:first-of-type , .corps .seo-content h2:first-of-type , .corps .newsItem h2:first-of-type {
    position: relative;
    padding: 3vh 2vw;
    font-size: calc(var(--taille_font) + .2rem);
    line-height: calc(var(--taille_font) + 1rem);
    border: none;
    font-weight: 700;
    z-index: 1;
}

.corps .page-contenu h2:first-of-type:before, .corps .gallery h2:first-of-type:before , .corps .seo-content h2:first-of-type:before , .corps .newsItem h2:first-of-type:before {
    content: '';
    position: absolute;
    background: var(--color1);
    width: 100%;
    height: 100%;
    opacity: .2;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: var(--border-radius);
}

.corps .page-contenu h2, .corps .gallery h2 , .corps .seo-content h2, .corps .newsItem h2 {
    margin-bottom: 2vh;
}
.corps blockquote {
    font-size: inherit;
    background: var(--bg-facultatif);
    border-radius: var(--border-radius);
    border: 0;
    padding: 3vh 2vw;
    margin: 3vh 0;
}


ol li.niveau2,
ul li.niveau2 {
    margin-left: 30px
}

hr {
    background-color: var(--color3);
    border: none;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    clear: both
}

footer hr {
    background: var(--color0);
    margin: 30px 0 0px;
    opacity: .3;
}

.sep:after {
    content: '...';
    display: block;
    letter-spacing: 3px;
    width: 40px;
    vertical-align: super;
    margin: 0 auto !important;
    float: none
}

.vis {
    position: relative;
    margin: 0
}

.vis01 figcaption {
    position: absolute;
    left: 0;
    top: 0;
    padding: 20px;
    font-size: 21px;
    color: var(--light);
    line-height: 1
}

.vis01 figcaption strong {
    color: var(--light);
    font-size: 43px
}

.beforeFooterImg02,
.vis01 {
    float: right
}

.headerAdress p img {
    vertical-align: sub
}

.body-page-1 .header {
    z-index: 9;
    width: 100%;
    height: 100vh;
    background: var(--color0);
}

.header {
    z-index: 2;
    width: 100%;
    height: 60vh;
    background: var(--color1)
}
header.wrap.header {
    margin-bottom: 10vh;
}

.header01bg,
.header01bg.fixed {
    background: var(--light);
    transition: .3s;
    box-shadow: 5px 5px 0px #00000012;
}

.headerTel {
    font-size: 55px;
    letter-spacing: 2px;
    word-spacing: 4px;
    color: var(--color0);
    font-weight: 100;
    margin-bottom: 20px !important;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    text-shadow: 1px 1px 1px var(--light);
    bottom: 0;
    right: 0
}

.headerTel .table {
    margin-bottom: 0;
    height: 100%
}

.header01bg {
    z-index: 2;
    position: fixed;
    padding: 0 4%;
    height: 95px;
    width: 100%;
    top: 0;
    left: 0;
    overflow: hidden
}

.header02bg,
.navbar-header {
    position: relative;
    width: 100%
}

.header02bg {
    z-index: 1;
    padding: 0
}

.headerAdress p {
    font-size: 17px;
    color: var(--color0);
    margin: 8px 0 18px
}

.navbar-header {
    float: left;
    background-repeat: no-repeat;
    background-position: 50% 0;
    padding: 0
}

.navbar-brand,
.navbar-nav>li {
    float: unset;
    position: relative
}

.navbar-brand {
    padding: 0;
    line-height: 0;
    height: auto;
    width: 100%
}

.navbar-brand.paddin {
    padding: 30px 0 10px
}

.navbar-brand img {
    position: relative;
    width: 150px;
    height: auto
}

.navbar {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.navbar-nav {
    position: relative;
    display: inline-flex
}

.navbar-nav>li {
    margin: 0
}

.navbar-nav>li>a {
    font-size: 18px;
    white-space: nowrap;
    position: relative;
    color: var(--color2);
    margin: 0 0px;
    text-transform: inherit;
    font-family: var(--font_family_1);
}

.navbar-nav>li:last-child a {
    border-right: 0 solid var(--color1)
}

.navbar-nav>.active>a,
.navbar-nav>.active>a:focus,
.navbar-nav>.active>a:hover,
.navbar-nav>li>a.active,
.navbar-nav>li>a:focus,
.navbar-nav>li>a:hover {
    color: var(--color1);
    background: 0 0
}

@-webkit-keyframes borderScale {
    0% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }

    20% {
        background-color: var(--color3);
        height: 0%;
        width: 100%
    }

    100% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }
}

@-webkit-keyframes borderScale1 {
    0% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }

    20% {
        background-color: var(--color2);
        height: 0%;
        width: 100%
    }

    100% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }
}

@-moz-keyframes borderScale {
    0% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }

    20% {
        background-color: var(--color3);
        height: 0%;
        width: 100%
    }

    100% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }
}

@-moz-keyframes borderScale1 {
    0% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }

    20% {
        background-color: var(--color2);
        height: 0%;
        width: 100%
    }

    100% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }
}

@-ms-keyframes borderScale {

    0%,
    20% {
        background-color: var(--color3);
        height: 0%
    }

    100%,
    20% {
        width: 100%
    }

    0% {
        width: 0%
    }

    100% {
        height: 100%;
        background-color: var(--color2)
    }
}

@-ms-keyframes borderScale1 {

    0%,
    20% {
        background-color: var(--color2);
        width: 100%
    }

    100%,
    20% {
        height: 0%
    }

    0% {
        height: 100%
    }

    100% {
        width: 0%;
        background-color: var(--color3)
    }
}

@-o-keyframes borderScale {
    0% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }

    20% {
        background-color: var(--color3);
        height: 0%;
        width: 100%
    }

    100% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }
}

@-o-keyframes borderScale1 {
    0% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }

    20% {
        background-color: var(--color2);
        height: 0%;
        width: 100%
    }

    100% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }
}

@keyframes borderScale {
    0% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }

    20% {
        background-color: var(--color3);
        height: 0%;
        width: 100%
    }

    100% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }
}

@keyframes borderScale1 {
    0% {
        height: 100%;
        width: 100%;
        background-color: var(--color2)
    }

    20% {
        background-color: var(--color2);
        height: 0%;
        width: 100%
    }

    100% {
        height: 0%;
        width: 0%;
        background-color: var(--color3)
    }
}

.atouts {
    padding: 5% 10% 5%;
    display: flex;
    grid-gap: 110px;
    position: relative;
    background-color: var(--light);
    justify-content: center;
    align-items: center;
    font-size: 20px;
    text-align: center;
}

.atouts:after {
    content: "";
    position: absolute;
    background: url(../images/shape-3.png);
    width: 250px;
    height: 250px;
    left: 0%;
    top: 5%;
    z-index: 5;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right top;
    opacity: 1;
    transform: rotate(145deg);
}

.atouts:before {
    content: "";
    position: absolute;
    background: url(../images/shape-2.png);
    width: 375px;
    height: 250px;
    right: 0;
    bottom: -10%;
    z-index: 5;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom;
}

.atouts > p {
    padding: 0 10%;
}

.banner,
.hasSubMenu>a,
.icon {
    background-repeat: no-repeat
}

.accroche,
.atout-container .item,
.banner,
.btn,
.newsItem .div-rs .btn-partage,
.news_avant_apres,
.propor,
.social,
.social01,
.tel-tracker {
    position: relative
}

.atouts h2 {
    width: 70%;
    line-height: 1.5;
    color: var(--color2);
}

span.titre-secondaire {
    display: block;
    text-transform: initial;
    font-size: 30px;
    color: var(--color2);
}

.atout-container {
    display: grid;
    grid-gap: 30px;
    grid-template-columns: 1fr 1fr 1fr;
    padding-top: 30px;
    z-index: 1;
    grid-template-areas:
        "item-1 item-4 item-5"
        "item-2 item-4 item-6"
        "item-3 item-4 item-7";
    grid-template-rows: 100px 100px 100px;
}

.atout-container .item-4 img {
    width: 290px !important;
    mix-blend-mode: revert;
    object-position: left;
    opacity: 1 !important;
    border: 1px solid var(--color0);
    border-radius: 150px;
}

.atout-container .item-4:before {
    content: "";
    position: absolute;
    height: 155%;
    background: var(--color3);
    width: 50%;
    border-radius: 150px;
    left: 10%;
    z-index: 0;
    opacity: .2;
}

.atout-container .item-4:after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    background: url(../images/shape-4.png);
    background-size: contain;
    bottom: -50px;
    left: -15px;
    transform: rotateY(180deg);
    background-repeat: no-repeat;
}

.atout-container .item-4 {
    display: flex;
    justify-content: center;
    align-items: center;
}

.atout-container .item-1 {grid-area: item-1}
.atout-container .item-2 {grid-area: item-2}
.atout-container .item-3 {grid-area: item-3}
.atout-container .item-4 {grid-area: item-4}
.atout-container .item-5 {grid-area: item-5}
.atout-container .item-6 {grid-area: item-6}
.atout-container .item-7 {grid-area: item-7}
.atout-container .item {
    display: flex;
    align-items: center;
    justify-content: space-around;
    text-align: left;
    grid-gap: 15px;
    padding: 30px;
    transition: .3s linear;
    line-height: 1.7;
    height: 100%;
}

.atout-container .item:hover {
    transform: translateY(-5px) !important
}

.btn,
.gallery .nav li a,
.news .date_post,
.news_avant_apres,
.voirtous {
    text-align: center
}


.date_post .month, .date_post .year {
    font-size: 14px;
    color: var(--light);
}

.atout-container .item strong {
    font-size: 1.1vw;
    color: var(--color2);
    text-align: left;
    width: 100%;
}

.atout-container .item img {
    width: 80px;
    opacity: .5;
    object-position: left;
}

.atout-container .item svg {
    width: 90px;
    height: auto;
    filter: grayscale(1);
}

.propor {
    width: 100%;
    margin-bottom: 10px;
    height: 100%
}

.propor:after {
    padding-top: 72%;
    display: block;
    content: ''
}

.propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    border-radius: 0 !important;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0)
}


.propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    height: 100%;
    transition: .3s
}

.propor .propor-cont .imagecont:hover img {
    transform: scale(1.2);
    transition: .3s
}

.news .propor .propor-cont .imagecont:hover img {
    transform: scale(1.1)
}

.news .item .h a {
    color: var(--color2);
    text-decoration: unset;
    /* font-size: 24px; */
}

.newsList {
    float: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    width: 100%
}

.newsList .ligne-actus {
    flex: 0 0 auto;
    margin: 0 0 30px;
    float: none
}

.news .date_post {
    color: var(--light);
    font-size: 27px;
    background-color: var(--color1);
    position: absolute;
    left: 23px;
    top: -6px;
    padding: 2%;
    z-index: 9
}

.navButtons,
.navButtons:visited,
.news_avant_apres a:focus span,
.news_avant_apres a:hover span {
    color: var(--color2);
    text-decoration: none
}

.news .date_post span {
    display: block;
    margin-bottom: 0
}

.newsList .propor .propor-cont .imagecont .masque {
    background-image: none
}

.news .propor .propor-cont .imagecont:hover {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: unset
}

.newsList .propor {
    overflow: hidden
}

.newsList .item .h3 {
    color: var(--color1);
    padding: 5px 0 25px;
    margin: 0;
    font-weight: 200;
    font-family: var(--font_family_1)
}

.newsList .item:hover .h3 {
    color: var(--nuanceColor1)
}

.newsItem .photo img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    flex: 1;
    width: 100%;
    height: 100%
}

.newsItem .photo {
    width: 100%;
    height: 33vw;
    overflow: hidden;
    height: clamp(300px, 40vw, 650px);
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-color: var(--color1);
    -webkit-transition: .5s;
    -moz-transition: .5s;
    -o-transition: .5s;
    transition: .5s
}

.newsItem .contenu-article {
    padding: 15px 0 0;
    min-height: 200px;
    margin: 0
}

.newsItem .div-rs {
    margin: 0 auto 40px;
    display: flex;
    align-content: center;
    align-items: center
}

.newsItem .div-rs .btn-partage {
    display: flex;
    overflow: hidden;
    height: 56px;
    top: 0;
    margin-left: 2rem
}

.newsItem .div-rs .btn-partage .icones {
    fill: var(--color1);
    width: 22px
}

#logoFD svg *,
.newsItem .div-rs .btn-partage .btnp:hover .icones,
.remonter button svg circle,
footer .btn-partage svg.icones path {
    fill: var(--light);
}

.icones,
.remonter button svg path {
    fill: var(--color2)
}

.newsItem .date_post {
    top: -55px
}

.news_avant_apres {
    display: table;
    width: 100%;
    margin: 0;
    height: 100%
}

.news_avant_apres>div {
    display: table-cell;
    float: none;
    padding: 0;
    height: 100%
}

.news_avant_apres a,
.news_avant_apres a:visited {
    padding: 20px 30px 15px;
    color: var(--color1);
    text-decoration: none;
    display: block;
    height: 100%;
    font-family: var(--font_family_1);
    text-transform: uppercase;
    border: 1px solid var(--color2)
}

.news_avant_apres a:focus,
.news_avant_apres a:hover {
    background: var(--color3);
    text-decoration: none;
    border: 1px solid var(--color3)
}

.news_avant_apres>div:last-child {
    right: -5px
}

.navButtons,
.navButtons:visited {
    padding: 0 0 10px;
    transition: .8s;
    display: block
}

.datePickerZone .datepicker table tr td.active.active,
.navButtons:hover,
.news_avant_apres b {
    color: var(--color3)
}

.btnp {
    text-decoration: unset !important
}

.btn,
.btn-primary {
    text-decoration: unset
}

.news_avant_apres b {
    transition: .3s;
    font-weight: 100 !important
}

.NosPlanDAcces02 p strong,
.menu_footer li a,
.tel strong,
label {
    font-weight: 100
}

.news_avant_apres b:hover {
    margin: -5px;
    transition: .3s
}

.propor .propor-cont .imagecont:hover .masque {
    opacity: .6;
    transition: .3s
}

.propor .propor-cont .imagecont .masque {
    background-color: var(--color1);
    background-image: url(../images/icon.png);
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
    opacity: 0;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    transition: .3s
}

.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 li a {
    background: var(--light);
    display: block;
    color: var(--color0);
    padding: 10px;
    border-radius: 0;
    text-decoration: none
}

.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
}

.navbar-nav ul.sub-menu {
    position: absolute;
    top: 72px;
    left: 50%;
    width: 160%;
    margin-left: -80%;
    background-color: var(--color3);
    text-align: left;
    z-index: 1;
    opacity: 1;
    height: auto;
    padding: 0;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0
}

.navbar-nav>li:hover>ul.sub-menu {
    top: 72px;
    opacity: 1;
    animation-delay: 3s;
    height: auto;
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1)
}

.navbar-nav ul.sub-menu:before {
    content: '';
    position: absolute;
    top: -32px;
    left: 50%;
    margin-left: -16px;
    border-style: solid;
    border-width: 16px;
    border-color: transparent transparent var(--color3) transparent
}

.hasSubMenu>a {
    background-image: url(../images/subMenuArrow.png);
    background-position: 100% 28%
}

.navbar-nav ul.sub-menu>li {
    display: inline-block;
    margin: 0;
    width: 100%;
    list-style: none
}

.navbar-nav ul.sub-menu>li>a {
    padding: 12px 10px;
    font-size: 13px;
    color: var(--color3);
    background-color: var(--color3);
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    display: inline-block;
    border-bottom: 1px solid var(--color3)
}

.navbar-nav ul.sub-menu>li.active>a,
.navbar-nav ul.sub-menu>li>a:focus,
.navbar-nav ul.sub-menu>li>a:hover {
    color: var(--color0);
    background-color: var(--color3);
    text-decoration: none
}

.sub-menu {
    display: none !important
}

.btn,
.btn-link {
    display: inline-block
}

.btn {
    border: none;
    border-radius: 0;
    padding: 15px 50px;
    transition: .3s
}

.btn.active,
.btn.active:focus,
.btn:active,
.btn:active:focus,
.btn:focus,
.btn:hover,
.open .dropdown-toggle.btn {
    outline: -webkit-focus-ring-color auto 0;
    outline-offset: -2px;
    outline: 0
}

.btn-primary {
    font-size: 1vw;
    background-color: transparent;
    border: 1px solid #7f625452;
    min-width: 240px;
    text-transform: inherit;
    transition: all .3s linear;
    color: var(--color3);
    font-family: var(--font_family_1);
}

.btn-lg {
    padding: 15px 26px;
    font-size: 2.2rem
}

.tel,
.tel p {
    font-size: 18px;
}

.btn-primary.active,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover,
.open .dropdown-toggle.btn-primary {
    background-color: var(--color3);
    color: var(--light) !important;
    border-color: var(--color3);
}

.form-group .btn-primary,
.nav-pills>li>a,
.voirtous {
    border: 1px solid var(--color2)
}

.actu-show-more a:hover {
    background: var(--color3);
    color: var(--light) !important;
}

.btn-fixed {
    width: 205px
}

.news .btn-fixed,
.view .btn-fixed {
    width: auto;
    padding: 14px 40px 10px;
    float: right
}

.btn-link {
    color: var(--color3)
}

.btn-link.active,
.btn-link:active,
.btn-link:focus,
.btn-link:hover,
.menu_footer li a:focus,
.menu_footer li a:hover,
.menu_footer li.active a {
    color: var(--color1);
    text-decoration: none;
}

.tel,
.voirtous {
    color: var(--color0)
}

.form-group .btn-primary {
    background-color: var(--color2);
    color: var(--light)
}

.voirtous {
    background-color: var(--color2);
    width: 100%;
    padding: 14px 20px 10px
}

.voirtous.active,
.voirtous:active,
.voirtous:focus,
.voirtous:hover {
    background-color: transparent;
    border: 1px solid var(--light);
    color: var(--light)
}

.icon {
    padding: 0 0 0 38px;
    background-color: transparent;
    background-position: 0 50%
}

.icon01 {
    background-image: url(../images/icon01.png)
}

.icon02 {
    background-image: url(../images/icon02.png)
}

.icon03 {
    background-image: url(../images/icon03.png)
}

.icon04 {
    background-image: url(../images/icon04.png)
}

.devis {
    padding: 14px 50px;
    float: right;
    margin-top: 20px
}

.row.description-galerie.clear,
.tel,
.tel p img {
    margin: 0;
    padding: 2em;
}

.tel-tracker {
    width: 15%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.tel {
    text-align: right;
    width: 100%;
    height: 100%;
    display: flex;
    align-content: center;
    justify-content: flex-end;
    align-items: center
}
header .tel{color: var(--color3);height: auto;padding: 10px 20px;text-align: center;justify-content: center;background: transparent;width: 85%;border: 1px solid #7f625452;}
header i.fas.fa-phone-alt{}
.accroche,
.addthis_toolbox,
.social,
.social01 {
    text-align: center
}

.tel01 {
    padding-right: 62px
}

.tel p {
    color: var(--color1);
    margin-bottom: 0;
    line-height: 1
}

.accroche {
    padding: 10% 80px;
    width: 100%
}

.accroche p {
    color: var(--color0);
    font-size: 27px;
    margin-bottom: 0
}

.accroche strong {
    color: var(--color0);
    font-size: 46px;
    display: block;
    margin: 20px 0
}

.social {
    margin: 14px 0 0 !important;
    display: block;
    float: left
}

.social .block,
.social01 {
    float: none;
    display: inline-block
}

.social01 {
    margin: 12px 0 3px 97px !important;
    width: auto
}

.social02 {
    margin: 9px 0 0 !important;
    float: right
}

.social p,
.social p a {
    font-size: 13px;
    color: var(--color1);
    margin-bottom: 0;
    padding-top: 4px
}

.social .block {
    margin-left: 0
}

.addthis_toolbox {
    margin: 0 !important;
    float: left;
    width: 100%
}

.addthis_toolbox a {
    overflow: hidden;
    display: inline-block;
    height: 50px !important;
    width: 50px !important;
    line-height: 32px !important;
    margin: 0 3px !important;
    border-radius: 0
}

.social02 .addthis_toolbox a {
    width: 33px !important;
    margin: 0 3px 0 20px !important
}

.addthis_toolbox.addthis_32x32_style span {
    line-height: 32px;
    background: 0 0 !important
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook {
    background: url(../images/f.png) 50% 50% no-repeat
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter {
    background: url(../images/t.png) 50% 50% no-repeat
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
    background: url(../images/g.png) 50% 50% no-repeat
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
    background: url(../images/f_h.png) 50% 50% no-repeat
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
    background: url(../images/t_h.png) 50% 50% no-repeat
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
    background: url(../images/g_h.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook {
    background: url(../images/f2.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter {
    background: url(../images/t2.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
    background: url(../images/g2.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
    background: url(../images/f2_h.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
    background: url(../images/t2_h.png) 50% 50% no-repeat
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
    background: url(../images/g2_h.png) 50% 50% no-repeat
}

.banner {
    width: 100%;
    background-position: 50% 0;
    overflow: hidden;
    margin: 0 auto;
    height: 100%;
    display: flex;
    flex-direction: row-reverse;
}

.banner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: #00000073;
    z-index: 1;
}

.body-page-1 .banner {
    padding: 0 8%;
    background: url(../images/fond.jpeg);
    background-position: center;
    background-color: #ffffff85;
    background-blend-mode: soft-light;
    background-size: cover;
}

.banner img {
    width: 100%;
    margin-left: 0
}

.banner01 {
    background-image: url(../images/banner01.jpg)
}

.banner02 {
    background-image: url(../images/banner02.jpg)
}

.banner03 {
    background-image: url(../images/banner03.jpg)
}

.bannier,
.body-page .bannier {
    background: var(--color3);
    z-index: 1;
    position: relative;
    width: 100%
}

.figure {
    width: 100%;
    margin-bottom: 40px
}

.figure figcaption {
    color: var(--color3);
    margin-top: 8px
}

.figure.fullwidth img {
    width: 100%;
    height: auto
}

.bannier {
    height: 100%
}

.body-page .bannier {
    height: 100vh;
    overflow: hidden
}

.body-page-1 .bannier {
    background: var(--color0);
}
.main_bg,
input[name=captcha]+a {
    background-color: var(--light);
}

.body-page .bannier video,
.datepicker-container img {
    width: 100%;
    object-fit: cover;
    object-position: bottom left;
}

.foreground-video {
    height: 100vh;
}

.foreground-video iframe {
    width: 100%;
    height: 120%
}

.body-page-1 .bannier:after {
    content: "";
    position: absolute;
    width: 200px;
    height: 200px;
    top: 70%;
    left: 50%;
    z-index: 1;
    background: url(../images/shape-1.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.sliderBg {
    position: relative;
    width: 100%;
    height: calc(100vh - 9vh)
}

.slide-parallax {
    position: absolute;
    width: 45%;
    height: 85vh;
    right: 8%;
    top: 13%;
    border: 4px solid var(--color0)
}

.slide-parallax img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.slogan {
    position: relative;
    width: 50%;
    top: 0;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    gap: 25px;
    text-align: center;
}

div.slogani {
    display: flex;
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    top: 45%;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    z;
    z-index: 1;
    gap: 2vh;
}

.slogani h1 {
    font-size: 50px;
    text-align: left;
    margin: unset !important;
    line-height: 1
}

.sous-titre {
    text-transform: initial;
    font-size: 30px;
    display: block;
    color: var(--light);
    padding: 0px 0 0px;
    text-align: center;
    font-family: var(--font_family_2) !important;
}

.address strong,
.head-btn>a,
.head-btn>p,
.menu_footer li a,
.title_footer,
a.bouton-principal,
button.bouton-principal {
    font-family: var(--font_family_1)
}

.flex-head,
.head-btn,
.nav-liste,
.nav-logo {
    display: flex;
    position: relative;
    align-content: center
}

.head-btn>a,
.head-btn>p {
    position: relative;
    background: 0 0;
    font-size: 20px;
    padding: 15px 30px;
    color: var(--color3);
    margin-right: 15px;
    text-decoration: none;
    text-transform: inherit;
    width: fit-content;
    text-align: center;
    transition: .3s;
    border: none;
    cursor: pointer;
    letter-spacing: 1px;
    background: transparent;
    border: 1px solid #7f62544f;
}

div.slogani span.head-btn>a, div.slogani span.head-btn>p {
    border-color: #ffffff75;
    color: #fff;
}

div.slogani span.head-btn>a:hover, div.slogani span.head-btn>p:hover {
    border-color: var(--color3);
}

.head-btn .tel {
    margin: 0;
    display: block;
    text-align: center
}

.head-btn {
    width: 100%;
    align-items: center;
    justify-content: flex-start;
}

div.slogani span.head-btn {
    justify-content: center;
}

.nav-liste {
    width: 70%;
    height: 100%;
    justify-content: center;
    align-items: center
}

.nav-logo {
    height: 100%;
    justify-content: flex-start;
    align-items: center;
}

.nav-logo span {
    font-size: 20px;
    font-family: var(--font_family_1);
    color: var(--color3);
}

div#bxControls {
    height: 67px;
    position: absolute;
    width: 22%;
    left: 0;
    bottom: -67px
}

.slide a {
    display: inline-block;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    border: 3px solid transparent
}

.slide a img {
    opacity: 0;
    width: 100%
}

.head-img,
.slide a:focus,
.slide a:hover {
    border: 6px solid var(--light);
}

.head-img.img-3 {
    width: 30%;
    height: 60%;
    position: relative;
    right: -25%;
    top: -61%;
}

.slide a:focus .img_thumbnail_item_mask,
.slide a:hover .img_thumbnail_item_mask {
    opacity: 1
}

.main_bg {
    padding-top: 0;
    position: relative;
    z-index: 1
}
.flex-head {
    width: 100%;
    height: 100%;
    justify-content: center
}

.flex-head-img {
    position: relative;
    width: 49%;
    height: auto !important;
}

.flex-head-txt::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: var(--color0)
}

.flex-head-txt::-webkit-scrollbar {
    width: 4px;
    background-color: var(--color0)
}

.flex-head-txt::-webkit-scrollbar-thumb {
    background-color: var(--color3);
    border: 2px solid var(--color3)
}

.flex-head-txt {
    position: relative;
    width: 49%;
    padding: 0 35px 0 0
}

.flex-head-txt .scroll01 {
    max-height: 600px;
}

.head-img.img-1 {
    width: 60%;
    height: 60%;
    position: relative;
    right: -12%
}

.head-img.img-2 {
    width: 35%;
    height: 40%;
    position: relative;
    right: -54%;
    top: -10%;
}

#main {
    padding: 60px 10%;
    width: 100%
}

.body-news #main,
.body-news-list main#main {
    padding: 60px 0
}

section#gallery {
    padding: 0 10%
}

.description-galerie.gallery-tflex {
    padding: 20px 10%
}

.body-page-1 .section,
.body-pageseo .section {
    height: 100%;
    padding: 6% 0 100px;
}

#main h1 {
    margin-bottom: 40px;
}

.carte .itemTr:nth-child(odd) {background: #eee;}

.carte .group .blazy {
    border: 4px solid #fff;
    background-size: cover
}

.carte .price,
.datePickerZone .datepicker table tr td.day,
.form-group .label-rgpd strong,
.group-description,
.info-rgpd a,
.info-rgpd a:visited,
.info-rgpd strong,
.view .articleContent {
    color: var(--color2)
}

.carte .group-title {
    color: var(--color3);
    border: 0;
    background-color: transparent;
    font-size: 30px;
    text-align: left;
    display: inline-block;
    text-transform: uppercase;
    margin: 0 0 10px;
    padding: 0;
    z-index: 0;
    font-family: var(--font_family_1);
}

.carte .itemTr:nth-child(2n) {
    background-color: #ffffff9c
}

.datepicker table tr td.today.active.focus,
.datepicker table tr td.today.active:focus,
.datepicker table tr td.today.active:hover,
.datepicker table tr td.today:active.focus,
.datepicker table tr td.today:active:focus,
.datepicker table tr td.today:active:hover {
    background-color: var(--color1);
    color: var(--color0)
}

.datepicker table tr td.today {
    color: var(--color0);
    background: var(--color1)
}

.btn-service a:hover:before,
.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active:active,
.services .hvr-shutter-out-horizontal:hover:before {
    background: var(--color3)
}

.title_footer {
    text-transform: inherit;
    margin-bottom: 15px;
    font-size: 24px;
    color: var(--color1);
    font-family: var(--font_family_1);
}
.pied .scrollbars{margin:15px 0 0;height:260px;position: relative;float: left;width: 100%;}
.scrollbars{width:100%;height:28vh}
.scrollbar-path-horizontal,.scrollbar-path-vertical{position:absolute;background-color:#ececec;z-index:100}
.mCSB_scrollTools .mCSB_draggerRail{background-color:var(--color0)}
.scrollbar-path-horizontal{bottom:5px;left:0;width:100%;height:5px}
.scrollbar-path-vertical{right:5px;top:0;height:100%;width:5px;box-shadow:inset 1px 0 1 rgba(0,0,0,.1)}
.scrollbar-path-horizontal{box-shadow:inset 0 1px 1 rgba(0,0,0,.1)}
.scrollbar-handle{position:relative;top:0;left:0;background-color:var(--color1)}
.scrollbar-path-vertical .scrollbar-handle{height:20%;width:100%}
.scrollbar-path-horizontal .scrollbar-handle{width:20%;height:100%}
.scrollbar-handle,.scrollbar-path-horizontal,.scrollbar-path-vertical{border-radius:5px}
.scrollbar-content{padding:0 30px 0 0;float:none!important}
.footer-coordonnees .flex-recherches .scrollbars {
    height: 199px
}

.flex-address {
    display: flex
}

.footer-coordonnees>i {
    color: var(--color2);
    padding: 6px 11px 0 0
}

.flex-address,
.footer-coordonnees .tel1,
.footer-coordonnees .tel2 {
    display: flex;
    color: var(--color0)
}

.flex-address i,
.footer-coordonnees .tel1 i,
.footer-coordonnees .tel2 i {
    color: var(--light);
    padding: 4px 10px 0 0;
    transform: rotate(0);
    margin: 0 !important
}

.flex-horaires .horaires {
    float: left
}

.flex-horaires .horaires i {
    padding: 0 10px 0 0;
    color: var(--color2);
    margin-right: 8px
}

#footer {
    position: relative;
    z-index: 1;
    background: url(../images/fond.jpg);
    background-color: #0000007a;
    background-blend-mode: soft-light;
    background-position: top;
    background-size: cover;
    padding: 0 5%;
}

.footer {
    position: relative;
    height: auto;
    padding: 0;
    margin: 0
}

.footer1_bg {
    position: relative;
    padding: 0;
}

.footer2_bg {
    background-color: var(--light);
    padding: 6px 0;
    margin-top: 100px;
    z-index: 2;
    width: 100%;
    position: relative;
    top: -40px;
    box-shadow: 5px 3px 10px 10px #44444412;
    /* display: none; */
}

.hsep {
    background: url(../images/hsep.jpg) 50% 50% repeat-x;
    position: relative;
    margin-top: -31px;
    height: 2px;
    width: 100%;
    margin-bottom: 28px
}

.address,
.img-thumbnail,
.img-thumbnail a,
.img_thumbnail_item,
.img_thumbnail_item_mask,
select.form-control {
    background-repeat: no-repeat
}

.img-responsive,
.img_thumbnail_item {
    background-size: cover
}

.titreAbdelhamid {
    position: relative;
    font-size: 18px;
    color: var(--color1);
    text-transform: uppercase;
    margin: 0 0 20px;
    padding: 0
}

.menu_footer_bg {
    background-color: transparent;
    padding: 0
}

.menu_footer {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 0;
    padding: 20px 10px;
    flex-wrap: wrap;
}

.menu_footer>li,
.signature,
img#captcha {
    display: inline-block
}

.menu_footer>li {
    list-style: none;
    margin: 5px;
    position: relative;
    text-align: center;
    border-right: 0 solid var(--color3);
    line-height: 1.1;
    color: var(--color3)
}

.menu_footer li a {
    font-size: .8vw;
    color: var(--color2);
    line-height: normal;
    text-decoration: none;
    padding: 0 4px;
    text-transform: inherit;
}

.menu_footer li:last-child,
.menu_footer li:last-child a {
    border-right: none
}

.menu_ref_bg {
    min-height: 150px
}

.menu_referencement {
    text-align: justify;
    margin-bottom: 20px;
    min-height: initial;
    width: 100%;
    padding: 0;
    height: auto;
    line-height: 1px
}

.address,
.address strong,
.img_thumbnail_item,
.map iframe,
.nav-pills,
.nav-pills>li>a,
.signature_link,
input[name=captcha]+a {
    text-align: center
}

.menu_referencement li {
    line-height: 1.5;
    display: inline;
    list-style-position: inside
}

.menu_referencement li:before {
    font-size: 18px;
    content: ' - ';
    color: var(--color0);
    margin: 0
}

.menu_referencement li a {
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: none;
    color: var(--color0);
    font-weight: 100;
}

.activites .h span,
.formSuccessMessageWrap h4,
.menu_referencement li a:focus,
.menu_referencement li a:hover,
.menu_referencement li.active a,
.modal-header .btn:focus,
.modal-header .btn:hover,
.nosValeurs li span,
.partenaires .slide:hover span {
    color: var(--color1);
}

.signature {
    width: 100%;
    margin: 10px 0 7px;
    padding: 0;
    float: none
}

.signature_link {
    margin: 0;
    display: block;
    color: var(--color2);
    font-size: 12px;
    line-height: 10px;
    text-decoration: none;
    font-style: italic;
    z-index: 3
}

.datePickerZone .datepicker .datepicker-switch,
.datePickerZone .datepicker .next,
.datePickerZone .datepicker .prev,
.datePickerZone .datepicker tfoot tr th,
.encartBg .h span,
.form-control,
.form-group .btn-primary:active,
label {
    color: var(--color3);
    font-family: var(--font_family_1);
    font-size: 1.5vw;
}
.datePickerZone .datepicker .datepicker-switch:hover{
    color: var(--light);
}
.signature_link:hover {
    color: var(--color2);
    text-decoration: underline
}

.signature_link img {
    width: auto;
    height: auto;
    margin: 0 auto;
    display: block
}

#logoFD svg,
.InfoResa li a {
    width: 220px
}

label.checkbox.label-rgpd,label.checkbox.label-rgpd p {
    font-size: 12px;
    text-align: left;
    color: var(--color2);
}

.contact_footer_container .container {
    width: 100%;
    padding: 0 10%
}

#contact-form {
    margin-top: 0;
    margin-bottom: 0;
    padding: 6% 20% 2%;
    /* background-image: url(../images/contact.jpg); */
    background-size: cover;
    background-attachment: fixed;
    background-color: var(--color0);
    background-blend-mode: soft-light;
}

.contact p {
    font-size: 15px;
    color: var(--color2);
    margin-bottom: 20px;
}

.form-group,
input[name=captcha] {
    margin-bottom: 10px;
    position: relative
}

.form-control {
    padding: 4px 10px;
    font-size: 14px;
    background-color: white;
    border: 1px solid #ffffff;
    border-radius: 0;
    box-shadow: unset
}

select.form-control {
    -o-appearance: none;
    appearance: none;
    background-image: url(../images/select_arr.png) !important;
    background-position: 100% 50%;
    color: var(--color2)
}

label {
    font-size: 13px;
    padding-top: 0;
    margin: 0
}

textarea.form-control {
    resize: vertical;
    height: 110px !important;
    padding: 15px 10px !important
}

.pageseo textarea.form-control {
    resize: vertical
}

.form-group .btn-primary {
    float: left;
    width: 100%;
    line-height: 0;
    font-weight: 400 !important
}

::-webkit-input-placeholder {
    color: var(--color2) !important;
    opacity: 1 !important;
    font-size: 14px
}

::-moz-placeholder {
    color: var(--color2) !important;
    opacity: 1 !important
}

::-ms-input-placeholder {
    color: var(--color2) !important;
    opacity: 1 !important
}

.form-control:active,
.form-control:focus {
    background-color: #ffffff33;
    border: 1px solid #0f3f4069 !important;
    padding: 4px 10px;
    -webkit-box-shadow: 0 0 0 var(--color3);
    -moz-box-shadow: 0 0 0 var(--color3);
    -ms-box-shadow: 0 0 0 var(--color3);
    -o-box-shadow: 0 0 0 var(--color3);
    box-shadow: 0 0 0 var(--color3);
    outline: 0
}

.required {
    color: var(--color0);
    font-size: 14px
}

.form-actions {
    color: var(--color0);
    font-size: 13px;
    font-style: italic
}

.address .h,
legend {
    color: var(--color3)
}

legend {
    font-size: 2.1rem
}

input[name=captcha] {
    width: 32.33% !important;
    margin-right: 2% !important;
    float: left;
    margin-bottom: 8px
}

input[name=captcha]+a {
    width: 32.33%;
    margin-right: 2%;
    display: inline-block;
    float: left;
    border: 1px solid var(--color1);
    margin-bottom: 0;
    border-radius: 0
}

.img-thumbnail,
.nav-pills>li>a,
img#captcha {
    background-color: transparent
}

img#captcha {
    width: auto;
    height: 100% !important;
    box-shadow: none;
    border: none
}

.form-control,
.form-group .btn-primary,
input[name=captcha],
input[name=captcha]+a {
    height: 50px !important
}

.address {
    position: relative;
    height: auto;
    width: 100%;
    background-position: 50% 0;
    border-bottom: none;
    border-radius: 0;
    float: left;
    margin-bottom: 60px
}

.img-thumbnail,
.img-thumbnail a,
.img_thumbnail_item,
.img_thumbnail_item_mask,
.opening .img {
    background-position: 50% 50%
}

.address .h {
    font-size: 19px;
    margin: 0 0 30px
}

.address strong,
.contact .h,
.nav-pills>li>a,
.zone01 ul li {
    color: var(--color2)
}

.address p {
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 0
}

.address strong {
    font-size: 25px;
    line-height: 1;
    text-transform: uppercase;
    position: relative;
    display: table;
    margin: auto;
    font-weight: 100 !important
}

.address strong:after {
    content: '';
    display: block;
    width: 60px;
    height: 1px;
    margin: 10px auto;
    background-color: var(--light)
}

.address p {
    margin-bottom: 20px;
    display: inline-block
}

.address p img {
    margin: 0 8px 0 0;
    vertical-align: middle
}

.nav-pills li,
.nav-pills>li+li {
    margin: 0 20px
}

.contact .h {
    font-weight: 100;
    margin-bottom: 45px;
    color: var(--color2);
}

.contact .h span {
    font-family: var(--font_family_1);
}

.contact .h:after {bottom: -20px;}

.footer_address {
    position: relative;
    margin-bottom: 0
}

.footer_address a,
.footer_address p {
    font-size: 1.4rem;
    color: var(--color1);
    font-weight: 700;
    letter-spacing: 0
}

.footer_address p {
    padding-top: 13px
}

.nav-pills {
    margin-bottom: 40px
}

.nav-pills li {
    float: none;
    position: relative;
    display: inline-block
}

.nav-pills>li>a {
    display: block;
    float: left;
    width: 100%;
    white-space: nowrap;
    padding: 10px 60px;
    font-size: 21px;
    position: relative;
    text-decoration: none;
    z-index: 3;
    margin-bottom: 14px !important;
    border-radius: 20px;
    font-weight: 100
}

.nav-pills>li.active>a,
.nav-pills>li.active>a:focus,
.nav-pills>li.active>a:hover,
.nav-pills>li>a:focus,
.nav-pills>li>a:hover {
    color: var(--color0);
    background-color: var(--color2);
    border: 1px solid var(--color2);
    text-decoration: none
}

.submenu-active,
.tab-content>.tab-pane {
    display: block
}

#gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding,
.cv img {
    margin: 0 10px 0 0
}

.img-thumbnail {
    line-height: 1.4;
    margin: 10px 0;
    border-radius: 0;
    overflow: hidden;
    max-width: 100%;
    width: 100%;
    display: block;
    position: relative;
    opacity: 1;
    z-index: 1;
    /* border: 4px solid var(--color0); */
    padding: 0
}

.img-thumbnail a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    margin: 0;
    background-image: url(../images/bx_loader.svg)
}

.img_thumbnail_item {
    border: 0 solid var(--light) !important;
    display: block;
    width: 100%;
    height: 100%
}

.img_thumbnail_item img {
    opacity: 0;
    width: 100%;
    height: 100%
}

.img_thumbnail_item_mask {
    color: var(--color3);
    font-size: 1.6rem;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    border: 0 solid;
    background-color: var(--color1);
    background-image: url(../images/icon.png);
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: .3s
}

.encart p,
.opening p,
.partage {
    display: inline-block
}

.NosPlanDAcces,
.NosPlanDAccesBg,
.Zone,
.encadrage,
.encart,
.map,
.nosValeursBg,
.partage,
.partenaires .bx-controls,
.partenaires .list-inline,
.zone03 div {
    position: relative
}

.img-thumbnail:hover .img_thumbnail_item_mask {
    opacity: .5;
    border: 0 solid;
    transition: .3s
}

.img_thumbnail_multiple,
.img_thumbnail_multiple a {
    height: 400px
}

.map {
    margin-top: 30px;
    width: 100%;
    z-index: 0;
    border-radius: 6px;
    margin-bottom: 0
}

.map iframe {
    width: 100% !important;
    height: 370px !important;
    border-radius: 0;
    float: left;
    margin-bottom: 0;
    border: 0 solid var(--color0)
}

a.btn.btn-primary.maplink {
    position: relative;
    right: 0;
    bottom: 0;
    z-index: 3;
    float: right;
    margin: 10px 0;
    width: 20%;
    display: none
}

.rc-anchor-light.rc-anchor-normal {
    border: 0 !important
}

.map-cont {
    margin-bottom: 100px
}

.body-pageseo .contact {
    padding: 0 5%
}

.datePickerZone .datepicker table tr td.new {
    color: var(--color2) !important
}

.partage {
    width: 100%;
    margin: 25px 0 0;
    z-index: 3;
    float: none;
    padding: 0;
    text-align: left;
    vertical-align: text-bottom
}

.InfoResa,
.NosPlanDAcces,
.candidatureBg,
.encart,
.encartBg3,
.interventionZone,
.leading,
.nosRealisations,
.nosValeursBg {
    text-align: center
}

.encartBg {
    background-repeat: repeat;
    background-position: 0 0;
    padding: 30px 0 60px;
    background-color: var(--color0)
}

.encart,
.opening .img {
    background-repeat: no-repeat
}

.activites,
.activites .h {
    background-color: var(--color3)
}

.encart {
    width: 100%;
    margin-bottom: 60px;
    display: block;
    background-position: 50% 0;
    background-size: auto auto
}

.encart p {
    font-size: 17px;
    color: var(--color1);
    line-height: 1
}

.encart img {
    margin-bottom: 20px;
    opacity: 0;
    width: auto
}

.encart:focus,
.encart:focus:after,
.encart:hover,
.encart:hover:after {
    text-decoration: none;
    color: var(--color0);
    -webkit-transform: translateY(-5px);
    -moz-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    -o-transform: translateY(-5px);
    transform: translateY(-5px)
}

.encart01 {
    background-image: url(../images/encart01.png)
}

.encart02 {
    background-image: url(../images/encart02.png)
}

.encart03 {
    background-image: url(../images/encart03.png)
}

.encart04 {
    background-image: url(../images/encart04.png)
}

.encart01:hover {
    background-image: url(../images/encart01_h.png)
}

.encart02:hover {
    background-image: url(../images/encart02_h.png)
}

.encart03:hover {
    background-image: url(../images/encart03_h.png)
}

.encart04:hover {
    background-image: url(../images/encart04_h.png)
}

.encadrage {
    padding: 30px
}

.modal-content input[type=number],
.nopaddRight {
    padding-right: 0
}

.nopaddLeft {
    padding-left: 0
}

.activites {
    height: 343px
}

.activites .h {
    font-size: 34px;
    color: var(--color0);
    padding: 30px 0;
    margin-bottom: 70px
}

.opening .img,
.partenaires {
    background-color: var(--light)
}

.activites p {
    font-size: 30px;
    color: var(--color0)
}

.encartBg p,
.nosValeurs li,
.opening p,
.zone01 ul li {
    font-size: 18px
}

.opening {
    height: 115px;
    line-height: 138px;
    padding: 0;
    display: block;
    -ms-box-orient: horizontal;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-flow: row nowrap;
    -moz-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: stretch;
    -moz-align-items: stretch;
    align-items: stretch;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center
}

.opening p {
    color: var(--color0);
    line-height: normal;
    margin-bottom: 0
}

.opening .img {
    float: left;
    margin-right: 30px;
    height: 100%;
    width: 110px;
    background-image: url(../images/horairesImg.png)
}

.candidatureBg,
.interventionZone,
.nosValeurs,
.nosValeursBg:before,
.partenaires .list-inline:before {
    background-repeat: no-repeat;
    background-position: 50% 0
}

.opening .img img {
    opacity: 0;
    width: 100%;
    margin: 0
}

.partenaires {
    padding: 30px 0;
    margin-bottom: 0
}

.partenaires .h {
    margin: 20px 0 50px
}

.partenaires .list-inline {
    display: table;
    width: 100%;
    margin-bottom: 40px
}

.partenaires .list-inline:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 43px;
    left: 0;
    bottom: -43px;
    background-image: url(../images/shadow2.png)
}

.partenaires .list-inline li {
    display: table-cell;
    text-align: center
}

.partenaires .bx-controls {
    width: 150px;
    float: right;
    height: 68px;
    margin-top: 14px
}

.partenaires .bx-controls-direction a {
    top: 0;
    width: 67px;
    height: 67px;
    border: none;
    box-shadow: none
}

.partenaires .bx-controls-direction a.bx-prev {
    left: 0
}

.partenaires .bx-controls-direction a.bx-next {
    right: 0
}

.partenaires .slide span {
    font-size: 20px;
    color: var(--color1)
}

.interventionZone {
    background-image: url(../images/interventionZoneBg.jpg);
    height: 386px;
    padding: 110px 0 0;
    width: 100%
}

.interventionZone span {
    display: inline-block;
    width: 36%;
    font-size: 18px;
    color: var(--color0)
}

.encartBg .h {
    font-size: 26px;
    text-align: left
}

.encartBg p {
    color: var(--color3)
}

.NosPlanDAcces02,
.leading,
.nosRealisations .h,
.nosValeurs .h,
.nosValeurs li {
    color: var(--color0)
}

.encartBg3 {
    padding: 80px 0 0 20px;
    height: 415px
}

.zone01 ul {
    padding-left: 21px;
    margin: 0 0 20px
}

.zone01 ul li {
    list-style-type: square;
    line-height: 1.5;
    padding-left: 20px
}

.NosPlanDAcces02 .h.hicon,
.datePickerZone .datepicker table tr th,
.zone03 ul li {
    color: var(--color2)
}

.zone03 div {
    padding: 20px;
    background-color: var(--color2)
}

.zone03 ul li {
    list-style: none;
    font-size: 20px
}

.zone03 div img {
    position: absolute;
    right: -20px;
    bottom: 0
}

.nosValeursBg {
    padding: 55px 110px 25px
}

.nosValeursBg:before {
    content: '';
    position: absolute;
    background-image: url(../images/nosValeursShadow.png);
    bottom: 0;
    right: 85px;
    width: 380px;
    height: 173px
}

.nosValeurs {
    background-image: url(../images/nosValeurs.jpg);
    background-size: 100% 100%;
    height: 290px
}

.nosValeurs .h {
    font-size: 34px;
    padding: 40px 0 30px;
    margin-bottom: 38px
}

.nosValeurs ul {
    text-align: left;
    line-height: 1.6;
    padding-left: 90px
}

.candidatureBg {
    padding: 60px 0;
    background-image: url(../images/candidatureBg.jpg);
    height: 187px
}

.cv {
    padding: 10px 30px;
    -webkit-box-shadow: 3px 3px 6px var(--light);
    -moz-box-shadow: 3px 3px 6px var(--light);
    -ms-box-shadow: 3px 3px 6px var(--light);
    -o-box-shadow: 3px 3px 6px var(--light);
    box-shadow: 3px 3px 6px var(--light)
}

.InfoResa {
    width: 100%
}

.leading {
    font-size: 23px;
    margin-bottom: 70px !important
}

.Zone {
    padding: 70px 0
}

.NosPlanDAccesBg {
    padding: 2% 10% 2%;
    background: var(--light);
    z-index: 1;
    position: relative;
    bottom: 0;
    z-index: 7;
    width: 100%;
}

body.body-contact .NosPlanDAccesBg {
    padding: 60px 0 0
}

.NosPlanDAcces {
    padding: 0;
    width: 100%;
}

.plan-d-acces {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%
}

.NosPlanDAcces02 {
    float: right;
    padding: 5%;
    position: relative;
    z-index: 1;
    background-color: var(--light);
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 10px 50px #0000001a;
    flex-direction: column;
    color: var(--color2);
}

.NosPlanDAcces.NosPlanDAcces02:before {
    content: "";
    position: absolute;
    background-image: url(../images/logo.png);
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: bottom right;
    inset: 0;
    opacity: .1;
    bottom: 5%;
    right: 5%;
}

.NosPlanDAcces01 {
    position: relative;
    z-index: 1;
    height: 50vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
}

.body-contact .NosPlanDAcces01 {
    grid-template-columns: 1fr;
}

.NosPlanDAcces01 iframe {
    position: relative;
    border: none;
    z-index: 1;
    height: 100%;
    width: 100%;
}

.NosPlanDAcces02 .h.hicon {
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.NosPlanDAcces02 .h.hicon:after {
    display: none;
}

.NosPlanDAcces.NosPlanDAcces02 .fas {
    display: block;
    font-size: 20px;
    margin: 0 0 10px;
    color: var(--color1);
}

.nosRealisations {
    background-image: url(../images/nosRealisations.jpg);
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-color: var(--color2);
    overflow: hidden;
    z-index: 0
}

.nosRealisations .container:before {
    content: '';
    position: absolute;
    width: 88%;
    left: 50%;
    margin-left: -44%;
    height: 100%;
    z-index: -1;
    border: 2px solid var(--color0);
    display: block
}

.nosRealisations .h {
    font-size: 24px;
    margin: 40px 0
}

.bodyContent p,
.nosRealisations .bx-viewport {
    margin-bottom: 30px
}

.nosRealisations .leading {
    margin-bottom: 40px !important
}

.nosRealisations a.seeMore {
    display: inline-block;
    padding: 12px 60px 8px;
    position: relative;
    bottom: 0;
    margin-bottom: 30px;
    border: 2px solid var(--color0);
    color: var(--color0)
}

.nosRealisations a.seeMore:hover {
    border: 2px solid var(--color0);
    background-color: var(--color0);
    color: var(--color2)
}

.nosRealisations .bx-controls-direction a {
    width: 15px;
    height: 25px;
    background-color: transparent;
    opacity: 1
}

.nosRealisations .bx-controls-direction a.bx-next {
    background-image: url(../images/next.png);
    right: 0
}

.nosRealisations .bx-controls-direction a.bx-prev {
    background-image: url(../images/prev.png);
    left: 0
}

.nosRealisations .bx-controls-direction a.bx-next:hover,
.nosRealisations .bx-controls-direction a.bx-prev:hover {
    opacity: .6
}

.nosRealisations .bx-controls-direction {
    width: 34px;
    float: right;
    right: 73px;
    position: relative
}

.nosRealisations ul {
    padding: 0;
    list-style: none;
    margin-bottom: 30px;
    float: left;
    width: 100%
}

.ReservationBg {
    position: relative;
}

.container-fluid.ReservationBg.accueil {
    padding: 2% 0% 1%;
    background: var(--light);
}

.body-page-1 .section:before {
    content: "";
    position: absolute;
    background: url(../images/shape-4.png);
    width: 250px;
    height: 200px;
    right: -12%;
    bottom: 0;
    z-index: 11;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
    opacity: 1;
}

.ReservationBg .h,
.datepicker-container .h {
    text-transform: none;
    padding-bottom: 10px;
    font-family: var(--font_family_1);
    margin: 0;
    width: 100%;
    text-align: center;
    position: relative;
}

.datePickerZone .datepicker table tr td.today.day {
    color: var(--color0) !important;
}

.datePickerZone .datepicker table tr td.today:hover:before {
    background: var(--color0);
    border-color: var(--color0);
    color: var(--color3)
}

.datePickerZone .datepicker table tr th.next i,
.datePickerZone .datepicker table tr th.prev i {
    background: var(--color0);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 10px
}

.datepicker-container,
.reserv-container {
    position: relative;
    width: 100%;
    height: auto;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.reserv-container {
    z-index: 1;
    padding: 5% 5%!important;
    background-size: 70%;
    margin: 0 0 auto;
    width: 100%;
    height: 60vh;
    box-shadow: 0 10px 50px #0000001a;
    background: var(--light);
}

.datepicker-container h3,
.reserv-container h3 {
    margin-top: 45px
}

.ReservationText {
    text-align: center;
    width: 100%;
    padding: 45px 0 0;
    position: relative;
    line-height: 1.7;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ReservationText ol {
    padding: 2% 10% 5%
}

.ReservationText .h {
    font-size: 18px;
    color: var(--color3);
    text-transform: uppercase
}

.ReservationText p {
    text-align: center;
    width: 100%;
    padding: 0 70px;
    margin-bottom: 50px
}

#index .ReservationText p {
    text-align: center;
    padding: 0;
    margin: 0px 0 30px;
}

.body-contact-100 .ReservationBg {
    position: relative;
    padding: 0
}

.theReservationText {
    position: relative;
    width: auto;
    height: auto;
    z-index: 0;
    background: var(--color3);
    padding: 44px 40px;
    color: var(--color0)
}

.ReservationBg .theReservationText .h {
    text-align: left;
    font-size: 24px;
    color: var(--color0);
    border: none;
    text-transform: uppercase;
    line-height: 1.5;
    margin-bottom: 0
}

.theReservationText p {
    color: var(--color0);
    font-size: .9vw;
}

.theReservationText ol {
    padding-left: 10px;
    color: var(--color0);
    margin-left: 10px
}

.body-contact-100 .section,
.no-bottom {
    margin-bottom: 0 !important
}

.datePickerZone .datepicker table tr td.today:before {
    background-color: var(--color1);
    border-color: var(--color1);
}

.datePickerZone .datepicker table tr td.disabled,
.datePickerZone .datepicker table tr td.disabled:hover {
    color: var(--color3) !important;
    cursor: no-drop;
    opacity: .8
}

.contactButton,
.datePickerZone .datepicker table tr td.day:hover,
.datePickerZone .datepicker table tr td.focused,
.nav-item-active,
.sidebar-bottom-controls a,
.sidebar-divider-text,
.sidebar-form label,
.sidebar-left a,
.sidebar-right a,
.sidebar-send-button {
    color: var(--color0) !important
}

.datePickerZone .datepicker table tr td.new.day,
.datePickerZone .datepicker table tr td.old {
    color: var(--color2);
    opacity: .6
}

.datePickerZone .datepicker table tr td.active.active:before,
.datePickerZone .datepicker table tr td.day:hover:before,
.datePickerZone .datepicker table tr td.focused:before {
    background: var(--color3)
}

.datePickerZone {
    padding: 20px 0
}

.beforeFooter {
    position: relative;
    padding: 20px 0 0;
    background-color: var(--color0);
    text-align: center;
    background-image: url(../images/beforeFooter.jpg);
    background-repeat: no-repeat;
    background-position: 50% 0
}

.beforeFooter .h {
    font-size: 29px;
    color: var(--color2);
    margin-bottom: 10px;
    margin-top: 30px
}

.beforeFooter p,
.modal-content .h {
    margin-bottom: 50px;
    color: var(--color2)
}

.beforeFooter p {
    font-size: 18px
}

.beforeFooter ul {
    text-align: left;
    padding-left: 20px
}

.beforeFooter ul li {
    list-style-image: url(../images/puce.png);
    font-size: 20px;
    color: var(--light);
    line-height: 40px
}

.beforeFooter .storeLinks {
    padding: 15px;
    display: inline-block
}

.qrCode {
    position: relative;
    top: -20px
}

.modal-content label.checkbox.label-rgpd span.text-warning {
    position: absolute;
    bottom: -20px
}

.modal {
    z-index: 9999;
    font-size: .8vw;
    color: var(--light)
}

.info-rgpd {
    color: var(--color2);
}

.modal-backdrop {
    z-index: 0
}

.modal-content {
    border-radius: 0;
    padding: 30px;
    background: var(--light)
}

.modal-content .h {
    font-size: 1.2vw;
    text-transform: none;
    text-align: center
}

.contactButton,
.copyright-sidebar,
.menu-mobile-dynamique li a,
.menu_referencement h2,
.modal-content .btn-default,
.sidebar-notifications a,
.submenu a {
    text-transform: uppercase
}

.modal-content .form-control {
    line-height: 1;
    padding: 0 0 0 12px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #1e1e1e61;
    background-color: transparent;
    line-height: normal
}

.modal-content .form-group:after {
    clear: both;
    display: table;
    content: " "
}

.modal-content .form-control,
.modal-content input[name=captcha]+a {
    height: 46px !important
}

.modal-content input[name=captcha] {
    width: 100% !important;
    margin-right: 2%
}

.modal-content input[name=captcha]+a {
    width: 100% !important;
    text-align: center
}

.modal-content input[name=captcha]+a img {
    width: auto !important;
    height: 100% !important;
    margin: 0 auto
}

.modal-content textarea.form-control {
    padding: 20px 10px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #1e1e1e61;
    resize: vertical;
    height: 150px !important
}

.modal-content label {
    padding-left: 0;
    font-size: 15px;
    padding-top: 13px;
    font-weight: 400;
    margin-top: 0;
    color: var(--color2);
    display: block
}

.modal-content .btn-default {
    padding: 14px 140px 10px;
    background: var(--color0);
    border: 1px solid var(--light);
    color: var(--light);
    border-radius: 0;
    font-size: 14px;
    text-decoration: none;
    transition: .4s
}

.modal-content .btn-default:hover {
    color: var(--color0);
    background: var(--light)
}

.modal-content .description {
    margin: 20px 0 0;
    font-size: 14px
}

.modal-content .obligatoire {
    font-size: 9px;
    padding: 10px 0 0;
    margin-bottom: 20px;
    font-style: italic;
    color: var(--color3)
}

.actuAndNewsletterBg {
    padding: 2% 10% 2%;
    background-color: var(--light);
    position: relative;
    width: 100%;
    align-items: center;
    z-index: 1;
    background-blend-mode: soft-light;
    background-attachment: fixed;
    background-size: cover;
    color: var(--color0);
}

.container-fluid.actuAndNewsletterBg:before {
    content: "";
    position: absolute;
    background: url(../images/shape-1.png);
    width: 300px;
    height: 300px;
    right: 0;
    bottom: 0;
    z-index: 11;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
    opacity: 1;
}

.container-fluid.actuAndNewsletterBg:after {
    content: "";
    position: absolute;
    background: url(../images/shape-3.png);
    width: 200px;
    height: 200px;
    left: 0;
    top: 0;
    z-index: 11;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
    opacity: 1;
}
.actuAndNewsletterBg h2:after {
    display: none;
}
.actuAndNewsletterBg h2 {
    padding-bottom: 20px;
    text-align: center;
    width: 100%;
    display: none;
}
.NewsletterBg p {
    font-size: 22px;
    color: var(--light);
    margin: 20px 0 1px;
    font-family: var(--font_family_2);
}

.block #newsletter_form input[type=text] {
    color: var(--color2);
    border-color: #4444444d
}

.actuAndNewsletter-container {
    position: relative;
    width: 100%;
    height: 100%;
    background: 0 0;
    padding: 4% 2%;
    display: flex;
    align-content: center;
    justify-content: space-evenly;
    align-items: stretch;
    z-index: 1;
    border: 1px solid #0f3f403d;
}

.linkList li a,
.sp {
    background-repeat: no-repeat
}

.modal-header {
    padding: 0;
    border-bottom: 0 solid var(--color1);
    min-height: 16.42857143px
}

.modal-header .btn {
    margin-top: 0;
    background-color: transparent;
    font-size: 25px;
    color: var(--color3);
    padding: 0;
    top: -6px;
    float: right;
    margin-right: 10px
}

.modal-header .btn i.fa.fa-times {
    font-style: normal;
    float: right;
    font-size: 19px;
    color: var(--color3)
}

.actu-image,
.actu-image .blazy img,
.parallax {
    position: relative;
    width: 100%;
    height: 100%
}

.sp,
.spContainer {
    width: 100%;
    height: 668px
}

.parallax .banner img {
    position: relative;
    width: 50%;
    height: 70%;
    object-fit: cover;
    object-position: center;
    top: 20% !important;
    right: 0%;
    border-radius: 52% 48% 48% 52% / 72% 76% 24% 28%;
}
.body-page-1 .parallax .banner img {animation: updown 4s infinite;}
.parallax .banner .slogan .btn-head a img{
    width: 100% !important;
    height: 100% !important;
    top: 0% !important;
    animation: none !important;
    border-radius: 0;
}
.btn-head{display: flex;justify-content: flex-start;text-align: left;width: 100%;gap: 20px;}
.btn-head a{width: 50px;}
@keyframes updown{
    0%{transform: translateY(10px);}
    50%{transform: translateY(0px);}
    100%{transform: translateY(10px);}
}
.parallax .banner img.banner-interne {
    border-radius: 0;
    width: 100%;
    height: 100%;
    top: 0 !important;
    left: 0 !important;
}

#modal-calendar .modal-header,
#modal-evenement .modal-header {
    margin-bottom: 40px;
    border-bottom: 1px solid var(--color3)
}

#modal-calendar .datePickerZone {
    padding: 0 0 30px
}

#modal-calendar .modal-footer {
    border-top: 0;
    text-align: center
}

.spContainer {
    position: relative
}

.sp {
    top: 0;
    left: 0;
    position: absolute;
    background-position: 50% 50%;
    background-size: contain
}

.sp01 {
    background-image: url(../images/sp01.png);
    z-index: 2
}

.sp02 {
    background-image: url(../images/sp02.png);
    z-index: 1
}

.sp03 {
    background-image: url(../images/sp03.png);
    z-index: 0
}

.help-block {
    font-size: 1.2rem;
    color: var(--color3)
}

.costumRadio {
    padding-top: 13px;
    padding-bottom: 10px;
    height: 50px
}

.form-horizontal .checkbox,
.form-horizontal .radio {
    min-height: initial
}

.form-horizontal .radio-inline,
.sidebar-bottom-controls p {
    margin-top: 3px
}

.menu_referencement h2 {
    margin-bottom: 30px;
    font-size: 16px;
    font-weight: 600
}

.contact,
.sidebar-form .small-notification {
    margin-top: 20px
}

.contact.form {
    left: 50%;
    transform: translate(-50%);
    position: relative;
}

section.section.contact.row {
    padding: 2%;
    margin: 2% 0;
    background-color: var(--color0);
}

.btn-service {
    text-align: center;
    margin: 15px 0
}

.isServiceList .content {
    padding: 0;
    width: 100%
}

.nosServicesBg {
    padding-top: 40px;
    padding-bottom: 40px;
    position: relative;
    background-color: var(--color1);
    color: var(--color0)
}

.nosServicesBg .h {
    color: var(--color0);
    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;
    list-style: none;
    float: left
}

.linkList li {
    display: block;
    width: 100%;
    float: left
}

.linkList li a {
    font-size: 18px;
    color: var(--color2);
    padding: 10px 15px 10px 50px;
    background-image: url(../images/r_arr_h.png);
    background-color: var(--color0);
    background-position: 15px 50%;
    display: inline-block;
    margin: 0 0 19px;
    border: 1px solid var(--color0);
    min-width: 90%;
    text-align: left
}

.linkList li a:hover {
    background-image: url(../images/r_arr.png);
    color: var(--color0);
    border: 1px solid var(--color0);
    background-color: var(--color2);
    text-decoration: none
}

.body-service-list .fluid-contenu .container {
    width: 100%;
    max-width: 100%
}

.hvr-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    background-color: transparent;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}
.btn-service a:before {
    background: 0 0
}

a.bouton-principal,
button.bouton-principal {
    text-align: center;
    border: none;
    text-decoration: none;
    padding: 20px 40px;
    transition: all .3s linear;
    background: transparent;
    color: var(--color3);
    letter-spacing: 0px;
    border: 1px solid #7f62545c;
}

.bootstrap-timepicker .input-group-addon,
span.input-group-addon {
    border: .5px solid #1e1e1e61;
    background: 0 0
}

a.bouton-principal:hover,
button.bouton-principal:hover {
    background: var(--color3);
    border-color: var(--color3);
    color: var(--light);
}

.row.ligne-photos.retrait.centerservice2 {
    margin: 0 16% !important
}

.row.ligne-photos.retrait.centerservice {
    margin: 0 33% !important
}

.body-service-list .services .tableGrid.row .h {
    text-align: center;
    margin-bottom: 15px
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .service_sub_title {
    font-size: 22px;
    color: var(--color3);
    padding: 0 0 5px
}

.body-service-list .services .tableGrid.row .bodyContent {
    text-align: center;
    padding: 5vw
}

.body-service-list .main_bg {
    padding-bottom: 80px;
    min-height: 600px;
    z-index: 1;
    position: relative
}

.body-service-list .bodyContent .h {
    text-align: initial;
}

.service_sub_title {
    font-size: 19px;
    color: var(--color3);
    padding: 12px 0 5px
}

.nosServicesBg .bx-wrapper,
.nosServicesBg .mainSectionSlider,
.services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0
}

.nosServicesBg .bx-viewport,
.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
}

.services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* border: 4px solid var(--color0); */
    min-height: 400px
}

.nosServicesBg .bx-viewport li,
.services .bx-viewport li {
    height: 100%;
    list-style: none
}

.mainSectionSliderBg .bx-pager,
.services .bx-pager {
    z-index: 99
}

#modal-evenement #captchaReservation {
    width: 302px;
    margin: 0 auto
}

button#submitReservation {
    margin-top: 10px;
    border: 1px solid #7f625459;
}

button#submitReservation:hover {
    border-color: var(--color3);
    background: var(--color3)
}

.modal-header strong {
    font-size: .9vw;
    color: var(--color2)
}

.bootstrap-timepicker .input-group-addon {
    border-left: transparent;
    cursor: pointer
}

.input-group.bootstrap-timepicker.timepicker input,
.input-group.date.datepicker2 input {
    cursor: pointer !important
}

.text-warning {
    color: var(--color3) !important;
    display: block;
    margin-top: 1px;
    margin-bottom: 0;
    font-style: italic;
    font-size: 12px
}

.remonter {
    position: fixed;
    z-index: 9999;
    display: none;
    bottom: 30px;
    right: 30px;
    width: 60px
}

.remonter button {
    display: block;
    padding: 8px;
    text-align: center;
    background: 0 0;
    border-radius: 3px;
    border: none
}

.g-recaptcha-d-table {
    display: table;
    width: 100%
}

.contact .g-recaptcha {
    margin-right: 0;
    background-color: var(--color0);
    display: table-cell;
    vertical-align: top;
    float: left;
    text-align: center;
    margin-bottom: 0;
    border-radius: 0;
    position: relative
}

.g-recaptcha {
    display: inline-block;
    margin: 0 auto
}

.contact .form-group .btn-primary {
    width: auto;
    vertical-align: top;
    display: table-cell;
    line-height: 0;
    font-weight: 400 !important;
    margin-top: 0;
    height: auto !important;
    background: 0 0;
    background: var(--color2);
    position: absolute;
    padding: 20px 40px;
    min-width: auto;
    float: right;
    right: 0;
    top: -110px;
    font-style: normal;
    letter-spacing: 1px;
    font-family: var(--font_family_1);
}

.form-group .btn-primary:hover {
    background-color: var(--color3);
    border: 1px solid var(--color3);
    color: var(--color2)
}

@media (min-width:2500px) {
    .modal-dialog{width: 800px;}
    .modal-lg{min-width: 1200px;}
    .ReservationBg .theReservationText .h{font-size: 2vw}
    label.checkbox.label-rgpd,label.checkbox.label-rgpd p{font-size: 16px;}
    .flex-head-img{width: 30%;}
    .h1, h1{font-size: 55px;}
    .h2, h2{font-size: 50px;}
    .h3, h3{font-size: 45px;}
    .h4, h4{font-size: 40px;}
    .h5, h5{font-size: 35px;}
    .h6, h6{font-size: 30px;}
    .body-page-1 .bannier .banner h1 span{font-size: 1.2vw;line-height: 1.7;}
    .btn-head a {
        width: 90px;
    }
    .head-btn>a, .head-btn>p{font-size: 1vw;}
    .h1, .hicon, h1{font-size: 2vw;}
    .body-page-1 .bannier .banner h1{}
    header.wrap.header{margin-bottom: 4vh;}
    .flex-head-txt .scroll01{max-height: 45vh;}
    .header01bg{height: 170px;}
    .navbar-brand img{width: 240px;}
    .navbar-nav>li>a, body, .salon-content span.subtitle,.salon-content p{font-size: .9vw;}
    .tel, .tel p{font-size: 1vw;}
}
@media (min-width:768px) {
    .form-horizontal .control-label {
        text-align: left
    }

    .modal-lg {
        width: 900px
    }
}

@media (min-width:1200px) {
    .modal-content label.visible {
        display: block
    }
}

@media (min-width:980px) and (max-width:1199px) {
    .menu_footer li a {
        font-size: 14px
    }

    .navbar {
        padding: 0
    }

    .navbar-nav>li>a {
        padding: 7px 10px;
        font-size: 18px
    }

    .NewsletterBg {
        padding: 90px 20px 76px
    }

    .beforeFooter .storeLinks {
        padding: 15px 0
    }

    .carte p.header {
        margin-bottom: 0
    }

    .carte .labels {
        margin-top: 0
    }

    .img_thumbnail_multiple,
    .img_thumbnail_multiple a {
        height: 290px
    }

    .nav-pills li,
    .nav-pills>li+li {
        margin: 0
    }

    .body-gallery .main_bg .blockCenter {
        width: 118vw
    }

    .datepicker table tr td:before {
        top: 50%;
        left: 50%;
        margin-left: -25px;
        margin-top: -25px;
        width: 50px;
        height: 50px
    }

    .btn {
        padding: 10px
    }

    .btn-primary {
        font-size: 15px
    }

    .body-news-list .view .item:before {
        width: 140vw;
        margin-left: -80%
    }

    .modal-lg {
        width: 900px
    }

    .h1,
    .hicon,
    h1 {
        font-size: 25px
    }

    .LeRestaurantCarousselBg {
        background-image: none
    }

    .banner img {
        width: 100%;
        margin-left: 0
    }
}

.datePickerZone .datepicker table tr td.active.active:before,
.datePickerZone .datepicker table tr td.active.highlighted.active:before,
.datePickerZone .datepicker table tr td.active.highlighted:active:before,
.datePickerZone .datepicker table tr td.active:active:before,
.datePickerZone .datepicker table tr td.today.active.focus:before,
.datePickerZone .datepicker table tr td.today.active:focus:before,
.datePickerZone .datepicker table tr td.today.active:hover:before,
.datePickerZone .datepicker table tr td.today:active.focus:before,
.datePickerZone .datepicker table tr td.today:active:focus:before,
.datePickerZone .datepicker table tr td.today:active:hover:before,
.open>.dropdown-toggle.datepicker table tr td.active.highlighted:before,
.open>.dropdown-toggle.datepicker table tr td.active:before,
.open>.dropdown-toggle.datepicker table tr td.today.focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:hover:before {
    background: var(--color0);
    color: var(--color3);
    border-color: var(--color0)
}

.deploy-right-mail,
.deploy-right-sidebar {
    border-left: 1px var(--color0) solid
}

.body-page-1 .banner::before {
    /* content: ""; */
    display: none;
}

@media (max-width:991px) {
    .theReservationText p{font-size: 20px}
    .datePickerZone .datepicker .datepicker-switch, .datePickerZone .datepicker .next, .datePickerZone .datepicker .prev, .datePickerZone .datepicker tfoot tr th, .encartBg .h span, .form-control, .form-group .btn-primary:active, label{font-size: 22px}
    .menu_footer li a{font-size: 16px}
    .view .articleContent{font-size: 16px}
    .bloc-GMB{height: 50vh !important}
    .bloc-GMB .contain-GMB{font-size: 15px !important}
    .testimony .one-service.item p{font-size: 14px !important}
    .testimony .one-service.item h4 span{font-size: 20px !important;}
    .salon-block .salon-content h2 span:first-child{}
    div.slogani{top: 30%;width: 100%}
    .NosPlanDAcces01{grid-template-columns: 1fr;}
    .NosPlanDAcces01 iframe{height: 100%;}
    .body-page-1 .bannier .banner h1 span{color: var(--color0);opacity: 1;font-size: 20px;}
    .head-btn>a, .head-btn>p{color: var(--color1);border: 1px solid rgb(204 169 77 / 86%);}
    .body-page-1 .bannier .banner h1{color: var(--color1);}
    .parallax .banner img{width: 100%;height: 100%;top: 0 !important;left: 0;border-radius: 0;animation: none !important;}
    .body-page-1 .banner{padding: 0;position: relative;}

.body-page-1 .banner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: #00000070;
    z-index: 1;
    display: block;
}
    .carte ul{grid-template-columns: 1fr;}
    .container-fluid.actuAndNewsletterBg:after{display: none;}
    .container-fluid.ReservationBg.accueil div.row > div:nth-child(1){display: none;}
    .atout-container .item{display: flex;flex-direction: column;justify-content: center;align-items: center;border: 1px solid #eee;}
    .atout-container .item strong{text-align: center;}
    .atouts{grid-gap: 40px;}
    .atout-container{
        grid-template-areas: 
            "item-1 item-2"
            "item-3 item-7"
            "item-5 item-6";
        grid-gap: 20px;
        grid-template-rows: 200px 200px 200px;
    }
    .atout-container .item-4,
    .body-page-1 .section:before{display: none;}
    .reserv-container{padding: 5% !important;}
    .block-group+.container-fluid.ReservationBg.accueil .row .col-md-5{display: none;}
    .service-coor{flex-direction: column;justify-content: center;}
    .service-coor p,.service-coor a{/* width: 100% !important; *//* text-align: center !important; */}
    .head-img.img-3{height: 200px;width: 100%;left: 0;}
    .atouts:after,.reserv-container:before{display: none;}
        .contact .form-group .btn-primary{ position: relative; top: 0px;}
    .body-service-list .bodyContent .h {
        font-size: 25px
    }

    .services .mainSectionSlider .blazy {
        min-height: auto
    }

    #contact-form {
        padding: 10% 0 4%
    }

    .contact_footer_container .container {
        padding: 0 5%
    }

    .actu-container {
        margin-bottom: 4em
    }

    .block-group+.container-fluid.ReservationBg.accueil .row {
        display: flex;
        flex-direction: column-reverse
    }

    .actuAndNewsletterBg::before,
    .atouts:before,
    .body-page-1 .bannier:after {
        display: none
    }

    .banner::before {
        content: "";
        background: linear-gradient(285deg, #000000e0, transparent);
        inset: 0;
        position: absolute;
        z-index: 1
    }

    .body-page-1 .bannier .slogan h1 {
        width: 100%;
        position: relative;
        font-size: 50px;
    }

    .NosPlanDAcces02 {
        height: auto;
        padding: 30px 20px
    }

    a.bouton-principal,
    button.bouton-principal {
        padding: 10px 16px
    }
}

.bloc-GMB,
.salon-block {
    align-content: center;
    justify-content: center
}

@media (min-width:768px) and (max-width:979px) {
    .engegements-content {
        padding: 30px 20px !important
    }

    .head-img.img-1,
    .head-img.img-2 {
        width: 100% !important;
        right: 0 !important;
        height: 200px;
        top: 0;
        margin: 0 5px
    }

    .nosServicesBg .mainSectionSlider .blazy,
    .nosServicesBg .mainSectionSlider .show,
    .services .mainSectionSlider .blazy,
    .services .mainSectionSlider .show {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .bx-wrapper,
    .nosServicesBg .mainSectionSlider,
    .services .bx-wrapper {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0
    }

    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 !important
    }

    .row.ligne-photos.retrait.centerservice {
        margin: 0 20% !important
    }

    .nosServicesBg .bx-viewport,
    .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
    }

    .modal-content label {
        padding-top: 10px !important
    }

    .menu_referencement h2 {
        text-align: center;
        font-size: 20px
    }

    .h,
    .h1,
    .hicon,
    h1 {
        font-size: 35px
    }

    .address p,
    .datePickerZone,
    .services-home-content .h {
        margin-bottom: 40px
    }

    .h2,
    h2 {
        font-size: 18px
    }

    .NosPlanDAcces02 p,
    .h3,
    h3 {
        font-size: 16px
    }

    .h4,
    h4 {
        font-size: 14px
    }

    .h5,
    h5 {
        font-size: 12px
    }

    .h6,
    h6 {
        font-size: 10px
    }

    .datepicker table tr td:before {
        top: 50%;
        left: 50%;
        margin-left: -25px;
        margin-top: -25px;
        width: 50px;
        height: 50px
    }

    .btn-primary {
    }

    .body-news-list .view .item:before {
        width: 140vw;
        margin-left: -80%
    }

    .NewsletterBg {
        padding: 50px 20px 36px
    }

    .beforeFooter .storeLinks {
        padding: 15px 0
    }

    .img_thumbnail_multiple,
    .img_thumbnail_multiple a {
        height: 290px
    }

    .banner img {
        width: 100%;
        margin-left: 0
    }

    .vis01 {
        width: 60%;
        margin: 0 auto;
        display: block;
        float: none
    }

    .LeRestaurantCarousselBg {
        background-image: none;
        background-color: var(--color2)
    }

    .beforeFooter {
        background-repeat: repeat
    }

    .body-gallery .main_bg .blockCenter {
        width: 100%;
        padding: 0 1%;
        margin-left: 0;
        left: 0;
        right: 0;
        display: block;
        float: left;
        position: relative
    }

    .body-gallery .main_bg {
        overflow-x: hidden;
        padding: 0
    }

    .news .item .h {
        margin: 0 0 20px
    }

    .modal-lg {
        width: 740px
    }

    .NosPlanDAcces02 p:nth-of-type(2) {
        font-size: 17px
    }
}

.deploy-left-sidebar,
.deploy-right-sidebar {
    background-image: url(../images/menu-mobile-3/nav.svg)
}

.btn-partage,.btn-partage-footer {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: right;
    margin-top: 30px;
    display: flex !important;
    gap: 40px;
    justify-content: flex-end;
}

footer .btn-partage a span,footer .btn-partage-footer a span {
    position: absolute;
    opacity: 0;
    transition: all .3s linear;
    display: inline-table;
    width: 100%;
    white-space: nowrap;
    top: -55px;
    background: var(--color1);
    padding: 10px 20px;
    left: -130px;
    color: var(--light);
    font-size: 14px;
}

footer .btn-partage a span:before,footer .btn-partage-footer a span:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 10px;
    background: var(--color1);
    bottom: -10px;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    transform: rotate(180deg);
    left: 130px;
}

footer .btn-partage a i,footer .btn-partage-footer a i {
    font-size: 20px;
    transition: all .3s linear;
}

footer .btn-partage a:hover i,footer .btn-partage-footer a:hover i {
    color: var(--light);
}

footer .btn-partage a:hover span,footer .btn-partage-footer a:hover span {
    opacity: 1;
}

footer .btn-partage a,footer .btn-partage-footer a {
    position: relative;
}

.icones {
    width: 21px;
    height: 21px;
    margin-right: 9px;
    transition: .3s
}

a.btnp.btn-gmb .icones,
footer a i {
    width: 21px;
    height: 21px;
    top: 0;
    position: relative
}

footer a i {
    font-size: 25px
}

footer .icones,
footer a i {
    fill: var(--color0);
    color: var(--color0)
}

.icones:hover {
    transform: rotate(360deg)
}

@media (max-width:320px) {
    div#bxControls {
        height: 67px;
        position: absolute;
        width: 40%;
        right: 0;
        left: initial;
        bottom: 61px;
        -webkit-transform-origin: 100% 100%;
        -moz-transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
        -o-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        -webkit-transform: scale(.4);
        -moz-transform: scale(.4);
        -ms-transform: scale(.4);
        -o-transform: scale(.4);
        transform: scale(.4)
    }

    .gallery .col-xs-6 {
        width: 100%
    }
}

.header-sidebars,
.sidebar-left,
.sidebar-right {
    background-color: var(--color3);
    letter-spacing: 1px
}

.header-sidebars {
    height: 65px;
    z-index: 9999;
    position: fixed;
    left: 0;
    right: 0;
    top: -1px;
    width: 100%
}

.deploy-left-sidebar,
.deploy-right-mail,
.deploy-right-sidebar {
    height: 65px;
    width: 65px;
    background-position: center center
}

.header-sidebars .header-top {
    display: table;
    height: 65px;
    width: 100%;
    background: var(--light)
}

.top-logo {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 9999;
    text-align: center;
    overflow-y: hidden
}

.top-logo img {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 109px;
}

.deploy-left-sidebar {
    display: table-cell;
    background-color: var(--color2);
    background-size: auto 49%;
    background-repeat: no-repeat
}

.deploy-right-call,
.deploy-right-mail,
.deploy-right-sidebar {
    display: table-cell;
    background-color: var(--color3);
    background-size: auto 49%;
    background-repeat: no-repeat
}

.deploy-right-mail {
    background-image: url(../images/menu-mobile-3/mail.svg);
    position: absolute;
    right: 65px;
    top: 0
}

.deploy-right-call,
.sidebar-left .close-sidebar-left,
.sidebar-right .close-sidebar-right {
    position: absolute !important
}

.deploy-right-call {
    background-image: url(../images/menu-mobile-3/telephone.svg);
    height: 65px;
    width: 65px;
    background-position: center 19px;
    right: 130px;
    top: 0;
    margin-top: 0px;
}

.delete-right-sidebar,
.deploy-back-home {
    background-repeat: no-repeat;
    background-color: var(--color1);
    width: 50px;
    height: 50px;
    margin-top: -50px;
    float: right
}

.close-sidebar-left,
.delete-right-sidebar,
.deploy-back-home {
    background-position: center center
}

.sidebar-left,
.sidebar-right {
    font-family: var(--font_family_2) !important;
    position: fixed;
    top: 0;
    bottom: 0
}

.deploy-back-home {
    background-image: url(../images/menu-mobile-3/home.png)
}

.delete-right-sidebar {
    display: none;
    background-image: url(../images/menu-mobile-3/contact.png)
}

.sidebar-decoration,
.submenu a {
    background-image: url(../images/menu-mobile-3/sidebar-deco.png)
}

.sidebar-left {
    width: 270px;
    z-index: 9999;
    left: -270px;
    overflow: hidden;
    box-shadow: 3px 0 3px 0 var(--light)
}

.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: var(--color3)
}

.sidebar-scroll-right {
    width: 275px;
    overflow: auto !important;
    overflow-x: hidden !important;
    height: 100%;
    background-color: var(--light);
}

.sidebar-right {
    background-repeat: repeat;
    overflow: hidden;
    z-index: 99999;
    right: -280px;
    width: 270px;
    margin-right: 10px
}

.sidebar-decoration {
    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: var(--color2) !important;
    z-index: 1
}

.footer-text a,
.sidebar-notifications a,
.submenu a {
    color: var(--color3);
    font-size: 10px
}

.sidebar-header-left,
.sidebar-header-right {
    height: 65px;
    background-color: var(--color3);
    position: relative
}

.sidebar-left-logo {
    max-height: 75px;
    position: absolute;
    top: -2px;
    left: 8px;
    margin-right: 179px
}

.sidebar-right-logo {
    top: 23px;
    right: 14px;
    max-width: 161px;
    float: right;
    max-height: 37px;
    position: relative
}

.icon-active,
.icon-drop,
.icon-page {
    position: absolute;
    top: 19px
}

.close-sidebar-left {
    background-image: url(../images/menu-mobile-3/left-chevron.svg);
    background-size: 45% auto;
    background-repeat: no-repeat;
    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(--color3) !important;
    font-family: var(--font_family_1)
}

.close-bottom-left,
.close-bottom-right,
.facebook-bottom {
    display: block;
    padding-top: 26px;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px;
    background-repeat: no-repeat
}

.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: var(--color2)
}

.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 {
    background-image: url(../images/menu-mobile-3/facebook.png)
}

.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 {
    background-image: url(../images/menu-mobile-3/accessdenied.png)
}

.nav-item {
    font-size: 16.2px;
    -webkit-tap-highlight-color: var(--color2);
    background-size: 22px auto;
    background-color: var(--color3);
    height: 60px;
    line-height: 61.5px;
    background-repeat: no-repeat;
    padding-left: 60px;
    background-position: 20px center;
    margin-bottom: 1px
}

.contactButton,
.text-input {
    background-color: var(--color2);
    border: solid 1px var(--color3)
}

.icon-active {
    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;
    left: 240px
}

.icon-page,
.submenu a em {
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
    background-size: 8px 11px;
    width: 10px;
    height: 15px;
    display: block
}

.icon-page {
    background-repeat: no-repeat;
    left: 240px
}

.icon-drop {
    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;
    left: 239px
}

.submenu a {
    text-shadow: 0 2px 0 var(--light);
    background-repeat: repeat-x;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 25px;
    font-weight: 900
}

.contactButton,
.sidebar-notifications a,
.sidebar-send-button {
    font-weight: 700;
    font-family: var(--font_family_2)
}

.submenu a em {
    background-repeat: no-repeat;
    float: left;
    margin-top: 5px;
    padding-right: 35px
}

.submenu a:first-child {
    background-image: none !important
}

.sidebar-notifications a {
    margin-bottom: 15px;
    background-repeat: no-repeat;
    background-position: 0 center;
    padding-left: 38px;
    margin-left: 20px;
    line-height: 10px
}

.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;
        mix-blend-mode: plus-lighter;
    filter: invert(1);
}

.footer-text a {
    padding-top: 10px
}

.copyright-sidebar {
    font-size: 10px;
    text-align: center
}

#left_label_name,
.text-input {
    font-size: 11px;
    color: var(--color3);
    overflow: hidden;
    position: relative
}

.menu-mobile-dynamique {
    margin: 0;
    padding: 0;
    list-style: none inside
}

.menu-mobile-dynamique li {
    width: 100%;
    margin-bottom: 1px;
    background: var(--light) !important;
    padding-left: 18px
}

.menu-mobile-dynamique li.active {
    background: #eee !important;
}

.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, var(--color2), var(--color2));
    padding-top: 18px;
    padding-bottom: 18px;
    display: none
}

.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);
    background-size: 8px auto;
    color: var(--color0);
    height: 60px;
    background-repeat: no-repeat;
    padding-left: 29px;
    background-position: 6px 20.9px;
    font-family: var(--font_family_1)
}

.menu-mobile-dynamique ul {
    list-style: none inside;
    padding-left: 0
}

.menu-mobile-dynamique ul li a {
    background: 0 0;
    color: var(--color1)
}

.small-notification p {
    margin: 10px 13px;
    padding-bottom: 2px;
    line-height: 18px
}

.text-input {
    width: 230px;
    margin-left: 20px;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px;
    display: block;
    box-sizing: border-box
}

#contactEmail {
    margin-bottom: -5px !important
}

#contactName {
    display: none;
    margin-bottom: 10px
}

#left_label_name {
    display: none;
    text-align: left;
    margin-top: -20px;
    margin-bottom: 10px
}

#email_label,
#name_label {
    margin-top: 20px;
    font-size: 12px;
    color: var(--color1);
    margin-left: 20px
}

#name_label {
    overflow: hidden;
    position: relative;
    display: none;
    font-family: var(--font_family_2)
}

#email_label {
    display: block;
    overflow: hidden;
    position: relative
}

#left_label_mail,
.contact-button-house,
.contactButton {
    display: block;
    overflow: hidden;
    position: relative;
    font-size: 11px
}

#left_label_mail {
    line-height: 18px;
    text-align: left;
    color: var(--color3);
    font-family: var(--font_family_2);
    margin-top: -20px;
    margin-bottom: 10px
}

.contact-button-house {
    line-height: 18px;
    margin-bottom: 20px;
    vertical-align: baseline;
    outline: 0
}

.contactButton {
    margin-left: 20px;
    margin-top: 30px;
    height: 36px;
    width: 230px
}

.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,
.contactTextarea {
    font-size: 15px;
    color: var(--color0);
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    position: relative;
    overflow: hidden
}

.contactField {
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px
}

.contactTextarea {
    margin-bottom: 20px;
    line-height: 18px;
    height: 90px;
    padding: 9px 12px
}

.sidebar-form label,
.sidebar-send-button {
    font-size: 13px;
    color: var(--color1);
    text-transform: uppercase
}

.menu-mobile-dynamique input {
    -webkit-appearance: none;
    border-radius: 0
}

.sidebar-form {
    display: none;
    margin-left: 20px;
    width: 230px;
    box-sizing: border-box
}

.sidebar-form label {
    border-radius: 0 !important;
    padding-top: 10px;
    display: block;
    opacity: .8
}

.sidebar-form input,
.sidebar-form textarea {
    border: solid 1px var(--color3);
    background-color: var(--color2)
}

.sidebar-form label span {
    text-transform: lowercase;
    float: right;
    opacity: .5
}

.sidebar-form textarea {
    margin-bottom: 0
}

.sidebar-send-button {
    display: block;
    width: 100%
}

#newsletter_form .form-group+input,
.block #newsletter_form input[type=submit],
.date_post {
    font-family: var(--font_family_2) !important
}

.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 #emailError,
.sidebar-form #emailError2 {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0;
    height: 36px
}

.sidebar-form #emailError p,
.sidebar-form #emailError2 p {
    text-align: center;
    color: var(--color3);
    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: var(--color3) !important;
    margin: 20px 0 8px;
    display: block;
    text-transform: uppercase;
    padding-left: 0
}

.formValidationError {
    margin-bottom: -15px
}

.sidebar-form .formValidationError div {
    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: var(--color3) !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: var(--color2);
    border-radius: 5px;
    border: solid 1px var(--color3)
}

.formValidationError .red-notification p {
    background-image: none !important;
    display: block !important;
    padding-left: 0 !important;
    text-align: center !important
}

.salon-block {
    position: relative;
    width: 100%;
    background-image: url(../images/background-1.jpeg);
    display: flex;
    align-items: center;
    z-index: 1;
    background-color: #0000008c;
    background-blend-mode: soft-light;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    padding: 5%;
}


.datePickerZone .datepicker table tr td.active.active:hover:before {
    background: var(--color3) !important;
    border-color: var(--color0) !important
}

.salon-block .salon-content h2 span:first-child {
    font-size: 1.5em;
    margin: 0 !important;
    font-family: var(--font_family_1);
    text-transform: math-auto;
    color: var(--light);
}

.salon-block .salon-content h2 {
    padding-bottom: 20px
}

.bx-pager.bx-default-pager a.active,
.bx-pager.bx-default-pager a:hover {
    background: var(--color3);
    width: 16px;
    height: 16px;
    border: 3px solid var(--color0)
}

.bx-pager.bx-default-pager a {
    background: var(--color0);
    border: 3px solid var(--color0);
    width: 16px;
    height: 16px
}

.NewsletterBg .h {
    margin: 30px auto;
    color: var(--light);
    font-size: 40px;
}

.block #newsletter_form input[type=text] {
    color: var(--light);
    border-color: #fbfbfb69;
    border-right: 0
}

.block #newsletter_form input[type=submit] {
    padding: 12px 13px 8px;
    border: none;
    background: var(--color2);
    font-weight: 100 !important;
    color: var(--light);
    transition: all .3s linear;
}

.block.block-2 .form-inline .form-group input {
    background: 0 0;
    border: 2px solid var(--color0) !important;
    color: var(--color2) !important;
    width: 360px;
    text-align: center
}

#newsletter_form .form-group+input {
    display: block;
    text-align: center;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    margin-top: 20px;
    color: var(--color2) !important;
    padding: 10px 30px !important;
    border: 1px solid var(--color0)
}

.services-home {
    position: relative;
    width: 100%;
    padding: 8% 0 30px;
    top: 0;
    z-index: 1
}

.engegements-content,
.one-service.item,
.service-coor {
    position: relative;
    width: 100%
}

.services-home .bx-pager {
    bottom: -50px
}

.engegements-content {
    height: 100%;
    padding: 3% 10% 2%;
}

.one-service.item {
    height: 50vh;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: .3s;
    border: 1px solid #7f62542e;
}

.testimony .one-service.item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--light);
    height: 25vh;
    gap: 10px;
    border: 1px solid #7f62542e;
}

.testimony .one-service.item h4 {
    margin-bottom: 0px;
}

.testimony .one-service.item span {
    color: var(--color2);
    font-family: var(--font_family_2);
}

.testimony .one-service.item h4 span {
    font-size: .9vw;
}

.testimony .one-service.item p {
    padding: 0 10%;
    text-align: center;
    font-size: .6vw;
}

.one-service.item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s
}

.one-service.item:hover img {
    transform: scale(1.1);
    transition: .3s
}

.testimony .owl-carousel .owl-item img {
    width: 168px;
    object-fit: contain;
    height: auto;
    padding: 20px 40px
}

.service-coor {
    display: flex;
    align-items: flex-start;
    text-align: center;
    padding: 25px 4%;
    flex-direction: column;
    left: 0;
    justify-content: flex-end;
    gap: 15px;
    position: absolute;
    height: 100%;
    background: linear-gradient(45deg, black, transparent);
}

.owl-carousel .owl-stage-outer {
    overflow-x: clip;
}

.actu-container,
.service-img {
    height: 100%;
    position: relative
}

.service-img {
    width: 100%;
    overflow: hidden;
    transition: .3s
}

.service-coor p {
    position: relative;
    width: 100%;
    margin: 0;
    font-size: 1.2vw;
    font-family: var(--font_family_1);
    text-align: left;
    color: var(--color0);
    line-height: 1;
}

.actu-heading h3.h a,
.actu-show-more a {
    font-family: var(--font_family_1)
}

.service-coor a,
span.actu-pubdate {
    font-family: var(--font_family_1);
    text-align: center
}

.service-coor a {
    position: relative;
    background: transparent;
    padding: 12px 20px;
    border: 1px solid #937a3466;
    text-decoration: unset;
    text-transform: inherit;
    color: var(--color1);
    transition: .3s;
}

.service-coor a:hover {
    background: var(--color3);
    color: var(--light);
    transition: .3s;
    border-color: var(--color3)
}

.center-dyn {
    display: block;
    width: 50%;
    margin: 0 auto
}

.actu-container {
    width: 100%;
    padding: 5%;
    box-shadow: 0 10px 50px #0000001a;
    background: var(--light);
}

.actu-image .blazy {
    height: 262px;
    width: 100%;
    object-fit: cover;
    background-position: center;
    background-size: cover;
}

span.actu-pubdate {
    position: absolute;
    width: fit-content;
    padding: 10px;
    background: var(--color3);
    left: 20px;
    z-index: 9;
    top: -30px;
}

.date_post .day {
    font-size: 14px;
}

.actuAndNewsletter.actuAndNewsletter01 {
    position: relative;
    width: 45%;
    height: 100%
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
    width: 45%;
    flex-direction: column;
    box-shadow: 0 10px 50px #0000001a;
    backdrop-filter: blur(5px);
    float: right;
    padding: 4%;
    background-image: url(../images/bg.jpeg);
    position: relative;
    z-index: 1;
    background-color: #1e1e1ed4;
    background-blend-mode: soft-light;
    display: flex;
    justify-content: center;
    align-items: center;
    /* background-attachment: fixed; */
    background-size: cover;
    background-position: bottom right;
}

.actu-heading {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: left;
    padding: 20px 0 0px;
}

.actu-heading h3.h a {
    color: var(--color2);
    text-decoration: unset;
}

.actu-show-more a {
    text-transform: unset;
    min-width: 140px
}

.block #newsletter_form input[type=submit]:hover {
    background: var(--color3);
    border: none;
    color: var(--light);
}

.head-btn>a:hover,
.head-btn>p:hover {
    background: var(--color3);
    border-color: var(--color3);
    transition: .3s;
    color: var(--light);
}

.owl-theme .owl-nav [class*=owl-] {
    font-size: 50px !important
}

.owl-theme .owl-nav [class*=owl-]:hover {
    background: 0 0 !important;
    color: var(--color3) !important
}

div.blazy.b-error {
    background-image: url(../images/noImage.jpg)
}

.news .item {
    border-color: var(--color0)
}

.NosPlanDAcces02 h3.h {
    text-transform: uppercase
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font_family_1);
    font-weight: 100;
    line-height: 1.5;
    color: var(--color3);
}

.badge-optionnel {
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/badge-optionnel.png) top right no-repeat;
    width: 139px;
    height: 139px
}

.bloc-GMB {
    padding: 5em 10%;
    position: relative;
    width: 100%;
    height: 35vh;
    background-image: url(../images/background-1.jpeg);
    display: flex;
    align-items: center;
    z-index: 1;
    background-color: #00000096;
    background-blend-mode: soft-light;
    background-attachment: fixed;
    background-size: cover;
    color: var(--color0);
    display: none;
}

.bloc-GMB .contain-GMB {
    text-align: center;
    position: relative;
    color: var(--light);
    font-family: var(--font_family_2);
    font-size: 40px;
}

.bloc-GMB .contain-GMB h3 {
    margin-bottom: 25px
}

.bloc-GMB .contain-GMB .etoiles-2 {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: url(../images/etoiles-2.png) center left no-repeat
}

.bloc-GMB .contain-GMB .zone-etoiles-note {
    position: relative;
    height: 60px;
    width: 264px;
    float: right;
    background: url(../images/etoiles-1.png) center right no-repeat
}

.note-avis {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 50px
}

.nbr-note {
    font-size: 40px;
    margin: 0 2rem;
    font-family: var(--font_family_1);
}

.bloc-GMB .contain-GMB .bouton-principal,
.intervention .bouton-principal {
    margin-top: 20px;
    text-align: center;
    background: #000000;
    color: var(--light);
    transition: .3s linear;
    width: fit-content;
    border: none;
    /* font-size: 18px; */
}

.bloc-GMB .contain-GMB .bouton-principal:hover, .intervention .bouton-principal:hover {
    background: var(--color1);
    color: var(--light);
}

.btn-partage svg.icones path {
    fill: var(--light)
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
    left: auto;
    right: 0
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
    left: auto;
    right: 12px
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
    left: auto;
    right: 13px
}

.bootstrap-timepicker .input-group-addon i {
    display: inline-block;
    width: 16px;
    height: 16px
}

.bootstrap-timepicker-widget .modal-content,
.bootstrap-timepicker-widget.dropdown-menu {
    padding: 4px
}

.bootstrap-timepicker-widget.dropdown-menu.open {
    display: inline-block;
    z-index: 99999 !important
}

.bootstrap-timepicker-widget.dropdown-menu:before {
    border-bottom: 7px solid var(--light);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    content: "";
    display: inline-block;
    position: absolute
}

.bootstrap-timepicker-widget.dropdown-menu:after {
    border-bottom: 6px solid var(--color0);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    content: "";
    display: inline-block;
    position: absolute
}

.bootstrap-timepicker-widget.timepicker-orient-left:before {
    left: 6px
}

.bootstrap-timepicker-widget.timepicker-orient-left:after {
    left: 7px
}

.bootstrap-timepicker-widget.timepicker-orient-right:before {
    right: 6px
}

.bootstrap-timepicker-widget.timepicker-orient-right:after {
    right: 7px
}

.bootstrap-timepicker-widget.timepicker-orient-top:before {
    top: -7px
}

.bootstrap-timepicker-widget.timepicker-orient-top:after {
    top: -6px
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before {
    bottom: -7px;
    border-bottom: 0;
    border-top: 7px solid var(--color3)
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
    bottom: -6px;
    border-bottom: 0;
    border-top: 6px solid var(--color0)
}

.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
    border-radius: 4px
}

.bootstrap-timepicker-widget table {
    width: 100%;
    margin: 0
}

.bootstrap-timepicker-widget table td {
    text-align: center;
    height: 30px;
    margin: 0;
    padding: 2px
}

.bootstrap-timepicker-widget table td:not(.separator) {
    min-width: 30px
}

.bootstrap-timepicker-widget table td a {
    border: 1px solid transparent;
    width: 100%;
    display: inline-block;
    margin: 0;
    padding: 8px 0;
    outline: 0;
    color: var(--color2)
}

.bootstrap-timepicker-widget table td a:hover {
    text-decoration: none;
    background-color: var(--color0);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border-color: var(--color0)
}

.bootstrap-timepicker-widget table td a i {
    margin-top: 2px;
    font-size: 18px
}

.bootstrap-timepicker-widget table td input {
    width: 25px;
    margin: 0;
    text-align: center;
    font-size: 18px
}

@media (min-width:767px) {
    
    .bootstrap-timepicker-widget.modal {
        width: 200px;
        margin-left: -100px
    }
}

@media (max-width:1440px) {
    .NosPlanDAccesBg,
    section.section.contact.row {
        padding: 2%
    }

    .NosPlanDAcces {
        height: 100vh
    }

    .atout-container {
        grid-template-columns: 1fr 1fr
    }

    .service-coor {
    }

    .foreground-video iframe {
        width: 124%;
        height: 120%
    }

    .ReservationBg {
        padding: 0 !important
    }

    .NosPlanDAcces02 .h {
        margin-bottom: 10px
    }

    .block.block-2 .form-inline .form-group input {
        width: 100% !important
    }

    .flex-head {
        justify-content: space-between;
        padding: 0 1%
    }

    .head-img.img-2 {
        width: 40%;
        right: -50%
    }

    .header01bg {
        padding: 0 2%
    }

    .slide-parallax {
        right: 3%;
        width: 40%
    }
}

@media (max-width:1023px) {
    .livre-ligne{grid-template-columns: 1fr 1fr;}
    .NosCartes01,
    .NosCartesBg {
        background-position: 50% 0
    }

    .NosCartes02 .h,
    .NosCartes02 .h small {
        color: var(--light);
        text-transform: uppercase
    }

    .NosCartesLink,
    .carte.section .group-mobile .group .price:after {
        background-color: var(--color3)
    }

    .NosCartesBg {
        background-image: url(../images/NosCartesBg.jpg);
        background-repeat: repeat
    }

    .NosCartes {
        width: 100%;
        height: 328px;
        margin-bottom: 15px;
        text-align: center
    }

    .NosCartes01 {
        background-image: url(../images/visNotreCarte.jpeg);
        background-repeat: no-repeat;
        background-size: contain
    }

    .NosCartes01 img {
        opacity: 0
    }

    .NosCartes02 {
        padding: 35px 20px 0;
        border: 1px solid var(--color1)
    }

    .NosCartes02 .h {
        font-size: 24px;
        margin-bottom: 30px
    }

    .NosCartes02 .h small {
        font-size: 15px;
        font-style: italic
    }

    .NosCartesBg .background-white {
        padding: 15px 0
    }

    .NosCartesLink {
        width: 100%;
        display: inline-block;
        text-align: center;
        padding: 15px 10px;
        font-size: 20px;
        border: 1px solid var(--color3);
        color: var(--color0);
        line-height: 1.1
    }

    .NosCartesLink:focus,
    .NosCartesLink:hover {
        background-color: var(--color0);
        border: 1px solid var(--color3);
        color: var(--color3);
        text-decoration: none
    }

    .NosCartes02 ul,
    .datepicker-container {
        padding: 0
    }

    .NosCartes02 ul li {
        list-style: none;
        font-size: 16px;
        text-transform: uppercase;
        color: var(--color3);
        margin-bottom: 22px;
        line-height: 1.2
    }

    .NosCartes02 ul li small {
        font-size: 80%;
        text-transform: none;
        display: inline-block;
        line-height: normal
    }

    .NosCartes02 ul li span {
        display: inline-block;
        margin-bottom: 5px
    }

    .carte.section .group-mobile .group {
        width: 100%;
        margin-bottom: 0
    }

    .carte.section .group-mobile .group .titreetdescription {
        padding: 10px;
        background-color: var(--color6);
        color: var(--color0) !important
    }

    .carte.section .group-mobile .group .titreetdescription * {
        color: var(--color2) !important
    }

    .carte.section .group-mobile .group .group-title,
    .carte.section .group-mobile .group .item .item-description,
    .carte.section .group-mobile .group .item small {
        text-align: center
    }

    .carte.section .group-mobile .group .blazy {
        width: 100%;
        overflow: hidden;
        min-height: 450px
    }

    .carte.section .group-mobile .group .blazy a {
        position: relative;
        max-height: 130px
    }

    .carte.section .group-mobile .group .prices {
        display: block;
        width: 100%;
        text-align: center
    }

    .carte.section .group-mobile .group .prices li {
        display: inline-block;
        margin-bottom: 0
    }

    .carte.section .group-mobile ul {
        padding: 0;
        margin: 12px 0 20px;
        float: left;
        width: 100%;
        gap: 10px;
    }

    .atouts h2,
    .carte.section .group-mobile .group-title,
    .footer2_bg {
        width: 100%
    }

    .carte.section .group-mobile .group .item {
        margin-bottom: 0;
        text-align: center;
        padding: 0;
        border-radius: 5px;
        overflow: hidden
    }

    .carte.section .group-mobile .group+hr {
        width: 70%;
        background-color: var(--color2);
        margin: 0 auto 20px;
        display: none;
    }

    .carte.section .group-mobile .group .item .price {
        width: auto;
        padding: 5px 5px;
        font-size: 22px;
        color: var(--color3);
    }

    .contact.form {
        width: 100%;
        padding: 0 10%;
    }

    section.section.contact.row {
        margin: 2% 0
    }

    .atout-container {
        grid-template-columns: 1fr 1fr
    }

    .body-page-1 .container-fluid.main_bg:before {
        display: none
    }

    .salon-block {
        background-position: bottom
    }

    #main {
        padding: 40px 2%
    }

    .header {
        height: 400px
    }

    .flex-head-img {
        display: flex;
        justify-content: center;
        height: 100% !important;
        width: 100%
    }

    .NosPlanDAcces02 .h {
        margin-bottom: 10px
    }

    .NosPlanDAcces {
        height: 600px;
    }

    .body-page .bannier {
        height: 100%
    }

    .slide-parallax {
        position: static;
        width: 100%;
        height: 60%;
        border: 0
    }

    .slogan {
        position: absolute;
        width: 100%;
        height: fit-content;
        background: 0 0;
        padding: 15px 10%;
        top: 25%;
    }

    .slogan h1 {
        text-align: center;
        margin: 0 auto !important
    }

    .sous-titre {
        padding: 10px 0;
        font-size: 30px
    }

    .head-btn>a,
    .head-btn>p {
        padding: 12px 24px;
        margin: 8px 5px;
        font-size: 16px;
    }

    .body-page-1 .section,
    .body-pageseo .section {
        padding: 60px 0
    }

    .flex-head {
        flex-direction: column-reverse;
        padding: 0 5%;
    }

    .flex-head-txt {
        width: 100%;
        margin-bottom: 20px
    }

    .actuAndNewsletter-container {
        flex-direction: column;
        border: none
    }

    .actuAndNewsletter.actuAndNewsletter01,
    .actuAndNewsletter.actuAndNewsletter02.NewsletterBg,
    .block.block-2 .form-inline .form-group input {
        width: 100% !important
    }

    .testimony {
        padding: 15% 0 10%
    }

    .ReservationBg {
        padding: 40px 5px
    }
}

@media (max-width:1300px) {
    .tel-tracker {
        display: none
    }

    .nav-logo {
        width: 15%;
        padding-left: 8px
    }

    .nav-liste {
        width: 85%;
        justify-content: flex-end
    }
}

@media (max-width:767px) {
    .btn-head{margin: 10px 0;}
    .form h2{font-size: 16px !important;}
    .livre-ligne{grid-template-columns: 1fr;}
    .news .item .h a{font-size: 16px;}
    .signature{text-align: center;}
    .actuAndNewsletter.actuAndNewsletter02.NewsletterBg{padding-top: 15%;}
    .container-fluid.ReservationBg.accueil div.row{padding: 10% 0;}
    .body-page-1 .banner, .body-page-1 .bannier,.body-page-1 .header{height: 330px;}

.salon-content span.subtitle {
    font-size: 20px !important;
}

.body-page-1 .bannier .slogan h1 {
    font-size: 1.5em !important;
}
    .salon-content span.subtitle{font-size: 30px;}
    .carte.section .group-mobile .group .titreetdescription span{font-size: 20px;}
    .carte .group{text-align: center;padding-bottom: 20px;}
    .body-service-list .main_bg{padding-bottom: 0px;}
    .testimony h2{margin-bottom: 15px;}
    .testimony .one-service.item{height: auto;border: none;}
    .atouts{grid-gap: 0;padding: 0;}
    .formulaire.contact-footer.text-center{padding-top: 24%;}
    .body-page-1 .main_bg{padding-top: 5%;}
    .actuAndNewsletterBg{padding: 0%;}
    .block-group{padding: 0%;}
    .one-service.item{height: 400px;}
    .atout-container{grid-gap: 10px;}
    .service-coor{}
    .atouts > p{padding: 0;font-size: 16px;}
    .atout-container .item svg{width: 60px;}
    span.titre-secondaire{font-size: 16px;}
    .sous-titre,
    span.titre-secondaire {
        line-height: 1
    }

    .actuAndNewsletterBg::after,
    .actuAndNewsletterBg::before{
        display: none
    }

    .datepicker-container,
    .reserv-container {
        justify-content: flex-end;
        height: 530px
    }

    actuAndNewsletterBg {
        padding: 4%
    }

    .reserv-container {
        /* background: var(--color0) */
        padding: 25% 0 15%!important;
        height: auto;
    }

    .flex-seoContain {
        flex-wrap: wrap
    }

    .flex-seoContain .seo-content {
        width: 100%;
        background: 0 0
    }

    .bootstrap-timepicker,
    .bootstrap-timepicker .dropdown-menu,
    .flex-seoContain .seo-form,
    .mainSectionSlider img,
    .mainSectionSliderBg img {
        width: 100%
    }

    .img-seo img {
        width: 100%;
        height: auto
    }

    a.imagecont.noflicker.img1 {
        float: inherit;
        margin: 0 0 10px !important
    }

    .note-avis {
        flex-direction: column
    }

    .contact .form-group .btn-primary,
    .contact .formulaire .form-group input.btn-primary {
        width: auto;
        margin-top: 8px;
        float: right;
        position: relative;
        top: 0;
    }

    #contact-form,
    .body-page-1 .section,
    .body-pageseo .contact,
    .body-pageseo .section,
    .form,
    .noPaddingCells .table-row>[class*=col],
    .noPaddingCells [class*=col],
    .noPaddingCells>.row>.table-row>[class*=col],
    .tableGrid.nopadding .table-row>[class*=col],
    .tableGrid.nopadding [class*=col],
    .tableGrid.nopadding>.row>.table-row>[class*=col],
    .tableGrid.nopadding>.row>[class*=col],
    ul.tab-content {
        padding: 0
    }

    #gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding,
    .nav-pills li,
    .nav-pills li+li {
        margin: 0
    }

    .visible-xs {
        display: block !important
    }

    .hidden-xs {
        display: none !important
    }

    .NosPlanDAccesBg {
        height: auto;
        padding: 14px 2%
    }

    .sous-titre {
        font-size: 20px;
        line-height: 1.2;
    }

    .slogan {
        padding: 0 8%;
        top: 24%;
        gap: 0px;
    }

    .slogan .callTracker.active .t_phone {
        /* color: var(--color2) */
    }
    .slogan .callTracker.active:hover .t_phone{color: var(--light);}

    .head-btn>a,
    .head-btn>p {
        padding: 6px 12px;
        font-size: 14px;
    }

    .salon-block,
    .sp {
        height: auto
    }

    .header {
        height: auto
    }

    .atout-container .item {
        grid-gap: 15px;
        padding: 15px;
        justify-content: center
    }

    .NosPlanDAcces02 p,
    .address strong,
    .atout-container .item strong,
    .h3,
    h3 {
        font-size: 16px
    }


    .bloc-GMB .contain-GMB .bouton-principal {
        padding: 15px 5px
    }

    .btn-partage {
        text-align: center !important;
        padding-bottom: 20%;
    }

    #main {
        padding: 60px 4px;
    }

    .services-home {
       padding-top: 20%;
       padding-bottom: 15%;
    }

    .head-btn {
        flex-direction: row
    }

    .flex-head-img {
        width: 100%;
        height: 100% !important
    }

    .head-img.img-1,
    .head-img.img-2,.head-img.img-3 {
        width: 100%;
        right: 0;
        height: 100%;
        top: 0;
        border: 0;
        margin: 0 2px
    }

    .actuAndNewsletter-container {
        padding: 30px 5px
    }

    .modal-content label {
        padding-top: 10px
    }

    body {
        position: inherit
    }

    .row.ligne-photos.retrait.centerservice,
    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 !important
    }

    .menu_referencement h2 {
        text-align: center;
        font-size: 20px
    }

    .datePickerZone {
        padding: 20px 0
    }

    .datepicker table tr td:before {
        top: 50%;
        left: 50%;
        margin-left: -25px;
        margin-top: -25px;
        width: 50px;
        height: 50px
    }

    .btn {
        padding: 10px
    }

    .btn-primary {
        font-size: 15px
    }

    .body-news-list .view .item:before {
        width: 140vw;
        margin-left: -80%
    }

    .nav-pills>li>a {
        padding: 6px 40px;
        font-size: 11px;
        margin-bottom: 4px !important
    }

    .banner img {
        width: 100%;
        margin-left: 0
    }

    .NewsletterBg {
        padding: 50px 20px 36px
    }

    .beforeFooter .storeLinks {
        padding: 15px 0
    }

    .img_thumbnail_multiple,
    .img_thumbnail_multiple a {
        height: 200px
    }

    .vis01 {
        width: 100%;
        margin: 0 auto;
        display: block
    }

    .LeRestaurantCarousselBg {
        background-image: none;
        background-color: var(--color2)
    }

    .beforeFooter {
        background-repeat: repeat
    }

    .body-gallery .main_bg .blockCenter {
        width: 100vw;
        padding: 0;
        margin-left: 0;
        left: -19px;
        right: 0;
        display: block;
        float: unset;
        position: relative
    }

    .body-gallery .main_bg {
        overflow-x: hidden;
        padding: 0
    }

    .news .item .h {
        margin: 0 0 20px
    }

    .slide a img {
        opacity: 0
    }

    .LeRestaurantCarousselBg .bx-controls-direction {
        right: 50%;
        margin-right: -17px
    }

    .beforeFooterImg02 {
        float: right;
        width: 100%
    }

    .qrCode {
        top: 0;
        width: auto;
        margin: 0 auto;
        display: block;
        float: none !important
    }

    .modal-content .btn-default {
        padding: 10px 40px;
        width: 100%
    }

    .h5,
    .modal-content .form-control,
    .modal-content label,
    h5 {
        font-size: 12px
    }

    .modal-content label.visible {
        white-space: nowrap
    }

    .modal-content {
        padding: 30px
    }

    .modal-content .h {
        font-size: 18px !important
    }

    .modal-header .btn {
        top: -9px
    }

    .modal-footer {
        margin-top: 0;
        padding: 0
    }

    .map02 iframe {
        width: 100% !important;
        height: 280px !important
    }

    #modal-evenement .modal-content select.form-control {
        background-size: 13px
    }

    .modal-content .form-control,
    .modal-content input[name=captcha]+a {
        height: 35px !important
    }

    .help-block {
        font-size: 1rem
    }

    .section.carte .reserver img {
        width: auto;
        max-width: 100%
    }

    .carte .item small,
    .carte .item-title,
    .carte .label,
    .carte .labels .label,
    .carte .price,
    .carte .yesLabels .price,
    .h4,
    .news .date_post .s1,
    h4 {
        font-size: 14px;
    }

    .carte .price {
        width: 68px
    }

    .news .item {
        padding: 30px 0;
        margin: 0;
        text-align: center
    }

    .date-article,
    .news .item .date_post,
    .view .item .date_post {
        display: block;
        margin-bottom: 12px !important;
        top: 23px;
        width: 30%;
        left: 3px
    }
     .news .item .date_post{
        top: -18px;
        width: 20%;
        left: 15px;
     }

    .address p,
    .datePickerZone {
        margin-bottom: 40px
    }

    .news .btn-fixed,
    .view .btn-fixed {
        padding: 7px 40px;
        float: none
    }

    .view .item a img {
        margin-bottom: 10px
    }

    a.btn.btn-primary.maplink {
        width: 100%;
        margin-bottom: 30px
    }

    .theReservationText {
        width: 100%;
        height: auto;
        padding: 70px 20px
    }

    .theReservationText:before {
        top: 0;
        right: 0;
        left: -40px;
        width: 200%;
        height: 100%
    }

    .modal-dialog {
        width: auto
    }

    .LeRestaurantCarousselBg .h {
        font-size: 20px
    }

    .LeRestaurantCarousselBg .bx-viewport,
    .nosRealisations .bx-viewport {
        margin-bottom: 60px
    }

    .nosRealisations .bx-controls.bx-has-controls-direction {
        bottom: -15px
    }

    .NosPlanDAcces01 iframe {
        width: 100%;
        height: 100%;
        left: 0;
        margin-left: 0
    }

    .NosPlanDAcces01:after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0
    }

    .spContainer {
        height: 340px
    }

    .modal-content .obligatoire {
        font-size: 9px;
        font-style: italic;
        color: var(--color3)
    }

    .nosRealisations .bx-controls-direction {
        width: 34px;
        float: right;
        right: 50%;
        margin-right: -17px;
        position: relative
    }

    .NosPlanDAcces02 p:nth-of-type(2) {
        font-size: 17px
    }

    .address p {
        font-size: 15px
    }

    .beforeFooter ul {
        width: 230px;
        margin: 0 auto
    }

    .tableGrid,
    .tableGrid>.row {
        display: block;
        margin: 0;
        padding: 0;
        position: relative;
        height: 100%
    }

    .tableGrid .table-row {
        height: 100%
    }

    .tableGrid .table-row>[class*=col],
    .tableGrid [class*=col],
    .tableGrid>.row>.table-row>[class*=col],
    .tableGrid>.row>[class*=col] {
        display: block;
        vertical-align: top;
        float: left;
        height: 100%;
        position: relative
    }

    .tableGrid.va-middle .table-row>[class*=col],
    .tableGrid.va-middle [class*=col],
    .tableGrid.va-middle>.row>.table-row>[class*=col],
    .tableGrid.va-middle>.row>[class*=col] {
        vertical-align: middle
    }

    .services .mainSectionSlider {
        position: relative !important;
        height: 100% !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
        padding: 0;
        list-style: none;
        min-height: 400px
    }

    .nosServicesBg .mainSectionSlider,
    .services .bx-viewport {
        position: relative !important;
        height: 200px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important
    }

    .nosServicesBg .mainSectionSlider .blazy,
    .nosServicesBg .mainSectionSlider .show,
    .services .mainSectionSlider .blazy,
    .services .mainSectionSlider .show {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent
    }

    .nosServicesBg .bx-wrapper,
    .services .bx-wrapper {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0
    }

    .nosServicesBg .bx-viewport {
        position: relative !important;
        height: auto !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important
    }

    .nosServicesBg .bx-viewport li,
    .services .bx-viewport li {
        height: 100%;
        list-style: none
    }

    .mainSectionSliderBg .bx-pager,
    .services .bx-pager {
        z-index: 9999
    }

    .nosServicesBg .bx-controls-auto,
    .nosServicesBg .bx-pager {
        bottom: 25px
    }

    .linkList li a {
        min-width: 100%
    }

    .headerTel {
        font-size: 30px
    }

    .h,
    .h1,
    .hicon,
    h1 {
        font-size: 21px !important;
        line-height: 1.5;
        margin-bottom: 10px !important;
    }

    .h6,
    h6 {
        font-size: 10px
    }
}

@media (max-width:480px) {

    .datePickerZone .datepicker table tr td:before,
    .datepicker table tr td:before {
        top: 50%;
        left: 50%;
        margin-left: -15px;
        margin-top: -15px;
        width: 30px;
        height: 30px
    }

    .modal-content label {
        padding-top: 10px
    }

    .datePickerZone {
        padding: 20px 0
    }

    a.btn.btn-primary.maplink {
        width: 100%;
        margin-bottom: 30px
    }

    .btn {
        padding: 16px 22px
    }

    .nosRealisations a.seeMore {
        padding: 8px 60px
    }
    .h3,
    h3 {
        font-size: 25px
    }

    .NosPlanDAcces02 {
        padding: 50px 20px 20px;
        height: auto
    }

    .body-news-list .view .item:before {
        width: 140vw;
        margin-left: -80%
    }

    .carte .item small,
    .carte .item-title,
    .carte .labels .label,
    .carte .yesLabels .price,
    .datepicker table tr th,
    .h5,
    h5 {
        font-size: 12px
    }

    .datepicker table tr td,
    .datepicker table tr th {
        padding: 8px 0;
        font-size: 14px
    }

    .form-control,
    .form-group .btn-primary,
    input[name=captcha],
    input[name=captcha]+a {
        height: 36px !important
    }

    #index .ReservationText p {
        padding: 0 20px;
        line-height: normal;
        font-size: 14px
    }

    .theReservationText {
        width: 100%;
        height: auto;
        padding-top: 50px;
        padding-bottom: 30px
    }

    .theReservationText:before {
        top: 0;
        right: 0;
        left: -40px;
        width: 200%;
        height: 100%
    }

    .carte .group-title {
        font-size: 25px
    }

    .beforeFooter ul li {
        font-size: 16px;
        line-height: 2
    }

    .bx-controls-auto,
    .bx-pager {
        bottom: 0
    }

    .LeRestaurantCarousselBg .h {
        font-size: 20px
    }

    .LeRestaurantCarousselBg .bx-viewport {
        margin-bottom: 60px
    }

    .nosRealisations .bx-controls.bx-has-controls-direction {
        bottom: -15px
    }

    .modal-content .h {
        font-size: 16px !important
    }

    .headerTel {
        font-size: 30px
    }

    .h,
    .h1,
    .hicon,
    h1 {
        font-size: 18px !important;
    }

    .h2,
    h2 {
        font-size: 17px
    }

    .h6,
    h6 {
        font-size: 10px
    }
}

.salon-content span.subtitle {
    text-transform: initial;
    font-family: var(--font_family_2);
    font-size: 1.5vw;
    color: var(--color0);
}

@media(max-width: 400px){
    .salon-block .salon-content h2 span:first-child{font-size: 25px;}
    footer .btn-partage a span:before{left: 84px;}
    .salon-content span.subtitle{font-size: 40px;}
    .slogan{top: 30%;}
    footer .btn-partage a span{left: -84px;}
    footer .btn-partage a span:before{left: 0;}
    .atout-container{grid-template-columns: 1fr;}
}