/* Animación de desvanecimiento desde la izquierda */
@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Animación de desvanecimiento desde la derecha */
@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Animaciones aplicadas a elementos específicos */
.index5 h1, .index5 p {
    opacity: 0;
    animation-duration: 1s;
    animation-fill-mode: both;
}

.index5 h1.animate-left, .index5 p.animate-left {
    animation-name: fadeInLeft;
}

.index3 p, .index3 h1 {
    opacity: 0;
    animation-duration: 1s;
    animation-fill-mode: both;
}

.index3 p.animate-right, .index3 h1.animate-right {
    animation-name: fadeInRight;
}

/* Animación de deslizamiento para los horarios de atención */
@keyframes fadeInUp {
    from {
        transform: translateY(20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Animación de deslizamiento para el mapa */
@keyframes fadeInFromBottom {
    from {
        transform: translateY(50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}