Valtteri Bottas fended off the challenge against Sebastian Vettel to score his second Formula 1 victory in the Austrian Grand Prix.
Mercedes driver Bottas resisted the late attack from the Ferrari to secure the win by just six tenths of a second.
Vettel has extended his championship lead to 20 points over Lewis Hamilton, who recovered well from eighth on the grid after his gearbox-change penalty but was denied a podium by Daniel Ricciardo.
Bottas made a lightning getaway from pole position to comfortably lead Vettel into the first corner, although his start was so good it prompted an investigation into whether he had jumped it.
He had to wait 20 laps to be cleared – with the review revealing his reaction to the lights changing was just 0.2 seconds – and by this time had stretched his lead to 7.6 seconds over the chasing Ferrari.
Bottas ran a long opening stint, eventually pitting on lap 41 of 71 and emerging with a reduced lead of just 2.5s seconds
Vettel engaged in a race long pursuit of Bottas and was getting close to strike but eventually falling just short.
An aggressive first lap set Ricciardo on his way to his fifth podium in a row. That’s great consistency from the Red Bull driver.
Ricciardo attacked Kimi Raikkonen into Turn 1 but had to continue the move all the way up the hill into Turn 3, eventually claiming the place and forcing the Ferrari wide in the process.
Raikkonen dropped behind Romain Grosjean’s Haas as a result of Ricciardo’s move, and it took two laps for the works Ferrari to finally make it past the customer car at Turn 4.
The longest first stint of any of the frontrunners meant Raikkonen, who stopped on lap 44, fell behind the recovering Hamilton as the tyre strategies played out.
Hamilton had been gifted a position at the start by a clutch-related poor getaway from Max Verstappen, and worked his way past Sergio Perez’s Force India and Grosjean in the opening stint as well.
The Mercedes driver complained about his tyres once he swapped his super-softs for ultra-softs, but charged in the closing stages and got within DRS range of Ricciardo with three laps to go – though he could not find a way past.
Raikkonen finished a lonely fifth, while Grosjean scored his best result of the season with sixth.
Behind Grosjean came the Force Indias, with Perez leading Esteban Ocon, while the Williams duo of Felipe Massa and Lance Stroll charged into the points after a disappointing qualifying left them P17 and P18 on the grid.
They were helped by a first-lap collision that was caused when Verstappen started slowly from fifth on the grid and was collected at Turn 1 by Fernando Alonso, whose McLaren had been rear-ended by Daniil Kvyat.
The Toro Rosso driver was handed a drive-through penalty for the incident, which led to Verstappen stopping further round the lap and Alonso returning to the pits immediately with terminal damage.
Kevin Magnussen, who complained of no power steering, and Carlos Sainz were the only other retirements.
So not the most thrilling Austrian Grand Prix but for Valtteri Bottas, this was the perfect result. Supreme reaction to the five red lights at start, resisted the pressure from championship leader and a second victory for Mercedes.
As for the Sebastian Vettel and Lewis Hamilton title fight. The Ferrari driver extends his lead to 20 points with the British Grand Prix coming up next. The home support for Hamilton will be very vocal and passionate at Silverstone.
Austrian Grand Prix, race results after 71 laps:
1 Valtteri Bottas Mercedes 1h21m48.527s
2 Sebastian Vettel Ferrari 0.658s
3 Daniel Ricciardo Red Bull-Renault 6.012s
4 Lewis Hamilton Mercedes 7.430s
5 Kimi Raikkonen Ferrari 20.370s
6 Romain Grosjean Haas-Ferrari 1m06.281s
7 Sergio Perez Force India-Mercedes 1 Lap
8 Esteban Ocon Force India-Mercedes 1 Lap
9 Felipe Massa Williams-Mercedes 1 Lap
10 Lance Stroll Williams-Mercedes 1 Lap
11 Jolyon Palmer Renault 1 Lap
12 Stoffel Vandoorne McLaren-Honda 1 Lap
13 Nico Hulkenberg Renault 1 Lap
14 Pascal Wehrlein Sauber-Ferrari 1 Lap
15 Marcus Ericsson Sauber-Ferrari 2 Laps
16 Daniil Kvyat Toro Rosso-Renault 3 Laps
– Carlos Sainz Toro Rosso-Renault Retirement
– Kevin Magnussen Haas-Ferrari Retirement
– Fernando Alonso McLaren-Honda Collision
– Max Verstappen Red Bull-Renault Collision
1 Sebastian Vettel 171
2 Lewis Hamilton 151
3 Valtteri Bottas 136
4 Daniel Ricciardo 107
5 Kimi Raikkonen 83
6 Sergio Perez 50
7 Max Verstappen 45
8 Esteban Ocon 39
9 Carlos Sainz 29
10 Felipe Massa 22
11 Lance Stroll 18
12 Nico Hulkenberg 18
13 Romain Grosjean 18
14 Kevin Magnussen 11
15 Pascal Wehrlein 5
16 Daniil Kvyat 4
17 Fernando Alonso 2
18 Jolyon Palmer 0
19 Marcus Ericsson 0
20 Stoffel Vandoorne 0
21 Antonio Giovinazzi 0
1 Mercedes 287
2 Ferrari 254
3 Red Bull-Renault 152
4 Force India-Mercedes 89
5 Williams-Mercedes 40
6 Toro Rosso-Renault 33
7 Haas-Ferrari 29
8 Renault 18
9 Sauber-Ferrari 5
10 McLaren-Honda 2