/* Add these animation styles to your existing CSS */

/* Floating animation for elements */
@keyframes float {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-15px);
    }
    100% {
        transform: translateY(0px);
    }
}

/* Pulse animation for buttons */
@keyframes pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 215, 0, 0.7);
    }
    70% {
        transform: scale(1.05);
        box-shadow: 0 0 0 10px rgba(255, 215, 0, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 215, 0, 0);
    }
}

/* Fade-in animation */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Gradient animation */
@keyframes gradientBG {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* Rotate animation */
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Bounce animation */
@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-20px);
    }
    60% {
        transform: translateY(-10px);
    }
}

/* Wave animation */
@keyframes wave {
    0% {
        transform: rotate(0deg);
    }
    10% {
        transform: rotate(14deg);
    }
    20% {
        transform: rotate(-8deg);
    }
    30% {
        transform: rotate(14deg);
    }
    40% {
        transform: rotate(-4deg);
    }
    50% {
        transform: rotate(10deg);
    }
    60% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

/* Shine animation for cards */
@keyframes shine {
    0% {
        background-position: -100px;
    }
    40%, 100% {
        background-position: 300px;
    }
}

/* ===== Apply Animations to Elements ===== */

/* Hero section animations */
.hero-section {
    animation: gradientBG 15s ease infinite;
    background-size: 400% 400%;
}

.hero-content {
    animation: fadeIn 1s ease-out;
}

.hero-image {
    animation: float 6s ease-in-out infinite;
}

/* Button animations */
.btn-primary {
    animation: pulse 2s infinite;
}

.btn-primary:hover {
    animation: none;
}

/* Feature card animations */
.feature-card {
    transition: all 0.3s ease;
    animation: fadeIn 0.8s ease-out;
    animation-fill-mode: backwards;
}

.feature-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 15px 30px rgba(0, 97, 255, 0.2);
}

.feature-card:nth-child(1) {
    animation-delay: 0.2s;
}
.feature-card:nth-child(2) {
    animation-delay: 0.4s;
}
.feature-card:nth-child(3) {
    animation-delay: 0.6s;
}

/* Service card animations */
.service-card {
    transition: all 0.3s ease;
    animation: fadeIn 0.8s ease-out;
    animation-fill-mode: backwards;
}

.service-card:hover {
    transform: translateY(-10px) scale(1.02);
}

.service-card:nth-child(1) {
    animation-delay: 0.3s;
}
.service-card:nth-child(2) {
    animation-delay: 0.5s;
}
.service-card:nth-child(3) {
    animation-delay: 0.7s;
}

/* About section image animation */
.about-image {
    animation: float 5s ease-in-out infinite;
    position: relative;
}

.about-image:before,
.about-image:after {
    animation: rotate 20s linear infinite;
}

.about-image:after {
    animation-direction: reverse;
}

/* FAQ animations */
.faq-item {
    animation: fadeIn 0.5s ease-out;
    animation-fill-mode: backwards;
}

.faq-item:nth-child(1) { animation-delay: 0.1s; }
.faq-item:nth-child(2) { animation-delay: 0.2s; }
.faq-item:nth-child(3) { animation-delay: 0.3s; }
.faq-item:nth-child(4) { animation-delay: 0.4s; }

/* Footer animations */
.footer-links li {
    animation: fadeIn 0.5s ease-out;
    animation-fill-mode: backwards;
}

.footer-links li:nth-child(1) { animation-delay: 0.1s; }
.footer-links li:nth-child(2) { animation-delay: 0.2s; }
.footer-links li:nth-child(3) { animation-delay: 0.3s; }
.footer-links li:nth-child(4) { animation-delay: 0.4s; }
.footer-links li:nth-child(5) { animation-delay: 0.5s; }

/* Special animation for money elements */
.feature-icon, .service-icon {
    transition: all 0.3s ease;
}

.feature-icon:hover, .service-icon:hover {
    animation: bounce 0.8s;
    transform-origin: center bottom;
}

/* Animated wave hand for friendly feeling */
.wave-hand {
    display: inline-block;
    animation: wave 2s ease infinite;
    transform-origin: 70% 70%;
}

/* Shimmer effect for premium elements */
.premium-feature {
    position: relative;
    overflow: hidden;
}

.premium-feature:after {
    content: "";
    position: absolute;
    top: -50%;
    left: -60%;
    width: 40%;
    height: 200%;
    background: rgba(255, 255, 255, 0.2);
    transform: rotate(30deg);
    animation: shine 3s infinite;
}

/* Scroll animation classes */
.reveal {
    position: relative;
    opacity: 0;
    transition: all 1s ease;
}

.reveal.active {
    opacity: 1;
}

.reveal-left.active {
    animation: fadeInLeft 1s ease;
}

.reveal-right.active {
    animation: fadeInRight 1s ease;
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}