Pedro Neto scored an added-time winner as Wolves came from behind to earn a dramatic victory and stop Chelsea going top of the Premier League.
Daniel Podence had levelled in the second half after Olivier Giroud put the Blues ahead.
The Portugal forward tiptoed through the Chelsea defence before wrong-footing goalkeeper Edouard Mendy with a shot that deflected in off Reece James.
It came after a fierce Giroud volley from Ben Chilwell’s cross crept through Rui Patricio’s gloves to open the scoring for the visitors.
Neto was denied a late penalty for the hosts after referee Stuart Attwell reviewed his original decision on the pitch-side monitor and judged the Wolves forward was not fouled by Reece James.
But the 20-year-old broke away in the 95th minute and fired a low strike into the far corner beyond Mendy to earn Wolves only their second win in six games.
It is a second successive defeat for Chelsea after they were beaten at Everton on Saturday, with Frank Lampard’s side again missing an opportunity to go top of the table.
Lampard said his side did not “have enough answers” in that 1-0 defeat against the Toffees, with Tottenham also frustrating his side in a goalless draw at Stamford Bridge last month.
It was a similar story at Molineux as the Blues failed to have a shot on target in the opening 45 minutes, Kurt Zouma hitting the crossbar and Giroud heading over from a corner.
The visitors made amends immediately after the break as Giroud beat Willy Boly to Chilwell’s low ball to fizz a left-footed volley underneath Patricio.
It was the in-form Frenchman’s seventh goal in as many games in all competitions, but it was not enough to stop the Blues losing consecutive top-flight matches for the first time since December last year.
Lampard may have had reason to feel aggrieved at Wolves’ leveller, which followed a corner awarded to the hosts despite the ball having appeared to go out off Boly.
But Chelsea failed to create any serious chances after Giroud’s goal and were picked off on the break by the hosts’ pace and trickery in attack.
With Tottenham visiting Liverpool on Wednesday, this was a chance for Chelsea to move briefly into top spot and apply pressure.
Instead, the Blues remain fifth and could lose ground on the top four with all the teams in the Champions League places still to play this week.
— #Mufc Mutuals !! #Cavani7 🔴🔴 (@DiipsyUTD) December 15, 2020