As many as 200,000 people have marched through the streets of Brazil’s biggest cities, as protests over rising public transport costs and the expense of staging the 2014 World Cup have spread, BBC reports.
The biggest protests were in Rio de Janeiro, where stone-throwing youths clashed with police, and in Sao Paulo.
In the capital, Brasilia, people breached security at the National Congress building and scaled its roof.
The protests are the largest seen in Brazil for more than 20 years.
The trigger was a 2 June increase in the price of a single bus fare in Sao Paulo from 3 reals ($1.40) to 3.20. Authorities said the rise was well below inflation, which since the last price increase in January 2011 has been 15.5%, according to official figures.
In the country soon due to host the World Cup and Olympics, many are now complaining that vast sums of money are being wasted instead of used for health and education, says the BBC’s Gary Duffy in Sao Paulo.
Political leaders have also been accused of nepotism and corruption.