Lazio closed in on second-placed Inter Milan thanks to a late Miroslav Klose strike at the Stadio Olimpico.
The veteran striker earned Vladimir Petkovic's side a 1-0 victory in the final 10 minutes to claim all three points for the hosts.
Inter hit the post twice in a game which came to life in the second half, but it was the Germany international who decided matters to reduce the gap between the two sides to a single point.
Inter's fifth defeat of the season left them four points adrift of leaders Juventus, who will be looking to extend their lead with victory over Atalanta on Sunday.
In Saturday's other Serie A fixture, Antonio Di Natale was the hero again for Udinese as he salvaged a 1-1 draw for his side against Palermo.
Udinese looked set to be heading for defeat when Josip Ilicic put the visitors in front in the 33rd minute after the home team's goalkeeper Zeljko Brkic was caught out by a divot.
But Brkic then kept Udinese in the game as Palermo pushed hard to finish the game off after Thomas Heurtaux was sent off for the hosts.
And Di Natale had the final say when he struck to grab a point for Udinese, who extended their unbeaten run to three games.