Would love to hear any thoughts on how to approach this. It feels like maybe layering curved layers along a base shape maybe, but then I don't know how I would make smooth transitions from the domed glass shapes to some of the curved walls and roof elements.
Definitely using subdivision modelling (subdivision modifier).These types of complex geometries are very hard to control when you have complex topology. SubD allows you to have very simple topology while creating the complexity you need. See for yourself:
To achieve this zaha hadid like forms you need to work with both fluid geometries and hard creases that connect them. This can also be easily done in blender either by creating loop cuts from the both sides of the edges you want to crease like this: Note that this approach increases complexity of your model's topology and thus is less favourable (but sometimes neccessary)
Or by using Mean Crease that you can find under edge data in item options when in edit mode, like this:
This method does not create additional topology and is completely procedural.
Other option how to create such geometries would be using procedural modelling (you basically create a script that creates the geometry based on it). In blender you could try to do it in geometry nodes, but in my opinion they are not yet user-friendly enough to use them for such tasks.