/*
Theme Name: Jenkinsons Caterers (Stafford) Ltd
Theme URI: https://jenkinsonscaterers.co.uk
Author: Verve Graphic Design & Marketing Ltd
Author URI: https://verve-design.co.uk
Description: The Wedding Food Specialist
Version: 1.0
Text Domain: verve
*/

:root {

    /* COLORS */
    --color-white: #F4F4F4;
    --color-grey: #E4E1E1;
    --color-cream: #EFEDE1;
    --color-blue: #435767;
    --color-blue-light: #B6C1BC;
    --color-gold-subtle: #A5A189;
    --color-black: #000000;
    --color-mask: rgba(0, 0, 0, 0.15);
    

    /* RADIUS */
    --radius-content: 0px;
    --radius-image: 0px;

    /* PADDING */
    --padding-content: 90px;
    --padding-module: 100px;

    /* OFFSET */
    --offset-sticky: 150px;

    /* MISC */
    --header-height: 100px; 

}

body {
    /* scroll-padding-top: 80px; */
}


html {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* Internet Explorer 10+ */
}

html::-webkit-scrollbar {
    display: none; /* Safari and Chrome */
}

/* ╔═══════════════════════════════════════════════════════════════════════════════════════════════╗ */
/* ║                                          THEME                                                ║ */
/* ╚═══════════════════════════════════════════════════════════════════════════════════════════════╝ */

.btn-custom {  display: inline-flex; align-items: center; text-decoration: none; justify-content: center;  background-color: transparent; border: none; outline: none; padding: 0; height: 32px; position: relative; font-size: 0.75rem; letter-spacing: 1px; }
.btn-custom::after { content: ''; height: 1px; width: 70%; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0; transition: width 0.2s ease-in-out; }
.btn-custom:hover::after { width: 100%; }
.btn-custom[data-theme="white"] { color: var(--color-white);  }
.btn-custom[data-theme="white"]::after { background-color: var(--color-white); }
.btn-custom[data-theme="blue"] { color: var(--color-blue);  }
.btn-custom[data-theme="blue"]::after { background-color: var(--color-blue); }

/* GOOGLE FONTS */
.cormorant { font-family: "Cormorant", serif; font-optical-sizing: auto; font-weight: normal; font-style: normal; }
.mulish { font-family: "Mulish", sans-serif; font-optical-sizing: auto; font-weight: normal; font-style: normal; }

.leading { font-size: 20px; margin-bottom: 30px;  }

#header { display: flex; align-items: center; height: var(--header-height); position: absolute; top: 0; left: 0; right: 0; z-index: 10; }
.header { display: flex; align-items: center; justify-content: space-between; padding-top: 7rem;  }

.header__blur {
    background: rgb(109 109 109 / 28%);
    backdrop-filter: blur(8px);
    box-shadow: 0px 0px 16px #00000080;
    border-radius: 1rem;

    padding: .7rem; 
}

.header-menu.header__blur {
    position: absolute;
    top: 74px;
    right: 20px;
    z-index: 2001;
}

.header-enquiry.header__blur {
    font-size: 1rem;
    padding: 1rem;
}



/* hide blur bar when navigation is open */
.body-open .header__blur:not(.portal-link) {
    background: none;
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
    -webkit-box-shadow: none;
            box-shadow: none;
}



.header-enquiry {}
.header-enquiry .link { text-decoration: none; letter-spacing: 2px; text-transform: uppercase; font-size: 1.2rem; }
.header-enquiry .link:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px;  }
.header-logo { position: relative; }
.header-logo .logo { 
    display: block; width: 520px; height: 160px; transition:all 0.2s; 
    background-size: contain; background-position: center center;  background-repeat: no-repeat;
    z-index: 1;
    position: relative;
}

.header-enquiry__portal {
    margin-inline-end: 4.75rem;
}

.header-logo::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: blur(30px);
    z-index: 1;
    opacity: 0.7;
    background: black;
}





.header-logo .logo:hover { opacity: 0.8;}
/* Tools */
.header-shift { margin-top: calc(var(--header-height) * -1)}
.header-height { height: var(--header-height); }
/* Themes */
#header[data-theme="light"] {}
#header[data-theme="light"] .header-enquiry .link { color: var(--color-cream);  }
#header[data-theme="light"] .header-logo .logo { background-image: url('../svg/logo-white.svg');  }
#header[data-theme="dark"] {}
#header[data-theme="dark"] .header-enquiry .link { color: var(--color-black);  }
#header[data-theme="dark"] .header-logo .logo { background-image: url('../svg/logo-black.svg');  }

#footer { background-color: var(--color-blue); color: var(--color-white); }

.footer-top { padding-top: var(--padding-module); padding-bottom: var(--padding-module); }
.footer-bottom-wrapper {}
.footer-bottom {
    font-size: 14px; border-top: 1px solid rgba(255, 255, 255, 0.20); padding: 15px 0 50px 0; 
    display: flex; justify-content: space-between; 
}

.footer-links {
    margin: 0; padding: 0; list-style: none none; list-style-position: inside;
    display: flex;
}
.footer-links li:not(:last-child)::after { content: '|'; padding: 0 15px; color: var(--color-white); }
.footer-links li a { color:var(--color-white);  text-decoration: none; }
.footer-links li a:hover { text-decoration: underline; }

.verve-wrapper {}
a.verve { display: inline-flex; align-items: center; gap: 0 6px; text-decoration: none; transition:all 0.2s; color:var(--color-white); }
a.verve:hover { opacity: 0.7; }
a.verve .icon { display: block; position: relative; top: -1px; width: 70px; }

.footer { display: flex; gap: 0 30px; justify-content: space-around; }
.footer .cell {}
.footer .cell-logo { width: 150px; flex-shrink: 0; }
.footer .cell-menu {  }
.footer .cell-subscribe { width: 280px; flex-shrink: 0; }

.footer-logo { margin-bottom: 20px; }
.footer-logo .logo { display: block;  }
.footer-phone {}
.footer-phone a[href^="tel:"] { color:var(--color-blue-light); text-decoration: none; }
.footer-phone a[href^="tel:"]:hover { color:var(--color-white); text-decoration: underline; }
.footer-address { margin-bottom: 15px; }
.footer-socials { display: flex; gap: 0 10px;  }
.footer-socials a.link {  color:var(--color-blue-light); font-size: 28px; line-height: 1; transition:all 0.2s; }
.footer-socials a.link:hover { color:var(--color-white); }

.footer-data {
    margin: 0; padding: 0; list-style: none none; list-style-position: inside;
    display: flex; justify-content: space-between; gap: 0 30px; 
}
.footer-data > li {}
.footer-data > li.item-about {  width: 180px;  }
.footer-data > li.item-links {}
.footer-data > li.item-contact {  width: 260px;  }

dl.footer-box { margin-bottom: 0; }
dl.footer-box dt { margin-bottom: 16px; }
dl.footer-box dd { color:var(--color-blue-light); }

.menu-footer { margin: 0; padding: 0; list-style: none none; list-style-position: inside; }
.menu-footer li {}
.menu-footer li a { color:var(--color-blue-light); text-decoration: none; transition:all 0.2s;  }
.menu-footer li a:hover { color:var(--color-white); text-decoration: underline;  }

.input-email, .input-name { display: block; width: 100%; padding: 6px 12px; border: 1px solid var(--color-blue-light); color:var(--color-blue-light); font-size: var(--body-font-size); outline: none; background-color: transparent;  }
.input-name { margin-bottom: 5px; }
/* ╔═══════════════════════════════════════════════════════════════════════════════════════════════╗ */
/* ║                                         MODULES                                               ║ */
/* ╚═══════════════════════════════════════════════════════════════════════════════════════════════╝ */

.module-section { position: relative; }

.module-section[data-padding="1"] { padding-top: var(--padding-module); padding-bottom: var(--padding-module); }

.module-section[data-background="transparent"] { background-color: transparent;  }
.module-section[data-background="#FFFFFF"] { background-color: var(--color-white);  }
.module-section[data-background="#000000"] { background-color: var(--color-black); color: var(--color-white);  }
.module-section[data-background="#EDEDED"] { background-color: var(--color-grey);  }

.module-section[data-background="transparent"] + .module-section[data-background="transparent"],
.module-section[data-background="#FFFFFF"] + .module-section[data-background="#FFFFFF"],
.module-section[data-background="#000000"] + .module-section[data-background="#000000"],
.module-section[data-background="#EDEDED"] + .module-section[data-background="#EDEDED"] { margin-top: calc(var(--padding-module) * -1)}

/* MODULE 1 ------------------------------------------------------------------------------------- */


.module-1 { background-color: var(--color-black); }
.module-1 .scroll-down { width: 50px; position: absolute; bottom: 15px; left: 50%; transform: translateX(-50%); z-index: 10; text-align: center;  }
.module-1 .scroll-down button { 
    line-height: 1; display: inline-block; border: none; background-color: transparent; font-size: 38px; color: var(--color-white);
    position: relative; animation: jumping-arrow 1.5s infinite;
    outline: none !important;
}

@keyframes jumping-arrow {
  0% { top: -8px; }
  50% { top: 8px; }
  100% { top: -8px; }
}

/* swiper_Hero */
.swiper-hero {}
.swiper-hero .swiper-slide {  
    position: relative;  
    display: flex; flex-direction: column; justify-content: center; align-items: center; 
    color: var(--color-cream);
    height: calc(100vh + var(--header-height));
}
.swiper-hero .swiper-slide .mask { position: absolute; bottom:0; left:0; right:0; top:0; background-color: var(--color-mask); }
.swiper-hero .swiper-pagination { position: absolute; bottom: 15px; left: 15px; display: block; width: auto; }
.swiper-hero .swiper-pagination .swiper-pagination-bullet { transition:all 0.2s; opacity: 1; margin: 0 5px; width: 12px; height: 12px; background-color: transparent; border-radius:0; border: 1px solid var(--color-white); }
.swiper-hero .swiper-pagination .swiper-pagination-bullet-active { background-color: var(--color-white); }

.swiper-hero picture { width: 100%; height: 100%;}

.slide-content { position: absolute; bottom:0; left:0; right:0; top:0; display: flex; flex-direction: column; justify-content: center; align-items: center;   }

@keyframes animation_m1_fadein {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
.slide-content .title-wrapper,
.slide-content .date-wrapper,
.header-logo  { animation-iteration-count: 1; animation-fill-mode: forwards; animation: animation_m1_fadein ease 1.5s; }

.slide-content .title-wrapper {  width: 700px; text-align: center; margin-top: calc(var(--header-height) / 1); letter-spacing: 4px; }
.slide-content .title-wrapper.is_full { width: 100%;  }


/* MODULE 2  ------------------------------------------------------------------------------------- */

.swiper-brands .swiper-wrapper { transition-timing-function: linear; }
.swiper-brands .swiper-slide { }
.swiper-brands .swiper-slide img { filter: grayscale(100%); opacity: 0.777;  }

/* MODULE 3  ------------------------------------------------------------------------------------- */



.module-3 { 
    --off: 160px; 
    display: flex; align-items: center; justify-content: space-between; 
}
.module-3 .mod-media { position: relative; z-index: 1;  flex: 1; }
.module-3 .mod-media.as_cover { position: absolute; top: 0; left: 40%; right: 0;bottom: 0; }
.module-3 .mod-media.as_cover .ratio { position: absolute; top: 0; left: 0; right: 0;bottom: 0; }
.module-3 .mod-media.as_cover .ratio::before { display: none; }
 
.module-3 .mod-details { 
    flex-shrink: 0; display: flex; flex-direction: column; justify-content: center;  
    margin-left: calc(var(--off) * -1);  width: calc(40% + var(--off)); 
    position: relative; z-index: 2;     
}
.module-3 .mod-content[data-theme="venue"] { background-color: var(--color-venue); color: var(--color-white); }
.module-3 .to_front { z-index: 2; }
.module-3 .to_back { z-index: 1; }

.module-3 .mod-content { display: flex; width: 100%; background-color: var(--color-grey); padding: var(--padding-content); align-items: center; }
.module-3 .mod-content .inner { width: 100%; max-width: 460px;  }
.module-3 .mod-content .title-wrapper { margin-bottom: 30px; }
.module-3 .mod-content .title { margin-bottom: 0px; }
.module-3 .mod-content .leading {  }
.module-3 .mod-content .description {}
.module-3 .mod-content .description p:last-of-type { margin-bottom: 0; }
.module-3 .mod-content .actions { padding-top: 30px; }

.module-3[data-reverse="1"] {  }
.module-3[data-reverse="1"] .mod-media { order: 2;  }
.module-3[data-reverse="1"] .mod-details { 
    order: 1; width: calc(50% + var(--off));  
    margin-left:0; margin-right: calc(var(--off) * -1); 
    flex-shrink: 0;
}
.module-3[data-reverse="1"] .mod-content { justify-content: flex-end;  }
.module-3[data-reverse="1"] .mod-content.extra_width { padding-right: calc(var(--off) * 1.6); }
.module-3[data-reverse="1"] .mod-content .inner { text-align: left;  }

.module-3[data-reverse="0"][data-config="1"] { align-items: flex-end;  }
.module-3[data-reverse="0"][data-config="1"] .mod-details { padding-bottom: calc(var(--off) * 1); }

.module-3[data-reverse="0"][data-config="2"] { align-items: flex-start; }
.module-3[data-reverse="0"][data-config="2"] .mod-media { margin-top: calc(var(--off) * 0.6);   }
.module-3[data-reverse="0"][data-config="2"] .mod-details { width: 60vw;     }
.module-3[data-reverse="0"][data-config="2"] .mod-content { padding-left: calc(var(--off) * 1.6); }

/* contact form  */
.module-3-contact { padding-top: var(--padding-module); padding-bottom: var(--padding-module);  }
.module-3[data-reverse="1"][data-config="0"] .mod-content .inner { max-width: 620px; }

.module-3[data-reverse="1"][data-config="1"] { align-items: flex-end;  }
.module-3[data-reverse="1"][data-config="1"] .mod-details { padding-bottom: calc(var(--off) / 1.3); }

.cform {}
.cform .wpcf7-not-valid-tip { font-size: 11px; }
.cform .wpcf7 form .wpcf7-response-output { margin: 15px 0 0 0;  font-size: 14px; }
.cform .form-control, 
.cform .form-select { border: none; outline: none; font-size: 14px;  }
.cform-hint { margin-top: -10px; text-align: right; font-size: 14px; }
.cform-actions {}


/* MODULE 4  ------------------------------------------------------------------------------------- */

.module-4 .ratio-21x9 { --aspect-ratio: calc(9 / 20 * 100%); }
.module-4 .module-mask { position: absolute; bottom:0; left:0; right:0; top:0; background-color: var(--color-mask); }
.module-4 .module-content { 
    position: absolute; bottom:0; left:0; right:0; top:0; z-index: 10;
    z-index: 10; color: var(--color-white); 
    display: flex; align-items: center; justify-content: center; 
}
.module-4 .module-content .container-fixed { max-width: 700px; margin-left: auto; margin-right: auto; }
.module-4 .module-content .title-wrapper .title { margin-bottom: 0; }
.jarallax-cover {  width: 100%; height: 100%; object-fit: cover; position: static; }

.module-4 .ratio-vh { height: 80vh; overflow: hidden;  }

.jarallax-img { will-change: transform; }

/* MODULE 5  ------------------------------------------------------------------------------------- */
.module-5 { overflow: hidden; }
.swiper-news .swiper-wrapper { margin-right: -386px;  }
.swiper-news .swiper-slide { width: 350px; height: auto; align-self: stretch }

dl.slide-inner { display: flex; flex-direction: column; height: 100%; background-color: var(--color-white); margin-bottom: 0; }
dl.slide-inner dt { transition:all 0.2s; flex-shrink: 0; }
dl.slide-inner dt:hover { opacity: 0.8; }
dl.slide-inner dd { padding: 30px; display: flex; flex-direction: column; height: 100%;  }
dl.slide-inner dd .date { font-size: 13px; color: var(--color-gold-subtle); margin-bottom: 15px; }
dl.slide-inner dd .leading { flex: 1; font-weight: 300; line-height: 1.35;  }
dl.slide-inner dd .leading a { color:inherit; text-decoration: none;  }
dl.slide-inner dd .leading a:hover {  }
dl.slide-inner dd .actions { padding-top: 30px; }

.swiper-news-pagination { padding-top: 15px; display: flex; justify-content: flex-end; flex-direction: row-reverse; }
.swiper-news-pagination .swiper-pagination-bullet { border-radius: 0; width: 12px; height: 12px; border: 1px solid var(--color-blue); background-color: transparent; opacity: 1; }
.swiper-news-pagination .swiper-pagination-bullet-active { background-color: var(--color-blue); }

/* MODULE 6  ------------------------------------------------------------------------------------- */
.blockquote { position: relative; margin-bottom: 0; }
.blockquote::before,
.blockquote::after { 
    content: '“'; font-family: var(--headings-font-family); width: 50px; height: 50px; line-height: 1;   
    position: absolute; top: -20px; left: -50px; font-size: 50px;
    display: flex; align-items: center; justify-content: center; 
}
.blockquote::after { content: '”'; top: auto; left: auto; bottom: -30px; right: -50px; }
.blockquote .what { display: block; line-height: 1.35; font-family: var(--headings-font-family); }
.blockquote .who { padding-top: 15px; font-size: 12px; }
.blockquote .who .divider,
.blockquote .who time { font-weight: 300; }

.module-6 { }
.module-6 .module-content { position: relative; padding-top: var(--padding-module); padding-bottom: calc( var(--padding-module) / 1.5 ); }
.module-6 .module-content::before {
    content: ''; display: block; width: 51%;
    position: absolute; top: 0; right: 0; bottom: 0; z-index: 0;
    background-color: var(--color-grey);
}
.row-module-6 { position: relative; z-index: 1; justify-content: space-between; }
.row-module-6 .col-blockquote {  padding-right: var(--padding-module);    }
.row-module-6 .col-details { padding-bottom: calc( var(--padding-module) / 1.2 );  }
.row-module-6 .col-details .title-wrapper {}
.row-module-6 .col-details .title {}
.row-module-6 .col-details .leading {  margin-bottom: 15px;  }
.row-module-6 .col-details .description {}
.row-module-6 .col-details .description p:last-of-type { margin-bottom: 0; }
.row-module-6 .col-details .actions {}
.col-blockquote__pb { padding-bottom: 30px; }

.module-6 .module-actions { text-align: center; padding-top: 20px;  }
.module-6 .module-actions .btn-custom { transform: translateX(170px); }

.swiper-venues-primary { margin-bottom: 15px; transition-timing-function : linear; }
.swiper-venues-secondary {}

.swiper-venues {}
.swiper-venues .swiper-slide { width: 450px; height: auto; align-self: stretch; }


.venue-wrapper { position: relative; }
.venue-wrapper::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; transition:all 0.2s; pointer-events: none;  }
dl.venue-info { 
    display: flex; flex-direction: column; justify-content: space-between;  height: 100%; padding: 30px 60px 30px 30px; 
    position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; pointer-events: none; 
    color: var(--color-white);
}
dl.venue-info dt { opacity: 0;  transition:all 0.2s; }
dl.venue-info dt .title-wrapper { margin-bottom: 10px; }
dl.venue-info dt .title { margin-bottom: 10px; }
dl.venue-info dt hr { margin: 0; border-color: var(--color-white); width: 70px; }
dl.venue-info dt .description { line-height: 1.4; }
dl.venue-info dd { padding-top: 50px; }
dl.venue-info dd .logo { display: block; width: 90px; height: 90px;  }

.venue-wrapper:hover::after { background-color: rgba(0,0,0,0.5); }
.venue-wrapper:hover dl.venue-info dt { opacity: 1; }

.venue-sliders {
    height: 100dvh;
}

.venue-sliders .swiper-venues {
    height: 49dvh;
}

.venue-sliders .venue-wrapper {
    height: 100%;
}

.venue-sliders .venue-wrapper .ratio {
    height: 100%;
}


/* MODULE 7  ------------------------------------------------------------------------------------- */
.module-7 { 
    background-color: var(--color-black); color: var(--color-white);  
    background-size: cover; background-position: center center;  background-repeat: no-repeat;
}
.module-7[data-padding="1"] { padding-top: 200px; padding-bottom: 200px;  }
.module-7 .container { position: relative; z-index: 10; }
.module-7 .container-inner { width: 900px; padding: 0px 25px;  }
.module-7 .mask { position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 1; background-color: var(--color-mask);  }

.swiper-testimonials {}
.swiper-testimonials .swiper-slide {  padding: calc(var(--padding-module) * 2) 0; background-size: cover; background-position: center center;  background-repeat: no-repeat; }
.swiper-testimonials-pagination { }
.swiper-testimonials-pagination .swiper-pagination-bullet { transition:all 0.2s; opacity: 1; margin: 0 5px; width: 12px; height: 12px; background-color: transparent; border-radius:0; border: 1px solid var(--color-white); }
.swiper-testimonials-pagination .swiper-pagination-bullet-active { background-color: var(--color-white); }
.swiper-testimonials-pagination-wrapper { position: absolute; left: 0; right: 0; bottom: calc(var(--padding-module) / 2); }
.swiper-testimonials-pagination-wrapper .container { padding-left: 15px; }

.what.testimonialtxt { text-shadow: 2px 2px 5px rgb(0 0 0); }


/* MODULE : Map   ------------------------------------------------------------------------------------- */
.module-map { position: relative; }
.module-map .spacer { height: var(--padding-module); }
.module-map .location { width: 35%; position: absolute; top: 0; right: 0; background-color: var(--color-grey); padding: var(--padding-content);  }
.module-map .inner {}
.module-map .title-wrapper { margin-bottom: 25px; }
.module-map .title { margin-bottom: 0; }
.module-map .description { }
.module-map address { margin-bottom: 25px; }
.module-map .phones a { color: inherit; text-decoration: none; }
.module-map iframe { border: none; width: 100%; height: 80vh; }

/* MODULE 8  ------------------------------------------------------------------------------------- */
.module-8 { }
.module-8 .module-heading { margin-bottom: 30px; }
.module-8 .module-heading .heading { margin-bottom: 0; }
.module-8 .module-description { margin-bottom: 30px; }
.module-8 .module-description p:last-of-type { margin-bottom: 0; }
.process-box {}
.process-box .title { margin-bottom: 10px; }

.page-template-process .module-8 .module-heading .heading { margin-bottom: 2.125rem; }

.page-template-about .module-8 .module-heading { margin-bottom: 10px; }

/* MODULE 9  ------------------------------------------------------------------------------------- */
.module-9 { position: relative; }
.module-9::before { content: ''; position: absolute; bottom: 0; top: calc(var(--padding-module) * 2); right: 0; z-index: 1; width: 70%; background-color: var(--color-grey); }
dl.faq-box { 
    padding: 60px 70px; color: var(--color-white); background-color: var(--color-blue); 
    transition:all 0.1s; margin-bottom: 20px;
    position: relative; z-index: 2;
}
dl.faq-box dt { cursor: pointer; display: flex; align-items: center; justify-content: space-between; user-select: none;  }
dl.faq-box dt .label { margin-bottom: 0;  padding-right: 30px; }
dl.faq-box dt .icon { width: 36px; height: 36px; background-image: url('../svg/icon-plus.svg'); background-size: contain; background-position: center center;  background-repeat: no-repeat;  }
dl.faq-box[aria-expanded="true"] dt .icon { background-image: url('../svg/icon-minus.svg'); }
dl.faq-box dd { font-size: 19px; padding-top: 20px; display: none;  }

/* MODULE 10  ------------------------------------------------------------------------------------- */
.module-10 { } /* ⚠ */
.module-10 .description { font-size: 19px; }
.module-10 .blockquote-solid:last-of-type { margin-bottom: 0; }

.blockquote-solid { 
    position: relative; z-index: 2;
    margin-bottom: 50px; background-color: var(--color-blue); color: var(--color-white); padding: var(--padding-module);  
}

/* secondary */
.m10-primary { display: flex; }
.m10-primary .cell {  }
.m10-primary .cell-empty { 
    flex-shrink: 0; 
    margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2);  
}
.m10-primary .cell-empty .inner { width: var(--padding-module);  }
.m10-primary .cell-details { 
    flex: 1; background-color: var(--color-grey); 
    margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2);   
}
.m10-primary .cell-details .inner { padding: var(--padding-module);  }
/* secondary */
.m10-secondary { display: flex;  }
.m10-secondary .cell-empty { margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2);   }
.m10-secondary .cell-empty .inner { flex-shrink: 0; }
.m10-secondary .cell-details::before { 
    background-color: var(--color-grey); left: var(--padding-module);
    content: ''; position: absolute;  top: 0; right: 0; z-index: 1;  
    bottom: calc(var(--padding-module) * 1.6);
}
.m10-secondary .cell-details { position: relative; margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2); }
.m10-secondary .cell-details .inner { flex: 1; }

.testimonial-v2.m10-secondary {
    display: block;
}

.testimonial-v2.m10-secondary .cell-details::before {
    content: none;
}
.testimonial-v2.module-section.module-10 {
    position: relative;
}
.testimonial-v2.module-section.module-10::before {
    content: "";
}

.spill__pseudo::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    background: var(--color-grey);
    z-index: 1;
}

.testimonial-v2 .m10-primary {
    position: relative;
    z-index: 10;
}

.testimonial-v2.mod-content {
    background: var(--color-blue);
}

.testimonial-v2 .title-wrapper,
.testimonial-v2 .description {
    color: #fff;
    font-family: var(--headings-font-family);
}

.testimonial-v2 .who {
    padding-top: 15px;
    font-size: 12px;
}

.testimonial-v2 .blockquote-solid {
    margin-block-end: 2rem;
}

.testimonial-v2__mb {
    margin-block-end: 2.5rem;
}

.testimonial-v2 .cell.cell-details .title-wrapper,
.testimonial-v2 .cell-details .description {
    color: var(--body-font-color);
}

.testimonial-v2__top {
    color: white !important;
}


/* MODULE 11  ------------------------------------------------------------------------------------- */
.module-11 {  }
.module-11-filters { margin-bottom: calc(var(--padding-module) / 2); margin-top: calc(var(--padding-module) / -2); }
.module-11-filters ul {
    margin: 0; padding: 0; list-style: none none; list-style-position: inside;
    display: flex; align-items: center; justify-content: center; gap: 0 10px; 
}
.module-11-filters ul li {}
.module-11-filters ul li a.link { 
    display: inline-block; background-color: var(--color-white); padding: 6px 12px; 
    color: var(--color-blue); transition:all 0.2s; font-size: 13px;
    text-transform: uppercase;  text-decoration: none;
}
.module-11-filters ul li a.link:hover,
.module-11-filters ul li a.link-active  { background-color: var(--color-blue); color: var(--color-white) }

.blogs {
    margin: 0 -10px; padding: 0; list-style: none none; list-style-position: inside;
    display: flex; align-items: stretch;  flex-wrap: wrap; 
}
.blogs .item { padding: 0 10px; margin-bottom: 20px; width: 33.33%;  }

dl.boxed { background-color: var(--color-white); height: 100%; display: flex; flex-direction: column;  }
dl.boxed dt { flex-shrink: 0; transition:all 0.2s; }
dl.boxed dt:hover { opacity: 0.8;}
dl.boxed dd { padding: 30px; height: 100%; display: flex; flex-direction: column; }
dl.boxed dd .date { font-size: 13px; color: var(--color-black); margin-bottom: 15px; opacity: 0.5; }
dl.boxed dd .title-wrapper {}
dl.boxed dd .title { font-family: var(--body-font-family); font-size: 22px; font-weight: 300; line-height: 1.35; margin-bottom: 0;  }
dl.boxed dd .description { flex: 1; }
dl.boxed dd .actions { padding-top: 20px; }

/* MODULE 12  ------------------------------------------------------------------------------------- */
/* single.php */

/* MODULE 13  ------------------------------------------------------------------------------------- */
.module-13 {}
    /* primary */
.m13-primary { display: flex; }
.m13-primary .cell {  flex: 1; }
.m13-primary .cell-details { 
    margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2);
    flex-shrink: 0;   
    padding-top: var(--padding-module); padding-bottom: var(--padding-module); padding-right: calc( var(--padding-module) * 3 );
}
.m13-primary .cell-details[data-theme="venue"] { background-color: var(--color-venue); color: var(--color-white); }
.m13-primary .cell-logo { 
    margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2);
    flex-shrink: 0; text-align: right;  
}
.m13-primary .cell-logo .inner { width: 300px; }
.m13-primary .cell-logo .ratio { display: inline-block; width: 180px; }
    /* secondary */
.m13-secondary { display: flex; margin-top: calc(var(--padding-module) * -2); }
.m13-secondary .cell {  flex: 1; }
.m13-secondary .inner {  width: 50vw;  }
.m13-secondary .cell-empty { margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2);   }
.m13-secondary .cell-media { margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2);  }
.m13-secondary .cell-media .inner { aspect-ratio: 16 / 9; }



/* MODULE 14  ------------------------------------------------------------------------------------- */
.module-14 {}
    /* primary 
.m14-primary { display: flex; }
.m14-primary .cell {  flex: 1; }
.m14-primary .cell-empty { margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2);   }
.m14-primary .cell-media { margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2); }
.m14-primary .cell-media .inner { width: 60vw; flex-shrink: 0; aspect-ratio: 16 / 9; }
*/
    /* secondary 
.m14-secondary { display: flex;  }
.m14-secondary .cell { flex: 1; }
.m14-secondary .cell-empty { margin-left: calc((-100vw + 100%) / 2); padding-left: calc((100vw - 100%) / 2);   }
.m14-secondary .cell-details { 
    margin-right: calc((-100vw + 100%) / 2); padding-right: calc((100vw - 100%) / 2);
    background-color: var(--color-venue); color: var(--color-white);
}
.m14-secondary .cell-details .inner { 
    width: 50vw; flex-shrink: 0; 
    padding-top: var(--padding-module); padding-left: var(--padding-module); padding-bottom: var(--padding-module);
}
*/


/* MODULE 15  ------------------------------------------------------------------------------------- */


/* MODULE 16  ------------------------------------------------------------------------------------- */


/* MODULE 17  ------------------------------------------------------------------------------------- */
.module-17 { background-size: cover; background-position: center center;  background-repeat: no-repeat; }
.module-17 .mask { position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 1; background-color: var(--color-mask);  }
.module-17 .container { position: relative; z-index: 10; }
.module-17-row { display: flex; gap: 0 100px;  }
.module-17-row .module-logo { width: 220px; flex-shrink: 0; }
.module-17-row .module-content { flex: 1; width: 100%; }
.module-spacer-bottom { height: calc(var(--padding-module) / 2); }


.title.h1.text-uppercase { text-shadow: 0 0 30px rgba(0, 0, 0, 0.9), 0 0 30px rgba(0, 0, 0, 0.9), 0 0 30px rgba(0, 0, 0, 0.9), 0 0 30px rgba(0, 0, 0, 0.9); }

.body-open .hamburger-overlay { z-index: 2000; }

.hamburger-overrlay__button {
    position: absolute;
    right: 47px;
    top: 60px;
}

.navigation-checkbox-mob {
    visibility: hidden;
}

.swiper-hero { overflow: hidden; }
.module-3 { overflow: hidden; }

/* MENU TEMPLATE  ------------------------------------------------------------------------------------- */

.menu-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    
}


/* === Menus Page Styling === */

.menu-hero {
    padding: 250px 20px 80px;
    text-align: center;
}

.menu-hero-inner {
    
    margin: 0 auto;
}

.menu-title {
    color: #ffffff;
    font-size: 3rem;
    font-weight: 400;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    margin: 0;
    position: relative;
}

.menu-title::after {
    content: "";
    display: block;
    width: 80px;
    height: 2px;
    background: #ffffff;
    margin: 30px auto 0;
    opacity: 0.7;
}

/* Main content spacing */
.menu-main {
    padding: 100px 0;
}

/* Big, premium content area */
.menu-content {
    padding: 0 20px;
}

.menu-container {
    max-width: 1800px;
    margin: 0 auto;
}

/* Flipbook / iframe / embed friendliness */
.menu-container iframe,
.menu-container embed,
.menu-container object {
    width: 100%;
    min-height: 80vh;
    border: none;
}

/* Optional subtle frame */
.menu-container > * {
    background: #ffffff;
    padding: 40px;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
}

@media (max-width: 991.98px){
    .menu-hero {
        padding: 200px 20px 80px;
        
    }
}

/* ╔═══════════════════════════════════════════════════════════════════════════════════════════════╗ */
/* ║                                       BREAKPOINTS                                             ║ */
/* ╚═══════════════════════════════════════════════════════════════════════════════════════════════╝ */
@media (min-width: 576px) {}
@media (min-width: 768px) {}
@media (min-width: 992px) {}
@media (min-width: 1280px) {}
@media (min-width: 1366px) {
    .container { max-width: 1170px; } 
}
@media (min-width: 1440px) {}
@media (min-width: 1600px) {
    .module-3 .mod-content { min-height: 70vh; }

    .col-blockquote__pb { margin-left: -6rem; }
}
@media (min-width: 1920px) {} /* 1920px & Up */


/* ╔══════════════════════════════════════════════════════════════════════════════════════════════════════╗ */
/* ║ ####################################   DEVELOPMENT BREAKPOINTS   ##################################  ║ */
/* ╚══════════════════════════════════════════════════════════════════════════════════════════════════════╝ */
/* 4XL */ @media (max-width: 1919.98px) { } /* @media -----------------------------------| width < 1920px |-------------------------------------------*/
/* 3XL */ @media (max-width: 1599.98px) { } /* @media -----------------------------------| width < 1600px |-------------------------------------------*/
/* 2XL */ @media (max-width: 1439.98px) {} /* @media -----------------------------------| width < 1440px |-------------------------------------------*/
/* XL */ @media (max-width: 1365.98px) {

    .swiper-news .swiper-wrapper { margin-right: -438px; }
    .row-module-6 .col-blockquote { margin-left: var(--padding-content); }
    .module-6 .module-content::before { width: 50%; }

} /* @media -----------------------------------| width < 1366px |-------------------------------------------*/

/* LG */ 
@media (max-width: 1279.98px) {

    :root {
        --padding-module: 70px;
        --padding-content: 50px;
    }

    .swiper-news .swiper-wrapper { margin-right: -297px; }

    .module-map .title-wrapper { margin-bottom: 15px; }

    .footer { flex-wrap: wrap; justify-content:flex-start; }
    .footer .cell-menu { order: 1; width: 100%; margin-bottom: 40px;   }
    .footer .cell-logo { order: 2; width: 160px; }
    .footer .cell-subscribe { order: 3; flex: 1;  }
    .footer-bottom { padding-bottom: 15px; }

    .module-17-row { flex-wrap: wrap; }
    .module-17-row .module-logo { width: 100%; margin-bottom: var(--padding-content); }
    .module-17-row .module-logo .logo { display: block;  width: 220px; }
    .module-17-row .module-content { width: 100%; }

    .header-logo .logo {
        width: 350px;
        height: 130px;
    }


} /* @media -----------------------------------| width < 1200px |-------------------------------------------*/

/* MD */ @media (max-width: 991.98px) {

    :root {
        --padding-module: 60px;
        --padding-content: 40px;
    }

    .swiper-news .swiper-wrapper { margin-right: -190px; }

    .leading { font-size: 18px; margin-bottom: 20px; }
    .module-10 .description { font-size: 18px; }
    .footer-bottom { font-size: 13px; }
    dl.footer-box dt { margin-bottom: 12px; }

    .module-3 .mod-content .title-wrapper { margin-bottom: 20px; }

    .module-3 { --off: 0px; flex-wrap: wrap; flex-direction: column; position: relative; } 
    .module-3 .mod-details { width: 100%; order: 1; flex: auto;  }
    .module-3 .mod-content .inner { max-width: 100%; }
    .module-3 .mod-media { width: 100%; order: 2; flex: auto;  }
    .module-3 .mod-media.as_cover { position: relative; display: block; width: 100%; height: 50vh; left: 0; }
    .module-3[data-reverse="1"] .mod-details  { width: 100%; margin: 0;  }

    .module-3[data-reverse="0"][data-config="2"] .mod-details { width: 100%; }
    .module-3[data-reverse="0"][data-config="2"] .mod-content { padding-left: var(--padding-content); }

    .module-7 .container-inner { width: 100%; }
    .module-4 .module-content .container-fixed { max-width: 100%; padding-left: var(--padding-content); padding-right: var(--padding-content); }

    .module-11-filters ul { flex-wrap: wrap; }
    .module-11-filters ul li { margin-bottom: 10px; }
    .blogs .item { width: 50%; }
    dl.boxed dd .title { font-size: 18px; }

    dl.faq-box { padding: 30px 40px; }
    dl.faq-box dd  { font-size: 18px; }

    .module-6 .module-content::before { display: none; }
    .row-module-6 > [class^="col-"] { width: 100%; }
    .row-module-6 .col-blockquote { margin-bottom: var(--padding-content); }

    .slide-content .title-wrapper { width: 100%; padding: 0 30px;}


    .m13-primary { flex-wrap: wrap; flex-direction: column;  }
    .m13-primary .cell { flex: auto; width: 100%; }
    .m13-primary .cell-details { order: 2; margin-left: 0; padding: var(--padding-content);   }
    .m13-primary .cell-logo .inner { width: 100%; }
    .m13-primary .cell-logo { order: 1; margin-right: 0; padding-right: 0; text-align: center; margin-bottom: 20px;   }
    .m13-secondary { margin-top: 0;  flex-wrap: wrap; flex-direction: column;  }
    .m13-secondary .cell { flex: auto; width: 100%; }
    .m13-secondary .cell-empty { margin-left: 0; padding-left: 0; display: none;  }
    .m13-secondary .cell-media { margin-right: 0; padding-right: 0;  }
    .m13-secondary .inner { width: 100%; }




} /* @media -----------------------------------| width < 992px |-------------------------------------------*/

/* SM */ @media (max-width: 767.98px) {

    :root {
        --padding-module: 50px;
        --padding-content: 30px;
    }

    .swiper-news .swiper-wrapper { margin-right: -88px; }

    .header-logo .logo { width: 170px; height: 54px; }
    .leading { font-size: 17px; }
     dl.faq-box dd  { font-size: 17px; }
    .module-10 .description { font-size: 17px; }
    .module-map .location { width: 60%; }
    .footer-bottom { flex-wrap: wrap; }
    .footer-bottom .primary,
    .footer-bottom .secondary { width: 100%; text-align: center;  }
    .footer-links { justify-content: center;  margin-bottom: 20px; }
    .module-6 .module-actions .btn-custom { transform: translateX(130px); }

    .row-module-6 .col-blockquote { margin: 0; }

    .blockquote::after { right: -40px; }
    .blockquote::before { left: -20px; }

    .header__blur { margin-block-start: 0; }


 
} /* @media -----------------------------------| width < 768px |-------------------------------------------*/

/* XS */ 
@media (max-width: 575.98px) and (orientation:landscape) {}
@media (max-width: 575.98px) { 

    :root {
        --padding-module: 40px;
        --padding-content: 20px;
    }

     .swiper-news .swiper-wrapper { margin-right: 4px; }


    .footer-data { flex-wrap: wrap; }
    .footer-data > li,
    .footer-data > li.item-about { width: 100%; margin-bottom: 20px;  }

    .footer .cell,
    .footer .cell-logo { width: 100%; }

    .footer-logo .logo { max-width: 200px; }

    .footer-links { flex-wrap: wrap; }
    .footer-links li { width: 100%; }
    .footer-links li:not(:last-child)::after { display: none; }
 


    .module-map .location { width: 100%; }
    .module-map .location { position: static; }
    .module-map .spacer { display: none; }
    .module-map iframe { height:60vh; }

    .blogs .item { width: 100%; }
    dl.faq-box { padding: 25px 30px; }

   
} /* @media -----------------------------------| width < 576px |-------------------------------------------*/

/* XXS */ @media screen and (min-width: 320px) and (max-width: 767.98px) and (orientation: landscape) { }
@media (max-width: 319.98px) {  

   
} /* @media -----------------------------------| width < 320px |-------------------------------------------*/
/* ════════════════════════════════════════════╣     END    ╠════════════════════════════════════════════ */
/* ╔══════════════════════════════════════════════════════════════════════════════════════════════════════╗ */
/* ║                                 ¡ NO STYLES BELOW THIS LINE PLEASE !                                 ║ */
/* ╚══════════════════════════════════════════════════════════════════════════════════════════════════════╝ */





