/* animations.css */

/* --- Animações para Scroll Reveal --- */
.reveal-item {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.reveal-item.fade-in-up {
    opacity: 1;
    transform: translateY(0);
}

/* --- Transições Gerais (para elementos que não são animados por scroll reveal) --- */
/* Transição suave para todas as propriedades de cor, fundo, sombra para a troca de tema */
body,
.main-header,
.main-nav,
.about-cards .card,
.features-section,
.feature-item,
.plans-section,
.plan-card,
.contact-form,
.main-footer,
.cookie-consent,
.promo-content,
.btn,
.main-nav ul li a,
.logo,
.theme-toggle-btn,
.security-badges img,
.cookie-consent .btn-accept,
.promo-content .close-popup {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease, opacity 0.3s ease, filter 0.3s ease;
}

/* Transições para o menu responsivo */
.main-nav {
    transition: height 0.3s ease-out, background-color 0.3s ease-out, box-shadow 0.3s ease;
}

/* Transições para pop-ups */
.promo-popup {
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.promo-popup.active .promo-content {
    transition: transform 0.3s ease;
}