Ceating cross-sectional styled visualisation of multiple layers in map
possibly one option is to create a 3d View in QGIS. here is a link to using 3D views, for creating a DEM. but the same concepts could apply. https://opengislab.com/blog/2018/3/20/3d-dem-visualization-in-qgis-30
Essentially create 3 different layers. Then, apply a different elevation to each 'layer' such that they 'stack' nicely. (the elevation doesn't even have to be real, just make it up).
The legend and labels are probably the only items which might not be supported. See how you go!