/* SHARED SCROLL REVEAL */

.hidden {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.hidden.show {
    opacity: 1;
    transform: translateY(0);
}

/* Keep content readable when motion is reduced or pages are printed. */

@media (prefers-reduced-motion: reduce), (scripting: none), print {
    .hidden,
    .hidden.show {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
