Sheffield United delivered a second-half masterclass as they stunned League One leaders Bristol City.
The hosts looked set to carry on their relentless charge at the top of the table when former Leeds United striker Matt Smith fired home Luke Freeman’s cross just before the break.
But if neutrals expected a goals avalanche from City after the break, United had not read the script.
For Matt Done pounced after Jason Holt’s shot had been saved, before converting Jamie Murphy’s cross for this third goal in two games.
Done has impressed since his January move from Rochdale.
Murphy secured victory with eight minutes remaining, to push United up to fifth place.
They are 12 points off second-placed Swindon Town, but have two games in hand on the Wiltshire club.
It was City’s first loss at Ashton Gate in the league since November.
Doncaster Rovers beat Yeovil 3-0 at the Keepmoat Stadium.
Victory sees Paul Dickov’s side go to within one point of the play-offs, behind sixth-placed Oldham.
Nathan Tyson opened the scoring on 22 minutes to give the hosts a 1-0 interval advantage.
But second-half strikes from Dean Furman and Kyle Bennett wrapped up all three points against the league’s bottom club.
Managerless Barnsley crashed to a 5-1 defeat against lowly Crawley Town.
Izale McLeod did the damage with a hat-trick, Sonny Bradley and Marvin Elliott also on target.
Kane Hemmings grabbed a consolation strike for the Tykes, who are just four points off the drop zone.