Police and young anti-government protesters clashed in the Peruvian capital, Lima, over the weekend.
A rights group said at least 18 protesters had been injured in protests held on Saturday and Sunday, dubbed Gen Z march by the organisers. A police officer suffered burns, officials said.
Groups of young people, mainly under 30 years of age, were joined by bus and taxi drivers and marched towards Congress to express their anger over corruption scandals and growing insecurity.
The protesters, some of whom threw stones and other missiles, were dispersed by police firing tear gas and rubber bullets, AFP news agency reported.
The protests first erupted on Saturday 20 September, triggered by a pension reform passed earlier this month under which young people will be required to pay into a private pension fund.
The approval rating of the president, Dina Boluarte, has been in the single digits for months, and many Peruvians say they want her to leave office.
We are marching against corruption, for life, and against the crime that is killing us every day, said 28-year-old Adriana Flores.
Feminists, university students, and transport workers joined the march, voicing their concerns against government inaction against extortion from organized crime.
Despite government efforts to curb protests, tensions remain high as demonstrators demand accountability and significant reform.
Many held placards reading We demand a life without fear and criticized Congress for elevating the salaries of lawmakers while the general populace suffers.