:root {
    color-scheme: light;
    --body-link-hover-color: #6FAF64;
    --dark-gray-color: #343a40;
    --middle-gray-color: #A0A0A0;
    --light-gray-color: #D6D6D6;
    --light-gray-beaubloc: #F8F6F2;
    --blue-color: #009ee0;
    --light-blue-color: #A4CBE8;
    --middle-blue-color: #3C82C2;
    --dark-blue-color: #1A4D80;
    --dark-green-color: #2A5730;
    --middle-green-color: #6FAF64;
    --light-green-color: #B6D7A7;
    --black-color: #000;
    --white-color: #fff;
    --dark-yellow-color: #E3A72F;
    --middle-yellow-color: #F4C542;
    --light-yellow-color: #F8E6A0;
    --text-shadow: rgba(28, 12, 7, 0.61);
    --background-bloc: #F8F6F2;
    --background-table: #d5e3f1;
}

@media (prefers-color-scheme: dark) {
    :root {
        color-scheme: dark;
        --dark-gray-color: #3B3B3B;
        --middle-gray-color: #A0A0A0;
        --light-gray-color: #D6D6D6;
        --blue-color: #009ee0;
        --light-blue-color: #A4CBE8;
        --middle-blue-color: #3C82C2;
        --dark-blue-color: #1A4D80;
        --dark-green-color: #2A5730;
        --middle-green-color: #6FAF64;
        --light-green-color: #B6D7A7;
        --black-color: #000;
        --white-color: #fff;
        --dark-yellow-color: #E3A72F;
        --middle-yellow-color: #F4C542;
        --light-yellow-color: #F8E6A0;
        --text-shadow: rgba(28, 12, 7, 0.61);
        --background-bloc: #F8F6F2;
        --background-table: #d5e3f1;
    }
}

body {
    background-color: var(--white-color) !important;
    color: var(--light-gray-color) !important;
    line-height: 1.4rem !important;
}

.t4-palette-hdl_blanc h1 {
    color: var(--dark-blue-color) !important;
}

.t4-palette-hdl_blanc h2 {
    color: var(--middle-blue-color) !important;
}

.t4-palette-hdl_blanc h3,
.t4-palette-hdl_blanc h4,
.t4-palette-hdl_blanc h5,
.t4-palette-hdl_blanc h6 {
    color: var(--light-blue-color) !important;
}

.t4-palette-hdl_blanc h1 a {
    color: var(--middle-blue-color) !important;
}

blockquote {
    font-style: normal;
    font-size: 1.1rem;
    margin-left: 5%;
    border-left: 4px solid var(--white-color);
    padding-left: 2%;
}

.gris-clair {
    background-color: var(--light-gray-beaubloc);
}

.gris {
    background-color: var(--light-gray-color);
}

.troisetoiles::before {
    font-family: 'FontAwesome';
    content: '\f005\f005\f005';
    padding-left: 5px;
    position: relative;
    font-size: .9rem;
    top: -0.5rem;
    left: -0.2rem;
}

.invisible {
    display: none;
}



/* AJOUT DES ETOILES DERRIERE LE SLOGAN */
.site-slogan::after {
    font-family: 'FontAwesome';
    content: '\f005\f005\f005';
    padding-left: 5px;
    position: relative;
    font-size: inherit;
}

/* GLOBAL*/
@media (max-width: 1024px) {
    p {
        text-align: justify;
        text-justify: inter-word;
    }

    .corps {
        margin-right: 2%;
        margin-left: 2%;
    }
}

@media (min-width: 999px) {
    .corps {
        margin-right: 5%;
        margin-left: 5%;
    }
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h3,
h5,
.h5,
h6,
.h6 {
    letter-spacing: -1.5px;
}

h5,
.h5,
h6,
.h6 {
    line-height: 1.6rem !important;
}

.h1 {
  color: var(--dark-blue-color) !important;
}

.h2 {
  color: var(--middle-blue-color) !important;
}

/* SUITE A LA MISE A JOUR DE PAGE BUILDER */
/* QUI AFFICHE DES CADRES AUTOUR DES MODULES */
.moduletable {
    border: none;
    padding: 0;
    border-radius: 0;
    margin: 0;
}

/* COULEUR DU HAMBURGER */
.t4-offcanvas-toggle i {
    color: var(--white-color);
}

/* ON CACHE LE MENU CLASSIQUE POUR LE MENU HAMBURGER */
.nav-breakpoint-xl.navigation-hide .t4-navbar .navbar {
    display: none;
}

.nav-breakpoint-xl #t4-header .logo {
    position: inherit !important;
    display: block;
    width: auto;
    margin-top: 10px;
}

/* POSITION DU HAMBURGER */
#triggerButton {
    background-color: transparent !important;
    border-color: transparent !important;
    position: absolute;
    z-index: 101;
    margin-top: 5px;
}

/* POSITION DE LA BAR DE TITRE ET SLOGAN */
.navbar-brand {
    margin-left: 0.8rem;
}

/* TAILLE DES ELEMENTS DE LA NAV BAR*/
.navbar-brand.logo-text .site-slogan {
    margin-top: 3px !important;
}

@media (min-width: 551px) {
    .t4-offcanvas-toggle i {
        font-size: 3rem;
    }

    #triggerButton {
        left: 50%;
    }
}

@media (min-width: 400px) and (max-width: 550px) {
    .t4-offcanvas-toggle i {
        font-size: 2.5rem;
    }

    /* .navbar-brand.logo-text .site-name {
        font-size: 1.2rem !important;
    }

    .navbar-brand.logo-text .site-slogan {
        font-size: 1rem !important;
    } */

    .nav-breakpoint-xl #t4-header .logo {
        margin-top: 5px;
    }
}

@media (min-width: 338px) and (max-width: 399px) {
    .t4-offcanvas-toggle i {
        font-size: 2rem;
    }

    /* .navbar-brand.logo-text .site-name {
        font-size: 1rem !important;
    }

    .navbar-brand.logo-text .site-slogan {
        font-size: 0.8rem !important;
    } */

    .nav-breakpoint-xl #t4-header .logo {
        margin-top: 2px;
    }
}

/* ON CACHE LE DIV LOGO CAR PAS DE PLACE */
@media (max-width: 337px) {
    .t4-offcanvas-toggle i {
        font-size: 2.5rem;
    }

    .logo {
        visibility: collapse;
    }

    .top-b {
        font-size: .8rem;
    }
}


/* SOUS MENU HAMBURGER */
.navbar .dropdown-menu {
    background-color: var(--background-bloc);
}



/* RECHERCHE THELIS */
.thr-search-engine .form-group .form-control,
.thr-search-engine .form-group .thr-range-picker,
.thr-search-engine .form-group .thr .thr-select,
.thr .thr-search-engine .form-group .thr-select,
.thr-search-engine .form-group .thr-select-placeholder {
    padding: 35px 18px 0 18px !important;
}

.thr .thr-search-engine .form-group .thr-select .thr-select-options {
    top: 60px !important;
}

.thr-simpleblock .thr-simpleblock-simple .thr-simpleblock-results .thr-simpleblock-row .thr-simpleblock-category .thr-simpleblock-category-name {
    text-shadow: 0px 0px 0px !important;
    background: rgba(255, 255, 255, 0.90) !important;
    font-size: 1rem !important;
}

/* SEPARATEUR DE MENU BAS */
.t4-footer .uppercase,
.t4-footer .separator {
    color: var(--black-color);
    text-transform: uppercase;
    padding-left: 0 !important;
}

.t4-footer .uppercase:hover {
    color: var(--black-color);
}

/* BOUTON MON COMPTE THELIS */
.moncompte {
    z-index: 999;
}

@media (max-width: 900px) {
    body[data-top-t4-topbar="under"] {
        .moncompte {
            top: 50px;
        }
    }

    .moncompte {
        top: 10px;
        position: fixed;
        right: 10px;
    }

    #account-name {
        display: none;
    }
}

.my-button {
    font-size: .9rem;
    display: inline-block;
    margin-top: 10px;
    padding: 5px 10px;
    color: var(--blue-color);
    font-weight: bold;
    border: 1px solid var(--blue-color);
    border-radius: 2px;
    background: transparent;
    cursor: pointer;
    user-select: none;
    transition: background .3s, color .3s;
}

.my-button:hover {
    color: var(--white-color);
    background: var(--blue-color);
}

.my-button:focus,
.my-button:active {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}

.my-button .fa-user {
    padding-right: 5px;
}

/* PAGE D'ACCUEIL */
/* AJOUT DE LIGNES DEVANT ET DERRIERE LE TITRE ACCUEIL RECHERCHE THELISS */
.title {
    color: var(--middle-blue-color) !important;
    letter-spacing: -1.5px;
    text-transform: uppercase;
    line-height: 3em;
    font-weight: 700;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.title--center-line {
    text-align: center;
}

.title--center-line::before {
    content: "";
    background-color: var(--blue-color);
    height: 2px;
    width: 100%;
    margin-right: 1rem;
}

.title--center-line::after {
    content: "";
    background-color: var(--blue-color);
    height: 2px;
    width: 100%;
    margin-left: 1rem;
}


/* MODULE RASSURANT */
.rassurant {
    margin-top: 10px;
    padding-top: 5px;
    color: var(--middle-gray-color);
    background-color: var(--background-bloc);
    font-size: .8rem;
}

.rassurant img {
    height: 2rem !important;
    width: auto !important;
}

.rassurant p {
    line-height: 2rem;
    text-align: center !important;
}

.rassurant .titleck {
    font-size: 1rem !important;
}

.rassurant .pbckicon {
    font-size: 2rem;
}

/* PICTOGRAMES DESCRIPTION CHALETS */
.list_picto {
    text-align: center;
    padding-left: 0;
    margin-bottom: 0;
}

.list_picto li::before {
    content: "" !important;
}

.list_picto-li {
    display: inline-block;
    vertical-align: top;
    margin: 0 5px 15px 5px;
}

.list_picto .inner_li {
    display: block;
}

.list_picto svg {
    fill: var(--);
    display: block !important;
    float: unset;
    max-width: 42px;
    max-height: 42px;
    margin: 0 auto;
    border: 2px solid var(--dark-gray-color);
    border-radius: 100%;
    overflow: hidden;
}

.list_picto .tx-1 {
    color: var(--dark-gray-color);
    font-weight: 500;
    font-size: .75rem;
    display: block;
}

/* POPUP COOKIE : TEST EN COURS */
#redim-cookiehint-bottom {
    -moz-border-radius: 0px 20px 0px 20px;
    -o-border-radius: 0px 20px 0px 20px;
    -webkit-border-radius: 0px 20px 0px 20px;
    border-radius: 0px 20px 0px 20px;
    border: 3px solid var(--middle-blue-color);
    left: 20px !important;
    right: 20px !important;
}

/* BOUTTON COOKIE */
#cookiehintsubmit,
#cookiehintsubmitno {
    background-color: var(--blue-color) !important;
    border-color: var(--middle-blue-color) !important;
    border-radius: 50px !important;
}

#cookiehintsubmit:hover,
#cookiehintsubmitno:hover {
    background-color: transparent !important;
    color: var(--light-gray-color) !important;
    border-color: var(--middle-blue-color) !important;
    border: 1px solid !important;
}

#cookiehintsubmit:before,
#cookiehintsubmitno:before {
    font-family: 'FontAwesome';
    content: '\f105';
    padding-right: 10px;
    position: relative;
    font-size: 1em;
}

/* GALLERIE */
.speasyimagegallery-gallery img {
    border-radius: 5px;
}

.speasyimagegallery-album-description h1 {
    font-weight: 700;
}

.speasyimagegallery-album-description h1:after {
    content: ".";
    font-size: 3.2rem;
    font-weight: bold;
    color: var(--light-blue-color);
    letter-spacing: -1.5px;
    line-height: 1em;
}

.speasyimagegallery-album-description p {
    font-size: 1rem !important;
    line-height: 1.6rem;
}

/* BLOC POUR LES ARTICLES PAGE BUILDER */
.beaubloc {
    padding: 10px;
}

.beaubloc h1,
.page-header h1,
.beaubloc .h1,
.page-header .h1 {
    line-height: 1em;
    font-weight: 700;
}

.beaubloc h1:after,
.page-header h1:after {
    content: ".";
    font-size: 3.2rem;
    font-weight: 700;
    color: var(--light-blue-color);
    line-height: 1em;
}

.beaubloc h2, .beaubloc .h2 {
    line-height: 1em;
    /* font-size: 2.5rem; */
    font-weight: 700;
}

.beaubloc h2:after {
    content: ".";
    font-size: 3.2rem;
    font-weight: bold;
    color: var(--light-blue-color);
    letter-spacing: -1.5px;
    line-height: 1em;
}

.beaubloc ul {
    list-style: none;
}

.beaubloc li::before {
    content: '\25cf';
    color: var(--middle-blue-color);
    font-size: 1.5rem;
    margin-right: .5rem;
}

.beaubloc img {
    border-radius: 5%;
}

.beaubloc .texte {
    padding: 20px;
}

/* WIDGET TOURISME */
.dsio-header .title {
    letter-spacing: normal !important;
}

/* CF : CONVERT FORMS */
.cf .titre .cf-control-input {
    color: var(--middle-blue-color);
    font-size: 1.2rem !important;
    font-weight: 700 !important;
}

.cf-control-input-desc {
    font-size: .8rem !important;
    color: var(--light-gray-color) !important;
}

.cf-control-input h1 {
    font-size: 2rem !important;
    letter-spacing: -1.5px !important;
}

/* BOUTONS */
.btn,
.cf-btn {
    background-color: var(--blue-color) !important;
    border-color: var(--middle-blue-color) !important;
    border-radius: 50px !important;
}

.btn:hover,
.cf-btn:hover {
    background-color: transparent !important;
    color: var(--light-gray-color) !important;
    border-color: var(--middle-blue-color) !important;
    border: 1px solid !important;
}

.cf-btn::before {
    font-family: 'FontAwesome';
    content: '\f14d';
    padding-right: 10px;
    position: relative;
    font-size: 1em;
}

.btn-hdl-sup:before {
    font-family: 'FontAwesome';
    content: '\f105';
    padding-right: 5px;
    position: relative;
    font-size: 1em;
}

.btn-hdl-user:before {
    font-family: 'FontAwesome';
    content: '\f007';
    padding-right: 10px;
    position: relative;
    font-size: 1em;
}

.btn-hdl-book:before {
    font-family: 'FontAwesome';
    content: '\f0f2';
    padding-right: 10px;
    position: relative;
    font-size: 1em;
}

.btn-hdl-livre:before {
    font-family: 'FontAwesome';
    content: '\f02d';
    padding-right: 10px;
    position: relative;
    font-size: 1em;
}


/* NEWLETTER */
.newsletter {
    margin-top: -20px;
}

.newsletter h4,
.newsletter .h4 {
    font-size: .875rem !important;
    text-transform: uppercase;
    line-height: 1.4em !important;
    letter-spacing: normal !important;
}

/* DRAPEAU */
div.mod-languages img {
    width: 1.5rem;
}

/* FA ICONE */
.fas,
.fab {
    color: var(--middle-green-color);
}

/* FOOTER */
.t4-footer .fa-lg {
    font-size: 2em !important;
}

.t4-footer h4,
.h4 {
    font-size: .875rem !important;
}

.t4-footer .nav>li::before {
    content: none;
}

.t4-footer .nav .nav-header {
    color: var(--black-color);
    text-transform: uppercase;
}


.t4-footer .navbar-nav>li>a.nav-header:hover,
.t4-footer .navbar-nav>li>a.nav-header:focus {
    color: var(--black-color);
    border-bottom-color: transparent;
}

.t4-footer .navbar-nav>li>.nav-link:hover {
    color: var(--body-link-hover-color);
    border-bottom-color: transparent;
}

.t4-footer .nav>li>a {
    color: var(--dark-gray-color);
    text-transform: none;
}

.t4-footer .navbar-nav>li.active>a,
.t4-footer .navbar-nav>li.active>.nav-link {
    color: var(--body-link-hover-color);
    border-bottom-color: transparent;
}



/* COUPS DE COEUR TEXTE */
.cdc {
    color: var(--dark-blue-color);
}

.cdc::before {
    font-family: "Font Awesome 5 Free";
    content: "\f004";
    font-size: 2.4em;
}

/* TOP BAR */
/* ACCUEIL */
.topbar_accueil {
    color: var(--white-color);
    font-size: .8rem;
    z-index: 100;
    background-color: transparent;
}

/* AUTRES PAGES */
.topbar {
    font-size: .8rem;
    /*background-color: var(--middle-blue-color);*/
}

@media only screen and (max-width: 350px) {

    .topbar_accueil,
    .topbar {
        font-size: .7rem;
    }
}

/* ENTETE MEGA MENU */
.t4-offcanvas .t4-off-canvas-body {
    height: calc(100% - 220px) !important;
}

.t4-offcanvas,
.t4-off-canvas-header {
    background-color: var(--light-gray-beaubloc) !important;
}

@media only screen and (min-width: 1140px) {
    .t4-off-canvas-header {
        font-size: 1rem !important;
    }
}


/* HEADER */
.not-at-top .header_accueil .t4-offcanvas-toggle i,
.navbar-toggler i {
    color: var(--light-gray-color);
}

.header .t4-offcanvas-toggle i,
.navbar-toggler i {
    color: var(--light-gray-color);
}


.header,
.header_accueil {
    height: 80px;
}

.header_accueil .site-slogan {
    color: var(--middle-yellow-color);
    font-weight: 600;
}

.not-at-top .header_accueil .site-slogan,
.header .site-slogan {
    color: var(--blue-color);
    font-weight: 600;
}

.header .logo .logo-text a .site-name {
    color: var(--middle-gray-color) !important
}

.header_accueil .logo .logo-text a .site-name {
    color: var(--white-color) !important
}

.not-at-top .header_accueil .logo .logo-text a .site-name {
    color: var(--middle-gray-color) !important
}

/* MENU */
.header .t4-megamenu .navbar-nav>li>a,
.header .t4-megamenu .navbar-nav>li>.nav-link {
    color: var(--light-gray-color);
}


.not-at-top .t4-megamenu .navbar-nav>li>a,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link {
    color: var(--light-gray-color);
}

/*
.not-at-top .t4-megamenu .navbar-nav>li>a,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link:hover {
    color: var(--light-gray-color);
}*/

.t4-megamenu .navbar-nav>li>.nav-link:hover {
    color: var(--blue-color);
}


/* LIENS PAGES ACTIVES */
.t4-megamenu .navbar-nav>li.active>a,
.t4-megamenu .navbar-nav>li.active>.nav-link {
    color: var(--middle-green-color);
    border-bottom-color: var(--middle-green-color);
    padding-bottom: .8rem;
}


/* VALABLES POUR TOUS LES MENUS */
.t4-megamenu .iconemenu {
    display: none;
}

.t4-megamenu .navbar-nav>li {
    padding-left: inherit !important;
    padding-right: inherit !important;
}


/* .not-at-top .header {
            opacity: 0.97;
             background-image: linear-gradient(to bottom, var(--middle-blue-color), rgba(0, 158, 224, 0.8) 100%);
        }*/

@media only screen and (max-width: 1199px) {

    .header,
    .header_accueil {
        padding-top: 15px;
    }
}

@media only screen and (max-width: 992px) {
    .hide-mobile {
        display: none;
    }

    .top-b i {
        padding-right: 5px;
        /* Ajoute un padding entre les icônes */
    }

    .top-a li {
        padding-left: 15px;
        /* Ajoute un padding entre les icônes */
    }

    .topbar_accueil,
    .topbar {
        margin-top: 10px;
        font-size: 1.2rem;
    }
}


/* FOND D'ECRAN ACCUEIL */
.t4-introaccueil {
    min-height: 100vh;
    margin-top: -140px;
    /* z-index: 5; */
}

.align-right {
    text-align: right;
}

.smalltitle {
    font-size: .80rem;
    text-align: right;
}

/* Angle du texte d'accueil */
.titreaccueil {
    font-weight: 600;
    line-height: 2rem;
    font-size: 1.8rem;
}
.angle5 {
    transform: rotate(-5deg);
    text-shadow: 2px 2px 5px var(--text-shadow);
}

/* Icone du menu */
.iconemenu {
    margin-right: 5px;
    vertical-align: middle;
}

/* Confiance */
.t4-section-7-confiance .card-header {
    text-align: center;
    color: var(--blue-color);
    background-color: var(--background-bloc);
    font-size: 2rem;
    font-weight: 600;
}

.t4-section-7-confiance .card-header::before {
    font-family: "Font Awesome 5 Free";
    content: "\f06e";
    font-size: 2rem;
    padding-right: 5px;
}

.t4-section-7-confiance .card {
    border-color: var(--background-bloc);
    /* background: url("../../images/bg.png") center center repeat scroll;*/
    background-color: var(--background-bloc);

}

/* SLIDE EMOTION */
@media (max-width: 990px) {
    .camera_caption_desc {
        font-size: 1rem;
    }
}



/* Format des articles */
.item-page [itemprop="articleBody"] {
    margin-top: -16px;
}

/* POP UP */
.mfp-bg {
    z-index: 1042;
    overflow: hidden;
    background: var(--dark-gray-color);
    opacity: .8;
}

button.mfp-close {
    background-color: var(--middle-blue-color) !important;
}

.bppopup-mode-text {
    -moz-border-radius: 0px 20px 0px 20px;
    -o-border-radius: 0px 20px 0px 20px;
    -webkit-border-radius: 0px 20px 0px 20px;
    border-radius: 0px 20px 0px 20px;
    border: 5px solid var(--middle-blue-color);
    height: auto !important;
    color: var(--dark-gray-color);
}

.bppopup-mode-text h2,
.bppopup-mode-text h3 {
    font-family: inherit;
}

@media (max-width: 990px) {
    .bppopup-mode-text {
        font-size: .8rem;
        max-width: 80%;
    }
}

/*  TABLE TARIFS */
.tarifs table {
    border: 1px solid var(--light-gray-color);
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    width: 75%;
    table-layout: fixed;
}

.tarifs table tr {
    border: 1px solid var(--light-gray-color);
    padding: .15em;
}

.tarifs table th,
.tarifs table td {
    border: 1px solid var(--light-gray-color);
    padding: .35em;
    text-align: center;
}

.tarifs table th {
    font-size: .85em;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.tarifs tr:nth-child(odd),
.tariflocation tr:nth-child(odd) {
    background: var(--background-table);
}

.tarifs th {
    background: var(--white-color);
}

/* Ajout Table Tarif Locations Responsive */
.tariflocation table {
    border: 1px solid var(--light-gray-color);
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
}

.tariflocation table tr {
    border: 1px solid var(--light-gray-color);
    padding: .15em;
}

.tariflocation table th,
.tariflocation table td {
    border: 1px solid var(--light-gray-color);
    padding: .35em;
    text-align: center;
}

.tariflocation table th {
    font-size: .85em;
    letter-spacing: .1em;
    text-transform: uppercase;
}

@media (min-width: 1201px) {

    .tarifs table {
        width: 75% !important;
    }
}

@media(min-width:768px) and (max-width : 1200px) {

    .tarifs table {
        width: 80% !important;
    }
}

@media(max-width:1260px) {

    .tariflocation,
    .tarifs {
        font-size: .8rem;
    }
}

/* CHANGEMENT D'ORIENTATION */
@media(max-width:850px) {
    .tariflocation {
        font-size: inherit;
    }

    table {
        width: 100% !important;
    }

    .tariflocation table {
        border: 0;
    }

    .tariflocation table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .tariflocation table tr {
        border-bottom: 3px solid var(--light-gray-color);
        display: block;
        margin-bottom: .35em;
    }

    .tariflocation table td {
        border-bottom: 1px solid var(--light-gray-color);
        display: block;
        font-size: .8em;
        text-align: right;
    }

    .tariflocation table td::before {
        /*    * aria-label has no advantage, it won't be read inside a table  content: attr(aria-label);    */
        content: attr(data-label);
        float: left;
        font-weight: bold;
        text-transform: none;
    }

    .tariflocation table td:last-child {
        border-bottom: 0;
    }
}