prefers-reduced-motion is two lines and worth it

Parallax, autoplaying carousels and long transitions cause genuine nausea for some people, and the operating system already knows who they are.

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

The near-zero duration rather than none is deliberate: animations that rely on a completion event still fire, so nothing breaks. This is a blunt instrument and that is fine as a baseline — a considered version keeps motion that conveys meaning, like a spinner, and removes motion that is decorative. Support arrived in Safari in 2017 and Firefox in 2018, and it degrades to no rule at all elsewhere, which costs nothing.