Switzerland’s Marc Hirschi produced a superb solo break to record his first professional win on stage 12 of the Tour de France.
Hirschi, 22, went clear with 28km remaining of the 218km ride from Chauvigny to Sarran.
The Sunweb rider had led for more than 80km of Sunday’s ninth stage before finishing third.
Slovenia’s Primoz Roglic retained his overall lead on a quiet day in the general classification race.
He finished safely in the main bunch two minutes and 30 seconds behind Hirschi, alongside the defending champion Egan Bernal, to maintain his 21-second advantage over the Colombian.
Hirschi, who is participating in his first Grand Tour, also finished on the podium on stage two, when he was second.
But his acceleration away from Movistar’s Marc Soler, on the final climb of the day up the Suc au May, paved the way for his maiden win at the Tour.
“It’s unbelievable. Two times, I’ve been really close. I never thought I could win today,” Hirschi said.
“I went full gas in the last few hundred metres. I can’t describe my feelings. I’m lost for words. I had in my mind the picture of the last two times when I lost. To get my first professional victory at the Tour de France could not be any better.
“In the Pyrenees, I got the confidence for trying to win today, otherwise I would have never attacked solo in that climb.
“What I did last week gave me this extra power.”
Meanwhile, Sam Bennett retained the green jersey and has a 66-point lead over seven-time winner Peter Sagan as the race heads back into the mountains.
Friday’s 13th stage sees the riders face seven categorised climbs on the 191.5km route from Chatel-Guyon to Puy Mary.
Stage 12 result
1. Marc Hirschi (Swi/Sunweb) 5hrs 08mins 49secs
2. Pierre Rolland (Fra/B&B Hotels-Vital Concept) +47secs
3. Soren Kragh Andersen (Den/Sunweb) +52secs
4. Quentin Pacher (Fra/B&B Hotels-Vital Concept) Same time
5. Jesus Herrada (Spa/Cofidis)
6. Maximilian Schachmann (Ger/Bora-Hansgrohe)
7. Hugo Houle (Can/Astana)
8. Sebastien Reichenbach (Swi/Groupama-FDJ)
9.Kenny Elissonde (Fra/Trek-Segafredo) +56secs
10. Nicolas Roche (Ire/Sunweb) Same time
General classification after stage 12
1. Primoz Roglic (Slo/Jumbo-Visma) 51hrs 26mins 43secs
2. Egan Bernal (Col/Ineos Grenadiers) +21secs
3. Guillaume Martin (Fra/Cofidis) +28secs
4. Romain Bardet (Fra/AG2R-La Mondiale) +30secs
5. Nairo Quintana (Col/Arkea-Samsic) +32secs
6. Rigoberto Uran (Col/EF Pro Cycling) Same time
7. Tadej Pogacar (Slo/UAE-Team Emirates) +44secs
8. Adam Yates (GB/Mitchelton-Scott) +1mins 02secs
9. Miguel Angel Lopez (Col/Astana) +1mins 15secs
10. Mikel Landa (Spa/Bahrain McLaren) +1mins 42secs