Chris Froome crashed twice in the Vuelta a España yet counted himself fortunate to have survived one of the more chaotic days of a grand tour in recent memory.

The Lotto-Soudal rider Tomasz Marczynski claimed victory on a stage that was preceded by an arson attack on a team bus, saw a fan apparently pushed in front of a motorbike by a policeman, and had a rider shoved off his bike by a spectator.

Vincenzo Nibali took advantage to cut Froome’s lead by 20 seconds but Froome was relieved just to have come through after tumbling twice on the final descent while trying to cover an attack by Alberto Contador. “It’s never nice to crash like that. I am just grateful that I’m not injured,” Froome said. “The Vuelta is not over – a lot of big days are ahead.”

The day had started with a suspected arson attack in Almería which destroyed Aqua Blue Sport’s team bus; no one was hurt and a 55-year-old man was arrested. Unperturbed, the team took part in stage 12 from Motril to Antequera along the Spain’s south coast and one of their riders, Peter Koning, joined the breakaway.

The group pulled away from the peloton approaching the first climb, before Marczynski powered clear on the second and final ascent. The Polish rider finished almost a minute ahead of Dimension Data’s Omar Fraile in second and third-place José Joaquin Rojas of Movistar.

Behind them, there was chaos. Footage on social media appeared to show a policeman deal with an over exuberant fan by pushing him into the path of a motorbike trailing the peloton. Another video captured a spectator attacking the Katusha rider Maxim Belkov as he battled the final climb, pushing him off his bike and into a ditch beside the road. Belkov was able to finish the stage but later described the incident as “outrageous”.

Froome’s crashes occurred in the final 10km, the second a mechanical issue following a bike change, but his team-mates Mikel Nieve and Wout Poels dropped back to help him recover and minimise the damage. He will begin Friday’s stage 13 from Coín to Tomares still with a strong lead of 59 seconds over Nibali, and no other rival within two minutes, and he will be thankful just to have withstood stage 12.

A different perspective from today's moto crash with a cycling fan. Seriously?! #LV2017 pic.twitter.com/6ajSdrCeQr — Laura Meseguer (@Laura_Meseguer) August 31, 2017

Stage 12 results

1 Tomasz Marczynski, Pol, Lotto Soudal, 3:56:45. 2 Omar Fraile, Sp, Dimension Data, :52 behind. 3 Jose Joaquin Rojas, Sp, Movistar, same time. 4 Pawel Poljanski, Pol, Bora-Hansgrohe, same time. 5 Stef Clement, Neth, Lotto NL-Jumbo, same time. 6 Brendan Canty, Aus, Cannondale Drapac, 1:42. 7 Anthony Perez, Fr, Cofidis, 2:50. 8 Jan Polanc, Slovenia, UAE Team Emirates, same time. 9 Andreas Schillinger, Ger, Bora-Hansgrohe, same time. 10 David Arroyo, Sp, Caja Rural-Seguros RGA, 3:00.

Overall standings (after 12 stages)

1 Chris Froome, GB, Sky, 49:22:53. 2 Vincenzo Nibali, It, Bahrain-Merida, :59. 3 Esteban Chaves, Col, Orica-Scott, 2:13. 4 David de la Cruz, Sp, Quick-Step Floors, 2:16. 5 Wilco Kelderman, Neth, Sunweb, 2:17. 6 Ilnur Zakarin, Rus, Katusha Alpecin, 2:18. 7 Fabio Aru, It, Astana, 2:37. 8 Michael Woods, Can, Cannondale Drapac, 2:41. 9 Alberto Contador, Sp, Trek-Segafredo, 3:13. 10 Miguel Angel Lopez, Col, Astana, 3:51.