/* Mega Menu - Base Styles & Variables */

:root {
    --nav-z-index: 100;
    --mega-menu-z-index: 999;
}

/* Mega menu container positioning */
.hafo-elementor-nav {
    width: 100%;
    position: relative;
}

.hafo-elementor-nav .nav-container {
    max-width: 100%;
    padding: 0;
}

.hafo-elementor-nav.primary-navigation {
    position: relative;
    z-index: var(--nav-z-index);
}

/* Submenu wrapper positioning and visibility */
.hafo-elementor-nav .submenu-wrapper {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: var(--mega-menu-z-index);
}

/* Show submenu wrapper on hover or when open */
.hafo-elementor-nav .menu-item.has-dropdown:hover>.submenu-wrapper,
.hafo-elementor-nav .menu-item.has-mega-menu:hover>.submenu-wrapper,
.hafo-elementor-nav .menu-item.menu-open>.submenu-wrapper {
    display: block;
    opacity: 1;
    visibility: visible;
}

/* Dropdown indicator (chevron) */
.hafo-elementor-nav .dropdown-indicator {
    display: inline-flex;
    align-items: center;
    margin-left: 4px;
    transition: transform 0.2s ease;
}

.hafo-elementor-nav .menu-item.has-dropdown:hover>.menu-link .dropdown-indicator,
.hafo-elementor-nav .menu-item.has-mega-menu:hover>.menu-link .dropdown-indicator {
    transform: rotate(180deg);
}