/* ============================================
   NAVIGATION ACTIVE STATES & HOVER EFFECTS
   ============================================ */

/* Active Navigation States */
.nav-items a.active {
    color: var(--primary_color) !important;
    position: relative;
}

.nav-items a.active::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary_color), var(--primary_light));
    border-radius: 2px;
    animation: activeUnderline 0.4s ease-out;
}

@keyframes activeUnderline {
    from {
        width: 0;
        left: 50%;
    }

    to {
        width: 100%;
        left: 0;
    }
}

/* Active Dropdown Parent States */
.dropdown-li.active-dropdown-parent>.dropdown-parent {
    color: var(--primary_color) !important;
}

.dropdown-li.active-dropdown-parent {
    position: relative;
}

.dropdown-li.active-dropdown-parent::before {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary_color), var(--primary_light));
    border-radius: 2px;
}

/* Enhanced Hover Effects */
.nav-items a {
    position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 4px;
}

.nav-items a:hover {
    transform: translateY(-2px);
    color: var(--primary_light) !important;
}

.nav-items a:not(.active):hover::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--primary_color), var(--primary_light));
    border-radius: 2px;
    animation: hoverUnderline 0.3s ease-out forwards;
}

@keyframes hoverUnderline {
    to {
        width: 100%;
    }
}

/* Dropdown Parent Hover Effects */
.dropdown-parent {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.dropdown-parent:hover {
    transform: translateY(-2px);
    color: var(--primary_light) !important;
}

.dropdown-li:hover {
    transform: translateY(-2px);
}

/* Special styling for Book Now button */
.nav-items a.button-link {
    color: var(--primary_color) !important;
    padding: 8px 20px !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
}

.nav-items a.button-link.active {
    background: linear-gradient(135deg, var(--primary_color) 0%, var(--primary_light) 100%);
    color: white !important;
    box-shadow: 0 4px 15px rgba(196, 154, 108, 0.4);
}

.nav-items a.button-link:hover {
    background: linear-gradient(135deg, var(--primary_light) 0%, var(--primary_color) 100%);
    color: white !important;
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(196, 154, 108, 0.5);
}

.nav-items a.button-link.active::after,
.nav-items a.button-link:hover::after {
    display: none;
}

/* Dropdown Child Hover Effects */
.dropdown-child {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    transform: translateY(-10px);
    animation: fadeInUp 0.3s ease-out forwards;
}

@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.dropdown-child li a {
    padding: 8px 12px;
    border-radius: 4px;
    transition: all 0.3s ease;
    position: relative;
}

.dropdown-child li a:hover {
    background-color: rgba(196, 154, 108, 0.1);
    color: var(--primary_color) !important;
    transform: translateX(5px);
}

.dropdown-child li a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 2px;
    background: var(--primary_color);
    border-radius: 2px;
    transition: width 0.3s ease;
}

.dropdown-child li a:hover::before {
    width: 4px;
}

/* Mobile Navigation Active States */
.responsive-menu-items a.active {
    color: var(--primary_color) !important;
    background-color: rgba(196, 154, 108, 0.1);
    border-left: 4px solid var(--primary_color);
    padding-left: 12px;
    font-weight: 600;
}

.responsive-menu-items a:hover {
    color: var(--primary_color) !important;
    background-color: rgba(196, 154, 108, 0.05);
}

/* Mobile Dropdown Enhancements */
.dropdown-prnt.active .arrow {
    transform: rotate(180deg);
    color: var(--primary_color);
}

.dropdown-prnt:hover .arrow {
    color: var(--primary_light);
    transform: rotate(90deg);
}

.dropdown-cld a.active {
    color: var(--primary_color) !important;
    font-weight: 600;
    background-color: rgba(196, 154, 108, 0.1);
}

/* Fixed Header States */
.main-header.fixed-header .nav-items a.active {
    color: var(--primary_color) !important;
}

.main-header.fixed-header .nav-items a.active::after {
    background: var(--primary_color);
}

.main-header.fixed-header .dropdown-li.active-dropdown-parent>.dropdown-parent {
    color: var(--primary_color) !important;
}

.main-header.fixed-header .dropdown-li.active-dropdown-parent::before {
    background: var(--primary_color);
}

/* Header Scroll Effect */
/* .main-header.scrolled {
    background-color: rgba(0, 0, 0, 0.9) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
}

.main-header.scrolled .logo {
    filter: brightness(0) invert(1);
}

.main-header.scrolled .nav-items a {
    color: var(--white_color);
}

.main-header.scrolled .nav-items a:hover {
    color: var(--primary_light) !important;
}

.main-header.scrolled .nav-items a.active {
    color: var(--primary_color) !important;
} */

/* Navigation Loading State */
.nav-items {
    position: relative;
}

.nav-items::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--primary_color), var(--primary_light));
    transition: width 0.6s ease;
}

.nav-items.loaded::after {
    width: 100%;
}

/* Responsive Navigation States */
@media (max-width: 991px) {
    .nav-items a:hover {
        transform: none;
    }

    .dropdown-parent:hover {
        transform: none;
    }

    .dropdown-li:hover {
        transform: none;
    }

    /* Keep hover effects for mobile but reduce intensity */
    .dropdown-child {
        animation: none;
        opacity: 1;
        transform: none;
    }
}

@media (max-width: 767px) {
    .nav-items a.active::after {
        height: 1px;
        bottom: -1px;
    }

    .responsive-menu-items a.active {
        border-left-width: 3px;
    }
}

/* Accessibility Enhancements */
.nav-items a:focus {
    outline: 2px solid var(--primary_color);
    outline-offset: 2px;
}

.nav-items a:focus:not(:focus-visible) {
    outline: none;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {

    .nav-items a,
    .dropdown-parent,
    .dropdown-child,
    .dropdown-li {
        transition: none;
    }

    .nav-items a:hover,
    .dropdown-parent:hover,
    .dropdown-li:hover {
        transform: none;
    }

    .nav-items a.active::after,
    .dropdown-li.active-dropdown-parent::before,
    .nav-items a:not(.active):hover::after {
        animation: none;
    }

    .dropdown-child {
        animation: none;
    }
}

/* High Contrast Mode Support */
@media (prefers-contrast: high) {

    .nav-items a.active::after,
    .dropdown-li.active-dropdown-parent::before {
        height: 3px;
    }

    .nav-items a:focus {
        outline: 3px solid var(--primary_color);
    }
}

/* Print Styles */
@media print {

    .nav-items a.active::after,
    .dropdown-li.active-dropdown-parent::before {
        display: none;
    }

    .nav-items a:hover {
        transform: none;
        text-decoration: underline;
    }
}