/* Float repel scene. The motion is all part.js; this only prepares the layers.
   A scene is any [data-frs] element; its items are the children with data-layer. Position the items however you like
   (absolute in an overlay is the usual way): part.js writes the translate / rotate / scale properties, so an item's
   own transform (a centring translate, a static tilt) is kept. */
[data-frs] { position: relative; }
[data-frs] [data-layer] { will-change: translate, rotate, scale; transform-origin: 50% 50%; }
/* the source's layout: the scene as a pointer-transparent overlay over a section, items placed in it */
.frs-overlay { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.frs-overlay > [data-layer] { position: absolute; }
