/* Animaciones y Utilidades */
.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
.reveal.active { opacity: 1; transform: translateY(0); }

@keyframes slow-zoom {
    0% { transform: scale(1); }
    100% { transform: scale(1.1); }
}
.animate-slow-zoom { animation: slow-zoom 20s infinite alternate ease-in-out; }

/* Lightbox */
#lightbox { transition: opacity 0.3s ease; }
#lightbox.hidden { opacity: 0; pointer-events: none; }
#lightbox:not(.hidden) { opacity: 1; pointer-events: auto; }

/* Listas */
.check-list li { position: relative; padding-left: 1.5rem; margin-bottom: 0.5rem; }
.check-list li::before { content: '✓'; position: absolute; left: 0; color: #556B2F; font-weight: bold; }
.warning-list li { position: relative; padding-left: 1.5rem; margin-bottom: 0.5rem; }
.warning-list li::before { content: '⚠️'; position: absolute; left: 0; font-size: 0.8rem; }