/* --- CSS para Animação de Scroll v9 --- */

/* Estado Inicial Comum (Invisível) */
.js-scroll-animate {
    opacity: 0;
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    will-change: opacity, transform; /* Otimização de performance */
}

/* Estado Final Comum (Visível - quando a classe 'is-visible' for adicionada pelo JS) */
.js-scroll-animate.is-visible {
    opacity: 1;
    transform: translate(0, 0); /* Volta para a posição original */
}

/* Variações de Direção */
.fade-in-down {
    transform: translateY(40px); /* Começa 40px abaixo */
}

.fade-in-right {
    transform: translateX(-40px); /* Começa 40px à esquerda */
}

/* Garantir que a animação não atrapalhe o hover original do card */
.card-catedral-acao.js-scroll-animate.is-visible:hover {
    transform: translateY(-5px); /* Mantém o efeito de subir no hover */
}