Mario Balotelli made sure Andrea Pirlo’s 100th international game ended in victory, with the AC Milan forward’s 78th-minute goal earning a 2-1 win over Mexico in their FIFA Confederations Cup curtain-raiser at the Maracana.

The Juventus midfielder had given Gli Azzurri the lead in the first half with a wonderful curling free-kick from distance. Javier Hernandez then grabbed an equaliser from the spot, after Andrea Barzagli had clumsily fouled Giovani dos Santos. Balotelli then used his strength to see off the Mexican defenders and score the winner with just over ten minutes remaining.

The former Manchester City striker was a thorn in the side of the Mexican defence throughout the match. After a misplaced pass by Francisco Rodriguez early in the game, Balotelli saw an audacious effort fly just over the crossbar.

That seemed to set the tone as the Mexican defence struggled to get to grips with the powerful forward. It was Balotelli who was fouled to give Pirlo the opportunity to cap his 100th Azzurri match with a goal. The 34-year-old seized the chance with aplomb, curling a beautiful effort into the top left-hand corner to give Jose Corona no chance in the Mexican goal.

Andrea Barzagli was then caught napping by Giovani dos Santos, who nipped in to take the ball from him. There was only going to be one Mexican to take the spot-kick, and Hernandez struck the ball low to Gianluigi Buffon’s left-hand side, sending the goalkeeper the wrong way.

But it was Balotelli who had the final word, as he flicked the ball over the dozing Mexican defence before smashing past Corona.

The Maracana was treated to that now-famous celebration as Balotelli removed his shirt, for which he was duly booked. Italian fans will be hoping the 22-year-old will be flexing his muscles again on Wednesday against Japan in Recife.