Lazio won a typically incident-packed Rome derby as Napoli continued their quest to qualify for the UEFA Champions League again.
Stefano Mauri scored a second-half winner as Lazio beat Roma 2-1 at Stadio Olimpico in a match which saw both teams finish with 10 men.
Roma goalkeeper Maarten Stekelenburg was sent off after just seven minutes for bringing down Miroslav Klose in the box and Hernanes converted the resultant penalty.
Former Chelsea striker Fabio Borini drew Roma level after 16 minutes before Mauri struck decisively just past the hour mark.
Lazio's Lionel Scaloni was sent off for a second bookable offence four minutes from time, but Roma were unable to find another equaliser.
Ezequiel Lavezzi hit an 86th minute winner as Napoli remained in the hunt for Champions League qualification thanks to a 2-1 win at Parma.
Edinson Cavani gave Napoli the lead five minutes before half-time when the striker converted the rebound after his penalty had been saved.
Cristian Zaccardo levelled for Parma with 13 minutes to go, but Lavezzi grabbed the winner four minutes from time and was then denied by the post in the last minute.
Inter Milan struck twice late in the second half to salvage a 2-2 draw against Catania at the San Siro.
The Nerazzurri looked to be heading for their fifth straight league defeat after first-half goals from Alejandro Gomez and Mariano Izco put Catania on course for an upset.
However, Diego Forlan ended Inter's one-month goal-drought in the 71st minute to bring his side back into the match before team-mate Diego Milito equalised with 10 minutes remaining.
The result leaves Inter in seventh place, a point behind sixth-placed Roma and one spot and three points above Catania.
Udinese dropped down to fourth in the table after being held to a 0-0 draw at home by mid-table Atalanta.
A Vangelis Moras own goal and Matija Nastasic effort in the second half helped Fiorentina to a 2-0 home success over bottom club Cesena.
Giuseppe Sculli scored a goal in each half, including a late equaliser, as Genoa scrambled for a 2-2 draw at lowly Lecce.
Sculli opened the scoring on 21 minutes, but Lecce got back in the game through Luis Muriel just past the hour point.
Davide Brivio then gave the home side the lead with nine minutes left, but Sculli was on hand to score his second four minutes later.
Siena opened up a four-point gap on the bottom three after enjoying a 3-0 home triumph over Cagliari.
Erjon Bogdani netted five minutes before the interval and goals inside the final 10 minutes from substitute Emanuele Calaio and Cristiano del Grosso made certain of the points.
Bologna bounced back from last week's defeat to Udinese with a 1-0 triumph over struggling Novara.
The 3-1 loss to Udinese was Bologna's first defeat of 2012 but they got back on track thanks to Robert Acquafresca's late winner.
Acquafresca netted in the 82nd minute to help save the blushes of team-mate Marco Di Vaio, who saw his early penalty saved by visiting goalkeeper Samir Ujkani.
The victory lifts Bologna six points above the relegation zone but leaves Novara deep in trouble in 19th spot, a massive 12 points adrift of safety.