Max Verstappen won the Monaco Grand Prix to take the lead in the Formula One world championship standings for the first time in his career - with rival Lewis Hamilton left fuming at his Mercedes team.
Verstappen, who started from the front after pole-sitter Charles Leclerc was ruled out following a mechanical failure, led virtually every lap on his way to a crushing victory here in Monte Carlo.
But Hamilton took the chequered flag only in seventh after he lost two positions during the opening round of pit-stops.
Verstappen crossed the line 8.9 seconds ahead of Ferrari's Carlos Sainz, with Lando Norris claiming the third podium of his career following another fine drive to third.
On a miserable day for Mercedes, Valtteri Bottas retired from second after the Finn's front-right wheel jammed on during his pit-stop.
Verstappen headed into Sunday's race 14 points behind Hamilton but now leaves the principality four points ahead of the seven-time world champion.
Hamilton, who was facing an uphill task after qualifying only seventh, took aim at Mercedes after he became the first of the leading pack to stop for tyres on lap 29 of 78.
He emerged from the pits in eighth, and then saw both the Aston Martin of Sebastian Vettel and Red Bull's Sergio Perez re-join ahead of him after they changed for rubber several laps later.
"I don't understand, guys," said Hamilton on the radio. "I saved the tyres to go longer and we stopped before everyone."
Hamilton's race engineer Peter Bonnington then had to deliver the grim news that Perez was also ahead of him on the track.
"We have lost the position to Perez, too," Bonnington said. "Sorry about that."
With overtaking largely impossible on the narrow Monte Carlo streets, Hamilton was unable to make any impression on Pierre Gasly.
In the closing stages, he stopped for a second time to take on fresh rubber and claim a bonus point for the fastest lap before finishing almost a lap down on Verstappen.