Christian Benteke and Wilfried Zaha starred for Crystal Palace as they claimed a stunning 2-1 win at Premier League leaders Chelsea to give the chasing pack in the title race a glimmer of hope.
Things were not looking good for Sam Allardyce's men when Cesc Fabregas handed Chelsea the lead after just five minutes, but they showed character and turned things around within six minutes of the opener.
Zaha first restored parity with a low finish from a narrow angle, before Benteke scored what eventually proved to be the winner with a delicate close-range strike.
The hosts created a number of chances to at least salvage a draw, but Palace goalkeeper Wayne Hennessey showed his class with a string of fine saves.
Chelsea remain atop the table despite Saturday's defeat, but Tottenham's 2-0 win at Burnley has seen them narrow the gap to seven points with nine games to go.
Palace, meanwhile, remain four points clear of 18th-placed Hull City - 2-1 victors over West Ham - with a game in hand following their fourth consecutive victory.
Chelsea made a superb start to the game and quickly broke the deadlock. Eden Hazard danced past Joel Ward down the left before sending in a low cross for Fabregas and the Spain international coolly tapped home from close range via the upright.
Palace immediately hit back, though, with Zaha levelling four minutes later after some good work from Benteke, firing a low shot past the helpless Thibaut Courtois and into the far corner.
The visitors continued to cause Chelsea all kinds of problems on the counter-attack and Benteke handed them a surprise lead in the 11th minute following some unconvincing defending from David Luiz, the Belgian dinking a shot over Courtois after being set up by Zaha.
Antonio Conte's men then felt they should have been awarded a penalty when Andros Townsend used his arm to keep Pedro's shot out, but referee Craig Pawson waved play on.
A superb attack involving Hazard, Fabregas and Diego Costa nearly saw the latter make it 2-2, but Hennessey pulled off a sublime save to deny the striker and keep his side ahead.
Chelsea pushed hard for an equaliser early in the second half and Costa came close on two occasions, only to see his first attempt blocked by substitute Scott Dann - who was carried off with an apparent knee injury minutes later - with Hennessey frustrating the prolific striker shortly after.
A rare break from Palace saw Zaha have a chance to put the match to bed as he bore down on Courtois but the Chelsea goalkeeper did well to get a leg to the ball and deflect it wide for a corner.
Conte brought on Willian and Michy Batshuayi in an attempt to force an equaliser, with Fabregas denied a late goal by Hennessey.
Chelsea were provided with 11 minutes stoppage time in which to find a leveller, but it was not meant to be for the Blues as they were beaten for the fourth time in the league this season.