Most animations are just one of many things happening on the page at that time, and if the JS thread gets busy with some other work, our animation will freeze until that work is completed.
Interestingly, however, not all JS libraries are created equal. Motion, for example, seems to break this rule: