Italy moved level with Brazil at the top of Confederations Cup Group A after a tough 2-1 win over Mexico at the Maracana.
Andrea Pirlo, playing his 100th game for his country, put Italy ahead in the first half with a stunning free-kick before Javier Hernandez levelled from the spot.
Mario Balotelli put the Italians ahead again with 12 minutes left to seal a deserved victory.
The Azzurri began strongly and seven minutes in Riccardo Montolivo broke down the left and although Balotelli made good contact from his cross, the striker's effort was deflected away by goalkeeper Jose de Jesus Corona.
The AC Milan striker had another effort moments later, his 20-yard effort bouncing awkwardly in front of the goalkeeper who did well to divert the ball away. Moments later Mexico created their first opportunity, Giovani Dos Santos outmuscling Ignazio Abate and pulling the ball back to wide man Andres Guardado, whose powerful effort hit the bar.
Pirlo went down in the area under pressure from Guardado but his appeals were ignored by referee Enrique Osses. If the Juventus man felt aggrieved by the decision, he put his frustrations to one side after 27 minutes when his curling 25-yard free-kick flew into the top corner.
However Mexico were looking dangerous themselves and after 34 minutes Dos Santos caught Andrea Barzagli on the ball before he was brought down by the defender in the box. Hernandez sent Gianluigi Buffon the wrong way to level the scores with his 33rd international goal.
Pirlo created another opportunity seven minutes into the second half, albeit inadvertently. His low free-kick was directed off the wall into the path off Giorgio Chiellini, who struggled to get the ball out of his feet and get a decent shot on target. Despite having decent periods of possession, Mexico struggled to create opportunities although Buffon should have been tested by Gerardo Flores but his free header from a free-kick went wide.
Italy's pressure finally told in the 78th minute when Balotelli proved too strong for Rodriguez as they challenged for a high ball before firing an unstoppable shot past Jose de Jesus Corona.
The result means Mexico will almost certainly have to register a positive result when they face tournament hosts Brazil on Wednesday, while a win for Italy against Japan should see them progress.