/* Fix desktop nav dropdown hover visibility */
.header-header-two,
.header-main-h2,
.main-haeder-wrapper-h2,
.header-nav.main-nav-one,
.header-nav.main-nav-one nav,
.header-nav.main-nav-one nav ul {
    overflow: visible !important;
}

.header-main-h2 {
    position: relative;
    z-index: 1200;
}

.main-nav-one ul li.has-dropdown {
    position: relative;
    z-index: 1201;
}

.main-nav-one ul li.has-dropdown .submenu {
    display: block !important;
    margin-top: 0;
    opacity: 0;
    pointer-events: none;
    top: 100%;
    transform: translateY(8px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
    visibility: hidden;
    z-index: 9999 !important;
}

.main-nav-one ul li.has-dropdown:hover > .submenu,
.main-nav-one ul li.has-dropdown:focus-within > .submenu,
.main-nav-one ul li.has-dropdown.vl-dropdown-open > .submenu {
    opacity: 1 !important;
    pointer-events: auto;
    transform: translateY(0) !important;
    visibility: visible !important;
}

/* Bridge hover gap between parent link and dropdown */
.main-nav-one ul li.has-dropdown::after {
    content: "";
    height: 12px;
    left: 0;
    position: absolute;
    top: 100%;
    width: 100%;
}

.main-nav-one ul li.has-dropdown .submenu li a {
    color: #1f1f25 !important;
    display: block;
}

.main-nav-one ul li.has-dropdown .submenu li a:hover {
    background: #f2f5ff;
    color: #264796 !important;
}

/* Underline only on top-level non-dropdown links */
.header-nav.main-nav-one nav ul li:not(.has-dropdown) > a.nav-link::after {
    background: linear-gradient(90deg, #e87632, #264796);
    bottom: -2px;
    box-shadow: 0 0 8px rgba(232, 118, 50, 0.45);
    content: "";
    height: 2px;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1),
                width 0.65s cubic-bezier(0.4, 0, 0.2, 1);
    width: 0;
}

.header-nav.main-nav-one nav ul li:not(.has-dropdown) > a.nav-link:hover::after {
    opacity: 1;
    width: 100%;
}
