/* Sticky Menu Styles */

/* Default state - menu is not sticky */
.menu-header {
    position: relative;
    transition: all 0.3s ease-in-out;
}

.navbar-fixed-top {
    position: relative !important;
    top: initial !important;
    transition: all 0.3s ease-in-out;
}

/* Sticky state - menu becomes fixed after scroll */
.navbar-fixed-top.is-sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0;
    right: 0;
    z-index: 9999;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    animation: slideDown 0.3s ease-in-out;
}

.menu-header.sticky-active {
    margin-bottom: 0;
}

/* Slide down animation */
@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Add background to sticky menu for better visibility */
.navbar-fixed-top.is-sticky {
    background: #ffffff;
}

/* For navbar-header-v3 variant */
.navbar-header-v3.is-sticky {
    background: #ffffff;
}

/* Ensure menu items are visible on sticky */
.navbar-fixed-top.is-sticky .navbar-nav > li > a {
    color: #fff;
}

.navbar-fixed-top.is-sticky .navbar-nav > li > a:hover {
    color: #667eea;
}

/* Mobile responsive */
@media (max-width: 767px) {
    .navbar-fixed-top.is-sticky {
        position: fixed !important;
    }
    
    .navbar-fixed-top.is-sticky .navbar-collapse {
        max-height: calc(100vh - 60px);
        overflow-y: auto;
    }
}

/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
}

/* Add padding to body when menu is sticky to prevent content jump */
body.menu-is-sticky {
    padding-top: 0;
}

/* Optional: Add a subtle border to sticky menu */
.navbar-fixed-top.is-sticky {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

/* Logo adjustment in sticky mode (optional) */
.navbar-fixed-top.is-sticky .navbar-brand img {
    max-height: 50px;
    transition: max-height 0.3s ease-in-out;
}
