Russia's parliament has backed a draft law banning "homosexual propaganda”.
Only one deputy in the State Duma lower house voted against the bill, but passions spilled over outside the chamber, where 20 people were detained after scuffles between Russian Orthodox Christians and gay activists who staged a "kiss-in" protest.
"We live in Russia, not Sodom and Gomorrah," United Russia deputy Dmitry Sablin said before the 388-1 vote in the 450-seat chamber.
"Russia is a thousands-years-old country founded on its own traditional values - the protection of which is dearer to me than even oil and gas."
Veteran human rights campaigner Lyudmila Alexeyeva described the draft law as "medieval" and said it was intended to appeal to conservative voters after months of protests that have sapped President Vladimir Putin's popularity.
"It [the Duma] is relying on the ignorance of people who think homosexuality is some sort of distortion," she said.
The legislation has served to deepen divisions in society since Mr Putin returned to the presidency in May and began moves seen by the opposition as designed to crack down on dissent and smother civil society.
During the process, Mr Putin and his supporters have underlined what they see as conservative, traditional Russian values.
He has drawn closer to the Russian Orthodox Church during this time, hoping the support of one of the most influential institutions in Russia will consolidate his grip on power.
In a sign of the passions caused by the bill, clashes broke out between supporters and opponents outside the Duma, a few hundred metres from the Kremlin in central Moscow.
Supporters, some of them holding Russian Orthodox icons and crosses, cheered and threw eggs as police hauled away gay activists, one of whom was splashed with green paint.
Police said 20 people had been held.
The law must be passed in three readings by the lower house, approved by the upper house and then signed by Mr Putin to go into force.
It would ban the promotion of gay events across Russia and impose fines of up 500,000 roubles (€12,366) on organisers.
Supporters of the law welcome moves that would allow the banning of gay rights marches and complain about television and radio programmes which they say show support for gay couples.
"The spread of gay propaganda among minors violates their rights," ruling United Russia party deputy, Elena Mizulina, who chairs the Duma's family issues committee.
"Russian society is more conservative so the passing of this law is justified."
Mr Putin's critics say the law is the latest in a series of legislative moves intended to stifle the opposition.
The Russian Orthodox Church, resurgent since the collapse of the Soviet Union in 1991, has spoken out against homosexuality.
Mr Putin drew closer to the clergy during the trial and sentencing this summer of three members of the Pussy Riot punk band over their protest in the country's main cathedral.
Anti-gay propaganda laws are already in place in Arkhangelsk, Novosibirsk and St Petersburg, Mr Putin's home city, where it was used unsuccessfully to sue American singer Madonna for $10m for promoting gay love during a concert last year.
Some deputies raised concerns the bill would be misused, asking how it would define homosexuality, and one said the house was meddling in issues beyond its scope.
"Do you seriously think that you can foster homosexuality via propaganda?" the only deputy who voted against the bill, United Russia's Sergei Kuzin, challenged its authors during the debate.
Homosexuality, punished with jail terms in the Soviet Union, was decriminalised in Russia in 1993, but much of the gay community remains underground and prejudice runs deep.
In Moscow, city authorities have repeatedly declined permission to stage gay parades and gay rights' allies have often ended in arrests and clashes with anti-gay activists.