/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1770756714
Updated: 2026-02-10 20:51:54
*/

html,
body {
    overscroll-behavior: none;
    -webkit-overflow-scrolling: touch;
}

body {
    overflow-wrap: break-word;
}

div[data-elementor-type="wp-page"],
div[data-elementor-type="wp-post"] {
    overflow: clip;
}

/* ------------------------------------------------------------ */
/* Utility / Custom Classes */
/* ------------------------------------------------------------ */
:root {
    --space-xl: 60px;
    --space-l: 48px;
    --space-m: 24px;
    --space-s: 16px;
    --space-xs: 12px;

    --radius-xl: 200px;
    --radius-l: 24px;
    --radius-m: 12px;
    --radius-s: 4px;
}

@media (width >= 768px) {
    :root {
        --space-xl: 108px;
        --space-l: 84px;
        --space-m: 48px;
        --space-s: 36px;
        --space-xs: 12px;

        --radius-xl: 200px;
        --radius-l: 48px;
        --radius-m: 16px;
        --radius-s: 4px;
    }
}

.very-bold {
    font-weight: 1000 !important;
}

.uppercase {
    text-transform: uppercase !important;
}

.bigger {
    font-size: 120% !important;
    line-height: 1.4em;
}

.smaller {
    font-size: 80% !important;
    line-height: 1.4em;
}

.center {
    text-align: center !important;
}

.left {
    text-align: left !important;
}

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

.hidden {
    display: none !important;
}

.nowrap {
    white-space: nowrap;
}

.disclaimer {
    color: #757575;
    font-size: 90%;
    line-height: 1.5;
    font-style: italic;
    font-weight: 400;
}

.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }

.max-xl {
    max-width: 1200px !important;
    text-wrap: balance;
	margin:0 auto;
}

.max-l {
    max-width: 1000px !important;
    text-wrap: balance;
	margin:0 auto;
}

.max-m {
    max-width: 800px !important;
    text-wrap: balance;
	margin:0 auto;	
}

.max-s {
    max-width: 600px !important;
    text-wrap: balance;
	margin:0 auto;	
}

.max-xs {
    max-width: 400px !important;
    text-wrap: balance;
	margin:0 auto;	
}

/* ------------------------------------------------------------ */
/* Theme Colors */
/* ------------------------------------------------------------ */
.yellow { color: var(--e-global-color-primary) !important; }
.blue { color: var(--e-global-color-secondary) !important; }
.gray { color: var(--e-global-color-text) !important; }
.green { color: var(--e-global-color-cecfec9) !important; }
.orange { color: var(--e-global-color-9cc8d4c) !important; }
.magenta { color: var(--e-global-color-18d629d) !important; }
.white { color: #ffffff !important; }
.black { color: #000000 !important; }
.red { color: #ED1C24 !important; }

.elementor-kit-7 {
    --yellow: var(--e-global-color-primary);
    --blue: var(--e-global-color-secondary);
    --gray: var(--e-global-color-text);
    --green: var(--e-global-color-cecfec9);
    --orange: var(--e-global-color-9cc8d4c);
    --magenta: var(--e-global-color-18d629d);
    --white: #ffffff;
    --black: #000000;
    --red: #ED1C24;
	
	--radius: 37px;
}
/* Extend hero gradient into following section */
/* State values */
body.intro-section-filled {
    --intro-overlap: 20rem;
}

body.intro-section-empty {
    --intro-overlap: 40rem;
}


/* Shared spacing behavior */
body:is(.intro-section-filled, .intro-section-empty) div:has(> .window-image-wrapper) {
    padding-block-end: var(--intro-overlap);
    position: relative;
    z-index: 0;
}

body.intro-section-filled .elementor > .e-parent:has(.window-image-wrapper) + .e-parent {
    margin-block-start: -35rem;
    z-index: 2;
}

body.intro-section-empty .elementor > .e-parent:has(.window-image-wrapper) + .e-parent {
    margin-block-start: -80rem;
    z-index: 2;
}


/* Theme tokens - solid header pages only */
body.header-style-solid.theme-blue {
    --intro-base: var(--blue);
}

body.header-style-solid.theme-magenta {
    --intro-base: var(--magenta);
}

body.header-style-solid.theme-orange {
    --intro-base: var(--orange);
}

body.header-style-solid.theme-green {
    --intro-base: var(--green);
}


/* Default header pages: magenta > blue > white */
body.header-style-default-gradient.intro-section-filled .gradient-bg {
    background-image:
        linear-gradient(
            180deg,
            transparent 0%,
            transparent 62%,
            var(--white) 100%
        ),
        linear-gradient(
            180deg,
            var(--magenta) 25%,
            transparent 62%
        ),
        linear-gradient(
            180deg,
            var(--blue) 35%,
            var(--blue) 72%,
            transparent 100%
        );
}

/* Default header pages: EMPTY intro gets lighter version */




body.header-style-default-gradient.intro-section-empty .gradient-bg {
    background-image:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.75) 0%,
            rgba(255,255,255,0.75) 100%
        ),
        linear-gradient(
            180deg,
            transparent 0%,
            transparent 62%,
            var(--white) 100%
        ),
        linear-gradient(
            180deg,
            var(--magenta) 25%,
            transparent 62%
        ),
        linear-gradient(
            180deg,
            var(--blue) 35%,
            var(--blue) 72%,
            transparent 100%
        );
}



/* Solid header pages with filled intro: theme color > white */

/* ✅ Fallback — iOS 14–16.3 and anything without color-mix support */
body.header-style-solid.intro-section-filled .gradient-bg {
    background-image: linear-gradient(
        180deg,
        var(--intro-base) 60%,   /* solid theme color covers most of the div */
        var(--white) 100%        /* simple clean fade to white at the very end */
    );
}

/* ✅ Modern — iOS 16.4+ only */
@supports (color: color-mix(in srgb, red 50%, blue)) {
    body.header-style-solid.intro-section-filled .gradient-bg {
        background-image: linear-gradient(
            180deg,
            var(--intro-base) 55%,
            color-mix(in srgb, var(--intro-base) 75%, var(--white)) 72%,
            color-mix(in srgb, var(--intro-base) 55%, var(--white)) 84%,
            color-mix(in srgb, var(--intro-base) 30%, var(--white)) 94%,
            var(--white) 100%
        );
    }
}




/* Solid header pages with NON-filled intro: theme color > white */

/* ✅ Fallback — iOS 14 and anything without color-mix support */
body.header-style-solid.intro-section-empty .gradient-bg {
    background-image: 
        linear-gradient(
            180deg,
            rgba(255,255,255,0.45) 0%,
            rgba(255,255,255,0.45) 100%
        ),
        linear-gradient(
            180deg,
            var(--intro-base) 15%,
            rgba(255,255,255,0.85) 86%,
            rgba(255,255,255,0.92) 91%,
            var(--white) 100%
        );
}

/* ✅ Modern — iOS 16.4+ only, completely replaces the above */
@supports (color: color-mix(in srgb, red 50%, blue)) {
    body.header-style-solid.intro-section-empty .gradient-bg {
        background-image: 
            linear-gradient(
                180deg,
                rgba(255,255,255,0.45) 0%,
                rgba(255,255,255,0.45) 100%
            ),
            linear-gradient(
                180deg,
                color-mix(in srgb, var(--intro-base) 100%, transparent) 15%,
                color-mix(in srgb, color-mix(in srgb, var(--intro-base) 65%, var(--white)) 15%, transparent) 86%,
                color-mix(in srgb, color-mix(in srgb, var(--intro-base) 48%, var(--white)) 15%, transparent) 91%,
                var(--white) 100%
            );
    }
}



/* Sales pages: EMPTY intro — yellow > white */

/* ✅ Fallback — iOS 14–16.3 */
body.header-style-sales-gradient.intro-section-empty .gradient-bg {
    background-image: linear-gradient(
        180deg,
        var(--yellow) 0%,
        var(--white) 100%
    );
}

/* ✅ Modern — iOS 16.4+ */
@supports (color: color-mix(in srgb, red 50%, blue)) {
    body.header-style-sales-gradient.intro-section-empty .gradient-bg {
        background-image: linear-gradient(
            180deg,
            var(--yellow) 0%,
            color-mix(in srgb, var(--yellow) 15%, var(--white)) 55%,
            color-mix(in srgb, var(--yellow) 5%, var(--white)) 80%,
            var(--white) 100%
        );
    }
}




.intro-section-top > .e-con-inner {
    max-width: 100ch;
}

/* Intro section stays white */
body:is(.header-style-default-gradient, .header-style-solid) .intro-section-top,
body:is(.header-style-default-gradient, .header-style-solid) .intro-section-top h1,
body:is(.header-style-default-gradient, .header-style-solid) .intro-section-top h2,
body:is(.header-style-default-gradient, .header-style-solid) .intro-section-top h3,
body:is(.header-style-default-gradient, .header-style-solid) .intro-section-top p {
    color: var(--white);
    text-align: center;
    text-wrap: balance;
}

/* Default themed headings after hero/intro - solid header pages only */
body.header-style-solid[class*="theme-"] :where(.elementor > .e-parent:has(.window-image-wrapper) ~ .e-parent) :is(h1, h2, h3, h4, h5) {
    color: var(--intro-base);
}




_::-webkit-full-page-media, _:future, :root .window-image1 h1,
_::-webkit-full-page-media, _:future, :root .window-image1 h2,
_::-webkit-full-page-media, _:future, :root .window-image1 h3,
_::-webkit-full-page-media, _:future, :root .window-image1 h4,
_::-webkit-full-page-media, _:future, :root .window-image1 h5,
_::-webkit-full-page-media, _:future, :root .window-image1 h6,
_::-webkit-full-page-media, _:future, :root .window-image1 p {
    text-shadow: 0 0 13px rgba(0, 0, 0, 0.35)!important;
}



/* Solid header color by selected theme */
body.header-style-solid.theme-blue .elementor-5303 .elementor-element.mainNav::before {
    background-color: var(--blue);
    background-image: none;
	mix-blend-mode: normal;
}

body.header-style-solid.theme-magenta .elementor-5303 .elementor-element.mainNav::before {
    background-color: var(--magenta);
    background-image: none;
	mix-blend-mode: normal;
}

body.header-style-solid.theme-orange .elementor-5303 .elementor-element.mainNav::before {
    background-color: var(--orange);
    background-image: none;
	mix-blend-mode: normal;
}

body.header-style-solid.theme-green .elementor-5303 .elementor-element.mainNav::before {
    background-color: var(--green);
    background-image: none;
	mix-blend-mode: normal;
}




/* ------------------------------------------------------------ */
/* Typography */
/* ------------------------------------------------------------ */
p + h1,
p + h2,
p + h3,
p + h4,
p + h5,
p + h6,
ul + p,
ol + p,
ul + h1,
ol + h1,
ul + h2,
ol + h2,
ul + h3,
ol + h3,
ul + h4,
ol + h4,
ul + h5,
ol + h5,
ul + h6,
ol + h6 {
    margin-top: 0.75em;
}

p {
    margin-bottom: 1em;
}

ol,
ul {
    line-height: 1.4;
}

ol > li,
ul > li {
    margin-bottom: 3px;
}

ul ul,
ol ul {
    list-style-type: disc;
}

ul {
    margin-left: 1em;
}

ol {
    padding-left: 1.5em;
}

blockquote {
    font-style: italic;
}

.elementor hr {
    background-color: #bcbcbc;
}

pre,
code,
kbd,
tt,
var {
    font-size: inherit;
}

body:not(.home) .elementor-element-d470721 {
    background-image: none !important;
}

.mec-owl-carousel .owl-nav.disabled {
    display: block !important;
}

li::marker {
    color: var(--magenta);
}

/* ------------------------------------------------------------ */
/* Card Framework */
/* ------------------------------------------------------------ */
.elementor-element.Card {
    --Card-radius: var(--radius);
    --Card-border-w: 5px;
    --Card-border-color: var(--yellow);
    --Card-bg: var(--blue);
    --Card-hover-y: -8px;
    --Card-transition: 0.3s ease-in-out;

    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform var(--Card-transition), box-shadow var(--Card-transition);

    border-style: solid;
    border-width: var(--Card-border-w);
    border-color: var(--Card-border-color);
    border-radius: var(--Card-radius);
    background-color: var(--Card-bg);

    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
}

.elementor-element.Card > .elementor-widget-image {
    margin: 0;
    line-height: 0;
}

.elementor-element.Card > .elementor-widget-image img {
    width: 100%;
    height: auto;
    display: block;
}

.elementor-element.Card > .e-con {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    --padding-top: 0.5em;
    --padding-bottom: 1em;
    --padding-left: 2rem;
    --padding-right: 2rem;
}

.elementor-element.Card .elementor-heading-title,
.elementor-element.Card .elementor-widget-text-editor {
    color: #ffffff;
}

.elementor-element.Card:hover {
    transform: translateY(var(--Card-hover-y));
}

.elementor-element.Card .elementor-heading-title a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 10;
}

.elementor-element.Card.Scoop > .elementor-widget-image img {
    clip-path: ellipse(108% 85% at 50% 15%);
}

.elementor-element.Card.Scoop > .e-con {
    --align-items: center;
    --gap: 1rem;
    --row-gap: 1rem;
    --column-gap: 1rem;
}

.elementor-element.Card.Scoop .elementor-heading-title,
.elementor-element.Card.Scoop .elementor-widget-text-editor {
    text-align: center;
}

.elementor-element.Card.Glass {
    background-color: transparent;
}

.elementor-element.Card.Glass > .e-con {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    padding: 40px;
}

.elementor-element.Card.Glass .elementor-heading-title,
.elementor-element.Card.Glass .elementor-widget-text-editor {
    color: inherit;
}

/* BEGIN FlipCard css */
.FlipCard .elementor-flip-box__layer {
    background-color: var(--e-global-color-primary);
    border-radius: var(--radius);
    border: 5px solid var(--e-global-color-primary);
}

.FlipCard .elementor-flip-box__front {
    display: flex;
    align-items: flex-end;
/*     background-size: 100% calc(100% - 6rem)!important; */
	background-size:cover;
    background-position: center top!important;
    background-repeat: no-repeat;
}

.FlipCard .elementor-flip-box__front .elementor-flip-box__layer__inner {
	z-index:2;
}

.FlipCard .elementor-flip-box__front .elementor-flip-box__layer__overlay {
    padding:var(--space-xs);
	padding-bottom:0;	
    text-align: center;
    justify-content: flex-end;
    border-radius: var(--radius);
} 

.FlipCard .elementor-flip-box__front .elementor-flip-box__layer__overlay::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -5px;
    height: 10rem;
    background: var(--e-global-color-primary);
	border-radius: 0 0 var(--radius) var(--radius);
	clip-path: polygon(
		0% 8%,
		5% 15%,
		10% 21%,
		15% 27%,
		20% 32%,
		25% 36%,
		30% 39%,
		35% 42%,
		40% 44%,
		45% 45%,
		50% 45%,
		55% 45%,
		60% 44%,
		65% 42%,
		70% 39%,
		75% 36%,
		80% 32%,
		85% 27%,
		90% 21%,
		95% 15%,
		100% 8%,
		100% 100%,
		0% 100%
	);
}

.FlipCard .elementor-flip-box__front .elementor-flip-box__layer__title,
.FlipCard .elementor-flip-box__layer__description{
/*     margin:0; */
    color: var(--e-global-color-text);
	font-weight:700!important;
}

.FlipCard .elementor-flip-box__back .elementor-flip-box__layer__overlay {
    padding-top:55px;
}

.FlipCard .elementor-flip-box__back .elementor-flip-box__layer__title {
    color: var(--blue);
}


.FlipCard .elementor-flip-box__back .elementor-flip-box__layer__inner {
    height: 100%!important;
    display: flex;
    flex-direction: column;
}

.FlipCard .elementor-flip-box__back .elementor-flip-box__button {
    margin-top: auto;
    color: var(--e-global-color-text);
    background-color: var(--white);
}
/* END FlipCard css */



/* ------------------------------------------------------------ */
/* Images / Buttons */
/* ------------------------------------------------------------ */
.rounded-image,
.rounded-image img {
    border-radius: var(--radius) !important;
}

.secondary-button a {
    background-color: #fff !important;
}

.secondary-button a:hover {
    background-color: var(--e-global-color-primary) !important;
}

/* ------------------------------------------------------------ */
/* MEC Updates */
/* ------------------------------------------------------------ */
.mec-event-data-fields {
    display: block;
    background-image: none !important;
    height: auto !important;
    position: static !important;
    margin: 0 !important;
    width: auto !important;
}

.mec-data-fields-tooltip {
    position: static !important;
    width: auto !important;
    box-shadow: none !important;
    border: none !important;
    background-color: transparent !important;
    z-index: 2 !important;
    transform: none !important;
    visibility: initial !important;
    display: block !important;
    opacity: initial !important;
}

.mec-data-fields-tooltip-box {
    padding: 0 !important;
}

ul.mec-event-data-field-items {
    padding: 0 !important;
    overflow: hidden !important;
}

li.mec-event-data-field-item.mec-field-item-text {
    margin: 0 !important;
    padding: 0 !important;
}

span.mec-event-data-field-name {
    display: none;
}

span.mec-event-data-field-value {
    display: block;
    margin: 0 !important;
}

.mec-wrap [id^=mec_skin_events_] .mec-event-data-fields .mec-data-fields-tooltip:before {
    display: none !important;
}

header .elementor-slide-heading {
    display: flex;
}

#mec_skin_223 article,
#mec_skin_223 h4.mec-event-title {
    margin: 0;
    padding: 0;
}

#mec_skin_223 .mec-event-image,
#mec_skin_223 .mec-event-date.mec-color,
#mec_skin_223 .mec-event-time.mec-color,
#mec_skin_223 span.event-color {
    display: none;
}

#mec_skin_223 h4.mec-event-title {
    font-size: 0;
}

#mec_skin_223 span.mec-event-data-field-value {
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    color: white !important;
    display: block;
}

body.elementor-editor-active #today-open-hours .elementor-slide-heading {
    font-size: 0 !important;
}

body.elementor-editor-active #today-open-hours .elementor-slide-heading .mec-wrap {
    display: none !important;
}

body.elementor-editor-active #today-open-hours .elementor-slide-heading > strong {
    font-size: initial !important;
}

.mec-type5-card {
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    --display: flex;
    min-height: 500px;
    border-style: solid;
    border-width: 5px;
    border-color: var(--e-global-color-primary);
    border-radius: var(--radius);
    box-shadow: 0 0 12px 5px rgba(0, 0, 0, 0.4);
    margin: 7px;
}

.mec-type5-card.mec-type5-card {
    position: relative;
    overflow: hidden;
}

.mec-type5-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: transparent;
    background-image: linear-gradient(180deg, #00000005 53%, #000000 74%);
    opacity: 0.65;
    pointer-events: none;
    transition: background var(--overlay-transition, .3s), border-radius var(--border-transition, .3s), opacity var(--overlay-transition, .3s);
}

.mec-type5-event-logo {
    width: auto !important;
    height: auto !important;
    max-width: 60%;
    max-height: 40%;
    margin: auto;
}

.mec-type5-card .mec-type5-content {
    position: absolute;
    padding: 2em;
    bottom: 0;
}

.mec-type5-card h3.mec-type5-title,
.mec-type5-card h6.mec-type5-special-date {
    color: white;
}

.mec-type5-card h6.mec-type5-special-date {
    font-weight: 500;
    text-transform: none;
    margin-bottom: 0.5em;
}

.mec-type5-card h6.mec-type5-read-more {
    font-weight: 700;
    margin-bottom: 0;
    text-transform: uppercase;
    color: var(--e-global-color-primary);
}

.mec-wrap .mec-event-carousel-type2 .owl-next,
.mec-wrap .mec-event-carousel-type2 .owl-prev,
.mec-wrap .mec-event-carousel-type3 .owl-next,
.mec-wrap .mec-event-carousel-type3 .owl-prev,
.mec-wrap .mec-event-carousel-type4 .owl-next,
.mec-wrap .mec-event-carousel-type4 .owl-prev {
    top: 44% !important;
}

.mec-owl-carousel .owl-nav .owl-prev,
.mec-owl-carousel .owl-nav .owl-next {
    background: rgba(255, 180, 0, 0.9) !important;
    border-radius: 100% !important;
    box-shadow: 0 0 7px 1px rgba(0, 0, 0, .3);
    color: #444 !important;
    display: inline-block !important;
    font-size: 14px !important;
    padding: 9px !important;
    position: absolute;
    -webkit-transition: all .5s !important;
    -moz-transition: all .5s;
    -o-transition: all .5s !important;
    transition: all .5s !important;
}

.mec-event-carousel-type2 .owl-next i,
.mec-event-carousel-type2 .owl-prev i,
.mec-event-carousel-type3 .owl-next i,
.mec-event-carousel-type3 .owl-prev i,
.mec-event-carousel-type4 .owl-next i,
.mec-event-carousel-type4 .owl-prev i {
    font-size: 27px;
    color: #fff !important;
}

.mec-owl-carousel .owl-nav .owl-prev:hover,
.mec-owl-carousel .owl-nav .owl-next:hover {
    background: #fff;
    cursor: pointer;
}

@media (max-width: 1550px) {
    .mec-event-carousel-type3 .owl-next {
        right: -8px;
    }

    .mec-event-carousel-type3 .owl-prev {
        left: -8px;
    }
}









/* ------------------------------------------------------------ */
/* Hero / Window Image System */
/* ------------------------------------------------------------ */

.window-image1 {
    --yellow-color: var(--e-global-color-primary);
    --h-radius: 80vw;
    --v-radius: 34vw;
    --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
    --text-shadow: 0 0 13px #000000;
	margin-top: -310px!important;
    position: relative;
    z-index: 1;
}

body .window-image1.e-con-full.e-con.e-flex {
    position: relative !important;
    overflow: visible !important;
    border-radius: 0 !important;
    min-height: 68vw !important;
    -webkit-clip-path: var(--portal-shape) !important;
    clip-path: var(--portal-shape) !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
    will-change: clip-path;
    background-size: cover !important;
    background-position: center top !important;
}

.window-image1::before {
    z-index: 2;
}

.window-image1[data-hero-opacity="light"]::before,
.window-image1[data-hero-opacity="light"] .elementor-background-video-container:before {
	z-index:-1!important;
	opacity:0!important;
}

.window-image1.e-con-full.e-con.e-flex::after {
    content: "";
    position: absolute;
    inset: -2px;
    z-index: 10;
    pointer-events: none;
    background-color: var(--yellow-color);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='80vw' ry='34vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='80vw' ry='34vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.window-image1.e-con-full.e-con.e-lazyloaded {
    -webkit-clip-path: var(--portal-shape) !important;
    clip-path: var(--portal-shape) !important;
}

.window-image1 h1.elementor-heading-title {
    color: var(--white);
    text-shadow: var(--text-shadow);
}

.window-image-wrapper {
    display: block !important;
    position: relative;
    overflow: visible !important;
    padding: 0;
    margin: 0;
    min-height: 0;
    background: none !important;
    border: 0;
    z-index: 0;
}

main .e-parent.e-con-full:has(.window-image-wrapper){
	--padding-top:0;
	--padding-bottom:0;
}

/* ------------------------------------------------------------ */
/* HERO EYEBROW SHADOW */
/* ------------------------------------------------------------ */

/* Desktop - Tall */
.window-image-wrapper::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='54vw' ry='13vw' fill='rgba(0,0,0,0.25)' filter='url(%23shadow)'/%3E%3Cdefs%3E%3Cfilter id='shadow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='12'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E") !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
    transform: translateY(22vw) !important;
}

/* Desktop - Narrow */
body.narrow .window-image-wrapper::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='53vw' ry='12vw' fill='rgba(0,0,0,0.25)' filter='url(%23shadow)'/%3E%3Cdefs%3E%3Cfilter id='shadow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='12'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E") !important;
    transform: translateY(7vw) !important;
}


/* Tablet */
@media (max-width: 1024px) {

    .window-image1 {
        --v-radius: 44vw;
        --h-radius: 103vw;
        --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
		margin-top: -165px!important;
    }

    body .window-image1.e-con-full.e-con.e-flex {
        min-height: 88vw !important;
    }

    body .window-image1.e-con-full.e-con.e-flex::after {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='103vw' ry='44vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='103vw' ry='44vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    }

    body:not(.narrow) .window-image-wrapper::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='72vw' ry='18vw' fill='rgba(0,0,0,0.25)' filter='url(%23shadow)'/%3E%3Cdefs%3E%3Cfilter id='shadow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='12'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E") !important;
        transform: translateY(27vw) !important;
    }

    body.narrow .window-image-wrapper::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='68vw' ry='16vw' fill='rgba(0,0,0,0.25)' filter='url(%23shadow)'/%3E%3Cdefs%3E%3Cfilter id='shadow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='12'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E") !important;
        transform: translateY(17vw) !important;
    }
}

/* Mobile */
@media (max-width: 676px) {

    .window-image1 {
        --v-radius: 57vw;
        --h-radius: 134vw;
        --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
		margin-top:-165px!important;
    }

    body .window-image1.e-con-full.e-con.e-flex {
        min-height: 114vw !important;
    }

    body .window-image1.e-con-full.e-con.e-flex::after {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='134vw' ry='57vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='134vw' ry='57vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    }

    body .window-image-wrapper::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='92vw' ry='24vw' fill='rgba(0,0,0,0.25)' filter='url(%23shadow)'/%3E%3Cdefs%3E%3Cfilter id='shadow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='12'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E") !important;
        transform: translateY(35vw) !important;
    }

   
}

/* Narrow base */
body.narrow .window-image1 {
    --v-radius: 18vw;
    --h-radius: 62vw;
    --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
}

body.narrow .window-image1.e-con-full.e-con.e-flex {
    min-height: 36vw !important;
}

body.narrow .window-image1.e-con-full.e-con.e-flex::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='62vw' ry='18vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='62vw' ry='18vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

body.narrow .window-image1.e-con-full.e-con.e-lazyloaded {
    -webkit-clip-path: var(--portal-shape) !important;
    clip-path: var(--portal-shape) !important;
}

@media (max-width: 1024px) {
    body.narrow .window-image1 {
        --v-radius: 32vw;
        --h-radius: 93vw;
    }

    body.narrow .window-image1.e-con-full.e-con.e-flex {
        min-height: 64vw !important;
    }

    body.narrow .window-image1.e-con-full.e-con.e-flex::after {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='93vw' ry='32vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='93vw' ry='32vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
    }
}

/* ------------------------------------------------------------ */
/* NARROW → REGULAR at ≤ 767px                                  */
/* At mobile widths, narrow behaves exactly like the regular.   */
/* ------------------------------------------------------------ */
@media (max-width: 676px) {

    body.narrow .window-image1 {
        --v-radius: 57vw;
        --h-radius: 134vw;
        --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
    }

    body.narrow .window-image1.e-con-full.e-con.e-flex {
        min-height: 114vw !important;
    }

    body.narrow .window-image1.e-con-full.e-con.e-flex::after {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='134vw' ry='57vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='134vw' ry='57vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
    }

    body.narrow .window-image1.e-con-full.e-con.e-lazyloaded {
        -webkit-clip-path: var(--portal-shape) !important;
        clip-path: var(--portal-shape) !important;
    }
}


.window-image1.video.e-con-full.e-con.e-flex .elementor-background-video-container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    z-index: 0 !important;
}

.window-image1.video.e-con-full.e-con.e-flex .elementor-background-video-container iframe {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    min-width: 100% !important;
    min-height: 100% !important;
    width: auto !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
}

.window-image1.video.e-con-full.e-con.e-flex > *:not(.elementor-background-video-container) {
    position: relative !important;
    z-index: 20 !important;
}

.elementor-editor-active .window-image1.video .elementor-background-video-container,
.elementor-editor-active .window-image1.video .elementor-background-video-container iframe {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.elementor-editor-active .window-image1.video .elementor-background-video-container iframe {
    pointer-events: none !important;
}

/* ------------------------------------------------------------ */
/* WIDE DESKTOP: ≥ 1200px — ~200px shorter, same arc ratio     */
/* ------------------------------------------------------------ */
@media (min-width: 1200px) {

    body:not(.narrow) .window-image1 {
        --v-radius: 26vw;
        --h-radius: 73vw;
        --portal-shape: ellipse(var(--h-radius) var(--v-radius) at 50% 50%);
    }

    body:not(.narrow) .window-image1.e-con-full.e-con.e-flex {
        min-height: 52vw !important; /* = --v-radius (26vw) × 2 */
    }

    body:not(.narrow) .window-image1.e-con-full.e-con.e-flex::after {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='73vw' ry='26vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Cellipse cx='50%25' cy='50%25' rx='73vw' ry='26vw' fill='none' stroke='black' stroke-width='16'/%3E%3C/svg%3E");
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
    }

    body:not(.narrow) .window-image1.e-con-full.e-con.e-flex::before {
        -webkit-clip-path: var(--portal-shape);
        clip-path: var(--portal-shape);
    }

    body:not(.narrow) .window-image1.e-con-full.e-con.e-lazyloaded {
        -webkit-clip-path: var(--portal-shape) !important;
        clip-path: var(--portal-shape) !important;
    }

    body:not(.narrow) .window-image-wrapper::before {
        transform: translateY(14.4vw) !important;
    }
}









/* ------------------------------------------------------------ */
/* MISC CLASSES AND SETUP */
/* ------------------------------------------------------------ */


.logo-grid img {
  width: 100%;
  height: 150px!important;        /* set your desired uniform height */
  object-fit: contain;  /* keeps logos proportional, no cropping */
  object-position: center;
  border-radius:0!important	
}



/* BEGIN Formstack Form Styling */
.fsform-container .fsBody,
.fsform-container .fsBody .fsForm {
	background:none;	
}

.fsform-container .fsBody,
.fsform-container .fsBody .fsForm,
.fsform-container .fsBody .MuiPickersInputBase-root {
	font-family:var(--e-global-typography-text-font-family)!important;
	font-size:var(--e-global-typography-text-font-size)!important;
}

.fsform-container .fsBody input[type=date],
.fsform-container .fsBody input[type=email],
.fsform-container .fsBody input[type=number],
.fsform-container .fsBody input[type=password],
.fsform-container .fsBody input[type=search],
.fsform-container .fsBody input[type=tel],
.fsform-container .fsBody input[type=text],
.fsform-container .fsBody input[type=url],
.fsform-container .fsBody select[type=select],
.fsform-container .fsBody select[type=address],
.fsform-container .fsBody textarea,
.fsform-container .fsBody .MuiPickersInputBase-root,
.fsform-container .fsBody .fsRequiredInput .MuiPickersOutlinedInput-notchedOutline {
	border-width:2px!important;
	border-radius:var(--radius)!important;
	border-color:var(--e-global-color-primary)!important;
}

.fsform-container .fsBody input[type=text],
.fsform-container .fsBody textarea {
	padding: 1.8rem 2.7rem 1.8rem 2.7rem!important;	
}

.fsform-container .fsBody input[type=checkbox],
.fsForm .StyledErrorBanner-sc-lo45jw-0 {
	padding:0!important;
	margin-bottom:0!important;
} 

.fsform-container .fsBody button[type="submit"] {
	border-radius:var(--radius)!important;
}

.fsform-container .fsBody button[type="submit"]:hover {
	color: var(--e-global-color-text);
	background-color: #fff;
}

.MuiPopper-root button,
.MuiButtonBase-root {
	padding:8px!important;
}

.MuiPickersLayout-root .MuiTypography-root,
.MuiPickersLayout-root .MuiButtonBase-root,
.MuiPickersLayout-root .MuiPickersCalendarHeader-label {
	font-size: calc(var(--e-global-typography-text-font-size) * .8);
}

@media (min-width: 640px) {
	.fsform-container #label-field38993414,
	.fsform-container #label-field38993433 {
		width:100%!important;
	}
}

/* END Formstack Form Styling */


/* BEGIN Mailchimp Form Styling */
#mc_embed_signup_scroll.half-column {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

/* Single column by default (mobile) */
#mc_embed_signup_scroll.half-column .mc-field-group {
    flex: 1 1 100%;
    min-width: 0;
}

/* 2 columns only above 767px */
@media (min-width: 768px) {
    #mc_embed_signup_scroll.half-column .mc-field-group {
        flex: 1 1 calc(50% - 12px);
    }

    /* Last mc-field-group takes full width */
    #mc_embed_signup_scroll.half-column .mc-field-group:last-of-type {
        flex: 1 1 100%;
    }
}

/* Submit button row full width */
#mc_embed_signup_scroll.half-column .clear:last-child {
    flex: 1 1 100%;
}

/* Hide the spacer div */
#mc_embed_signup_scroll.half-column div[style*="padding-top"] {
    display: none;
}

/* END Mailchimp Form Styling */



/* BEGIN Plumsale Form Styling */
.fd-form,
.fd-form .fd-choice {
	font-family: var(--e-global-typography-text-font-family)!important;
	color: var(--e-global-color-text)!important;
}

@media (min-width: 576px) {
.fd-form .col-sm-6 {
	width:100%!important;
	}
}

.fd-form, .fd-form .btn, .fd-field-control input {
	font-size:var(--e-global-typography-accent-font-size)!important;
}
.k-calendar, .k-popup, .fd-form table {
	font-size:14px!important
}
.fd-form .form-control:not(.k-widget) {
	padding: 1.8rem 2.7rem 1.8rem 2.7rem!important;	
}
.fd-form button.btn {
	color: var(--e-global-color-text);
	text-transform:uppercase;
	font-weight:700;
	padding: 1.2rem 1rem;
	border-radius:var(--radius) var(--radius) var(--radius) var(--radius);
	background-color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	border-width:2px;
}
.fd-form button.btn:hover {
	color: var(--e-global-color-text);
	background-color:#fff;
	border-color: var(--e-global-color-primary);
}

.fd-form label.d-flex {
	display:inline-block!important;
}

.fd-form h2, .fd-form .h2 {
	font-size:var(--e-global-typography-3abb9df-font-size)!important;
}
.fd-form .k-icon {
	font-size: 1.9375rem;
}
.fd-form .k-button {
	font-size:initial;
}
.fd-form .alert-body {
	padding:var(--space-xs)!important;
}
.fd-form a {
	color: var(--magenta)!important;
}

.fd-form .k-autocomplete, .fd-form .k-dateinput-wrap, .fd-form .k-dropdown-wrap, .fd-form .k-picker-wrap, .fd-form .k-multiselect-wrap, .fd-form .k-numeric-wrap, .fd-form .k-editor, .fd-form .k-upload {
	border-width:0!important;
}
.k-datepicker .k-picker-wrap.k-state-focused, .k-datepicker .k-picker-wrap.k-state-active, .k-timepicker .k-picker-wrap.k-state-focused, .k-timepicker .k-picker-wrap.k-state-active, .k-datetimepicker .k-picker-wrap.k-state-focused, .k-datetimepicker .k-picker-wrap.k-state-active, .k-dateinput .k-dateinput-wrap.k-state-focused, .k-dateinput .k-dateinput-wrap.k-state-active {
	box-shadow:none!important;
}

div:has(.fd-field-control) {
	display:flex;
	flex-direction:column;
	flex:1 1 auto;
}

div.row:has(.fd-captcha) {
	margin: 2rem 0;
} 

/* END Plumsale Form Styling */



/* BEGIN SearchWP Styling */
.searchwp-live-search-result {
	position: relative;
}

.searchwp-live-search-result--title {
	display: contents;
}

.searchwp-live-search-result--title a::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
}
/* END SearchWP Styling */