/* Custom animations and utilities */
.hero-gradient {
    background: linear-gradient(135deg, #22c55e, #3b82f6);
}

.shadow-soft {
    box-shadow: 0 4px 20px -4px rgba(34, 197, 94, 0.1);
}

.shadow-glow {
    box-shadow: 0 0 30px rgba(34, 197, 94, 0.2);
}

.progress-bar {
    transition: width 2s ease-in-out;
    width: 0%;
}

/* Smooth transitions */
.transition-smooth {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Mobile menu animation */
.mobile-menu {
    transition: all 0.3s ease-in-out;
}

/* Scroll indicator animation */
@keyframes bounce {
    0%, 20%, 53%, 80%, 100% {
        transform: translateY(0);
    }
    40%, 43% {
        transform: translateY(-10px);
    }
    70% {
        transform: translateY(-5px);
    }
    90% {
        transform: translateY(-2px);
    }
}

.animate-bounce {
    animation: bounce 1s infinite;
}
