Manchester City earned a thrilling 4-3 win as Premier League 2 leaders Everton missed the chance to close in on the Division 1 title.
Jeremie Frimpong's 78th-minute winner leaves Everton three points clear of second-placed Brighton & Hove Albion with two matches left, ahead of the top two clubs' crucial meeting on Monday 15 April.
After Bassala Sambou's second-minute penalty put Everton 1-0 up at Man City, the hosts were 2-1 up at half-time thanks to goals from Eric Garcia and Adrian Bernabe.
City extended their lead on 60 minutes when Ian Carlo Poveda-Ocampo raced clear to slot home.
But, Everton responded and drew level with Sambou scoring again before Fraser Hornby levelled.
The home side put themselves back in front with 12 minutes remaining when Frimpong powered in.
If Everton win in their showdown with Brighton, they will be PL2 Division 1 champions for the second time, but defeat would put the Seagulls level on points at the top and a draw would also take the title race to the final day.
Man City have moved five points clear of the relegation zone in eighth place.