/* =========================================
   HEADER NAV (Elementor / HFE)
   - One underline system using ::after
   - Works for items with/without submenu
   - No arrows, no double borders
   - Precise active states (top level & submenu)
   ========================================= */

#menu-cmc-main {
  margin-bottom: -7rem;
}

html,
body {
  overflow-x: hidden;
}

#mobile-menu-cmc-main {
  margin-bottom: 7rem;
}

/* Hide ONLY the little submenu arrows (keep hamburger/burger toggle intact) */
.hfe-nav-menu .hfe-menu-toggle.sub-arrow {
  display: none !important;
}

/* Header font family (your original) */
.hfe-menu-item,
.e-con-inner .elementor-widget-navigation-menu .hfe-nav-menu nav ul li a {
  /* font-family: "Proxima-Nova-Medium" !important; */
}

/* ===== Top-level items (including submenu parents) ===== */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a {
  /* position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  margin: 0;
  padding: 10px 0;
  --u-thickness: 3px;
  --u-color: #fefefe;
  --u-offset: 0;
  border: 0 !important; */
}

@media only screen and (max-width: 1264px) {
  .e-con-inner
    .elementor-widget-navigation-menu
    .hfe-nav-menu.hfe-layout-horizontal
    nav
    > ul.hfe-nav-menu
    > li
    > a,
  .e-con-inner
    .elementor-widget-navigation-menu
    .hfe-nav-menu.hfe-layout-horizontal
    nav
    > ul.hfe-nav-menu
    > li
    > .hfe-has-submenu-container
    > a {
    font-size: 13px !important;
  }
}

/* Draw the underline (off by default) */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0; /* full text width (we hid arrows) */
  height: var(--u-thickness);
  bottom: var(--u-offset);
  background-color: var(--u-color);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.25s ease;
}

/* Hover / keyboard focus */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a:hover::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a:focus-visible::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a:hover::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a:focus-visible::after {
  transform: scaleX(1);
}

/* Keep underline while submenu is open (hovering the li, not just the <a>) */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li:hover
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li:hover
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li:focus-within
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li:focus-within
  > .hfe-has-submenu-container
  > a::after {
  transform: scaleX(1);
}

/* ===== Top-level ACTIVE states (WP + HFE + aria-current) ===== */
/* Show a persistent underline using inset box-shadow so it aligns perfectly */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-item
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_item
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-parent
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_parent
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-ancestor
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.hfe-active-menu-item
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-item
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_item
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-parent
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_parent
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-ancestor
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.hfe-active-menu-item
  > .hfe-has-submenu-container
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a[aria-current="page"],
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a[aria-current="page"] {
  box-shadow: inset 0 calc(-1 * var(--u-thickness)) 0 0 var(--u-color) !important;
}

/* Prevent double line on active items (turn off ::after there) */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-item
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_item
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-parent
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_parent
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-ancestor
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.hfe-active-menu-item
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > a[aria-current="page"]::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-item
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_item
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-parent
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current_page_parent
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.current-menu-ancestor
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li.hfe-active-menu-item
  > .hfe-has-submenu-container
  > a::after,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li
  > .hfe-has-submenu-container
  > a[aria-current="page"]::after {
  content: none !important;
}

/* Prevent clipping of underline */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  > ul.hfe-nav-menu
  > li {
  overflow: visible;
}

/* Keep your other header fonts */
.header-top-btn .elementor-button,
.header-top-contact-info ul li a .elementor-icon-list-text {
  font-family: "Proxima-Nova-Regular";
}

/* =========================================
   SUBMENU STYLES — left green bar for hover/active
   ========================================= */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li
  > a {
  display: block;
  box-sizing: border-box; /* no layout shift */
  padding-left: 16px; /* gap between text & bar */
  border-left: 5px solid transparent;
  text-decoration: none;
  transition: border-color 0.2s ease;
}

/* Hover / keyboard focus */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li
  > a:hover,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li
  > a:focus-visible {
  border-left-color: #99cc99;
}

/* ✅ ACTIVE — highlight ONLY the exact current submenu item */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li.current-menu-item
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li.current_page_item
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li
  > a[aria-current="page"] {
  border-left-color: #99cc99 !important;
}

/* 🚫 Do NOT highlight submenu ancestors/parents */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li.current-menu-parent
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li.current_page_parent
  > a,
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li.current-menu-ancestor
  > a {
  border-left-color: transparent !important;
}

/* Ensure the top-level underline system is OFF inside submenus */
.e-con-inner
  .elementor-widget-navigation-menu
  .hfe-nav-menu.hfe-layout-horizontal
  nav
  ul.sub-menu
  li
  a::after {
  content: none !important;
}

.elementor-1870 .elementor-element.elementor-element-82c79bf .sub-menu,
.elementor-1870 .elementor-element.elementor-element-82c79bf nav.hfe-dropdown,
.elementor-1870
  .elementor-element.elementor-element-82c79bf
  nav.hfe-dropdown-expandible,
.elementor-1870
  .elementor-element.elementor-element-82c79bf
  nav.hfe-dropdown
  .menu-item
  a.hfe-menu-item,
.elementor-1870
  .elementor-element.elementor-element-82c79bf
  nav.hfe-dropdown
  .menu-item
  a.hfe-sub-menu-item {
  font-family: "Proxima-Nova-Regular";
}

@media only screen and (max-width: 1264px) {
  .elementor-1870 .elementor-element.elementor-element-6365c3d img {
    max-width: 150px;
  }
  .elementor-1870 .elementor-element.elementor-element-f67bd9e a.hfe-menu-item,
  .elementor-1870
    .elementor-element.elementor-element-f67bd9e
    a.hfe-sub-menu-item {
    font-size: 13px;
  }
  .elementor-1870 .elementor-element.elementor-element-3000c65 a.hfe-menu-item,
  .elementor-1870
    .elementor-element.elementor-element-3000c65
    a.hfe-sub-menu-item {
    font-size: 13px;
  }
}
@media only screen and (max-width: 1209px) {
  .e-con-inner
    .elementor-widget-navigation-menu
    .hfe-nav-menu.hfe-layout-horizontal
    nav
    > ul.hfe-nav-menu
    > li {
    margin-right: 15px !important;
  }
  body:not(.rtl)
    .elementor-1870
    .elementor-element.elementor-element-f67bd9e
    .hfe-nav-menu__layout-horizontal
    .hfe-nav-menu
    > li.menu-item:not(:last-child) {
    margin-right: 15px !important;
  }
}
