Denmark’s Emma Norsgaard held on to claim victory on stage six of the Tour de France Femmes by metres as Charlotte Kool chased her down.
Norsgaard was part of a three-rider breakaway away with nearly 100km left of the stage from Albi to Blagnac.
The chasing peloton, led by Dutchwoman Kool, caught the other two riders but was unable to beat Norsgaard to the line.
Belgium’s Lotte Kopecky came third to stretch her overall lead to 53 seconds.
Norsgaard, who has missed a large chunk of the season after breaking a collarbone in the Strade Bianche in March, had looked comfortable but had to hang on in the latter stages as Kool and the chasing pack finished just a second behind her.
“I want to thank everyone around me for still believing in me after being out the whole spring,” said an emotional Norsgaard, who turned 24 on Wednesday. “I’m super emotional. It’s the biggest victory ever.”
Victory for Norsgaard means a second stage win for Movistar in this year’s tour.
“I’m not a sprinter any more I have to realise it,” she added. “I might be fast, but I cannot keep up with the real sprinters. I took a chance today and reached for the stars.”
Earlier, SD Worx team boss Danny Stam was kicked off the tour following his actions after Demi Vollering suffered a puncture on Thursday’s stage five.
The Dutch rider tucked into the slipstream of the team car, driven by Stam, as she tried to catch up with the peloton.
The car was seen weaving between and overtaking other teams’ vehicles.
Race officials said Stam was guilty of “particularly dangerous overtaking of other cars and riders” and “inappropriate comments made to the jury of commissaires”.
Saturday’s penultimate stage seven is 90km from Lannemezan to Tourmalet Bagneres-de-Bigorre.
Finishing with a climb on the famous Col du Tourmalet, Belgian Kopecky will be hoping to maintain the lead she has held since the opening stage, before the race ends in Pau with Sunday’s time trial.
Stage six results
1. Emma Norsgaard (Den/Movistar) 2hrs 59mins 16secs
2. Charlotte Kool (Ned/Team DSM) +1sec
3. Lotte Kopecky (Bel/SD Worx) Same time
4. Marianne Vos (Ned/Jumbo-Visma)
5. Soraya Paladin (Ita/Canyon SRAM Racing)
6. Chiara Consonni (Ita/UAE Team ADQ)
7. Julie de Wilde (Bel/Fenix-Deceuninck)
8. Lach Marta (Pol/Ceratizit-wnt)
9. Vittoria Guazzini (Ita/Fdj-suez)
10. Agnieszka Skalniak-sojka (Pol/Canyon-sram Racing A)
General classification
1. Lotte Kopecky (Bel/SD Worx) 21hrs 54mins 30sec
2. Ashleigh Moolman-Pasio (SA/AG Soudal-Quickstep) +53secs
3. Annemiek van Vleuten (Ned/Movistar) +55secs
4. Elisa Longo Borghini (Ita/Lidl-Trek) Same time
5. Katarzyna Niewiadoma (Pol/Canyon SRAM Racing)
6. Yara Kastelijn (Fenix-Deceuninck) +1min 4secs
7. Demi Vollering (Ned/SD Worx) +1min 7secs
8. Liane Lippert (Ger/Movistar) +1min 29secs
9. Ricarda Bauernfeind (Ger/Canyon-SRAM) +1min 42secs
10. Juliette Labous (Fra/DSM-Firmenich) +1min 52secs