France's Green party and its left-wing allies have made significant gains in the second round of local elections.
Lyon, Strasbourg, Bordeaux and Besançon all voted for the party on a bad night for President Emmanuel Macron.
His centrist LREM party, which has less support at local level than nationally, failed to win in any major city.
Voters were required to wear face masks under continuing measures to stop the spread of coronavirus and turnout hit a record low.
Only roughly 40% of the electorate took part in the poll on Sunday. An Élysée palace official said Mr Macron had expressed "concern" about the low numbers.
The first round of municipal elections was held two days before the government declared a lockdown on 17 March.
The second round, which was due a week later, was postponed until the last Sunday of June.
What were the results?
Confirming strong showings in the first round, Green candidates or politicians supported by the Greens have won or were poised to win in a string of cities including Lyon, Marseille, Strasbourg, Bordeaux and Nancy.
Centre-right newspaper Le Figaro said France's "whole political landscape has been turned upside down", while centre-left paper Le Monde said the party was now "a major force in opposition" to President Macron.
In Paris incumbent Mayor Anne Hidalgo - whose Socialist party has been all but wiped out at a national level - won comfortably. Another prominent Socialist, Martine Aubry, was narrowly re-elected in Lille.
Female mayoral candidates are reportedly now on track to lead half of France's 10 largest cities, a record for the country.
In a rare positive development for Mr Macron, his popular Prime Minister Édouard Philippe was elected mayor of the north-western port city of Le Havre.
This could lead to a cabinet reshuffle, although the constitution allows Mr Philippe to name a substitute as mayor while he remains in the government.
It was also a successful night for the far-right National Rally party, led by 2017 presidential candidate Marine Le Pen.
One of their candidates took the city of Perpignan in the south - the largest city the far-right has won since the 1990s. Ms Le Pen declared a "real victory" on Sunday.