Sergej Milinkovic-Savic’s opener was cancelled out by Adrien Rabiot before the break, but Zaccagni fired home his 10th league goal of the season early in the second half to send the Biancocelesti five points clear of AS Roma in second place.
With Inter, AC Milan and Atalanta all dropping points already this weekend, both teams knew this was a golden opportunity to gain some ground on their top-four rivals.
Lazio grab the opportunity
Lazio delivered, claiming their first win over Juventus since December 2019 and extending their unbeaten run to seven games in Serie A.
Juventus remain seventh, eight points outside the top four, although their situation could change very quickly if their appeal against a 15-point deduction proves successful later this month.
Juve coach Massimiliano Allegri was forced to watch his team from afar due to illness, while Lazio captain Ciro Immobile returned to the starting line-up for the first time in over a month after injury.
The Biancocelesti started brightly as Milinkovic-Savic twice threatened with headers before he was denied by a decisive Bremer intervention just as he was about to pull the trigger inside the box.
Immobile had a volleyed effort beaten away by Wojciech Szczesny as Lazio’s pressure continued, and the dam eventually burst when Milinkovic-Savic tucked home from close range.
Alex Sandro wanted a foul for a push after dramatically dropping to the floor to leave the midfielder in space, but the referee wasn’t interested.
Zaccagni continues fine form
It was a deserved lead that the Romans had worked hard to find, but within minutes they lost it as Bremer’s header from a corner was saved by Ivan Provedel but bundled home by Rabiot on the rebound.
Maurizio Sarri’s men responded quickly to the setback after the break, restoring their lead with a superb team goal.
A low cross from the right wing was cleverly flicked into the path of Zaccagni by Luis Alberto in a moment that wrong-footed the Juve defence and left the winger with space and time to pick his spot.
Zaccagni was soon celebrating his second of the night after finishing from close range, but the goal was chalked off correctly for offside.
Juve piled on the pressure in search of an equaliser late on, with substitute Federico Chiesa making a strong impact off the bench, but they couldn’t find a way past Lazio’s defence as Nicolo Fagioli fired over a good chance and Leandro Paredes dragged a shot wide.