Hi Nick,
Its hard to tell from photos but it looks like a flatweave cotton/ linen, can you confirm this?
If it is then the fact its been wet and alkaline seems to have browned it. I would go in with an oxidising shampoo. Prochem fibre shampoo, oxibrite and fibre buff mix. You want the cushions so you can do it offsite a couple of times and get them dry fast.
Unfortunately we had this once on a pure white flatweave on a single cushion that didnt dry fast enough and the corner browned.
Natural fabric upholstery we allways make very acidic now to retard against this.
Hope this helps
Graeme
Access Cleaning Solutions