.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1366px){.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}@media(min-width:2400px){.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for nav-menu, class: .elementor-element-3e7bcbff */.elementor-nav-menu--layout-vertical .elementor-item { font-family: 'Plus Jakarta Sans'; font-size: 15px; font-weight: 500; text-transform: none !important; color: rgba(255,255,255,0.78) !important; padding: 6px 0px !important; transition: color 0.2s, padding-left 0.2s; } .elementor-nav-menu--layout-vertical .elementor-item:hover { color: #FFFFFF !important; padding-left: 6px !important; }/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-22c62cb4 */.elementor-nav-menu--layout-vertical .elementor-item { font-family: 'Plus Jakarta Sans'; font-size: 15px; font-weight: 500; text-transform: none !important; color: rgba(255,255,255,0.78) !important; padding: 6px 0px !important; transition: color 0.2s, padding-left 0.2s; } .elementor-nav-menu--layout-vertical .elementor-item:hover { color: #FFFFFF !important; padding-left: 6px !important; }/* End custom CSS */
/* Start custom CSS *//* WC global layout fixes (all pages) */
/* GSAP reveal: elements it animates with from() must not have a CSS transform transition, otherwise ScrollTrigger.refresh() captures a mid-transition offset and leaves them ~30px too low */
html.wc-gsap-ready .wc-section :is(.e-con:has(> a[class*="wc-btn"]), .wc-eyebrow, .wc-h2, .wc-lead, .wc-photo, h1), html.wc-gsap-ready .wc-section:has(h1) > .e-grid-base, html.wc-gsap-ready .wc-section:has(h1) > .e-grid-base > * { transition-property: background-color, border-color, box-shadow, color !important; }
/* FAQ expand/collapse icon: small chevron in a 30px circle */
.elementor .wc-faq-icon { width: 30px !important; height: 30px !important; flex: 0 0 30px !important; }
.elementor .wc-faq-icon .wc-faq-chevron, .elementor .wc-faq-chevron { width: 13px !important; height: 13px !important; }
.elementor .wc-faq-chevron svg { width: 13px !important; height: 13px !important; }
/* Header logo: never let the flex row squeeze it */
.elementor-2199 a:has(> img.e-6ab25077-7609), .elementor-2199 img.e-6ab25077-7609 { flex-shrink: 0; }
/* Footer: white text + readable active menu item on the navy background */
.elementor-2201 p.e-3963e2a3-33dc, .elementor-2201 p.e-53bfa2ac-ee97, .elementor-2201 p.e-5eefca2-6c6e, .elementor-2201 p.e-5eefca2-6c6e a { color: #FFFFFF !important; }
.elementor-2201 .elementor-nav-menu--layout-vertical .elementor-item.elementor-item-active, .elementor-2201 .elementor-nav-menu--layout-vertical .current-menu-item > .elementor-item { color: #3BCC33 !important; font-weight: 700 !important; }
/* Buttons sit closer to the content above them (about 16px) */
.elementor :where(p, h1, h2, h3, h4, .e-con) + :where(a[class*="wc-btn"], .e-con:has(> a[class*="wc-btn"])) { margin-block-start: -8px !important; }
.elementor [data-id="52ce0ed"], .elementor .e-38e52d06-37b6, .elementor [data-id="374a33e2"] { margin-block-start: 0px !important; }
/* Mobile menu: full-width dropdown under the header bar */
@media (max-width: 1024px) {
  .elementor-2199 .elementor-element-18421ffb { position: relative; }
  .elementor-2199 .elementor-element-97de543, .elementor-2199 .elementor-element-77df811e, .elementor-2199 .elementor-element-6c28dae4, .elementor-2199 .elementor-element-6c28dae4 > .elementor-widget-container { position: static !important; }
  .elementor-2199 .elementor-element-6c28dae4 nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute !important; left: 0 !important; right: 0 !important; top: 100% !important; width: 100% !important; max-width: none !important; margin-top: 0 !important; border-radius: 0 0 20px 20px !important; z-index: 999; }
  .elementor-2199 .elementor-element-6c28dae4 .elementor-nav-menu--dropdown a { padding: 16px 24px !important; font-size: 16px !important; border-bottom: 1px solid #E6EEF8; }
  /* Media first in two-column sections so each section ends with its button */
  .elementor .wc-section:not(:has(h1)) :is(.e-con, .e-grid):has(> * a[class*="wc-btn"]):has(> img, > * img) > :is(img, :has(img)):not(:has(a[class*="wc-btn"])) { order: -1; }
}
/* Two buttons side by side on phones when they fit */
@media (max-width: 767px) {
  .elementor .e-con:has(> a[class*="wc-btn"] + a[class*="wc-btn"]) { flex-direction: row !important; flex-wrap: wrap !important; gap: 10px !important; width: 100%; }
  .elementor .e-con:has(> a[class*="wc-btn"] + a[class*="wc-btn"]) > a[class*="wc-btn"] { flex: 1 1 auto; padding-inline: 14px !important; font-size: 12px !important; letter-spacing: 0.03em !important; white-space: nowrap; text-align: center; justify-content: center; }
}/* End custom CSS */