How to set z-order for elements in a 2D screen?

I have multiple overlapping elements as part of a 2D screen, but I can’t figure out how to set the z-order for their rendering?
Essentially, I have a background element which I want to ensure is in the background, but can’t figure out how. Giving the elements different z positions doesn’t make any difference, and I can’t see a property for z-order or priority. Also, the order they appear in the hierarchy doesn’t appear to make any difference.
Not sure if this is something to do with the problem, but one of the elements is a video texture.

OK yeah, after testing without a video texture I see that the order in the scene hierarchy should make a difference. But when using a video texture it seems to mess this up. I had to set the video texture element to draw on the world layer otherwise it didn’t appear, so I guess that’s the issue.

Is there any way around this?

If the elements are on the UI layer or any render layer that has the transparent sorting set to be manual, the element render order is based on hierarchy order. Elements at the top of the hierarchy are rendered first.

If you have the elements on the World Layer, the transparent sorting is set to back to front where the elements will be rendered dependent on distance from the camera.

Do you have a project that you can share to see the issue?