I seriously believe this is one of those issues where the browser should enforce the user's preference over what websites want. Rather than try and get every site worldwide to implement this consistently, having the browser disable animations based on the OS-wide configuration would be an easy win for everyone.
It's almost impossible to reliably distinguish animations required for a web site to work properly from animations and changes that can and should be disabled. For example, try to distinguish (from "definitely should be blocked" to "definitely can't be blocked without breaking things"): - An ad mascot hopping up or down telling you to click it - A loading spinner spinning - A progress bar - Information you're waiting…
See how it works in the Android world: anything that uses Animation, AnimationSet, ObjectAnimator, Compose animations, etc, all respect the system setting of animation speed (from 0 to 3x). As a developer, as long as you use the proper API, it'll work.
So, no, your ad mascot should be written with those APIs, and not using them should bring a massive performance cost that makes you think for a second or two about whether you're doing it right.