Iso Cycles, eight directions

The second round: E, S and N drawn for every hero (SE and NE are the first round's), SW, NW and W mirrored.
cast.json        the five heroes, per-facing notes, loop ranges, size and speed nudges
prompts.json     every clip request for the 8-direction build (start images are the first frames below)
first-frames/    the 15 new first frames (E, S, N for each hero; 960x960, magenta key)
scripts/         make_prompts.py builds the stills and clips from cast.json; process.py keys, finds loops,
                 matches size and speed, pixelates and mirrors; reframe.py places a still on the first-frame canvas
build-notes.md   what we tried, what failed and why
