/* Anchor Core - Reveal Animation Engine */

.reveal,
[data-anchor-reveal] {
    opacity: 0;
    transform: translateY(24px);
    will-change: opacity, transform;
    transition: opacity 1.2s cubic-bezier(0.2, 0.7, 0.2, 1),
                transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.reveal.reveal-in,
[data-anchor-reveal].reveal-in {
    opacity: 1;
    transform: translateY(0);
}

/* Accessibility: Respect user OS motion preferences */
@media (prefers-reduced-motion: reduce) {
    .reveal,
    [data-anchor-reveal] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}