Thousands of Croatians have rallied in central Zagreb against a European agreement designed to protect women, saying it threatens traditional values.

They object to the Istanbul Convention on the basis that it would legitimise same-sex marriage and improve rights for transgender people.

Women's rights groups staged a counter-protest along the route of the march.

They pointed out that polls suggest two-thirds of Croatians support the convention.

That is despite the rise of the far right - including revisionist views of Nazi rule - since Croatia joined the EU in 2013.

Parliament has not yet ratified the convention but it has been approved by the centre-right government - prompting dissent from within its own ranks, conservative groups and the Catholic Church.

Speakers at the rally called on Prime Minister Andrej Plenkovic to resign over his support for the convention.

Many express support for combating domestic violence and violence against women but say the treaty's definition of gender is too fluid - opening the way for greater recognition of transsexual or transgender people.

The treaty defines gender as "the socially constructed roles, behaviours, activities and attributes that a given society considers appropriate for women and men".

"We are against gender ideology," Zeljka Markic, a conservative leader, told the Associated Press. "The definition of gender separated from sex was not agreed on the level of the European Union or on the level of the Council of Europe."

Other participants said the convention was "against Christianity".

"I think this is a turning point for Croatia," protest organiser Kristina Pavlovic told Reuters news agency, "when we must decide whether Croatia will choose a preservation of family and traditional values or go another way imposed from outside, from Brussels, or like what we see in Canada where there will be a Parent One and Parent Two instead of mother and father."

Church organisations have demanded a referendum on ratification, despite polls which suggest the majority of Croatians support the treaty.

Neighbouring Serbia, Bosnia and Slovenia have already ratified it, but it has been rejected by Bulgaria and Slovakia.