Yes — very weird. A weekend away from it and some fresh eyes didn’t help much, I couldn’t get @kender‘s approach to work either, but just re-creating the fields and going again has fixed the problem so I guess the database just had something else in it using the same terms…
Thanks everyone for the help.