Photo Credit:Getty Images.
Wout van Aert won stage seven of the Tour de France in a sprint finish as Britain's Adam Yates retained the leader's yellow jersey.
The Jumbo-Visma rider edged out Norway's Edvald Boasson Hagen and Frenchman Bryan Coquard.
Mitchelton-Scott's Yates was ninth and stays at the head of the standings.
An eventful stage had started with Bora-Hansgrohe setting a punishing early pace on the first categorised climb of the day up the Cote de Luzencon, to scatter the peloton.
And while that succeeded in helping Slovakia's Peter Sagan reclaim the green jersey from Ireland's Sam Bennett, it also ensured a thrilling finale to the stage.
With a number of the sprint favourites distanced the battle at the top of the general classification developed over the last 40km when crosswinds caused splits in the leading group.
Tadej Pogacar and Mikel Landa both lost over a minute though Yates survived a potentially dangerous moment on the outskirts of Castres to bridge across as Ineos Grenadiers upped the tempo at the front.
"We were expecting an easy day today but Bora had other ideas," Yates said.
"We rode full gas from start to finish, it was a hard day for everybody. I wasn't too anxious really, just a few moments where you had to be in position because of the wind.
"It was not too crazy but enough to split the bunch, so you had to be in position."
Stage seven results:
1. Wout van Aert (Bel/Jumbo Visma) 3hrs 32mins 03secs
2. Edvald Boasson Hagen (Nor/NTT Pro Cycling) Same time
3. Bryan Coquard (Fra/B&B Hotels-Vital Concept)
4. Christophe Laporte (Fra/Cofidis)
5. Jasper Stuyen (Bel/Trek-Segafredo)
6. Clement Venturini (Fra/AG2R-La Mondiale)
7. Hugo Hofstetter (Fra/Israel Start-Up Nation)
8. Egan Bernal (Col/Ineos Grenadiers)
9. Adam Yates (GB/Mitchelton-Scott)
10. Alejandro Valverde (Spa/Movistar).
General classification after stage seven:
1. Adam Yates (GB/Mitchelton-Scott) 30hrs 36mins 00secs
2. Primoz Roglic (Slo/Jumbo-Visma) +3secs
3. Guillaume Martin (Fra/Cofidis) +9secs
4. Egan Bernal (Col/Ineos Grenadiers) +13secs
5. Tom Dumoulin (Ned/Jumbo-Visma) Same time
6. Nairo Quintana (Col/Arkea-Samsic)
7. Romain Bardet (Fra/AG2R-La Mondiale)
8. Miguel Angel Lopez (Col/Astana)
9. Thibaut Pinot (Fra/Groupama-FDJ)
10. Rigoberto Uran (Col/EF Pro Cycling).