/* Custom CSS for additional animations */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes slideUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes bounceSubtle {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

@keyframes float {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-15px) rotate(5deg); }
}

@keyframes glow {
    0% { filter: hue-rotate(0deg); }
    100% { filter: hue-rotate(360deg); }
}

@keyframes spin-slow {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.animate-spin-slow {
    animation: spin-slow 3s linear infinite;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}



/* Custom scrollbar for webkit browsers */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #F8F9FB;
}

::-webkit-scrollbar-thumb {
    background: #213854;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #365776;
}

/* Glassmorphism effect */
.glass {
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.18);
}

/* Hover effects */
.hover-lift {
    transition: all 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

/* Professional gradients */
.gradient-primary {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.gradient-secondary {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
}

/* Animation delays */
.delay-300 { animation-delay: 300ms; }
.delay-500 { animation-delay: 500ms; }
.delay-700 { animation-delay: 700ms; }
.delay-1000 { animation-delay: 1000ms; }
.delay-2000 { animation-delay: 2000ms; }

/* Navigation scroll effect styles */
.navbar-scrolled {
    background: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid rgba(33, 56, 84, 0.2) !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1) !important;
}

/* Mega Menu Hover States */
.mega-menu-item:hover .mega-menu-icon {
    transform: scale(1.05);
}

/* Mobile responsive fixes */
@media (max-width: 1024px) {
    .mega-menu-dropdown {
        position: fixed !important;
        top: 80px !important;
        left: 1rem !important;
        right: 1rem !important;
        transform: none !important;
        max-width: none !important;
        width: auto !important;
    }
}

/* Additional Typography */
.text-gradient {
    background: linear-gradient(135deg, #213854 0%, #365776 50%, #4D88B5 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Button hover effects */
.btn-primary {
    background: linear-gradient(135deg, #213854 0%, #365776 100%);
    transition: all 0.3s ease;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #365776 0%, #4D88B5 100%);
    transform: translateY(-2px);
    box-shadow: 0 20px 40px -10px rgba(33, 56, 84, 0.3);
}

/* Focus states for accessibility */
.focus-outline:focus {
    outline: 2px solid #4D88B5;
    outline-offset: 2px;
}

/* Enhanced menu animations */
.menu-item-enter {
    animation: menuItemEnter 0.3s ease-out;
}

#primary-menu button{
    border:0;
}

@keyframes menuItemEnter {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}