.elementor-kit-12{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --ww-navy:#0E2346; --ww-navy-line:#132F5E; --ww-navy-outline:#122F5F; --ww-cyan:#00AEEF; --ww-cyan-tint:rgba(0,174,239,0.1); --ww-cyan-soft:rgba(0,174,239,0.2); --ww-page:#D3DDE9; --ww-light:#F5F5F5; --ww-surface:#FFFFFF; --ww-text:#111111; --ww-text-muted:#575757; --ww-on-dark:#D9D9D9; --ww-on-dark-muted:rgba(217,217,217,0.7); --ww-border:#D9D9D9; --ww-sand:#ABA094; --ww-star:#F7931E; --ww-font-serif:Roboto Serif; --ww-font-ui:Inter; --ww-container:1440px; --ww-radius-pill:100px; --ww-radius-card:8px; --ww-radius-lg:20px; --ww-section-y:64px; --ww-gutter:clamp(20px, 5vw, 120px); --ww-fs-display:clamp(32px, 4vw, 48px); --ww-fs-h2:clamp(26px, 3vw, 36px); --ww-fs-h3:clamp(24px, 2.5vw, 32px); }
/* Start custom CSS *//* Waterworks — global overrides (managed by Claude) */
body{ font-family: 'Roboto Serif', serif; color: #111111; }
:focus-visible{ outline: 2px solid #00AEEF; outline-offset: 2px; }
html{ scroll-padding-top: 110px; scroll-behavior: smooth; }
@media (max-width: 1024px){ html{ scroll-padding-top: 90px; } }

/* Sticky header: utility bar (37px) scrolls away, main header pins */
.elementor-location-header{ position: sticky; top: -37px; z-index: 900; }
body.admin-bar .elementor-location-header{ top: -5px; }
@media (max-width: 1024px){ .elementor-location-header{ top: 0; } body.admin-bar .elementor-location-header{ top: 46px; } }
@media (max-width: 600px){ body.admin-bar .elementor-location-header{ top: 0; } }

/* Header nav menu */
.ww-nav{ flex: 0 0 auto; margin-inline: auto; }
.ww-nav .elementor-nav-menu--main .elementor-nav-menu{ flex-wrap: nowrap; }
.ww-nav .elementor-nav-menu--main .elementor-item, .ww-nav .elementor-nav-menu--main .elementor-item:visited{ font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 500; line-height: 1.2; color: rgba(217,217,217,0.75) !important; padding: 8px 18px; white-space: nowrap; transition: color .15s ease; }
.ww-nav .elementor-nav-menu--main .elementor-item:hover, .ww-nav .elementor-nav-menu--main .elementor-item:focus, .ww-nav .elementor-nav-menu--main .elementor-item.elementor-item-active, .ww-nav .elementor-nav-menu--main .elementor-item.highlighted{ color: #FFFFFF !important; }
.ww-nav .elementor-nav-menu--main .sub-menu{ background-color: #0E2346; border: 1px solid #132F5E; border-radius: 8px; padding: 8px 0; box-shadow: 0 16px 32px rgba(0,0,0,0.25); min-width: 220px !important; }
.ww-nav .elementor-nav-menu--main .sub-menu a.elementor-sub-item{ font-family: 'Inter', sans-serif; font-size: 15px; color: #D9D9D9 !important; padding: 10px 18px; background: transparent !important; }
.ww-nav .elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover, .ww-nav .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active{ color: #00AEEF !important; background-color: #132F5E !important; }
.ww-nav .elementor-menu-toggle{ background: transparent; color: #FFFFFF; font-size: 26px; padding: 9px; border: 0; margin: 0 !important; min-width: 44px; min-height: 44px; }
.ww-nav .elementor-menu-toggle svg{ fill: #FFFFFF; width: 26px; height: 26px; }
.ww-nav .elementor-nav-menu--dropdown{ background-color: #0E2346; border-top: 1px solid #132F5E; box-shadow: 0 16px 32px rgba(0,0,0,0.25); }
.ww-nav .elementor-nav-menu--dropdown a, .ww-nav .elementor-nav-menu--dropdown a:visited{ font-family: 'Roboto Serif', serif; font-size: 18px; color: #D9D9D9 !important; padding: 16px 28px; border-bottom: 1px solid #132F5E; }
.ww-nav .elementor-nav-menu--dropdown .sub-menu a{ font-size: 16px; padding-left: 44px !important; }
.ww-nav .elementor-nav-menu--dropdown a:hover, .ww-nav .elementor-nav-menu--dropdown a.elementor-item-active{ background-color: #132F5E !important; color: #00AEEF !important; }
@media (max-width: 1024px){
  .ww-nav{ order: -1; margin-inline: 0; width: auto !important; max-width: none !important; flex: 0 0 auto !important; position: static !important; }
  .elementor-location-header .ww-nav > .elementor-widget-container, .elementor-location-header .ww-nav{ position: static !important; }
  .ww-nav 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-height: calc(100vh - 160px); overflow-y: auto; margin-top: 0 !important; z-index: 950; }
}
@media (max-width: 1024px){ .elementor-location-header a[href^='tel']{ min-width: 44px; min-height: 44px; justify-content: center; } }

/* FAQ accordion (atomic) */
.e-accordion-item-base{ background-color: #C9D6E6; border: 1px solid rgba(14,35,70,0.08); border-radius: 8px; overflow: hidden; transition: background-color .15s ease; }
.e-accordion-item-base[open]{ background-color: #FFFFFF; box-shadow: 0 6px 18px rgba(14,35,70,0.08); }
.e-accordion-item-header-base{ display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; cursor: pointer; list-style: none; min-height: 56px; }
.e-accordion-item-header-base::-webkit-details-marker{ display: none; }
.e-accordion-item-header-base .e-paragraph-base{ font-family: 'Roboto Serif', serif; font-size: 17px; font-weight: 600; line-height: 1.35; color: #111111; }
.e-accordion-item-content-base{ padding: 0 20px 20px 20px; }
.e-accordion-item-content-base .e-paragraph-base{ font-size: 16px; line-height: 1.6; color: #333333; }
.e-accordion-item-content-base a{ color: #0083B5; font-weight: 600; }
.e-accordion-item-header-base::after{ content: ''; flex: 0 0 auto; width: 9px; height: 9px; margin-right: 4px; border-right: 2px solid #0E2346; border-bottom: 2px solid #0E2346; transform: rotate(45deg) translateY(-3px); transition: transform .2s ease; }
.e-accordion-item-base[open] > .e-accordion-item-header-base::after{ transform: rotate(-135deg) translateY(-2px); }
.e-accordion-item-icon-base:empty{ display: none; }

/* Atomic form fields */
.ww-form input:not([type=radio]):not([type=checkbox]):not([type=file]), .ww-form select, .ww-form textarea{ width: 100%; min-height: 50px; padding: 12px 16px !important; font-family: 'Roboto Serif', serif !important; font-size: 16px !important; color: #111111 !important; background-color: #F8F8F8 !important; border: 1px solid #D9D9D9 !important; border-radius: 8px !important; }
.ww-form textarea{ min-height: 120px; }
.ww-form input:focus, .ww-form select:focus, .ww-form textarea:focus{ border-color: #00AEEF !important; outline: 2px solid rgba(0,174,239,0.25) !important; background-color: #FFFFFF !important; }
.ww-form input::placeholder, .ww-form textarea::placeholder{ color: #8A8A8A; }
.ww-form label{ font-family: 'Roboto Serif', serif; font-size: 15px; font-weight: 600; color: #111111; }
.ww-form input[type=file]{ width: 100%; padding: 14px; font-size: 15px; background: #F8F8F8; border: 1px dashed #A9B6C6; border-radius: 8px; }/* End custom CSS */