Lewis Hamilton delivered a wet-weather masterclass at a chaotic Brazilian Grand Prix to take the championship battle into the final race of the season.
Nico Rosberg, who crossed the line at a rain-soaked Interlagos in second place, would have been crowned champion had he won here on Sunday.
But Hamilton kept his cool in a marathon race which was suspended on two occasions and took more than three hours to complete as persistent rain wreaked havoc in Sao Paulo.
Rosberg however, now has to secure a top-three finish in Abu Dhabi in a fortnight's time to clinch his maiden title.
The penultimate round of the season was delayed by 10 minutes and then eventually started behind the safety car following continuous rain at a venue which so often throws up a dramatic race. And on Sunday it was no different.
When the safety car eventually peeled in after seven laps, Hamilton led from Rosberg, while Max Verstappen immediately passed Kimi Raikkonen for third place.
But after just six laps of racing, the safety car was back in action again after Marcus Ericsson lost control of his Sauber and slammed into the barrier at the final corner.
The field, led by Hamilton, then toiled behind the slow-moving safety car in the treacherous conditions as the debris was cleared. On lap 20, the decision was taken to re-start the race, but, within seconds, Kimi Raikkonen crashed out.
The 37-year-old Finnish driver slammed into the nearside barrier before his car slid across the track and collided with the opposing wall. Raikkonen sat there helplessly in his Ferrari as a number of cars came within feet of hitting his stationary car.
"This is just bad, just stupid," Sebastian Vettel, one of the drivers who had to take evasive action, yelled over the team radio. "Red flag is what it needs, we need to stop the race. How many people do they want to crash, I nearly crashed into Kimi in the middle of the straight, I couldn't see anything."
The race was immediately stopped with Hamilton leading from Rosberg and Verstappen.
After clearing the wreckage from Raikkonen's harrowing crash, the race was up and running again, albeit behind the safety car, following a 35-minute delay. But after just seven laps and a further 15 minutes the race was suspended once more, with the conditions deemed too dangerous to race.
The controversial decision taken by race director Charlie Whiting was greeted by a chorus of boos and 'thumb down' gestures from the Brazilian crowd.
Hamilton was also disappointed with the verdict. "It is not even wet now," he bemoaned over the team radio. "It is normal wet conditions. I don't know why we are stopping."
Another 27-minute delay ensued before the safety car led Hamilton and the pack out once more. After just two laps, Hamilton was released, and behind him Verstappen soared around the outside of Rosberg at turn three.
It was a fantastic move from the fearless Dutchman which would have been greeted with delight in both the Red Bull and Hamilton camps.
The 19-year-old then began his pursuit of Hamilton, and got the gap down to one second, before he lost control of his Red Bull at close to 180mph as he entered the pit straight. Incredibly, he managed to avoid any contact with the barrier, and remained ahead of Rosberg, too. "The heartbeat went a bit higher there," he said coolly over the team radio.
With Rosberg now third, the German would have to finish second in Abu Dhabi to win the title. But Red Bull opted to pit Verstappen for the intermediate tyre on lap 43, and Rosberg, who survived a scary moment when he endured a half-spin one lap later, was promoted back up to second.
It was the wrong decision from Red Bull, with Verstappen ultimately having to pit for the extreme wet tyre when the safety car emerged for a fifth and final time after Felipe Massa, during his final race in Brazil, stuck his Williams in the barrier.
Another six laps followed behind the safety car before Hamilton crossed the line finished 11 seconds clear of Rosberg, while Verstappen delivered an incredible performance to claw his way back from 16th on to the final spot on the podium.
Final Positions after Race (71 Laps):
1 Lewis Hamilton (Gbr) Mercedes GP 3hrs 01mins 01.335secs
2 Nico Rosberg (Ger) Mercedes GP 3:01:12.790
3 Max Verstappen (Ned) Red Bull 3:01:22.816
4 Sergio Perez (Mex) Force India 3:01:26.681
5 Sebastian Vettel (Ger) Ferrari 3:01:27.669
6 Carlos Sainz (Spa) Scuderia Toro Rosso 3:01:30.495
7 Nico Hulkenberg (Ger) Force India 3:01:31.162
8 Daniel Ricciardo (Aus) Red Bull 3:01:31.821
9 Felipe Nasr (Bra) Sauber-Ferrari 3:01:43.955
10 Fernando Alonso (Spa) McLaren 3:01:45.767
11 Valtteri Bottas (Fin) Williams 3:01:46.627
12 Esteban Ocon (Fra) Manor Racing 3:01:47.144
13 Daniil Kvyat (Rus) Scuderia Toro Rosso 3:01:52.527
14 Kevin Magnussen (Den) Renault 3:01:52.890
15 Pascal Wehrlein (Ger) Manor Racing 3:02:01.833
16 Jenson Button (Gbr) McLaren 3:02:23.329
17 Esteban Gutierrez (Mex) Haas F1 60 Laps completed
18 Felipe Massa (Bra) Williams 46 Laps completed
19 Jolyon Palmer (Gbr) Renault 20 Laps completed
20 Kimi Raikkonen (Fin) Ferrari 19 Laps completed
21 Marcus Ericsson (Swe) Sauber-Ferrari 11 Laps completed
22 Romain Grosjean (Fra) Haas F1 0 Laps completedReuse content