GRU - LHR only should not have fuel surcharge, as per Brazilian legislation. MAD - GRU, if booked from Iberia Plus account, has very low fuel surcharge. MAD-GRU-LHR is neither, and if booked from BAEC, you have to pay. By the way, $377 is still quite low for BA.