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.