/* ==========================================================================
   TIP TOP FOODSERVICE - CUSTOM HEADER CSS
   ==========================================================================
   Container IDs (from Avada Layout Builder):
     #header-desktop-container  - Desktop top bar: Logo + About | Contact
     #menu-desktop-container    - Desktop main nav: 4 top-level items
     #header-mobile-container   - Mobile: logo + hamburger + full menu panel
     #mobile-quick-links        - Mobile: quick-access nav strip

   Breakpoints (matching Avada defaults):
     Mobile (small)  : max-width 640px   - mobile containers visible
     Tablet (medium) : 641px - 1024px    - desktop containers visible, nav collapses to hamburger
     Desktop (large) : min-width 1025px  - desktop containers, full menu

   Colour palette:
     --ttfs-charcoal  : #5e5e60   Nav hover / active bg
     --ttfs-submenu   : #77777a   Submenu panel bg
     --ttfs-orange    : #f5a623   Brand accent / gradient bar
     --ttfs-white     : #ffffff
     --ttfs-text      : #333333   Body / nav text
   ========================================================================== */


/* ==========================================================================
   SHARED - FONT
   Apply the Tip Top custom font to every menu link across all header containers.
   ========================================================================== */

.fusion-tb-header .awb-menu__main-a,
.fusion-tb-header .awb-menu__sub-a,
.fusion-tb-header .menu-text {
  font-family: var(--tt-font) !important;
  font-size: 1.625rem;
  font-weight: 400;
}



/* ==========================================================================
   SECTION 1 - DESKTOP TOP BAR
   #header-desktop-container
   Logo left column | Search + About | Contact right column
   ========================================================================== */

#header-desktop-container {
  background-color: #ffffff;
  position: relative;
  z-index: 200; /* must be higher than #menu-desktop-container (z-index: 100) */
}

/* Centre row contents vertically */
#header-desktop-container .fusion-builder-row {
  align-items: center !important;
  min-height: 72px;
}

/* Logo column - left-aligned, vertically centred */
#header-desktop-container .fusion-builder-column-0 .fusion-column-wrapper {
  align-items: center !important;
  justify-content: flex-start !important;
}

/* Right column - right-aligned, vertically centred */
#header-desktop-container .fusion-builder-column-1 .fusion-column-wrapper {
  align-items: center !important;
  justify-content: flex-end !important;
}

/* Nav element override */
#header-desktop-container nav.awb-menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}

/* Top-level <ul> */
#header-desktop-container .awb-menu__main-ul {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none;
}

/* Suppress Avada hover-background spans */
#header-desktop-container .awb-menu__main-background-default,
#header-desktop-container .awb-menu__main-background-active {
  display: none !important;
}


/* SEARCH ICON AND BAR */
/* Desktop search icon - CSS only */
#header-desktop-container .fusion-search-button {
  position: relative !important;
  width: 24px !important;
  height: 24px !important;
  margin-right: 8px !important;
}

#header-desktop-container .fusion-search-button::before {
  content: '' !important;
  position: absolute !important;
  left: 3px !important;
  top: 4px !important;
  width: 13px !important;
  height: 13px !important;
  border: 2px solid #5e5e60 !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
}

#header-desktop-container .fusion-search-button::after {
  content: '' !important;
  position: absolute !important;
  left: 15px !important;
  top: 14px !important;
  width: 7px !important;
  height: 2px !important;
  background-color: #5e5e60 !important;
  transform: rotate(45deg) !important;
  transform-origin: left center !important;
}

#header-desktop-container .fusion-search-button .fusion-search-submit {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Keep Avada's actual submit clickable but invisible */
#header-desktop-container .fusion-search-button .fusion-search-submit {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Orange border-bottom on the search field when expanded */
#header-desktop-container .awb-menu__li_search-inline:hover .fusion-search-field input[type="search"],
#header-desktop-container .awb-menu__li_search-inline:focus-within .fusion-search-field input[type="search"] {
  border-bottom-color: #f5a623;
}



/* ---- Search - icon-only by default, expands on hover / focus ---- */

.awb-menu__search-inline .fusion-search-form-clean .fusion-search-field input[type="search"]::-webkit-search-cancel-button {
    filter: grayscale(1) brightness(0);
}

#header-desktop-container .awb-menu__li_search-inline {
  display: flex;
  align-items: center;
}

#header-desktop-container .awb-menu__search-inline,
#header-desktop-container .searchform,
#header-desktop-container .fusion-search-form {
  display: flex;
  align-items: center;
}

#header-desktop-container .fusion-search-form-content {
  display: flex;
  align-items: center;
}

#header-desktop-container .fusion-search-field,
#header-desktop-container .fusion-search-field label {
  display: flex;
  align-items: center;
  margin: 0;
  overflow: hidden;
}

/* Collapsed by default - width animates open */
#header-desktop-container .fusion-search-field input[type="search"] {
  background: transparent;
  border: none;
  border-bottom: 1.5px solid transparent;
  padding: 4px 0;
  font-size: 13px;
  outline: none;
  width: 0;
  max-width: 0;
  color: #333333;
  line-height: 1.4;
  transition: max-width 0.3s ease, border-color 0.3s ease, padding 0.3s ease;
  -webkit-appearance: none;
  appearance: none;
}

/* Expand when the search item is hovered or the field is focused */
#header-desktop-container .awb-menu__li_search-inline:hover .fusion-search-field input[type="search"],
#header-desktop-container .awb-menu__li_search-inline:focus-within .fusion-search-field input[type="search"] {
  max-width: 150px;
  width: 150px;
  padding: 4px 6px;
}

#header-desktop-container .fusion-search-field input[type="search"]::placeholder {
  color: #aaaaaa;
  font-size: 12px;
}

/* The icon button - always visible */
#header-desktop-container .fusion-search-button {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

#header-desktop-container .fusion-search-button .fusion-search-submit {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 8px 10px;
  color: #5e5e60;
  display: flex;
  align-items: center;
  font-size: 15px;
  transition: color 0.2s ease;
}

#header-desktop-container .fusion-search-button .fusion-search-submit:hover {
  color: #f5a623;
}

/* ---- About | Contact links ---- */

#header-desktop-container .awb-menu__main-li_regular {
  display: flex;
  align-items: center;
  position: relative;
}

#header-desktop-container .awb-menu__main-li_regular > .awb-menu__main-a {
  padding: 8px 14px !important;
  text-decoration: none;
  display: block;
  line-height: 1.4;
}

#header-desktop-container .awb-menu__main-li_regular > .awb-menu__main-a .menu-text {
  color: #333333 !important;
  font-size: 1.0625rem !important;  /* FIX: was 12px */
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  line-height: 1.4;
  transition: color 0.2s ease;
}

#header-desktop-container .awb-menu__main-li_regular:hover > .awb-menu__main-a .menu-text {
  color: #f5a623 !important;
}

/* Pipe separators - border-left on every item after the first (search → About → Contact) */
#header-desktop-container .awb-menu__main-li + .awb-menu__main-li {
  border-left: 1px solid #5e5e60;
}

/* Remove all possible caret sources in the top bar */
#header-desktop-container .awb-menu__main-li > .awb-menu__main-a::after,
#header-desktop-container .awb-menu__main-li > .awb-menu__main-a::before,
#header-desktop-container .awb-menu__open-nav-submenu-hover::after,
#header-desktop-container .awb-menu__open-nav-submenu-hover::before,
#header-desktop-container .awb-menu__main-a .fa,
#header-desktop-container .awb-menu__main-a .fas,
#header-desktop-container .awb-menu__main-a i {
  content: none !important;
  display: none !important;
  font-size: 0 !important;
  width: 0 !important;
}

/* Keep the hover-span in DOM (for dropdown bridging) but invisible */
#header-desktop-container .awb-menu__open-nav-submenu-hover {
  color: transparent !important;
  font-size: 0 !important;
  overflow: hidden;
}

/* ---- About dropdown ---- */

/* Override Avada's --awb-submenu-bg variable for top-bar submenus.
   Setting it on the <li> (closer to the submenu than the nav element)
   takes precedence over Avada's inline variable on the nav element. */
#header-desktop-container .awb-menu__main-li {
  --awb-submenu-bg: #77777a;
  --awb-submenu-font-color: #ffffff;
  --awb-submenu-hover-bg: #5e5e60;
  --awb-submenu-hover-color: #ffffff;
}

#header-desktop-container .awb-menu__sub-ul {
  background-color: #77777a !important;
  background: #77777a !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
  min-width: 190px !important;
  padding: 8px 0 14px !important;
  margin-top: 0 !important;
  z-index: 99999 !important;
}

#header-desktop-container .awb-menu__sub-li {
  position: relative;
  border-top: none !important;    /* FIX: remove Avada's full-width separator lines */
  border-bottom: none !important;
}

/* Short centred white separator line between dropdown items */
#header-desktop-container .awb-menu__sub-li + .awb-menu__sub-li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 50px;
  height: 2px;
  /*background-color: rgba(255, 255, 255, 0.5);*/
  background-color:#ffffff;
}

#header-desktop-container .awb-menu__sub-li > .awb-menu__sub-a {
  display: block;
  color: #ffffff !important;
  font-size: 1.0625rem !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  text-align: center !important;
  padding: 12px 20px !important;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s ease, background-color 0.15s ease;
}

#header-desktop-container .awb-menu__sub-li > .awb-menu__sub-a:hover {
  color: #ffffff !important;
  background-color: #5e5e60 !important;
}


/* ==========================================================================
   SECTION 2 - DESKTOP MAIN NAVIGATION
   #menu-desktop-container
   White background by default. On hover the item and its dropdown turn
   charcoal grey. Orange gradient bar runs full width as a bottom border.
   White dividing line sits between the hovered item and the dropdown.
   ========================================================================== */

#menu-desktop-container {
  background-color: #ffffff;
  border-bottom: 5px solid transparent;
  border-image: linear-gradient(90deg, #e8921e 0%, #f5a623 50%, #f2c52a 100%) 1;
  position: relative;
  z-index: 100;
}

/* Remove column padding so the nav fills the full content-width row */
#menu-desktop-container .fusion-layout-column {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-bottom: 0 !important;
}

#menu-desktop-container .fusion-column-wrapper {
  padding: 0 !important;
}

/* Override Avada's inline --awb-main-justify-content: flex-start */
#menu-desktop-container nav.awb-menu {
  --awb-main-justify-content: space-between;
  width: 100%;
}

/* Top-level <ul> - spread items across the full width */
#menu-desktop-container .awb-menu__main-ul {
  display: flex !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none;
}

/* Each <li> - equal width, full height */
#menu-desktop-container .awb-menu__main-li {
  flex: 1 1 0 !important;
  display: flex !important;
  align-items: stretch !important;
  position: relative !important;
  margin: 0 !important;
  /* Override Avada's submenu CSS variables at the <li> level.
     Submenu panel bg: #77777a (medium grey)
     Hovered item bg:  #5e5e60 (darker charcoal) */
  --awb-submenu-bg: #77777a;
  --awb-submenu-font-color: #ffffff;
  --awb-submenu-hover-bg: #5e5e60;
  --awb-submenu-hover-color: #ffffff;
}

/* Vertical separator lines between nav items - dark on white background */
#menu-desktop-container .awb-menu__main-li + .awb-menu__main-li {
  border-left: 1px solid #5e5e60;
}

/* Remove Avada dropdown caret/arrow indicators */
#menu-desktop-container .awb-menu__main-li > .awb-menu__main-a::after,
#menu-desktop-container .awb-menu__main-li > .awb-menu__main-a::before,
#menu-desktop-container .awb-menu__open-nav-submenu-hover::after,
#menu-desktop-container .awb-menu__open-nav-submenu-hover::before,
#menu-desktop-container .awb-menu__main-a .fa,
#menu-desktop-container .awb-menu__main-a .fas,
#menu-desktop-container .awb-menu__main-a i {
  content: none !important;
  display: none !important;
  font-size: 0 !important;
  width: 0 !important;
}

/* Keep hover-span in DOM (bridges cursor gap to dropdown) but make it invisible */
#menu-desktop-container .awb-menu__open-nav-submenu-hover {
  color: transparent !important;
  font-size: 0 !important;
  overflow: hidden;
}

/* Top-level <a> - centred, uppercase, dark text on white default */
#menu-desktop-container .awb-menu__main-li > .awb-menu__main-a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1;
  color: #444444 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  line-height: 1.3 !important;
  padding: 20px 12px !important;
  text-align: center;
  text-decoration: none !important;
  background: transparent;
  transition: background-color 0.2s ease, color 0.2s ease;
}

#menu-desktop-container .awb-menu__main-li > .awb-menu__main-a .menu-text {
  color: #444444 !important;
  transition: color 0.2s ease;
}

/* Hover state - grey background, white text */
#menu-desktop-container .awb-menu__main-li:hover > .awb-menu__main-a {
  background-color: #5e5e60 !important;
}

#menu-desktop-container .awb-menu__main-li:hover > .awb-menu__main-a .menu-text {
  color: #ffffff !important;
}

/* Hover: cover the gradient bar with grey using li::after (z-index beats gradient) */
#menu-desktop-container .awb-menu__main-li:hover::after {
  content: '';
  position: absolute;
  bottom: -5px;   /* aligns with the 5px gradient border-image */
  left: 0;
  right: 0;
  height: 5px;
  background-color: #5e5e60;
  z-index: 200;
}

/* Active / current-page state - white background, grey indicator covering gradient */
#menu-desktop-container .awb-menu__main-li.current-menu-item > .awb-menu__main-a,
#menu-desktop-container .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a {
  background-color: transparent !important;
  border-bottom: none !important;
}

/* Text stays dark on the active item */
#menu-desktop-container .awb-menu__main-li.current-menu-item > .awb-menu__main-a .menu-text,
#menu-desktop-container .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a .menu-text {
  color: #444444 !important;
}

/* Active indicator via li::after - 4px visible inside nav + 5px covering gradient bar */
#menu-desktop-container .awb-menu__main-li.current-menu-item::after,
#menu-desktop-container .awb-menu__main-li.current-menu-ancestor::after {
  content: '';
  position: absolute;
  bottom: -5px;   /* extend into the 5px gradient border-image area */
  left: 0;
  right: 0;
  height: 5px;    /* 4px visible inside nav + 5px covering gradient */
  background-color: #5e5e60;
  z-index: 200;
}

/* When active item is hovered - grey bg + indicator blends seamlessly */
#menu-desktop-container .awb-menu__main-li.current-menu-item:hover > .awb-menu__main-a,
#menu-desktop-container .awb-menu__main-li.current-menu-ancestor:hover > .awb-menu__main-a {
  background-color: #5e5e60 !important;
  border-bottom: none !important;
}

#menu-desktop-container .awb-menu__main-li.current-menu-item:hover > .awb-menu__main-a .menu-text,
#menu-desktop-container .awb-menu__main-li.current-menu-ancestor:hover > .awb-menu__main-a .menu-text {
  color: #ffffff !important;
}

/* Suppress Avada hover-background spans */
#menu-desktop-container .awb-menu__main-background-default,
#menu-desktop-container .awb-menu__main-background-active {
  display: none !important;
}

/* ---- Desktop dropdown submenu ---- */

#menu-desktop-container .awb-menu__sub-ul {
  background-color: #77777a !important;
  background: #77777a !important;
  border: none !important;
  border-top: 3px solid #ffffff !important; /* white dividing line between nav item and dropdown */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
  width: 100% !important;       /* fill the full width of the parent <li> */
  min-width: unset !important;
  padding: 2px 0 2px !important;
  margin-top: 0 !important;
  left: 0 !important;
  z-index: 9999 !important;
}

#menu-desktop-container .awb-menu__sub-li {
  display: block;
  position: relative;
  border-top: none !important;    /* FIX: remove Avada's full-width separator lines */
  border-bottom: none !important;
}

/* Short centred white separator line between submenu items */
#menu-desktop-container .awb-menu__sub-li + .awb-menu__sub-li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 50px;
  height: 2px;
  /*background-color: rgba(255, 255, 255, 0.5);*/
  background-color:#ffffff;
}

/* Submenu links - default state */
#menu-desktop-container .awb-menu__sub-li > .awb-menu__sub-a {
  display: block;
  color: #ffffff !important;
  font-size: 1.625rem !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  text-align: center !important;
  padding: 13px 20px !important;
  text-decoration: none;
  transition: color 0.2s ease, background-color 0.2s ease;
}

/* Submenu links - hover state: darker bg, white text */
#menu-desktop-container .awb-menu__sub-li > .awb-menu__sub-a:hover {
  color: #ffffff !important;
  background-color: #5e5e60 !important;
}

/* Current active sub-item */
#menu-desktop-container .awb-menu__sub-li.current-menu-item > .awb-menu__sub-a {
  background-color: #5e5e60 !important;
  color: #ffffff !important;
}


/* Remove the full-height border-left */
#menu-desktop-container .awb-menu__main-li + .awb-menu__main-li {
  border-left: none;
}

/* Replace with a pseudo-element of controlled height */
#menu-desktop-container .awb-menu__main-li + .awb-menu__main-li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 70%;  /* adjust this - 50% = half the nav bar height */
  background-color: #5e5e60;
}

/* ==========================================================================
   SECTION 3 - MOBILE HEADER (STICKY)
   #header-mobile-container
   Visible only on Avada's "small" breakpoint (max-width: 640px).
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Make the entire header template sticky */
  .fusion-tb-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9000 !important;
  }

  #header-mobile-container {
    background-color: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  #header-mobile-container .fusion-builder-row {
    align-items: center !important;
    min-height: 60px;
  }

  #header-mobile-container .fusion-builder-column-3 .fusion-column-wrapper {
    align-items: center !important;
    justify-content: flex-start !important;
  }

  #header-mobile-container .fusion-builder-column-4 .fusion-column-wrapper {
    align-items: center !important;
    justify-content: flex-end !important;
  }

  #header-mobile-container .awb-menu__m-toggle {
    background: none !important;
    border: none !important;
    padding: 12px !important;
    cursor: pointer;
    margin: 0 0 10px auto !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    min-height: 48px;
  }

  #header-mobile-container .awb-menu__m-collapse-icon-open::before {
    font-size: 22px !important;
    color: #333333 !important;
    line-height: 1;
  }

  #header-mobile-container .awb-menu__m-collapse-icon-close::before {
    font-size: 22px !important;
    color: #333333 !important;
    line-height: 1;
  }

  #header-mobile-container .awb-menu__main-ul,
  #header-mobile-container #menu-mobile-menu {
    background-color: #ffffff !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #header-mobile-container .awb-menu__main-background-default,
  #header-mobile-container .awb-menu__main-background-active {
    display: none !important;
  }

#header-mobile-container .awb-menu__main-li {
  border-bottom: 1px solid #e8e8e8 !important;
  display: flex !important;
  flex-wrap: nowrap !important;   /* was: wrap */
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

 #header-mobile-container .awb-menu__main-li > .awb-menu__main-a {
  flex: 1 1 auto !important;
  width: auto !important;        /* override Avada's width: 100% */
  min-width: 0 !important;
  max-width: calc(100% - 53px) !important;
  color: #333333 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  padding: 16px 20px !important;
  text-decoration: none;
  display: flex !important;
  align-items: center;
  line-height: 1.4;
}

  #header-mobile-container .awb-menu__main-li > .awb-menu__main-a .menu-text {
    color: #333333 !important;
  }

  #header-mobile-container .awb-menu__open-nav-submenu_mobile.awb-menu__open-nav-submenu_main {
    background: none !important;
    border: none !important;
    border-left: 1px solid #e8e8e8 !important;
    width: 52px !important;
    height: 52px !important;
    min-height: 52px;
    flex-shrink: 0;
    cursor: pointer;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 18px !important;
    color: #5e5e60 !important;
    padding: 0 !important;
  }

  #header-mobile-container .awb-menu__sub-ul {
    width: 100% !important;
    flex-basis: 100%;
    background-color: #f7f7f7 !important;
    border-top: 1px solid #e8e8e8 !important;
    /*border-bottom: none !important;*/
    padding: 0 !important;
    margin: 0 !important;
    list-style: none;
  }

  #header-mobile-container .awb-menu__sub-li {
    border-bottom: 1px solid #eeeeee !important;
  }

  #header-mobile-container .awb-menu__sub-li:last-child {
    border-bottom: none !important;
  }

  #header-mobile-container .awb-menu__sub-li > .awb-menu__sub-a {
    display: block;
    color: #5e5e60 !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    padding: 12px 32px !important;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  #header-mobile-container .awb-menu__sub-li > .awb-menu__sub-a:hover {
    color: #f5a623 !important;
  }

  /* ---- Search field in mobile menu ---- */

  #header-mobile-container .awb-menu__li_search-inline {
    padding: 14px 20px !important;
    background-color: #ffffff;
  }

  #header-mobile-container .awb-menu__search-inline,
  #header-mobile-container .searchform,
  #header-mobile-container .fusion-search-form {
    width: 100%;
    display: block;
  }

  #header-mobile-container .fusion-search-form-content {
    display: flex !important;
    align-items: center;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 24px;
    overflow: hidden;
    padding-right: 4px;
  }

  #header-mobile-container .fusion-search-field {
    flex: 1;
    display: flex;
    align-items: center;
  }

  #header-mobile-container .fusion-search-field label {
    display: flex;
    align-items: center;
    margin: 0;
    width: 100%;
  }

  #header-mobile-container .fusion-search-field input[type="search"],
  #header-mobile-container .fusion-search-field .s {
    width: 100% !important;
    border: none !important;
    background: transparent !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    outline: none !important;
    color: #333333 !important;
    box-shadow: none !important;
    -webkit-appearance: none;
    appearance: none;
  }

  #header-mobile-container .fusion-search-field input[type="search"]::placeholder {
    color: #aaaaaa;
  }

  #header-mobile-container .fusion-search-button {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }

  #header-mobile-container .fusion-search-submit {
    background: transparent !important;
    border: none !important;
    padding: 8px 12px !important;
    cursor: pointer;
    color: #5e5e60 !important;
    font-size: 16px !important;
    display: flex;
    align-items: center;
  }

  /* ---- "Follow Us ON:" item - orange/gold bar ---- */

  #header-mobile-container #menu-item-6332 {
    /*background-color: #f5a623 !important;*/
    background-image: linear-gradient(linear-gradient(90deg, #e8921e 0%, #f5a623 50%, #f2c52a 100%));
    border-bottom-color: transparent !important;
  }

  #header-mobile-container #menu-item-6332 > .awb-menu__main-a {
    color: #ffffff !important;
    padding: 14px 20px !important;
  }

  #header-mobile-container #menu-item-6332 > .awb-menu__main-a .menu-text {
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 1.5px !important;
  }

  #header-mobile-container #menu-item-6332 > .awb-menu__open-nav-submenu_mobile {
    border-left-color: rgba(255, 255, 255, 0.35) !important;
    color: #ffffff !important;
  }

  #header-mobile-container #menu-item-6332 > .awb-menu__sub-ul {
    /*background-color: #e09918 !important;*/
    background-image: linear-gradient(linear-gradient(90deg, #e8921e 0%, #f5a623 50%, #f2c52a 100%));
    border-top-color: rgba(255, 255, 255, 0.25) !important;
  }

  #header-mobile-container #menu-item-6332 .awb-menu__sub-li {
    border-bottom-color: rgba(255, 255, 255, 0.2) !important;
  }

  #header-mobile-container #menu-item-6332 .awb-menu__sub-li > .awb-menu__sub-a {
    color: #ffffff !important;
    font-size: 11.5px !important;
    padding-left: 32px !important;
  }

  #header-mobile-container #menu-item-6332 .awb-menu__sub-li > .awb-menu__sub-a:hover {
    color: rgba(255, 255, 255, 0.75) !important;
  }

}
/* end @media max-width: 640px (mobile header) */


/* ==========================================================================
   SECTION 4 - MOBILE QUICK LINKS BAR
   #mobile-quick-links
   ========================================================================== */

@media screen and (max-width: 640px) {
  .fusion-tb-header .awb-menu__main-a, .fusion-tb-header .awb-menu__sub-a, .fusion-tb-header .menu-text {
    font-family: var(--tt-font) !important;
    font-size: 1.0625rem;
    font-weight: 400;
}

  #mobile-quick-links {
    background-color: #ffffff;
    border-bottom: 5px solid transparent;
    border-image: linear-gradient(90deg, #e8921e 0%, #f5a623 50%, #f2c52a 100%) 1;
  }

  #mobile-quick-links .fusion-layout-column,
  #mobile-quick-links .fusion-column-wrapper {
    padding: 0 !important;
    margin: 0 !important;
  }

  #mobile-quick-links nav.awb-menu {
    width: 100%;
  }

  #mobile-quick-links .awb-menu__main-ul {
    display: flex !important;
    flex-wrap: nowrap !important;   /* keep all 4 on one row */
    align-items: stretch !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none;
  }

  #mobile-quick-links .awb-menu__main-li {
    flex: 1 1 0 !important;
    display: flex !important;
    align-items: stretch !important;
    margin: 0 !important;
    position: relative;
  }

  /* Pipe separators between items */
  #mobile-quick-links .awb-menu__main-li + .awb-menu__main-li {
    border-left: 1px solid #5e5e60;
  }

  #mobile-quick-links .awb-menu__main-li > .awb-menu__main-a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1;
    color: #5e5e60 !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 4px 4px !important;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.2s ease;
  }

  #mobile-quick-links .awb-menu__main-li > .awb-menu__main-a .menu-text {
    color: #5e5e60 !important;
  }

  /* Active / current page state */
  #mobile-quick-links .awb-menu__main-li > .awb-menu__main-a:hover,
  #mobile-quick-links .awb-menu__main-li.current-menu-item > .awb-menu__main-a,
  #mobile-quick-links .awb-menu__main-li.current-page-item > .awb-menu__main-a,
  #mobile-quick-links .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a {
    /*background-color: rgba(0, 0, 0, 0.06) !important;*/
    color: #5e5e60 !important;
  }

  #mobile-quick-links .awb-menu__main-background-default,
  #mobile-quick-links .awb-menu__main-background-active {
    display: none !important;
  }

}


/* Remove the full-height border-left */
#mobile-quick-links .awb-menu__main-li + .awb-menu__main-li {
  border-left: none;
}

/* Controlled-height separator */
#mobile-quick-links .awb-menu__main-li + .awb-menu__main-li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 50%;        /* adjust this value */
  background-color: #5e5e60;
}

/* ==========================================================================
   SECTION 5 - MOBILE MENU
   #menu-mobile-menu
   ========================================================================== */

/* ---- Mobile menu search bar ---- */

#header-mobile-container #menu-mobile-menu .awb-menu__li_search-inline {
  padding: 0 !important;
  border-bottom: 2px solid #e8e8e8 !important;
}

#header-mobile-container #menu-mobile-menu .fusion-search-form-content {
  display: flex !important;
  align-items: center;
  padding: 10px 16;
  background: #ffffff!important;
  border-radius: 0;
}

/* Magnifying glass icon - move submit button to the left */
#header-mobile-container #menu-mobile-menu .fusion-search-button {
  order: -1;
  position: relative;
  flex-shrink: 0;
  min-width: 20px;
  min-height: 20px;
  display: flex !important;
  align-items: center;
}

#header-mobile-container #menu-mobile-menu .fusion-search-button::before {
  content: "\f002";           /* Font Awesome magnifying glass */
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  margin-right: 8px;
  font-size: 16px;
  color: #5e5e60;
  /*color: #aaaaaa;*/
  pointer-events: none;
}

#header-mobile-container #menu-mobile-menu .fusion-search-submit {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  background: none;
  border: none;
}

/* Full-width always-visible input */
#header-mobile-container #menu-mobile-menu .fusion-search-field {
  flex: 1;
  order: 0;
  display: flex;
  align-items: center;
}

#header-mobile-container #menu-mobile-menu .fusion-search-field label {
  display: flex;
  align-items: center;
  margin: 0;
  width: 100%;
}

#header-mobile-container #menu-mobile-menu .fusion-search-field input[type="search"],
#header-mobile-container #menu-mobile-menu .fusion-search-field .s {
  width: 100% !important;
  max-width: 100% !important;
  border: none !important;
  /*background: transparent !important;*/
  padding: 4px 0 !important;
  font-size: 15px !important;
  color: #333333 !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
}

#header-mobile-container #menu-mobile-menu .fusion-search-field input[type="search"]::placeholder {
  color: #aaaaaa;
  font-size: 15px;
}

/* ---- Expand/collapse: + and − instead of chevron ---- */

#header-mobile-container .awb-menu__open-nav-submenu_main::before,
#header-mobile-container .awb-menu__open-nav-submenu_main::after {
  content: none !important;
  display: none !important;
}

#header-mobile-container .awb-menu__open-nav-submenu_main {
  font-size: 0 !important; /* hide any text Avada injects */
  position: relative;
}

#header-mobile-container .awb-menu__open-nav-submenu_main::after {
  content: '+' !important;
  display: flex !important;
  font-size: 24px !important;
  font-weight: 300 !important;
  color: #5e5e60 !important;
  font-family: inherit !important;
  line-height: 1;
  align-items: center;
  justify-content: center;
}

#header-mobile-container .awb-menu__open-nav-submenu_main[aria-expanded="true"]::after {
  content: '−' !important;
}

/* ---- FOLLOW US ON: - social links horizontal ---- */

#header-mobile-container #menu-item-6332 > .awb-menu__sub-ul {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  flex-basis: 100%;
  background: transparent !important;
  border: none !important;
  padding: 4px 20px 16px !important;
  gap: 20px;
  justify-content: flex-start;
}

#header-mobile-container #menu-item-6332 .awb-menu__sub-li {
  border: none !important;
}

@media screen and (max-width: 640px) {
  /* Force a + button onto the same row as the link text */
  #header-mobile-container .awb-menu__main-li > .awb-menu__main-a {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: calc(100% - 54px) !important;
    min-width: 0 !important;
  }

  #header-mobile-container .awb-menu__open-nav-submenu_mobile.awb-menu__open-nav-submenu_main {
    flex: 0 0 52px !important;
    flex-shrink: 0 !important;
  }
}
/* ==========================================================================
   MOBILE MENU - keep menu text and + button on the same row
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Use grid instead of flex for each top-level mobile menu item */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li {
    display: grid !important;
    grid-template-columns: 1fr 52px !important;
    grid-template-rows: auto auto !important;
    align-items: stretch !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Main menu link sits on the left */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__main-a {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 16px !important;
    text-align: center !important;
  }

  /* + button sits on the right, same row */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__open-nav-submenu_mobile.awb-menu__open-nav-submenu_main {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 52px !important;
    height: auto !important;
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-left: 1px solid #e8e8e8 !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative !important;
  }

  /* Submenu drops underneath both columns */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__sub-ul {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    margin: 0 !important;
  }

  /* Search item should stay full width */
  #header-mobile-container #menu-mobile-menu > .awb-menu__li_search-inline {
    display: block !important;
  }

}
/* Mobile menu - left align top-level menu text */
@media screen and (max-width: 640px) {

  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__main-a {
    justify-content: flex-start !important;
    text-align: left !important;
    padding-left: 24px !important;
  }

  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__main-a .menu-text {
    text-align: left !important;
  }

}

/* ==========================================================================
   MOBILE MENU - submenu styling
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Dark line beneath each top-level mobile menu item */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li {
    border-bottom: 1px solid #ffffff !important;
  }

  /* Keep the + divider matching the dark line */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__open-nav-submenu_mobile.awb-menu__open-nav-submenu_main {
    border-left: 1px solid #55555a !important;
  }

  /* Submenu panel */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__sub-ul {
    background-color: #5e5e60 !important;
    /*border-top: 1px solid #55555a !important;*/
    /*border-bottom: none !important;*/
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Submenu rows */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li {
    background-color: #5e5e60 !important;
    border-bottom: 1px solid #ffffff !important;
    /*padding-left: 24px;*/
  }

  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li:last-child {
    border-bottom: none !important;
  }

  /* Submenu links */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a {
    display: block !important;
    background-color: #77777a !important;
    color: #ffffff !important;
    padding: 8px 24px 8px 24px !important;
    text-align: left !important;
    font-size: 1.0625rem !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    line-height: 0.8 !important;
  }

  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a .menu-text {
    color: #ffffff !important;
  }

  /* Submenu hover / active */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a:hover,
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li.current-menu-item > .awb-menu__sub-a {
    background-color: #5e5e60 !important;
    color: #ffffff !important;
  }

}
/* ==========================================================================
   MOBILE MENU - refine row lines, spacing and submenu alignment
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Top-level mobile rows */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li {
    grid-template-columns: 1fr 48px !important; /* slightly narrower + column */
    border-bottom: 2px solid #55555a !important;
  }

  /* Remove the vertical line beside the + button */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__open-nav-submenu_mobile.awb-menu__open-nav-submenu_main {
    border-left: none !important;
    width: 48px !important;
    min-height: 45px !important;
  }

  /* Make top-level items slightly shorter */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__main-a {
    min-height: 45px !important;
    padding: 10px 24px !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__main-a .menu-text {
    text-align: left !important;
  }

  /* Submenu panel */
  #header-mobile-container #menu-mobile-menu > .awb-menu__main-li > .awb-menu__sub-ul {
    background-color: #5e5e60 !important;
    border-top: none !important;
    border-bottom: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Submenu rows */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li {
    position: relative !important;
    background-color: #5e5e60 !important;
    border-bottom: none !important;
    min-height: 56px !important;
  }

  /* White indented divider between submenu items */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li:not(:last-child)::after {
    content: '' !important;
    position: absolute !important;
    left: 24px !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 1px !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  /* Submenu links - vertically centred and narrower */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a {
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    background-color: #5e5e60 !important;
    color: #ffffff !important;
    padding: 0 24px !important;
    text-align: left !important;
    font-size: 1.0625rem !important;
    line-height: 1.2 !important;
  }

  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a .menu-text {
    color: #ffffff !important;
  }

  /* Submenu hover / active */
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li > .awb-menu__sub-a:hover,
  #header-mobile-container #menu-mobile-menu .awb-menu__sub-li.current-menu-item > .awb-menu__sub-a {
    background-color: #55555a !important;
    color: #ffffff !important;
  }

}

/* ==========================================================================
   MOBILE MENU - Follow Us row: icons inline, no + button
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Force Follow Us row out of the generic mobile menu grid */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 48px !important;
    /*background-image: linear-gradient(90deg, #e8921e 0%, #f5a623 50%, #f2c52a 100%) 1;*/
    /*background-color: #f5a623 !important;*/
    border-bottom: none !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }

  /* Remove the + / submenu toggle completely */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_mobile,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_main,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > button {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
  }

  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_mobile::before,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_mobile::after,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_main::before,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__open-nav-submenu_main::after {
    content: none !important;
    display: none !important;
  }

  /* Follow Us label */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__main-a {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-height: 48px !important;
    padding: 0 24px !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
    color: #ffffff !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__main-a .menu-text {
    color: #ffffff !important;
    font-size: 1.0625rem !important;
  }

  /* Social icons inline on the same orange row */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__sub-ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    flex: 1 1 auto !important;
    width: auto !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: none !important;
    padding: 0 22px 0 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    grid-column: auto !important;
    grid-row: auto !important;
    flex-basis: auto !important;
  }

  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__sub-ul > .awb-menu__sub-li {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 0 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Remove the submenu divider lines from the social icons */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__sub-ul > .awb-menu__sub-li::after {
    content: none !important;
    display: none !important;
  }

  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    line-height: 1 !important;
  }

  /* Hide the text labels for the social submenu items */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a .menu-text,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a span {
    display: none !important;
  }

  /* ==========================================================================
   MOBILE MENU - Follow Us SVG icons
   Replaces Font Awesome icons with uploaded SVG files
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Remove any Font Awesome generated icon content first */
  #header-mobile-container #menu-mobile-menu #menu-item-6333 > .awb-menu__sub-a::before,
  #header-mobile-container #menu-mobile-menu #menu-item-6334 > .awb-menu__sub-a::before,
  #header-mobile-container #menu-mobile-menu #menu-item-6335 > .awb-menu__sub-a::before,
  #header-mobile-container #menu-mobile-menu #menu-item-6336 > .awb-menu__sub-a::before {
    content: "" !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    font-family: initial !important;
  }

  /* YouTube */
  #header-mobile-container #menu-mobile-menu #menu-item-6333 > .awb-menu__sub-a::before {
    background-image: url("/wp-content/uploads/youtube-icon-tip-top-foodservice.svg") !important;
  }

  /* LinkedIn */
  #header-mobile-container #menu-mobile-menu #menu-item-6334 > .awb-menu__sub-a::before {
    background-image: url("/wp-content/uploads/linkedin-tip-top-foodservice.svg") !important;
  }

  /* Instagram */
  #header-mobile-container #menu-mobile-menu #menu-item-6335 > .awb-menu__sub-a::before {
    background-image: url("/wp-content/uploads/instagram-icon-tip-top-foodservice.svg") !important;
  }

  /* Facebook */
  #header-mobile-container #menu-mobile-menu #menu-item-6336 > .awb-menu__sub-a::before {
    background-image: url("/wp-content/uploads/facebook-tip-top-foodservice.svg") !important;
  }

  /* Keep the social link text hidden */
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a .menu-text,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a span {
    display: none !important;
  }

}
/* ==========================================================================
   MOBILE MENU - Follow Us gradient background
   ========================================================================== */

@media screen and (max-width: 640px) {
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 {
    background: linear-gradient(
      90deg,
      #e8921e 0%,
      #f5a623 50%,
      #f2c52a 100%
    ) !important;
  }

  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__main-a,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 > .awb-menu__sub-ul,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-li,
  #header-mobile-container #menu-mobile-menu > #menu-item-6332 .awb-menu__sub-a {
    background: transparent !important;
  }

}

/* ==========================================================================
   MOBILE MENU - allow menu panel to scroll
   ========================================================================== */

@media screen and (max-width: 640px) {

  #header-mobile-container .awb-menu__m-collapse,
  #header-mobile-container #menu-mobile-menu {
    max-height: calc(100vh - 105px) !important;
    max-height: calc(100dvh - 105px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

}
}
/* ==========================================================================
   MOBILE MENU - CSS-only search icon, no Font Awesome dependency
   ========================================================================== */

@media screen and (max-width: 640px) {

  /* Fix/search row layout */
  #header-mobile-container #menu-mobile-menu .fusion-search-form-content {
    display: flex !important;
    align-items: center !important;
    padding: 10px 16px !important;
    background: #ffffff !important;
    border-radius: 0 !important;
  }

  /* Search icon wrapper */
  #header-mobile-container #menu-mobile-menu .fusion-search-button {
    order: -1 !important;
    position: relative !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    margin-right: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Magnifying glass circle */
  #header-mobile-container #menu-mobile-menu .fusion-search-button::before {
    content: '' !important;
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    border: 2px solid #5e5e60 !important;
    border-radius: 50% !important;
    background: transparent !important;
    margin: 0 !important;
    font-family: initial !important;
    box-sizing: border-box !important;
  }

  /* Magnifying glass handle */
  #header-mobile-container #menu-mobile-menu .fusion-search-button::after {
    content: '' !important;
    position: absolute !important;
    width: 8px !important;
    height: 2px !important;
    background-color: #5e5e60 !important;
    left: 14px !important;
    top: 15px !important;
    transform: rotate(45deg) !important;
    transform-origin: left center !important;
    display: block !important;
  }

  /* Keep the actual submit button clickable but invisible */
  #header-mobile-container #menu-mobile-menu .fusion-search-submit {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
  }

}

/* Active top utility menu item */
.tt-top-links .current-menu-item > a,
.tt-top-links .current_page_item > a,
.tt-top-links .current-menu-ancestor > a,
.tt-top-links .current-page-ancestor > a {
    background: #55565a !important;
    color: #fff !important;
}

.tt-top-links .current-menu-item,
.tt-top-links .current_page_item,
.tt-top-links .current-menu-ancestor,
.tt-top-links .current-page-ancestor {
    background: #55565a !important;
}

/* ==========================================================================
   DESKTOP MENU - fix pale submenu hover over separator lines
   ========================================================================== */

/* Make the separator line decorative only */
#menu-desktop-container .awb-menu__sub-li + .awb-menu__sub-li::before,
#header-desktop-container .awb-menu__sub-li + .awb-menu__sub-li::before {
  pointer-events: none !important;
  z-index: 2;
}

/* Override Avada's default li hover/active background */
#menu-desktop-container .awb-menu__sub-li:hover,
#menu-desktop-container .awb-menu__sub-li.hover,
#menu-desktop-container .awb-menu__sub-li.expanded,
#menu-desktop-container .awb-menu__sub-li:focus-within,
#menu-desktop-container .awb-menu__sub-li.current-menu-item,
#menu-desktop-container .awb-menu__sub-li.current-page-item,
#menu-desktop-container .awb-menu__sub-li.current-menu-ancestor,
#header-desktop-container .awb-menu__sub-li:hover,
#header-desktop-container .awb-menu__sub-li.hover,
#header-desktop-container .awb-menu__sub-li.expanded,
#header-desktop-container .awb-menu__sub-li:focus-within,
#header-desktop-container .awb-menu__sub-li.current-menu-item,
#header-desktop-container .awb-menu__sub-li.current-page-item,
#header-desktop-container .awb-menu__sub-li.current-menu-ancestor {
  background-color: #5e5e60 !important;
}

/* Force the link to match the li state */
#menu-desktop-container .awb-menu__sub-li:hover > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li.hover > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li.expanded > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li:focus-within > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li.current-menu-item > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li.current-page-item > .awb-menu__sub-a,
#menu-desktop-container .awb-menu__sub-li.current-menu-ancestor > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li:hover > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li.hover > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li.expanded > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li:focus-within > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li.current-menu-item > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li.current-page-item > .awb-menu__sub-a,
#header-desktop-container .awb-menu__sub-li.current-menu-ancestor > .awb-menu__sub-a {
  background-color: #5e5e60 !important;
  color: #ffffff !important;
}