PARIS (AFP) - Tens of thousands of opponents of a gay marriage bill thronged the streets of Paris on Sunday in a last-ditch bid to block the legislation, under the watchful eye of police after recent violence over the divisive issue.
Paris police estimated the march attracted 45,000 people but organisers said 270,000 turned out on a sunny afternoon in the French capital.
The mass protest comes just two days ahead of a decisive parliamentary vote on the bill - which also allows adoption by gay couples - that would make France the 14th country in the world to legalise same-sex marriage.
Clutching French flags, dressed in pink and blue, the colours of the movement, carrying children or pushing buggies, protesters shouted slogans against President Francois Hollande as they made their way through the city.
"We've been to all the protests," said a 32-year-old mother who only gave her first name Camille, as she breast-fed her four-month-old son.
"We're here for children's rights. We don't want the state to be complicit in a child being deprived of a father or a mother," she said.
Organisers and security forces were on high alert as they sought to avoid a recurrence of violence that marred anti-bill protests last week, amid warnings far-right extremists intent on sparking unrest have infiltrated the opposition movement.
"We want a peaceful demonstration and we reject all groups that directly target homosexual people," said Frigide Barjot, spokesman for the "Manif pour Tous" group that spearheads the anti-bill movement.
She said she had called on "professional security services" to help out, and police sources said three protesters carrying canisters of teargas had been detained so far.
The leader of the far-right "Nationalist Youths" group was also spotted in the procession. "We have around 50 nationalists in the protest," said Alexandre Gabriac, who was detained last week after clashes with security forces.
Tension over the imminent adoption of the law, which is going through a second reading in the lower house after already being approved in the French parliament's upper and lower houses, reached breaking point last week.
It has proved hugely divisive in a country that is officially secular but predominantly Catholic.
In Paris, opponents marched for three nights in a row and a hard-core of activists, some wearing masks, clashed with police who made over 100 arrests.
Two journalists were attacked during one march and cars were vandalised.
In parliament's lower house, the National Assembly, a final debate on the legislation was marred by scuffles between deputies.
Rights groups have also reported a rise in verbal and physical assaults against homosexuals, and two gay bars came under attack last week in different cities.
Opponents have accused the government of rushing the bill through its final legislative stages and say Hollande is not listening to dissenting voices.
Opinion polls regularly show that while most French people support same-sex marriage, a majority opposes adoption by gay couples.
"A mayor to marry one mother and one father, not a pair of mothers nor a pair of fathers", "A child is not a right" read some of the banners at Sunday's procession, which was followed closely by police vehicles.
Meanwhile, police estimated that some 3,500 supporters of the legislation gathered on one of the capital's main squares to protest against homophobia.
"Those who are for more equality must also make themselves heard," said Mr Bertrand Delanoe, the Paris mayor who is himself gay, describing the recent violence as "a form of barbarism and regression."
Supporters of the bill, while less vocal than those against it, have also staged large-scale demos in the past months.
"We wanted to show that sexual minorities can be visible, that we are there and that our lives have the same value as those of others," said Laure Pora from pro gay marriage group Act-Up.
The bill is largely supported by the ruling Socialists, their allies in the Green Party and the Communists, and opposed by the main opposition UMP and other right-wing and centre-right parties.