With pure CSS to do this for too long. It is easier to take a bunch of SVG+JS. Draw for each point path - the path on which it moves, and then moving it in JS that way. There are many ready-made solutions, for example here's a simple demo
in pure JS, and libraries like anime.js
there is such a function.