/* Reveal: replaces the Canvas data-animate system. See docs/features/MYRA-REVEAL.md.
   Content starts faded (never invisible) and rises to full, so a slow or failed
   script still leaves the text readable.
   .reveal       fades in when it scrolls into view (js/2026/reveal-*.js adds .reveal-in)
   .reveal-up    adds a slide up (footer social icons)
   .reveal-load  CSS only, runs on page load (above the fold, and Swiper's cloned slides) */

.reveal {
    opacity: 0.4;
    transition: opacity 1.6s ease, transform 1.6s ease;
}
.reveal-up {
    transform: translateY(40px);
}
.reveal.reveal-in {
    opacity: 1;
    transform: none;
}

.reveal-load {
    animation: reveal-load 1.6s ease both;
}
@keyframes reveal-load {
    from {
        opacity: 0.4;
    }
    to {
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .reveal,
    .reveal-load {
        opacity: 1;
        transform: none;
        transition: none;
        animation: none;
    }
}
