/* Utilizando animaciones centralizadas de animations.css */

/* Hero Section */
.hero {
    animation: fadeIn 1s ease-out;
}

.hero h1 {
    animation: fadeInUp 0.8s ease-out;
}

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

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

/* Speed Test Widget */
.speed-test-widget {
    animation: scaleIn 0.8s ease-out;
    transition: all 0.3s ease;
}

.speed-test-widget:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

.btn-speed {
    position: relative;
    overflow: hidden;
}

.btn-speed::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    animation: shimmer 2s infinite;
}

/* Features Section */
.section-heading h2 {
    animation: fadeInUp 0.8s ease-out;
}

.section-heading p {
    animation: fadeInUp 0.8s ease-out 0.2s;
    opacity: 0;
    animation-fill-mode: forwards;
}

.feature-card {
    animation: scaleIn 0.6s ease-out;
    animation-fill-mode: forwards;
    opacity: 0;
    transition: all 0.3s ease;
}

.feature-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

.feature-icon {
    transition: all 0.3s ease;
}

.feature-card:hover .feature-icon {
    animation: rotateIcon 1s ease-in-out;
    color: var(--fenix-red);
}

/* Survey Section */
.survey-section {
    animation: fadeIn 1s ease-out;
}

.survey-content {
    animation: fadeInLeft 0.8s ease-out;
}

.survey-icon {
    animation: pulse 2s infinite;
}

/* Pricing Preview */
.price-card {
    animation: scaleIn 0.6s ease-out;
    animation-fill-mode: forwards;
    opacity: 0;
    transition: all 0.3s ease;
}

.price-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

.price-card.popular::after {
    animation: pulse 2s infinite;
}

/* Services Section */
.servicio-card {
    animation: fadeInUp 0.6s ease-out;
    animation-fill-mode: forwards;
    opacity: 0;
    transition: all 0.3s ease;
}

.servicio-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

.servicio-icon {
    transition: all 0.3s ease;
}

.servicio-card:hover .servicio-icon {
    animation: rotateIcon 1s ease-in-out;
    color: var(--fenix-red);
}

/* Hotspot Section */
.hotspot-content {
    animation: fadeInLeft 0.8s ease-out;
}

.hotspot-image {
    animation: fadeInRight 0.8s ease-out;
}

/* Testimonials Section */
.testimonial-card {
    animation: scaleIn 0.6s ease-out;
    animation-fill-mode: forwards;
    opacity: 0;
    transition: all 0.3s ease;
}

.testimonial-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

.testimonial-image {
    animation: floatAnimation 3s ease-in-out infinite;
}

/* Footer */
footer {
    animation: fadeIn 1s ease-out;
}

.footer-content {
    animation: fadeInUp 0.8s ease-out;
}

/* Responsive Animations */
@media (max-width: 768px) {
    .hero h1 {
        font-size: 2.5rem;
    }
    
    .feature-card, .price-card, .servicio-card, .testimonial-card {
        animation-delay: 0.2s;
    }
}
