Lewis Hamilton took his 90th career victory by beating Mercedes team-mate Valtteri Bottas in a chaotic, incident-strewn Tuscan Grand Prix.
The race was punctuated by two red flags, the first caused by a pile-up on the pit straight, the second by a high-speed crash for Lance Stroll.
In one of the most dramatic races for years, six cars had retired before a lap of racing had completed.
Red Bull's Thai-British driver Alex Albon took a maiden podium in third.
Hamilton's win was his sixth in nine races this season and, coupled with a fastest lap secured on the penultimate tour, it extended his championship lead to 55 points as the season passes halfway, and puts him just one behind Michael Schumacher's all-time record of wins.
At the pre-race anti-racism demonstration, as he did his post-race interviews, and on the podium, Hamilton wore a T-shirt saying: "Arrest the cops who killed Breonna Taylor."
It refers to one of a number of controversial cases in the US in which police officers have shot and killed black civilians.
- 'Today was not particularly safe' - Hamilton critical of F1's re-start approach
- Hamilton steps up anti-racism protests with 'Say her name' T-shirt
- Mugello makes 'incredible' F1 debut as Hamilton leads calls to return
- Tuscan Grand Prix full race results
What caused the huge pile-up?
Amid the sequence of incidents and crashes, the victory hinged on three standing starts between the Mercedes drivers.
In the first, Hamilton got away poorly from pole position and lost the lead to Bottas, but racing lasted only three corners because of a crash between Kimi Raikkonen's Alfa Romeo, Alpha Tauri's Pierre Gasly and Haas driver Romain Grosjean.
The incident also took out Red Bull's Max Verstappen, who had been struck by engine problems as he accelerated away from third on the grid.
That led to a safety car, and at the restart, as Bottas bunched up the field down the pit straight, there was a massive crash towards the back of the field.
Haas' Kevin Magnussen accelerated and then slowed, he said because of cars doing the same in front of him. Williams driver Nicholas Latifi swerved to avoid him and Alfa Romeo's Antonio Giovinazzi then cannoned into Magnussen.
McLaren's Carlos Sainz then hit the back of the cars of both Giovinazzi and Magnussen, pitching the Alfa 90 degrees into the air before it came down on all four wheels.
How Hamilton got the lead
At the restart, the positions of the Mercedes drivers was reversed. Hamilton drafted Bottas down to Turn One and took the lead around the outside, controlling the race from there.
The Mercedes drivers disappeared off into the distance and appeared untroubled, but Bottas developed problems with excessive wear of his front tyres and began to drop dramatically away from Hamilton.
Bottas had to pit earlier than expected for fresh tyres. Hamilton followed him in next time around and the two drivers were instructed to stay off the kerbs to protect their tyres.
The race appeared done, but that was counting without another development.
Racing Point's Stroll was in the middle of a three-way fight for third with Renault's Daniel Ricciardo in front and Albon behind when his left rear tyre exploded as he entered the second of the two 170mph Arrabbiata corners.
That led to a second red flag, to repair the barrier.
The final part of the race
At the restart, with just 12 laps remaining, Bottas again got away slowly and lost second place to Ricciardo.
But the Finn was able to pass the Renault next time around and secure second place.
That left Ricciardo defending from Albon for third, which would have been the first podium for Renault since they returned to the sport in 2016.
But Albon had too much pace in the Red Bull and passed the Renault with a lovely move around the outside of the first corner with three laps to go to take his maiden F1 podium.
Albon made hard work of the result. Starting fourth, he dropped back to seventh at the second start and had to fight his way back up, which he did with some excellent passes.
Ricciardo took fourth, ahead of Racing Point's Sergio Perez and McLaren's Lando Norris.
Williams driver George Russell just missed out on his first points, finishing 11th, behind Ferrari's Sebastian Vettel.
Ferrari had a difficult day as they celebrated their 1,000th F1 Grand Prix. Charles Leclerc was running third early on, but dropped down the field, lacking pace and straight-line speed and finished eighth.
Driver of the day
A welcome two-week break after nine races in 11 weeks before the Russian Grand Prix, where Hamilton can equal a record some felt might never be broken - Schumacher's haul of 91 victories.
What they said
Lewis Hamilton: "It was all a bit of daze. It was like three races in one day. Just incredibly tough today. This track is phenomenal and the heat and keeping Valtteri behind was not easy. All those restarts total focus was needed. It was really, really hard. Valtteri appeared out of nowhere when I saw Danny was behind. I didn't want him to have DRS. My heart is racing. It is crazy to be here and to have 90 grands prix wins."
Valtteri Bottas: "Disappointing. It was a dream start for me. The start was really good and I managed to hold my position at the safety car restart. It seemed like there was never an opportunity once I lost the position at the second start. That is how it goes. I will just keep pushing and keep trying to get better. It has to turn out well for me at some point."
Alex Albon: "It was good obviously it is a while to get here but it was a tough one. I had to work for it. I am happy. I can breathe. It is nice to be here. It was brutal, especially the high-speed in sector two. It is more adrenaline going in my body than anything else. I am happy."