Fernando Gaviria claimed his first Grand Tour stage victory as what looked like being the most straightforward day of the 100th Giro d'Italia blew apart in howling winds in Sardinia.
Colombian Gaviria took the stage win and the race leader's pink jersey after his QuickStep-Floors team led the decisive break when echelons split through the peloton on the final approach to Cagliari.
A bunch sprint had been expected at the end of the short, flat 148-kilometre stage from Tortoli, but the peloton was buffeted by winds reaching 40km per hour in the final 30km.
As the road changed direction several times, the winds turned from crosswinds to headwinds again and again, splitting the pack apart and meaning only four riders crossed the line on the same time as Gaviria.
Lotto-Soudal's Andre Greipel, who took pink with victory on Saturday, finished 10th, 13 seconds behind at the front of the main chasing pack.
Gaviria now leads overall by nine seconds from the German, with stage one winner Lukas Postlberger of Bora-Hansgrohe third, 13 seconds back and on the same time as QuickStep's general classification hopeful Bob Jungels, who put in a huge turn to guide Gaviria towards the line.