/* Global Directional Reveal System */

/* Base Class */
.reveal-interaction {
    opacity: 0;
    transition: opacity 1.2s ease-out, transform 1.2s cubic-bezier(0.2, 0.8, 0.2, 1);
    /* Soft/Slow premium feel */
    will-change: opacity, transform;
}

/* Initial States */
.reveal-left {
    transform: translateX(-40px);
    /* Coming from left */
}

.reveal-right {
    transform: translateX(40px);
    /* Coming from right */
}

.reveal-up {
    transform: translateY(40px);
    /* Coming from bottom */
}

/* Visibility State */
.reveal-interaction.is-visible {
    opacity: 1;
    transform: translate(0, 0) !important;
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .reveal-interaction {
        opacity: 1;
        transform: none !important;
        transition: none !important;
    }
}