Several thousand Brazilians demonstrated on Friday as part of a day of national mobilization against government austerity measures, including a labor law that will soon come into effect.
Demonstrators were also protesting against a highly-unpopular pension reform project and the wave of privatization recently announced by President Michel Temer's government.
"We must prevent the destruction of our country, the loss of social gains and the threats against democracy," said Telma de Barros, a 57-year-old teacher protesting in Sao Paulo, Brazil's economic capital where some 10,000 had gathered to demonstrate, according to an AFP photographer.
Protests also took place in other cities including Rio de Janeiro and the capital Brasilia.
In Rio, thousands took to the streets, and a car was set on fire on a bridge by a group of protesters earlier in the day, causing a major traffic jam.
There have been other anti-austerity protests in recent months, including a call for a general strike, but participation has been relatively low.
Temer's government has launched a series of austerity measures aimed at addressing a huge budget deficit and reviving the recession-hit economy.
The new labor law, which was approved by the Senate in July and goes into effect on Saturday, provides for more flexible contracts, eliminates obligatory union dues and makes unions liable for legal costs in losing court challenges.
The government is now trying to push through changes aimed at raising the minimum retirement age and extending the contribution period for full pensions.
"There's no problem with the current system, but the government is inventing reasons to change it, to the detriment of the workers. The people still pay the bill," said 45-year-old protester Julio Telmo.