body {



    /* padding-top: 82px; */



    overflow-x: hidden;



}



:root {



    --color-grey: #3d3c3b;



    --base-color: #66b8be;



}







@import url('https://fonts.googleapis.com/css2?family=GFS+Didot&display=swap');







/* h1,



h2,



.h1,



.h2 {



    font-family: "Media gothic", sans-serif;



    font-weight: 500;



} */







.bg-grey {



    background-color: var(--color-grey) !important;



}



.bg-base-color {



    background-color: var(--base-color) !important;



}



.color-grey {



    color: var(--color-grey) !important;



}







.serif-font{



    /* font-family: "GFS Didot", serif !important; */



    text-transform: uppercase;

    font-weight: 600;

    letter-spacing: 6px;



}







.clamp-3 {



    display: -webkit-box;



    -webkit-line-clamp: 3;



    -webkit-box-orient: vertical;



    overflow: hidden;



}







.object-fit-cover {



    object-fit: cover;



}







.mt-m400{



    margin-top: 20px;



}

.mt-m150{



    margin-top: 0;



}

.mt-m80{



    margin-top: 0;



}

@media screen and (min-width: 576px) and (max-width:768px){

    .mt-m80{

        margin-top: -30px;

    }

}

@media screen and (min-width:768px){

    .mt-m80{

        margin-top: -45px;

    }

}

@media screen and (min-width: 992px) {

    .mt-m400{

        margin-top: -300px;

    }        

    .mt-m150{

        margin-top: -150px;

    }

    .mt-m80{

        margin-top: -63px;

    }

}

@media screen and (min-width: 1199px) {

    .mt-m80{

        margin-top: -79px;

    }

}





/* BUTTONS */



.btn.btn-dark-gray {



    background: var(--color-grey);



    border-color: var(--color-grey);



}







.btn.btn-deep-pink:hover,



.btn.btn-deep-pink:focus,



.btn.btn-dark-gray:hover,



.btn.btn-dark-gray:focus {



    background-color: #fff;



}







/* HEADER */



/* cfa772 */







.mr-3 {



    margin-right: 1rem !important;



}







.mobile-toggle:hover span,



.white-link .mobile-toggle:hover span {



    background-color: white !important;



}



.mobile-toggle:hover,



.white-link .mobile-toggle:hover {



    background-color: var(--base-color) !important;



}







/* HEADER */

header.sticky nav.header-dark-transparent .logo .logo-dark,

header.sticky nav.header-dark .logo .logo-dark {

    visibility: visible;

    opacity: 1;

    width: auto;

    transition-duration: 0.5s;

    -webkit-transition-duration: 0.5s;

    -moz-transition-duration: 0.5s;

    -ms-transition-duration: 0.5s;

    -o-transition-duration: 0.5s;

}



.navbar-default .navbar-toggler .icon-bar,

header.sticky .navbar-default.header-light .navbar-toggler .icon-bar,

header.sticky

    .navbar-default.header-light-transparent

    .navbar-toggler

    .icon-bar {

    background: #fff;

}



header.header-appear

    nav.bootsnav.header-light-transparent

    .navbar-nav

    > li.dropdown.on

    > a,

header.header-appear nav.bootsnav.header-light .navbar-nav > li.dropdown.on > a,

header nav.navbar .navbar-nav > li.dropdown.on > a,

nav.navbar.bootsnav ul.nav > li.dropdown.on > a {

    color: #9d9d9d;

}



.dropdown-style-1 .dropdown-menu > li > a:hover,

.dropdown-style-1 .dropdown-menu > li > a:focus {

    background: #1c1c1c;

}



header a.logo img {

    max-height: 78px;

}

@media screen and (min-width: 991px) and (max-width: 1150px) {

    header a.logo img {

        max-height: 75px !important;

    }

}

header nav .navbar-nav > li > a {

    text-transform: none;

}



header nav.navbar .navbar-nav > li > a,

nav.navbar.bootsnav ul.nav > li > a {

    color: #fff;

}



.header-with-topbar .navbar-top,

.header-with-topbar .navbar-fixed-top {

    top: 30px;

}

.header-top-padding {

    padding-top: 8px;

    padding-bottom: 8px;

}

@media (max-width: 767px) {

    .header-with-topbar.fixed-topbar nav.navbar.bootsnav.navbar-fixed-top,

    .sticky.header-with-topbar.fixed-topbar

        nav.navbar.bootsnav.navbar-fixed-top,

    .sticky.header-with-topbar.header-appear.fixed-topbar

        nav.navbar.bootsnav.navbar-top {

        top: 34px;

    }

    .header-top-padding {

        padding-top: 10px;

        padding-bottom: 10px;

    }

}

@media (max-width: 400px) {

    .header-with-topbar.fixed-topbar nav.navbar.bootsnav.navbar-fixed-top,

    .sticky.header-with-topbar.fixed-topbar

        nav.navbar.bootsnav.navbar-fixed-top,

    .sticky.header-with-topbar.header-appear.fixed-topbar

        nav.navbar.bootsnav.navbar-top {

        top: 34px;

    }

}



@media screen and (max-width: 991px) {

    nav.navbar.bootsnav.no-full .navbar-collapse {

        max-height: 70vh;

    }

    header .btn.btn-deep-pink {

        width: 100%;

        border-radius: 0;

        text-align: left;

        padding-left: 15px !important;

        text-transform: none;

    }

}

@media screen and (min-width: 992px) {

    header .btn.btn-deep-pink {

        margin-left: 21px;

    }

    header nav .navbar-nav > li > a {

        margin: 0 6px;

        font-size: 12px;

    }

}

@media screen and (min-width: 1200px) {

    header nav .navbar-nav > li > a {

        margin: 0 10px;

    }

}



@media (min-width: 991px) {



    .full-width-pull-menu .link-style-2 ul li a {



        font-size: 36px;



        line-height: 72px;



    }



}



/*legende slider images*/



.bg-linear-dark {



    background: linear-gradient(rgba(61, 61, 61, 0), rgb(61, 61, 61));



}







.legende {



    margin: -200px 50px 0 50px;



    position: relative;



}







.titre_legende {



    color: #ffffff;



    font-size: 28px;



    font-weight: bold;



}



.desc_legende {



    color: #ffffff;



    font-size: 14px;



    line-height: 1.4;



    margin-top: 12px;



}







/* FOOTER */



.footer-logo {



    max-height: none;



    width: 80%;



    max-width: 200px;



}







/* ACCUEIL */



.home__hero {



    min-height: 80vh;



    display: flex;



    align-items: center;



}







/* POP UP */



.mfp-close {



    font-size: 24px;



}







/* CIRCUITS */



.circuits-carousel .swiper-slide {



    height: auto;



}



.circuits-carousel .swiper-portfolio-prev,



.circuits-carousel .swiper-portfolio-next {



    top: 25%;



    transform: none;



}







.circuits-carousel .blog-post {



    border-bottom: 2px solid #fff;



    transition: border 0.3s ease;



    height: 100%;



    display: flex;



    flex-direction: column;



}



.circuits-carousel .blog-post-style5 .blog-post .blog-post-images {



    height: auto;



    background-color: var(--color-grey);



}



.circuits-carousel .blog-post-style5 .blog-post .blog-post-images img {



    transition: all 0.4s ease;



}



.circuits-carousel .blog-post-style5 .blog-post .blog-post-images img:hover {



    opacity: 0.5;



    transform: scale(1.05);



}



.circuits-carousel .blog-post:hover {



    border-bottom: 2px solid var(--base-color);



}



.circuits-carousel .post-details {



    flex: 1;



    display: flex;



    flex-direction: column;



    align-items: flex-start;



}







.blog-post-style5 .blog-post .blog-categories {



    z-index: 4;



}







#calendrier {



    position: sticky;



    z-index: 100;



}



#demande-resa {



    position: sticky;



    z-index: 100;



}



@media screen and (min-width: 992px) {



    #calendrier {



        --header-height: 92px;



        position: sticky;



        top: calc(var(--header-height) + 24px);



        max-height: calc(calc(100vh - var(--header-height)) - 48px);



        overflow: hidden;



    }



    #demande-resa {



        --header-height: 92px;



        position: sticky;



        top: calc(var(--header-height) + 24px);



    }



}







/* FLOTTE */



.last-paragraph-no-margin p:last-of-type {



    margin-bottom: revert;



}







/* carte cadeau */



#etape1 {



    width: 100%;



}







.section-content {



    display: flex;



    flex-direction: column-reverse;



    align-items: center;



    gap: 1rem;



}



.section-content__aside {



    position: static;



    height: 150px;



    z-index: 11;



}



@media (min-width: 991px) {



    .section-content {



        flex-direction: row;



        align-items: start;



    }



    .section-content__aside {



        position: sticky;



        /* display: block; */



        top: 120px;



        height: 100px;



    }



}



/* PAGE LIEN DE PAIEMENT */



.card {



    margin-bottom: 20px;



    border: 0px;



}



.card-body {



    display: block !important;



    background-color: #eee;



}



.card-body h5 {



    letter-spacing: 1px;



    color: var(--base-color);



    font-size: 22px;



    font-style: italic;



}



.card-body h5 a {



    color: var(--base-color);



}



.card-body h5 i {



    background-color: var(--base-color);



    color: #fff;



    border-radius: 50px;



    display: inline-block;



    height: 40px;



    width: 40px;



    line-height: 40px;



    text-align: center;



    margin-left: 10px;



}



.card-body h5::after {



    display: block;



    height: 1px;



    width: 50px;



    margin: 7px 0px;



    background-color: var(--base-color);



    content: "";



}



.btn-arrow {



    display: block;



    clear: both;



    padding: 10px;



    text-align: center;



    width: 100%;



    box-sizing: border-box;



    margin: 0px auto;



    border-radius: 5px;



}



.title {



    margin-bottom: 0px;



}



.title::after {



    display: block;



    height: 1px;



    width: 150px;



    margin: 10px auto;



    background-color: var(--base-color);



    content: "";



}



.subtitle {



    font-size: 20px;



    font-family: "Montserrat", sans-serif;



    font-weight: 600;



}



#btn-reservation-bottom {

    display: none;

}

@media screen and (max-width: 992px) {

    #btn-reservation-bottom {

        display: block;

        position: fixed;

        bottom: 0 !important;

        width: 100%;

        z-index: 9999;

    }

}

