/* GENERAL */
:root {
    --main_color: #001f83;
    --secondary-color: #ffffff;
    --other-color: #171717;
}

/* GENERAL */

.tf-color, .counter-item .number-counter, .button-style-arrow::after, .road-map-item .content .sub, .widget-social-text ul li a:hover, .box-icon .title a:hover, .box-event .content .title a:hover, .wg-menu-item .name, .price, .footer .footer-title, .page-title .content .text, .menu-primary-menu > li:hover > a, .menu-primary-menu > li.current-menu-item > a, .testimonial-item .author a, .style-arrow-default::after {
    color: var(--main_color)!important
}

.widget-social ul li a:hover, .footer-1 .footer-title::after, .road-map::before, .road-map-item::after, .dot-after::after, .tf-mouse-inner, .widget-social-text ul li a::before, .banner-page .content .banner-text::after, .banner-page .content .banner-text::before, .widget-menu-tab .item-title.active::after, .footer .footer-left::after, .footer .footer-right::after, .box-event .content .title a::before, .box-event .content .title a::after, .progress-wrap, .swiper-pagination.style-number .swiper-pagination-bullet.swiper-pagination-bullet-active, .button-default, .divider div::after, .divider, .button-two-line::before, .button-two-line::after, .canvas > .canvas-button::before, .canvas > .canvas-button::after, .canvas > .canvas-button span, .menu-primary-menu > li > a::before {
    background-color: var(--main_color);
}

#header_main, .header.is-fixed.is-small .header-inner, .wg-welcom, .box-menu .wrap{
    background-color: white;
}
.menu-primary-menu li a {
    color: var(--other-color);
}
.header-2 .header-right {
    padding: 20px 40px;
}
.menu-primary-menu li a {
    line-height: 26px;
}
.header-2 .header-right {
    margin-left: 56px;
}
.box-event {
    width: 33.333333%;
    max-height: 650px;
}
.footer-title{
    font-family: "Lobster Two", cursive;
    font-weight: normal;
    font-style: normal;
    font-size: 27px;
    color: white;
    padding-bottom: 14px;
}

.footer-1 .footer-bottom {
    padding-top: 15px;
    padding-bottom: 14px;
}
.widget-menu-tab{
    border-color: var(--other-color);
}
.button-two-line {
    background-image: linear-gradient(340deg, var(--main_color) 50%, #fff0 50%);
    text-transform: uppercase;
}

body,.divider div {
    background: white;
}

.heading-section .main, .button-two-line {
    color: #000000;
}
.widget-content-tab {
    padding: 50px;
}
p, .heading-section .text, body, button, input, select, textarea, li {
    color: #6c6c6c;
}
ul:not(nav li, footer li, .widget-social li){
    padding-left: 20px;
}
ul li:not(nav li, footer li, .widget-social li){
    list-style: disc;
}
.white, footer td, footer p, footer a, .slider-page-title, .slider-page-title p, .slider-page-title .button-two-line, .wg-our-menu .button-two-line, .wg-our-menu .heading-section .main, .wg-our-menu .button-two-line{
    color: #ffffff!important;
}

/* FONT */

h1, h2, .page-title .content .heading, body, button, input, select, textarea, .menu-primary-menu li a, .page-title .content .heading, .banner-page .content .banner-text {
    font-family: Poppins, Sans-serif;
}

.heading-section .sub, .heading-section .description, .page-title .content .text, .contact-item .title{
    font-family: "Lobster Two", cursive;
    font-weight: normal;
    font-style: normal;
    color: var(--main_color);
}

/* FORMS */
.widget-social ul li a, .swiper-slide.swiper-slide-active .road-map-item::before, .road-map .button-style-arrow, .tf-mouse-outer, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .box-icon .icon::after, .widget-menu-tab, .border-over-column::before, .wg-menu-item .line, .footer .footer-bottom, .divider div, .button-two-line, .swiper-pagination.style-number .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
    border-color: var(--main_color);
}


/* PAGE TITLE */
.page-title .content .heading, .banner-page .content .banner-text{
    font-size: 70px;
    line-height: 80px;
    font-weight: bold;
    letter-spacing: 0px;
    padding-left: 0px;
}


.snare-before::before, .snare-after::after {
    background-image: url(../images/snare.png);
}

.product-link a{
    text-align: center;
    margin: 0 auto;
    color: white;
}
.snare-circle::before {
    background-image: url(../images/snare-1.png);
}

table, th, td{
    border: none!important;
}

th, td{
    padding: 6px 10px 6px 0;
    font-size: 16px;
}


/* FOOTER */
footer{
    background-color: var(--other-color);
}

.footer-right th, .footer-right td{
    padding: 6px 0px 6px 0;
    text-align: end;
    font-size: 14px;
}
.footer-right table{
    width: auto;
    margin-left: auto;
    color: #fff;
}

.wg-welcom .button-close{
    color: #fff;
}

.footer-right tr td:first-child{
    text-align: start;
}

.testimonial-next, .testimonial-prev{
    border: 1px solid var(--main_color);
    background: transparent;
}
.pt-100{
    padding-top:100px!important;
}
.pb-100{
    padding-bottom:100px!important;
}
.mt-40{
    margin-top: 43px;
}
.primary-link{
    color: var(--main_color);
    font-size: 15px;
    transition: all 0.3s ease-in-out;
}
.primary-link:hover{
    color: var(--secondary-color);
}
.primary-link:hover::before, .primary-link:hover::after{
    background-color: var(--secondary-color);
    transition: all 0.3s ease-in-out;
}
.primary-link::before {
    position: absolute;
    content: '';
    width: 10px;
    height: 2px;
    left: -20px;
    top: 41%;
    background-color: var(--main_color);
    transition: all 0.3s ease-in-out;
}

.primary-link::after {
    position: absolute;
    content: '';
    width: 10px;
    height: 2px;
    right: -20px;
    top: 49%;
    background-color: var(--main_color);
    transition: all 0.3s ease-in-out;
}

.hours2{
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 15px;
}
.footer .hours2{
    color:white;
}
.widget-social a i {
    color:var(--main_color);
}
.widget-social a:hover i {
    color:white;
}

.wg-philosophy .images > .img2{
    top: 60px;
}

.maLigne {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.maLigne * {
    display: inline;
}

.mesItems{
    margin-top: 40px;
}

.flat-accordion .flat-toggle .toggle-title::after{
    position: absolute;
    content: '\e906';
    font-family: 'icomoon';
    text-align: center;
    line-height: 50px;
    font-size: 16px;
    font-weight: 900;
    color:#6c6c6c;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    z-index: 1;
    -webkit-transition: all 400ms linear;
    -o-transition: all 400ms linear;
    transition: all 400ms linear;
    transform: translateY(-50%) rotate(95deg);
}


.modal-window {
    position: fixed;
    background-color: rgba(0, 0, 0, 0.8);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s;
}
.modal-window:target {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}
.modal-window > div {
    width: 90%;
    max-width: 700px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 2em;
    background: white;
}

.modal-close {
    color: #aaa;
    line-height: 50px;
    font-size: 80%;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 70px;
    text-decoration: none;
}
.modal-close:hover {
    color: black;
}
/* Demo Styles */
/*html, body {*/
/*    height: 100%;*/
/*}*/

/*.container {*/
/*    display: grid;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    height: 100vh;*/
/*}*/
.modal-window > div {
    border-radius: 1rem;
}
.modal-window div:not(:last-of-type) {
    margin-bottom: 15px;
}

::selection {
    background-color: var(--main_color);
    color: white!important;
}
.menu-primary-menu .sub-menu {
    min-width: 290px;
}
.button-two-line:hover{
    color: white!important;
}
.wg-location > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
td:last-child{
    text-align: end;
}
.opening-hours{
    max-width: 68%;
}
@media (max-width: 1518px){
    .opening-hours{
        max-width: 95%;
    }
}
@media (max-width: 1186px){
    .opening-hours .opening-hours2{
        max-width: 350px;
    }
    .page-title .content .heading, .banner-page .content .banner-text, h1 {
        font-size: 45px;
        line-height: 50px;
    }
    .page-title .content .text, .heading-section .main {
        font-size: 25px;
        line-height: 29px;
    }
    .wg-about-slider .top-content .main {
        font-size: 25px!important;
        line-height: 35px!important;
    }

    .wg-about-slider .top-content .sub, .heading-section .sub, .wg-reservations .content .heading-section .sub, .wg-location .content .heading-section .sub {
        font-size: 22px;
    }
    h3 {
        font-size: 20px;
        line-height: 26px;
    }
    .themesflat-container {
        padding-right: 25px;
        padding-left: 25px;
    }
    .banner-page.inner-page .content {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .pb-100 {
        padding-bottom: 80px !important;
    }
    .pt-100 {
        padding-top: 80px !important;
    }

    .mb-6{
        margin-bottom: 63px;
    }
    .box-event .content {
        bottom: -87px;

    }

    .mobile-button{
        margin-left:15px;
    }
}

@media (max-width: 1692px){
    .header-2 .menu-primary-menu {
         padding-left: 30px;
    }

.menu-primary-menu {
    gap: 15px;
}
    .header-2 .wg-information {
         display: block!important;
    }
}

@media (max-width: 994px){

    .canvas {
      display:none;
    }
}
@media (min-width: 768px){
    .text-md-left{
        text-align:left!important;
    }


}
@media (max-width: 532px){

    .header-inner-wrap .wg-information {
        display:none!important;
    }
}

.select::after {
    color: #000000;
    background-color: white;
}
input::placeholder{
    color:#6c6c6c;
}
.hidden-desktop{
    display: none !important;
}
@media (min-width: 988px) and (max-width: 1176px) {
    .header-right {
        display: none;
    }
}
@media (max-width: 1200px) {

    .header-2 .header-left {
        padding: 20px;
        width: 400px;
    }
    .header-2 .wg-information {
        display: flex !important;
        justify-content: end;
        margin-right: 20px;
    }

}
@media (max-width: 1426px) {
    .event-grid .title {
        Font-size: 20px!important;
    }

}
@media (max-width: 994px) {
    .opening-hours2, .opening-hours {
       max-width: 350px;
        margin: 0 auto;
    }
    .wg-open-hours{
       text-align: center;
        margin: 0 auto;
    }
    .wg-open-hours .divider {
        display: none;
    }
    .fa-chevron-down:before {
        display:none!important;
    }
}
@media (max-width: 565px) {
    .header-2 .wg-information {
        display: none !important;
    }
    .hidden-desktop{
        display: block !important;
    }
}

@media (max-width: 447px) {
    .double-btn-mobile {
       flex-direction: column;
    }
    .double-btn-mobile > div {
       margin: 20px auto!important;
    }
}
.read-more-state{
    display: none !important;
}
.wg-our-menu {
    padding-top: 70px!important;
    padding-bottom: 30px!important;
}
a.button-two-line.white{
    border-color: #ffffff;
}
a.button-two-line.white::after, a.button-two-line.white::before{
    background-color: #ffffff!important;
}
a.button-two-line.white:hover{
    border-color: var(--main_color);
}
.primary-link:hover{
    color: var(--main_color);
}
.primary-link:hover::before, .primary-link:hover::after {
    background-color: var(--main_color);
}
.primary-link:focus {
    color: var(--main_color);
}
.banner-page .content .banner-text::before, .banner-page .content .banner-text::after{
    background-color: #ffffff;
}
.banner-page .content .banner-text::before {
    top: 50%;
}
.footer-style li{
    list-style:none!important;
    padding-bottom:10px!important;
}
.primary-a:hover{
    color: var(--main_color)!important;
}
.wg-welcom .number-phone a, .wg-welcom .text {
    color: var(--main_color)!important;
}

.button-default:hover{
    background-color: black;
    color: #FFF;
}
/* ======== QA ======== */
.read-more-state:checked~.read-more-wrap .read-more-target, .modal-close, .read-more-trigger {
    font-size: 15px!important;
}
button.button-two-line{
    overflow:hidden;
}
label.error{
    font-size: 15px!important;
    margin-top: -15px;
    margin-bottom: 15px;
}
#message-error{
    margin-top: -25px;
}

textarea {
    padding-top:0px!important;
}

textarea::placeholder {
    padding-top:10px!important;
    color:#6c6c6c!important;
}
#submit_message, #error_message{ font-size:14px; height: 50px; display: none; line-height: 50px; color:#202020; font-weight: 500; left:50%; bottom:40px; background-color:#fff; position: fixed; border-radius: 10px; box-shadow:15px 30px 80px 4px rgba(0,0,0,0.18); margin:0; padding: 0 30px 0 0; border:none; cursor: pointer; width: auto; z-index: 1500; -ms-transform: translateX(-50%) translateZ(0); -webkit-transform: translateX(-50%) translateZ(0); transform: translateX(-50%) translateZ(0); -webkit-transition: bottom 0.3s, box-shadow 0.3s; -moz-transition: bottom 0.3s, box-shadow 0.3s; transition: bottom 0.3s, box-shadow 0.3s; }
#submit_message i, #error_message i{ display: block; float: left; position: relative; left: -2px; color:#fff; line-height: 50px; width: 50px; height: 50px; text-align: center; border-top-left-radius: 10px; border-bottom-left-radius: 10px; background:#c41f1f; }
#submit_message i{ background:#7fb924; }
#submit_message span, #error_message span{ padding-left:10px; }
#submit_message:hover, #error_message:hover{ bottom:37px; box-shadow:3px 5px 10px 0px rgba(0,0,0,0.1);  }
@media only screen and (max-width: 1110px){ #submit_message, #error_message{ width: 90%; max-width: 500px; font-size: 13px; letter-spacing: -0.4px; } }
@media only screen and (max-width: 480px){ #submit_message span, #error_message span{ font-size: 12px; width: 75%; width: calc(100% - 50px); position: absolute; top: 50%; display: inline-block; line-height: 14px; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }
@media only screen and (min-width: 1450px){ body.left-side-menu-active #submit_message, body.left-side-menu-active #error_message{ left: calc(50% + 150px); } }
@media only screen and (max-width: 580px){ #submit_message, #error_message{ display: none; } }
button[type="submit"]{ position: relative; overflow: hidden; }
button[type="submit"].loading{ background-color: white; color: white;}
button[type="submit"] span.loader{ background-color:inherit; border-radius: inherit; }
button[type="submit"].loading span.loader:before{ width: 20px; height: 20px; margin: 0 auto; content:''; position: absolute; top:50%; left: 50%; margin-top:-10px; margin-left:-10px; border: 1px solid rgb(0, 0, 0); border-radius: 50%; z-index: 2; border-left-color: transparent; border-right-color: transparent; animation: cssload-spin 650ms infinite linear; -o-animation: cssload-spin 650ms infinite linear; -ms-animation: cssload-spin 650ms infinite linear; -webkit-animation: cssload-spin 650ms infinite linear; -moz-animation: cssload-spin 650ms infinite linear; }
button[type="submit"].loading span.loader:after{ background-color:inherit; border-radius: inherit; width: 100%; height: 100%; position: absolute; left:0; top:0; content:''; z-index: 1; }
button[type="submit"].loading.dark-loading span.loader:before{ border: 1px solid rgb(0,0,0); border-left-color: transparent; border-right-color: transparent; }
@keyframes cssload-spin{ 100%{ transform: rotate(360deg); transform: rotate(360deg); } }
@-o-keyframes cssload-spin{ 100%{ -o-transform: rotate(360deg); transform: rotate(360deg); } }
@-ms-keyframes cssload-spin{ 100%{ -ms-transform: rotate(360deg); transform: rotate(360deg); } }
@-webkit-keyframes cssload-spin{ 100%{ -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-moz-keyframes cssload-spin{ 100%{ -moz-transform: rotate(360deg); transform: rotate(360deg); } }


