Williams driver Valtteri Bottas topped Saturday morning's final free practice session for the Austrian Grand Prix with a stunning last-lap effort.
The Finn had shown well during the early stages of the session, ending up second fastest on soft-compound pace on a strong weekend for Williams.
But Lewis Hamilton had looked set to top the times for Mercedes when he knocked the other Williams of Felipe Massa off top spot by three thousandths of a second with four minutes of the hour remaining.
Bottas then strung together a superb final lap, including the fastest final sector of the session, to go fastest by just five hundredths of a second.
Toro Rosso's Daniil Kvyat also put in an impressive late lap to go fourth fastest, with Nico Rosberg ending up fifth having earlier set the pace when the field was running on the soft-compound Pirellis.
A tight qualifying session is expected this afternoon, with Fernando Alonso down in sixth but only two tenths slower than Bottas.
Red Bull's taxing weekend continued, with Daniel Ricciardo half a second off the pace in sixth place, while team-mate Sebastian Vettel was 10th, seven tenths down.
Sandwiched by the Red Bulls were Kevin Magnussen and Kimi Raikkonen.
Jenson Button had a frustrating session, running off track at Turn 1 and complaining about a lack of engine braking.
McLaren discovered that he had a problem with the right-rear brakes, meaning it had to change the calliper as well as replacing the floor, which was damaged when Button went off.
The 2009 Formula 1 world champion managed only four laps during the session and was unable to post a serious time, meaning he ended up slowest.
Pos Driver Team/Car Time Gap Laps 1. Valtteri Bottas Williams-Mercedes 1m09.848s 22 2. Lewis Hamilton Mercedes 1m09.898s +0.050s 25 3. Felipe Massa Williams-Mercedes 1m09.901s +0.053s 21 4. Daniil Kvyat Toro Rosso-Renault 1m09.927s +0.079s 25 5. Nico Rosberg Mercedes 1m09.999s +0.151s 31 6. Fernando Alonso Ferrari 1m10.054s +0.206s 17 7. Daniel Ricciardo Red Bull-Renault 1m10.392s +0.544s 19 8. Kevin Magnussen McLaren-Mercedes 1m10.449s +0.601s 23 9. Kimi Raikkonen Ferrari 1m10.488s +0.640s 22 10. Sebastian Vettel Red Bull-Renault 1m10.562s +0.714s 21 11. Nico Hulkenberg Force India-Mercedes 1m10.683s +0.835s 22 12. Pastor Maldonado Lotus-Renault 1m10.776s +0.928s 26 13. Jean-Eric Vergne Toro Rosso-Renault 1m11.043s +1.195s 22 14. Romain Grosjean Lotus-Renault 1m11.103s +1.255s 22 15. Sergio Perez Force India-Mercedes 1m11.235s +1.387s 18 16. Adrian Sutil Sauber-Ferrari 1m11.294s +1.446s 24 17. Esteban Gutierrez Sauber-Ferrari 1m11.558s +1.710s 23 18. Jules Bianchi Marussia-Ferrari 1m11.848s +2.000s 21 19. Kamui Kobayashi Caterham-Renault 1m12.320s +2.472s 23 20. Marcus Ericsson Caterham-Renault 1m12.892s +3.044s 27 21. Max Chilton Marussia-Ferrari 1m12.915s +3.067s 14 22. Jenson Button McLaren-Mercedes 1m14.237s +4.389s 4