.elementor-22 .elementor-element.elementor-element-795cd00 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-22 .elementor-element.elementor-element-795cd00:not(.elementor-motion-effects-element-type-background), .elementor-22 .elementor-element.elementor-element-795cd00 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fad0375 );}.elementor-22 .elementor-element.elementor-element-795cd00{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 050px 0px 050px;z-index:150;}.elementor-22 .elementor-element.elementor-element-795cd00 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-icon i{color:var( --e-global-color-secondary );transition:color 0.3s;}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-icon svg{fill:var( --e-global-color-secondary );transition:fill 0.3s;}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-22 .elementor-element.elementor-element-5f5c7355{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item > a{font-family:"Avenir", Sans-serif;font-size:18px;font-weight:bold;}.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-text{transition:color 0.3s;}.elementor-22 .elementor-element.elementor-element-38f032af.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-22 .elementor-element.elementor-element-6a3365a{--display:flex;}.elementor-22 .elementor-element.elementor-element-2ac914f{--display:flex;}.elementor-22 .elementor-element.elementor-element-1221cc8{--display:flex;}.elementor-22 .elementor-element.elementor-element-cf74bed{--display:flex;}.elementor-22 .elementor-element.elementor-element-ab24feb{--display:flex;}.elementor-22 .elementor-element.elementor-element-8a29af1{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-22 .elementor-element.elementor-element-4fea0ba{--display:flex;}.elementor-22 .elementor-element.elementor-element-4dc4398{--display:flex;}.elementor-22 .elementor-element.elementor-element-bd1e518{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;width:auto;max-width:auto;margin:1px 0px calc(var(--kit-widget-spacing, 0px) + 1px) 0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-22 .elementor-element.elementor-element-bd1e518 {--n-menu-title-color-hover:var( --e-global-color-secondary );--n-menu-title-color-active:var( --e-global-color-primary );}.elementor-22 .elementor-element.elementor-element-5546f9c2{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 10px;}.elementor-22 .elementor-element.elementor-element-5546f9c2 .elementor-search-form{text-align:center;}.elementor-22 .elementor-element.elementor-element-5546f9c2 .elementor-search-form__toggle{--e-search-form-toggle-size:40px;--e-search-form-toggle-color:var( --e-global-color-secondary );}.elementor-22 .elementor-element.elementor-element-5546f9c2:not(.elementor-search-form--skin-full_screen) .elementor-search-form__container{border-radius:3px;}.elementor-22 .elementor-element.elementor-element-5546f9c2.elementor-search-form--skin-full_screen input[type="search"].elementor-search-form__input{border-radius:3px;}.elementor-22 .elementor-element.elementor-element-5546f9c2 .elementor-search-form__toggle:hover{--e-search-form-toggle-color:#FFFFFF;--e-search-form-toggle-background-color:var( --e-global-color-secondary );}.elementor-22 .elementor-element.elementor-element-5546f9c2 .elementor-search-form__toggle:focus{--e-search-form-toggle-color:#FFFFFF;--e-search-form-toggle-background-color:var( --e-global-color-secondary );}.elementor-22 .elementor-element.elementor-element-dfb540d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:0px;--padding-right:0px;--z-index:100;}.elementor-22 .elementor-element.elementor-element-dfb540d:not(.elementor-motion-effects-element-type-background), .elementor-22 .elementor-element.elementor-element-dfb540d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-22 .elementor-element.elementor-element-6c9d72f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-22 .elementor-element.elementor-element-5f5c7355 .elementor-icon-list-item > a{font-size:16px;}.elementor-22 .elementor-element.elementor-element-dfb540d{--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}}@media(min-width:768px){.elementor-22 .elementor-element.elementor-element-1e6a1af6{width:33%;}.elementor-22 .elementor-element.elementor-element-26fcf37e{width:16%;}.elementor-22 .elementor-element.elementor-element-38f032af{width:50.664%;}}@media(max-width:1024px) and (min-width:768px){.elementor-22 .elementor-element.elementor-element-1e6a1af6{width:50%;}.elementor-22 .elementor-element.elementor-element-38f032af{width:82%;}.elementor-22 .elementor-element.elementor-element-6c9d72f{--width:100%;}}@media(max-width:767px){.elementor-22 .elementor-element.elementor-element-795cd00{padding:0px 2px 0px 8px;}.elementor-22 .elementor-element.elementor-element-1e6a1af6{width:100%;}.elementor-22 .elementor-element.elementor-element-1e6a1af6 > .elementor-element-populated{padding:12px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-38f032af{width:100%;}.elementor-22 .elementor-element.elementor-element-38f032af.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-22 .elementor-element.elementor-element-38f032af > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:20px;}.elementor-22 .elementor-element.elementor-element-38f032af > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-dfb540d{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:7px;--padding-bottom:7px;--padding-left:7px;--padding-right:7px;}.elementor-22 .elementor-element.elementor-element-6c9d72f{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-9fb3371 *//*************************
  Version 48.5 (clean) — a11y + mobile hamburger
  MERGED: dev's compact spacing/fonts kept, with the Safety Training &
  Compliance hover-color bug fixed to match prod's correct value (#faa21b).
*************************/
.mega-menu {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 10000;
  font-family: 'Avenir', sans-serif;
  font-size: 16px;
}
.main-nav {
  display: flex;
  align-items: center;
  padding: 10px 30px 10px 0; /* 0 left padding = logo flush left */
  gap: 30px;
  margin: 0;
  list-style: none;
  flex-wrap: wrap;
}
.logo img { height: 45px; width: auto; }

/* Top-level links */
.main-nav > li > a {
  font-weight: 600;
  color: #233C5B;
  padding: 8px 14px;
  text-decoration: none;
  transition: color 0.2s;
}
.main-nav > li > a:hover { color: #f16529; }

/* CTA */
.demo-btn {
  background: #f9a825 !important;
  color: #fff !important;
  padding: 10px 20px;
  border-radius: 30px;
  font-weight: 600;
}
.demo-btn:hover { background: #4E83D1 !important; }

.menu-item.has-submenu { position: relative; }

/* Desktop: hover opens */
.menu-item.has-submenu:hover .mega-dropdown,
.mega-dropdown:hover { display: flex !important; }
.menu-item.has-submenu:hover .simple-dropdown { display: block; }

/* Desktop: keyboard focus opens (a11y) */
@media (min-width: 993px) {
  .mega-menu .menu-item.has-submenu:focus-within .simple-dropdown,
  .mega-menu .menu-item.has-submenu:focus-within .mega-dropdown { display: block !important; }
  .mega-menu .menu-item.has-submenu.products:focus-within .mega-dropdown { display: flex !important; }
  .mega-menu .main-nav > li > a:focus {
    outline: 2px solid #4E83D1;
    outline-offset: 2px;
    border-radius: 8px;
  }
}

/* Mega dropdown (Products) */
.mega-dropdown {
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  margin: auto;
  transform: none;
  display: none;
  background: #fff;
  box-shadow: 0 6px 20px rgba(0,0,0,0.1);
  padding: 30px 30px;
  width: 1100px;
  max-width: 95vw;
  box-sizing: border-box;
  pointer-events: auto;
  z-index: 99999;
}
.menu-tabs {
  flex: 0 0 310px;
  background: #f2f2f2;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.submenu-trigger {
  font-weight: bold;
  font-size: 16px;
  padding: 12px 10px;
  cursor: pointer;
  color: #233C5B;
  transition: color 0.2s;
  text-align: left;
}
.submenu-trigger:hover { background: transparent; color: #f26722; }
/* Submenu tab hover background (desktop only) */
@media (min-width: 993px) {
  .mega-menu .menu-tabs .submenu-trigger {
    border-radius: 10px;                 /* smooth corners like your tiles */
  }
  .mega-menu .menu-tabs .submenu-trigger:hover,
  .mega-menu .menu-tabs .submenu-trigger:focus-visible {
    background: #fefefe;                 /* light gray hover */
  }
}


.menu-panels { flex: 1; display: flex; }
.menu-content { display: none; flex: 1; padding: 0 20px; }
.menu-content.active { display: flex !important; } /* desktop only */

.menu-column.wide { flex: 1; }
.level-3-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.level-3-item {
  background: transparent;
  padding: 12px 12px 12px 12px; /* a touch more left padding */
  border-radius: 12px;
  color: #233C5B;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
}
.level-3-item:hover { background: #f7f7f7; transform: translateY(-2px); }
.level-3-item h6 { font-size: 16px; font-weight: 600; margin: 0 0 8px; color: #233C5B; }
.level-3-item p { font-size: 14px; color: #233C5B; margin: 0; }

/* Simple dropdowns (Partners/Resources/About) */
.simple-dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  list-style: none;
  padding: 10px 0;
  display: none;
  min-width: 220px;
  z-index: 9999;
}
.simple-dropdown li a {
  display: block;
  padding: 8px 20px;
  color: #233C5B;
  text-decoration: none;
}
.simple-dropdown li a:hover { background: #f7f7f7; color: #f16529; }

/* Category icon colors */
.icon { width: 26px; height: 26px; vertical-align: middle; margin-right: 10px; stroke: currentColor; stroke-width: 1.5; }
.em-icon { color: #C14F02; }
.cm-icon { color: #33A78F; }
.sw-icon { color: #4E83D1; }
.st-icon { color: #faa21b; }

/* Resources: only this dropdown wider + no wrapping */
@media (min-width: 993px) {
  .mega-menu .resources-menu > .simple-dropdown {
    width: max-content;
    min-width: 280px;
    max-width: calc(100vw - 40px);
  }
  .mega-menu .resources-menu > .simple-dropdown li a { white-space: nowrap; }
}

/* Bold only "View All Resources" */
.mega-menu .simple-dropdown .view-all > a { font-weight: 700; }

/* Keep Products open while cursor moves down */
@media (min-width: 993px) {
  .mega-menu .menu-item.has-submenu.products { position: relative; }
  .mega-menu .menu-item.has-submenu.products::after {
    content: "";
    position: absolute;
    left: 0; right: 0; top: 100%;
    height: 14px;
    background: transparent;
  }
}

/* Tighter spacing — desktop */
@media (min-width: 993px) {
  .mega-menu .simple-dropdown { padding-bottom: 6px; }
  .mega-menu .simple-dropdown li:last-child { margin-bottom: 0; }

  .mega-menu .simple-dropdown li a { padding: 4px 16px; line-height: 1.2; }
  .mega-menu .menu-tabs .submenu-trigger { padding-top: 8px; padding-bottom: 8px; }
  .mega-menu .level-3-grid { gap: 6px; }
  .mega-menu .level-3-item h6 { margin-bottom: 4px; }

  /* Column spacing between gray tabs and product cards */
  .mega-menu .mega-dropdown { gap: 5px; }
  .mega-menu .menu-tabs { padding-right: 15px; flex: 0 0 370px; min-width: 370px; }
  .mega-menu .menu-panels { padding-left: 2px; }
}

/* Permanent category colors for product titles (normal + hover) */
.mega-menu .em-products .level-3-item h6,
.mega-menu .em-products .level-3-item:hover h6 { color: #C14F02 !important; }
.mega-menu .cm-products .level-3-item h6,
.mega-menu .cm-products .level-3-item:hover h6 { color: #33A78F !important; }
.mega-menu .sw-products .level-3-item h6,
.mega-menu .sw-products .level-3-item:hover h6 { color: #4E83D1 !important; }
.mega-menu .st-products .level-3-item h6,
.mega-menu .st-products .level-3-item:hover h6 { color: #faa21b !important; }

/* =================================================================
   Mobile / Tablet (≤992px)
   ================================================================= */

/* Hide hamburger by default; show on ≤992px */
.mega-menu .nav-toggle {
  display: none !important;
  background: transparent;
  border: 0;
  box-shadow: none;
}

@media (max-width: 992px) {
  /* Header bar is the anchor for the absolute hamburger */
  .mega-menu {
    position: relative;               /* <— anchor for button */
    display: block;
  }

  /* Always show hamburger on mobile */
  .mega-menu .nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 10px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    color: #233C5B;

    /* Pin it to the top-right of the header */
    position: absolute;
    top: 8px;
    right: 14px;
    margin: 0;
    z-index: 10001;
  }
  .mega-menu .nav-toggle:focus { outline: 2px solid #4E83D1; outline-offset: 2px; }
  .mega-menu .nav-toggle-icon { width: 22px; height: 22px; display: block; }

  /* Collapsed (not .is-open): show row with only the logo; reserve space for the button */
  .mega-menu:not(.is-open) .main-nav {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 8px 70px 8px 14px !important; /* right padding ≈ button width so they don't overlap */
    margin: 0 !important;
    width: 100% !important;
  }
  .mega-menu:not(.is-open) .main-nav > li { width: auto !important; }
  .mega-menu:not(.is-open) .main-nav > li:not(.logo) { display: none !important; }
  .mega-menu:not(.is-open) .main-nav > li > a {
    background: transparent !important;
    padding: 0 !important;
  }

  /* Open state: stack the full-width menu below the header button */
  .mega-menu.is-open .main-nav {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    padding: 56px 14px 8px 14px;       /* top padding drops the list below the button */
    width: 100%;
  }
  .mega-menu.is-open .main-nav > li { width: 100%; }
  .mega-menu.is-open .main-nav > li > a {
    display: block;
    width: 100%;
    text-align: left;
    padding: 12px 12px;
    border-radius: 10px;
    background: #f8fafc;
    cursor: pointer;
    touch-action: manipulation;
    line-height: 1.2;
  }

  /* Disable desktop hover on touch */
  .menu-item.has-submenu:hover .simple-dropdown,
  .menu-item.has-submenu:hover .mega-dropdown,
  .mega-dropdown:hover { display: none !important; }

  /* Top-level dropdowns inline, closed by default (tap to open via JS) */
  .menu-item.has-submenu .simple-dropdown,
  .menu-item.has-submenu .mega-dropdown {
    display: none;
    position: static;
    transform: none;
    box-shadow: none;
    background: #fff;
    width: 100%;
    max-width: none;
    padding: 8px;
    margin: 2px 0 6px 0;
  }
  .menu-item.has-submenu.expanded .simple-dropdown,
  .menu-item.has-submenu.expanded .mega-dropdown { display: block !important; }

  /* Product panels toggled open per category */
  .mega-menu .menu-panels { display: block !important; }
  .mega-menu .menu-content { display: none !important; }
  .mega-menu .menu-content.active { display: none !important; } /* override desktop default */
  .mega-menu .menu-content.open { display: block !important; }

  .mega-menu .menu-tabs {
    flex: unset;
    width: 100%;
    background: transparent;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
  }
  .mega-menu .submenu-trigger {
    width: 100%;
    background: #f2f2f2;
    border-radius: 10px;
    padding: 9px 12px;
    font-size: 17px;
  }
  .mega-menu .level-3-grid { grid-template-columns: 1fr !important; gap: 6px !important; }
  .mega-menu .level-3-item { padding: 12px; }
  .mega-menu .level-3-item h6 { margin-bottom: 4px; line-height: 1.2; }

  .logo img { height: 50px !important; } /* keep logo readable on mobile */
}

/* Utility: screen-reader text (if used) */
.sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}
/* Tighter wrapped product titles */
.mega-menu .level-3-item h6 {
  line-height: 1.5;   /* was default ~1.3 */
  margin-bottom: 4px;  /* was 8px (or 6/4 in some media blocks) */
}/* End custom CSS */