It seems that I had iTerm2 configured to display bold text as bright text (instead of bold). And I use bold, coloured text in my prompt, so that threw me.
I configured
bold-is-bright = true
and suddenly everything looks fine. I'll see how I get on with it.