French unions launched a day of strikes and protests Tuesday against Emmanuel Macron's flagship labour reforms, a key test as he stakes his presidency on overhauling the sluggish economy.
Several thousand people joined protests in cities around the country against the reforms, which are intended to tackle stubbornly high unemployment by loosening the rules that govern how businesses hire and fire staff.
Some 4,000 strikes and 180 protests have been called by France's biggest trade union, the CGT, with rail workers, students and civil servants urged to protest.
The turnout will serve as a yardstick for unions' ability to mobilise, as deep splits have emerged in the labour movement between those determined to fight the reforms and those prepared to compromise.
At lunchtime, crowds of a few thousand were reported in the cities of Nice, Marseille, Saint Nazaire and Caen, with a larger rally planned in Paris later in the afternoon.
The business-friendly Macron wants to make France a more attractive place for French companies and foreign investors who have long complained about restrictive labour laws and the power of trade unions.
The Disruption to rail networks and air traffic control was limited midway through the day, while a separate protest movement by fairground operators, angered over threats to their business, caused traffic jams in Paris.
Macron has vowed to press ahead with the reforms but he sparked a backlash last week by describing opponents of the shake-up as "slackers" and cynics, in comments blasted as "scandalous" by CGT chief Philippe Martinez.
The 39-year-old centrist president, who swept to power in May on promises to reinvigorate the economy, has used executive orders to fast-track his labour reforms.
They are to take effect later this month even before being ratified by parliament, where they are expected to breeze through given the large majority won in June by Macron's Republic on the Move party.
"This is not a labour law, it is a law that gives full powers to employers," said the CGT's Martinez on Tuesday.
But other unions have signalled their willingness to compromise and negotiate in talks which began in May, including the Force Ouvriere (FO) union and the moderate CFDT.
"We need to stop thinking that trade union action only makes sense when we demonstrate," the head of the CFDT, Laurent Berger, told Franceinfo radio on Tuesday.
Macron is hoping to avoid a re-run of labour protests that rocked France for months last year, repeatedly descending into violence, under his Socialist predecessor Francois Hollande.
Macron is determined to bring down France's unemployment rate – at 9.5%, roughly twice that of Britain or Germany – and sees simplifying the unwieldy labour code as key to achieving this.
Recent polls show that only around 40% of French voters are satisfied with Macron's performance, with analysts putting the disappointment down to a combination of gaffes and poor communication.