/* Global */

body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: #575756;
}

.wrapper {
    padding-top: 50px;
}

#page {
    max-width: 1600px;
    margin: 0 auto;
}


/* Article */

span.byline,
footer.entry-footer {
    display: none !important;
}


/* Extra large devices (large desktops, 1200px and up) */

@media (min-width: 1200px) {
    .container {
        max-width: 1600px;
        padding-right: 5rem;
        padding-left: 5rem;
    }
}


/* Elements */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Playfair Display', serif;
    color: #3c6982;
    font-weight: 700;
}

h1 {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 2rem;
}

h2 {
    font-size: 1.5rem;
}

#page-wrapper h2 {
    width: auto;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1rem;
    display: inline-block;
    position: relative;
}

#page-wrapper h2:before {
    content: " ";
    background: url('../images/title-bg.svg');
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.5rem;
    height: 1.5rem;
    display: block;
    position: absolute;
    top: -0.25rem;
    left: -0.75rem;
}

.no-hero #page-wrapper h2:before {
    content: none;
}

h3 {
    font-size: 1.25rem;
}

h4 {
    font-size: 1rem;
}

h5 {
    font-size: 0.9rem;
}

h6 {
    font-size: 0.8rem;
}

a {
    color: #bea78e;
}

a:hover {
    color: #bea78e;
}

#page-wrapper a {
    text-decoration: underline;
}

strong {
    font-weight: 700;
}

.fa,
.fas {
    font-family: FontAwesome !important;
}

p {
    text-align: justify;
}

.section-outils p {
    text-align: center;
}


/* Small devices (landscape phones, 576px and up) */

@media (min-width: 576px) {}


/* Medium devices (tablets, 768px and up) */

@media (min-width: 768px) {}


/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
    h1 {
        font-size: 3rem;
    }
    h2 {
        font-size: 2rem;
    }
    #page-wrapper h2:before {
        width: 2rem;
        height: 2rem;
        top: -0.5rem;
        left: -1rem;
    }
}


/* Extra large devices (large desktops, 1200px and up) */

@media (min-width: 1200px) {}


/* Header */

#wrapper-navbar .navbar {
    margin: 3.125rem;
}


/* Main menu */

.navbar .logo img {
    max-width: 15rem;
}

#main-menu .nav-link {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.0625rem;
    font-weight: 600;
    color: #3b6982;
    text-transform: uppercase;
}

#main-menu .nav-link span {
    position: relative
}

#main-menu .nav-link span::after {
    display: block;
    background-color: #bea78e;
    position: absolute;
    bottom: -50%;
    left: calc( 50% - 2rem);
    content: '';
    width: 4rem;
    height: 4px;
    visibility: hidden;
    -moz-transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    transform-origin: bottom bottom;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out
}

#main-menu .current_page_item .nav-link span::after,
#main-menu .nav-link:hover span::after {
    visibility: visible;
    -moz-transform: scaleX(1);
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}


/* Menu 2 */

.menu-2 {
    position: relative;
}

.menu-2 .social {
    position: absolute;
    top: -2rem;
    right: 0;
}

.menu-2 .social i {
    color: #3b6982;
    font-size: 1.2rem;
    margin-left: 0.5rem;
}

.menu-2 .telephone {
    color: #3b6982;
    font-family: 'Open Sans', sans-serif;
    font-size: 1.0625rem;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    vertical-align: middle;
    /**/
    display: block;
}


/* Mobile menu */

.mobile-navbar {
    height: 4rem;
}

.mobile-navbar button {
    background-image: url('../images/menu.svg');
    background-size: contain;
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center;
    padding: 3rem 1.5rem 0 0;
}

body.modal-open .mobile-navbar button {
    background-image: url('../images/close.svg');
}


/*  Menu modal (full screen)
    -------------------------------------------------- */

#menuModal {
    /*margin-top: 3rem;*/
    z-index: 1070;
    padding-right: 0 !important;
}

#menuModal,
.modal-backdrop {
    margin-top: 4rem;
}

.fullscreen .modal-dialog {
    margin: 0 0 0 0;
    max-width: 100%;
    width: 100%;
    height: 100%;
    min-height: 100%;
    padding: 0;
}

.fullscreen .modal-content {
    height: 100%;
    min-height: 100%;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border: none;
    overflow: auto;
}

.fullscreen .modal-body {
    padding-top: 2rem;
    padding-bottom: 3.125rem;
}

.fullscreen .modal-body ul {
    padding: 0;
    list-style: none;
    background: #f6f6f6;
    padding: 1.5rem;
}

.fullscreen .modal-body ul a,
.fullscreen .modal-body .telephone {
    color: #3b6982;
    text-decoration: none;
    font-weight: 400;
}

.fullscreen .modal-body .social i {
    color: #3b6982;
    font-size: 1.5rem;
    margin: 0 0.5rem;
}

.fullscreen .modal-body .telephone {
    text-align: center;
}


/* Modal mobile menu */

.fullscreen .modal-body .mobile-menu {
    padding: 0 0.5rem;
}

.fullscreen .modal-body .mobile-menu li {
    padding: 0.625rem 0;
    border-bottom: solid #d9d9d9 1px;
}

.fullscreen .modal-body .mobile-menu li a {
    text-transform: uppercase;
}

.fullscreen .modal-body .mobile-menu li:last-child {
    border: none;
}

.fullscreen .modal-body .mobile-menu li a>span {
    /*font-size: 1.5rem;*/
    margin-right: 0.625rem;
    vertical-align: text-bottom;
    position: relative;
    min-width: 1.875rem;
    display: inline-block;
}

.fullscreen .modal-body .mobile-menu li a .favorites-quantity {
    bottom: -15%;
    left: 40%;
}


/* Social Facebook in modal
-------------------------------------------------- */

.social-top-icon {
    right: 0;
    top: 7rem;
    z-index: 120;
}

.social-top-icon i {
    color: white;
}

#facebookModalIcon,
#instagramModalIcon,
#linkedinModalIcon {
    background-color: #bea78e;
}


/*#facebookModal {
    background: #3994f0;
}
#facebookModal .modal-dialog {
    max-width: 100%;
    height: 100%;
    margin: 0;
    background: white;
}
#facebookModal .modal-content {
    height: 100%;
    background: white;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0
}*/

.facebook-modal-open .modal-backdrop {
    margin-top: 0;
    opacity: 0 !important;
}


/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
    #facebookModal {
        background: transparent !important;
        padding-right: 0 !important;
        top: 0;
        height: calc( 100% - 7rem);
        overflow-y: hidden;
    }
    #facebookModal .modal-dialog {
        max-width: 400px;
        margin: 1.75rem 0 1.75rem auto;
    }
    #facebookModal .modal-dialog,
    #facebookModal .modal-content,
    #facebookModal .modal-header {
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
    }
    #facebookModal .modal-content {
        border: 0;
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.16);
    }
    #facebookModal.right .modal-dialog {
        position: fixed;
        margin: auto;
        width: 400px;
        height: 100%;
        max-height: 580px;
        -webkit-transform: translate3d(0%, 0, 0);
        -ms-transform: translate3d(0%, 0, 0);
        -o-transform: translate3d(0%, 0, 0);
        transform: translate3d(0%, 0, 0);
    }
    #facebookModal.right .modal-content {
        height: 100%;
        overflow-y: auto;
    }
    #facebookModal.right .modal-content h2 {
        font-family: 'Open Sans', sans-serif;
        font-size: 1.0625rem;
        font-weight: 600;
        color: #3b6982;
        text-transform: uppercase;
    }
    #facebookModal.right.fade .modal-dialog {
        right: -500px;
        -webkit-transition: opacity 0.3s linear, right 0.3s ease-out;
        -moz-transition: opacity 0.3s linear, right 0.3s ease-out;
        -o-transition: opacity 0.3s linear, right 0.3s ease-out;
        transition: opacity 0.3s linear, right 0.3s ease-out;
    }
    #facebookModal.right.fade.show .modal-dialog {
        right: 0;
    }
}


/* Hero banner 
-------------------------------------------------- */

#hero-banner {
    margin-bottom: 5rem;
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
}

#hero-bg {
    height: calc( 100vh - 19rem);
    min-height: 20rem;
    max-height: 35rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right bottom;
}

.title-area-homepage {
    position: relative;
    width: 100%;
    height: 15rem;
    padding: 1rem 1.5rem;
    background: #bea78e;
}

.titre-entete {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: white;
    font-size: 1.5rem;
    text-transform: uppercase;
}

.description-entete {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: white;
    font-size: 1rem;
}

.titre-entete strong {
    font-weight: 600;
}

.description-entete strong {
    font-weight: 700;
}


/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
    #hero-bg {
        margin-right: 3.125rem;
    }
    #hero-bg {
        height: 500px;
    }
    #hero-bg:before {
        content: '';
        background: url('../images/deco-header-3.png');
        background-repeat: no-repeat;
        background-position: right bottom;
        width: 100%;
        height: 100%;
        background-size: cover;
        display: block;
    }
    .soleil {
        content: '';
        background: url('../images/soleil.png');
        background-repeat: no-repeat;
        background-position: right bottom;
        width: 30rem;
        height: 35rem;
        background-size: cover;
        display: block;
        position: absolute;
        bottom: -7rem;
        right: 0;
        background-size: contain;
        z-index: 100;
    }
    .title-area-homepage {
        position: absolute;
        top: 15%;
        padding: 1.5rem 4rem;
        width: unset;
        height: unset;
        background-color: rgba(255, 255, 255, 0.8);
        background: rgba(255, 255, 255, 0.8);
    }
    .titre-entete {
        font-size: 2rem;
        color: #3c6982;
    }
    .description-entete {
        font-size: 1.5rem;
        color: #3c6982;
    }
}


/* Extra large devices (large desktops, 1200px and up) */

@media (min-width: 1200px) {
    .menu-2 .btn {
        /*   position: absolute;
        top: 2rem;
        right: 0;*/
        /**/
        /* display: inline-block;*/
    }
    /*   .menu-2 .telephone {
        display: inline-block;
    }*/
    #hero-bg {
        height: 700px;
    }
    .soleil {
        width: 30rem;
        height: 40rem;
        bottom: -8rem;
    }
    .title-area-homepage {
        /*top: 25%;*/
    }
    .titre-entete {
        font-size: 2.5rem;
    }
    .description-entete {
        font-size: 2rem;
    }
}


/* Extra Extra large devices (large desktops, 1340px and up) */

@media (min-width: 1340px) {
    .navbar .logo img {
        max-width: 25rem;
    }
    .menu-2 .btn {
        /* position: unset;
        top: unset;
        right: unset;*/
    }
    .menu-2 .btn {
        display: inline-block;
    }
    .menu-2 .telephone {
        display: inline-block;
    }
}


/* Footer top */

#wrapper-top-footer p {
    text-align: center !important;
}

#wrapper-top-footer p.slogan {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: #3c6982;
    font-size: 1.5rem;
}

#wrapper-top-footer p.slogan strong {
    font-weight: 700;
}

#wrapper-top-footer img {
    max-width: 10rem;
}


/* Footer middle */

#wrapper-footer {
    background: #3b6982;
    max-width: 1920px;
}

#wrapper-footer p,
#wrapper-footer a {
    color: white;
}

#wrapper-footer h2 {
    font-size: 1rem;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    color: white;
    text-transform: uppercase;
}

#wrapper-footer p,
#wrapper-footer a {
    font-size: 0.9375rem;
}

#wrapper-footer ul {
    list-style: none;
    padding-left: 0;
}

#wrapper-footer i {
    font-size: 1.5rem;
    margin-left: 0.5rem;
}


/* Footer bottom */

#wrapper-bottom-footer {
    border-top: solid #5b8195 2px;
    padding: 1.25rem 0;
    background: #3b6982;
    max-width: 1920px;
}

#wrapper-bottom-footer .bottom-footer {
    max-width: 800px;
}

#wrapper-bottom-footer p {
    margin-bottom: 0;
    font-size: 0.875rem;
    color: white;
}

#wrapper-bottom-footer a {
    color: white;
}

#wrapper-bottom-footer .copyright p {
    text-transform: uppercase;
}

#wrapper-bottom-footer .footer-bottom-links .cli_settings_button {
    color: white !important;
}

#wrapper-bottom-footer .footer-bottom-links .cli_settings_button:hover {
    cursor: pointer;
    text-decoration: underline;
}


/* Medium devices (tablets, 768px and up) */

@media (min-width: 768px) {
    #wrapper-footer,
    #wrapper-bottom-footer {
        margin-left: 3.125rem;
        margin-right: 3.125rem;
    }
    #wrapper-bottom-footer {
        margin-bottom: 3.125rem;
    }
    #wrapper-top-footer p.slogan {
        font-size: 2rem;
    }
    #wrapper-top-footer img {
        max-width: 15rem;
    }
}


/* Back to top */

#topbutton {
    position: fixed;
    display: none;
    height: 2.125rem;
    width: 2.125rem;
    right: 0.75rem;
    bottom: 0.75rem;
    z-index: 1;
    background: #bea78e;
    text-decoration: none;
    border: solid white 1px;
}

#topbutton:after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.882' height='17.882'%3E%3Cpath data-name='Tracé ' d='M.707 8.892L8.893.706l8.281 8.282' fill='none' stroke='%23fffae2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: center 0.75rem;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}


/* Articles */

.list-actu h2 {
    font-size: 1.5rem;
}


/* Single article */

.single-post article {
    max-width: 960px;
    margin: 0 auto;
}

.single-post .post-navigation {
    clear: both;
    padding-top: 3rem;
}


/* Gutenberg button */

.wp-block-button__link {
    color: #bea78e;
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    padding: 0.25rem 0;
    background: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    text-decoration: none !important;
    position: relative;
    /**/
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: .15rem;
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:visited {
    color: #bea78e;
}

.wp-block-button__link:hover {
    color: #85c4c9;
}

.wp-block-button__link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.wp-block-button__link:hover::before {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}

.wp-block-button__link::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.wp-block-button__link:hover::after {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}


/* Btn primary */

.btn-primary {
    color: white;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    width: unset;
    background: #bea78e;
    border-color: #bea78e;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    padding: .4rem 1rem;
}

.btn-primary:disabled {
    color: white;
    background: #bea78e;
    border-color: #bea78e;
}

.btn-primary:hover {
    background: #8ac9cd;
    border-color: #8ac9cd;
}

.btn-primary.focus,
.btn-primary:focus {
    -webkit-box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
    box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #8ac9cd;
    border-color: #8ac9cd;
    -webkit-box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25) !important;
    box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25) !important;
}

.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.show>.btn-outline-primary.dropdown-toggle:focus,
.wpcf7 .show>input.dropdown-toggle:focus[type="submit"],
.wpcf7 input:not(:disabled):not(.disabled).active:focus[type="submit"],
.wpcf7 input:not(:disabled):not(.disabled):active:focus[type="submit"] {
    -webkit-box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
    box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
}

.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle,
.wpcf7 .show>input.dropdown-toggle[type="submit"],
.wpcf7 input:not(:disabled):not(.disabled).active[type="submit"],
.wpcf7 input:not(:disabled):not(.disabled):active[type="submit"] {
    color: #fff;
    background-color: #8ac9cd;
    border-color: #8ac9cd;
}


/* button type 1 */

.button-1,
.button-2 {
    color: #bea78e;
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    padding: 0.25rem 0;
    /*border-color: #bea78e;
    border-width: 1px 0;
    border-style: solid;*/
    background: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    text-decoration: none !important;
    position: relative;
}

.button-1:hover,
.button-2:hover {
    color: #85c4c9;
}

.button-1 strong {
    font-weight: 700;
}

.button-1::before,
.button-2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.button-1::after,
.button-2::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.button-1:hover::before,
.button-2:hover::before {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}

.button-1:hover::after,
.button-2:hover::after {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}


/* button type 2 */

.button-2 {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: .15rem;
}


/* Cookie Notice */

#cookie-notice {
    color: #575756 !important;
    font-size: 0.9rem;
    font-weight: 400;
    left: unset;
    right: 0;
    margin-right: 1rem;
    margin-bottom: 1rem;
    background: rgba(255, 255, 255, 0.95) !important;
    min-width: unset;
    max-width: 20rem;
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.cookie-notice-container {
    padding: 1rem;
}

#cn-notice-text {
    color: black;
    display: block;
    margin-bottom: 1rem;
}

#cookie-notice {
    font-family: 'Open Sans', sans-serif;
}

.cn-revoke-cookie.cn-button {
    font-size: unset;
    font-family: unset;
    font-weight: unset;
}

.cn-revoke-cookie.cn-button:hover {
    box-shadow: unset
}


/*Elementor image box */

h3.elementor-image-box-title {
    color: #89c9cd;
    font-size: 1.5rem;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
}

#page-wrapper .elementor-image-box-title a {
    text-decoration: none;
}

p.elementor-image-box-description {
    font-weight: 300;
}


/* Elementor icon list */

.elementor .elementor-element ul.elementor-icon-list-items {
    /*padding-left: 2rem;*/
}

.elementor-icon-list-icon i {
    vertical-align: middle;
}

.fa-circle::before {
    color: #8ac9cd;
}

.elementor .elementor-element ul.elementor-icon-list-items strong {
    color: #8ac9cd;
}


/* Elementor tab type 1 (.tabs-type-1) */

.tabs-type-1.elementor-widget-tabs .elementor-tabs-wrapper {
    display: none;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-desktop-title {
    background: #3b6982;
    color: white;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    padding: 1rem 2.5rem;
    display: table !important;
    min-height: 4.75rem;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active,
.tabs-type-1.elementor-widget-tabs .elementor-tab-desktop-title:hover {
    background: #bea78e;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-desktop-title:hover a {
    color: white;
}

.tabs-type-1 .elementor-tab-title a {
    display: table-cell;
    vertical-align: middle;
    text-decoration: none !important;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-content {
    padding: 2rem 0 0 0;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-content,
.tabs-type-1.elementor-widget-tabs .elementor-tab-title,
.tabs-type-1.elementor-widget-tabs .elementor-tab-title::after,
.tabs-type-1.elementor-widget-tabs .elementor-tab-title::before,
.tabs-type-1.elementor-widget-tabs .elementor-tabs-content-wrapper,
.tabs-type-1.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active::before,
.tabs-type-1.elementor-widget-tabs .elementor-tab-title {
    border: unset !important;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-mobile-title {
    background: #3b6982;
    color: white;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    padding: 1rem 2.5rem;
    margin-bottom: 0.25rem;
}

.tabs-type-1.elementor-widget-tabs .elementor-tab-mobile-title.elementor-active {
    background: #bea78e;
}


/* Medium devices (tablets, 768px and up) */

@media (min-width: 768px) {
    .tabs-type-1.elementor-widget-tabs .elementor-tabs-wrapper {
        display: grid;
        overflow: hidden;
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 1fr;
        grid-column-gap: 1.5rem;
        grid-row-gap: 1.5rem;
        max-width: 100%;
    }
}


/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
    .tabs-type-1.elementor-widget-tabs .elementor-tabs-wrapper {
        grid-template-columns: repeat(4, 1fr);
    }
}


/* Elementor tab type 2 (.tabs-type-2) */

.tabs-type-2.elementor-widget-tabs .elementor-tabs-wrapper {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
}

.tabs-type-2.elementor-widget-tabs .elementor-tab-desktop-title {
    padding: 20px 0;
}

.tabs-type-2 .elementor-tab-title a {
    text-decoration: none !important;
    font-weight: 300;
    color: #bea78e;
    padding: 0.25rem 0;
    text-transform: uppercase;
    position: relative;
    /*word-spacing: 5em;*/
}

.tabs-type-2 .elementor-tab-title a:hover {
    color: #85c4c9;
}

.tabs-type-2 .elementor-tab-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.tabs-type-2 .elementor-tab-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    width: 100%;
    background: #bea78e;
    transition: all 0.6s ease;
}

.tabs-type-2 .elementor-tab-title a:hover::before {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}

.tabs-type-2 .elementor-tab-title a:hover::after {
    width: 0;
    transition: all 0.6s ease;
    background: #85c4c9;
}

.tabs-type-2 .elementor-tab-title.elementor-active a {
    color: #85c4c9;
}

.tabs-type-2 .elementor-tab-title.elementor-active a:before,
.tabs-type-2 .elementor-tab-title.elementor-active a:after {
    background: #85c4c9;
}

.tabs-type-2.elementor-widget-tabs .elementor-tab-content,
.tabs-type-2.elementor-widget-tabs .elementor-tab-title,
.tabs-type-2.elementor-widget-tabs .elementor-tab-title::after,
.tabs-type-2.elementor-widget-tabs .elementor-tab-title::before,
.tabs-type-2.elementor-widget-tabs .elementor-tabs-content-wrapper,
.tabs-type-2.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active::before,
.tabs-type-2.elementor-widget-tabs .elementor-tab-title {
    border: unset !important;
}

.tabs-type-2.elementor-widget-tabs .elementor-tab-content {
    padding: 2rem 0;
}

.tabs-type-2.elementor-widget-tabs .elementor-tab-mobile-title {
    display: none !important;
}


/* Elementor counter */

.elementor-widget-counter .elementor-widget-container {
    position: relative;
}

.elementor-counter {
    display: flex;
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important;
}

.elementor-widget-counter .elementor-widget-container:before {
    content: '';
    display: block;
    width: 13rem;
    height: 13rem;
    position: absolute;
    top: 0;
    right: 1.5rem;
    background: rgba(190, 167, 142, 0.1);
    border-radius: 20rem;
    z-index: -1;
}

.elementor-counter .elementor-counter-number-wrapper {
    font-family: 'Playfair Display', serif;
    color: #89c9cd;
    font-size: 8rem;
    font-weight: 700;
}

.elementor-counter .elementor-counter-title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    color: #3c6982;
    font-size: 1.1rem;
    line-height: 1.4rem;
    text-align: left;
    margin-left: 1.2rem;
}


/* Contact Form 7 */

.wpcf7 {
    max-width: 100%;
}

.form-control,
.wpcf7 .wpcf7-validation-errors,
.wpcf7 input[type="color"],
.wpcf7 input[type="date"],
.wpcf7 input[type="datetime-local"],
.wpcf7 input[type="datetime"],
.wpcf7 input[type="email"],
.wpcf7 input[type="file"],
.wpcf7 input[type="month"],
.wpcf7 input[type="number"],
.wpcf7 input[type="range"],
.wpcf7 input[type="search"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="text"],
.wpcf7 input[type="time"],
.wpcf7 input[type="url"],
.wpcf7 input[type="week"],
.wpcf7 select,
.wpcf7 textarea {
    background: #f2ede8;
    border-color: #f2ede8;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-bottom: 0.5rem;
}

.form-control:focus,
.wpcf7 .wpcf7-validation-errors:focus,
.wpcf7 input:focus[type="color"],
.wpcf7 input:focus[type="date"],
.wpcf7 input:focus[type="datetime-local"],
.wpcf7 input:focus[type="datetime"],
.wpcf7 input:focus[type="email"],
.wpcf7 input:focus[type="file"],
.wpcf7 input:focus[type="month"],
.wpcf7 input:focus[type="number"],
.wpcf7 input:focus[type="range"],
.wpcf7 input:focus[type="search"],
.wpcf7 input:focus[type="submit"],
.wpcf7 input:focus[type="tel"],
.wpcf7 input:focus[type="text"],
.wpcf7 input:focus[type="time"],
.wpcf7 input:focus[type="url"],
.wpcf7 input:focus[type="week"],
.wpcf7 select:focus,
.wpcf7 textarea:focus {
    color: #495057;
    background-color: #fff;
    border-color: #84a1b1;
    outline: 0;
    -webkit-box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
    box-shadow: 0 0 0 .2rem rgba(132, 161, 177, .25);
}

div.wpcf7 .ajax-loader {
    float: left;
}

.wpcf7 input[type="submit"] {
    color: white;
    font-size: 0.6875rem;
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    width: unset;
    background: #bea78e;
    border-color: #bea78e;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.wpcf7 input:disabled[type="submit"] {
    color: white;
    background: #bea78e;
    border-color: #bea78e;
}

.wpcf7 input:hover[type="submit"] {
    background: #8ac9cd;
    border-color: #8ac9cd;
}

.wpcf7 .wpcf7-validation-errors {
    margin-bottom: 1.5rem;
}

.wpcf7 .wpcf7-not-valid-tip {
    color: #dc3545;
    margin-bottom: 0.5rem;
    font-size: 0.8rem;
}


/* Google Maps Gray filters */

.elementor-widget-container iframe {
    /*
    -webkit-filter: grayscale(100%);
    -webkit-filter: grayscale(1);
    filter: grayscale(100%);
    filter: url('../images/gray.svg#grayscale');
    filter: gray;
    */
}


/* Google Maps */

#google_maps .elementor-shortcode {
    width: 100%;
    height: 1000px;
    background: #000;
}

.wpgmza_map {
    float: left;
}

#google_maps .wpgmza-popout-panel.wpgmza_marker_list_class {
    left: 0%;
}

.wpgmza_marker_holder {
    position: relative;
    border: none !important;
    height: 100%;
    width: 30% !important;
}

.wpgmza_marker_holder .dataTables_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f8f6f3;
    overflow-y: auto;
}

.wpgmza_marker_holder .dataTables_wrapper::-webkit-scrollbar {
    width: 14px;
}

.wpgmza_marker_holder .dataTables_wrapper::-webkit-scrollbar-track {
    background-color: #f8f6f3;
    border-radius: 14px;
}

.wpgmza_marker_holder .dataTables_wrapper::-webkit-scrollbar-thumb {
    border-radius: 14px;
    background-color: #06523a;
}

.wpgmza_marker_holder .dataTables_wrapper thead {
    display: none;
}

.dataTables_length {
    display: none;
}

.dataTables_info {
    display: none;
}

.dataTables_paginate {
    display: none;
}

table.dataTable.no-footer {
    border-bottom: none !important;
}

.wpgmza_marker_holder .wpgmza_table .wpgmaps_mlist_row {
    display: flex;
    flex-direction: column;
}

.wpgmza_marker_holder table.dataTable tbody tr {
    background-color: #f8f6f3;
    padding: 10px 80px;
}

.wpgmza_marker_holder table.dataTable tbody tr td {
    color: #646464;
    font-weight: 400;
    text-transform: none;
    font-size: 0.8rem;
    font-family: 'Open Sans', sans-serif;
    /*padding: 0 0 5px !important;*/
    padding: 0 !important;
}

.wpgmza_marker_holder table.dataTable tbody tr td.wpgmza_table_custom_field_2 {
    color: #06523a;
}

.wpgmza_marker_holder table.dataTable tbody tr td p {
    color: #646464;
    font-weight: 400;
    text-transform: none;
    font-size: 0.8rem;
    line-height: 1rem;
    font-family: 'Open Sans', sans-serif;
    margin: 0;
}

.wpgmza_marker_holder table.dataTable tbody tr td.wpgmza_table_title {
    color: #06523a;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 5px 0 !important;
}

.wpgmza_marker_holder .wpgmza_table .wpgmaps_mlist_row:hover {
    background-color: #ece6df;
}

.wpgmza_marker_holder .dataTables_wrapper .dataTables_filter {
    float: left;
    text-align: left;
    width: 100%;
    padding: 60px 80px 30px;
    color: #4b4b4b;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1rem;
    font-family: 'Open Sans', sans-serif;
}

.wpgmza_marker_holder .dataTables_wrapper .dataTables_filter input {
    width: 100%;
    margin: 10px 0 0;
    border: solid 1px #d9d9d9;
    padding: 6px 10px;
}

.wpgmza_table_description {
    margin-bottom: 0.75rem;
}

@media screen and (max-width: 900px) {
    #google_maps {
        position: relative;
    }
    .wpgmza_map {
        margin-top: 400px;
    }
    #wpgmza_map_2 {
        margin-top: 0;
    }
    .wpgmza_marker_holder {
        top: 0;
        position: absolute;
        border: none !important;
        height: 400px;
        width: 100% !important;
    }
}

@media screen and (max-width: 767px) {
    #google_maps {
        height: 200px;
    }
}


/**/

.cmplz-show-banner:hover {
    cursor: pointer;
    text-decoration: underline;
}

.cmplz-link.cookie-statement {
    display: none;
}