Hello @chrissupclay ,
Currently, there is an issue in the Modern Engine when working with data from different arrays that are not nested within each other. Because of this, you are seeing the unexpected behavior and errors in the resulting file.
Our developers have been working on a fix, and we plan to publish it at the beginning of next week. Once the update is released, your template should work correctly.
This issue is also related to another similar request: Loops in Docx modern engine.
I'll let you know as soon as the release with fixes is available.