.hero-section {
    position: relative;
    overflow: hidden;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-title {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    animation: fadeInUp 1s ease-out;
}

.hero-description {
    animation: fadeInUp 1s ease-out 0.2s;
    opacity: 0;
    animation-fill-mode: forwards;
}

.hero-cta {
    animation: fadeInUp 1s ease-out 0.4s;
    opacity: 0;
    animation-fill-mode: forwards;
}

.hero-image {
    animation: floatAnimation 6s ease-in-out infinite;
}

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

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