Gianluca Sansone replied to Alberto Gilardino, as Bologna and Sampdoria shared the spoils.
Josip Ilicic scored with the last kick of the game to give Palermo a potentially decisive point in the tense Derby di Sicilia.
Torino fought back from 3-0 down in Florence with an Alessio Cerci stunner, but Fiorentina won 4-3 in a remarkable match.
It was a thrilling start to Genoa-Atalanta as both sides were on target in the opening eight minutes, but the 1-1 draw means the Grifone are sliding towards Serie B.
Tommaso Rocchi’s bizarre scuffed goal proved enough to end Inter’s run of three consecutive home defeats, squeezing past Parma 1-0.
Arturo Vidal’s perfect penalty gave Juventus victory over an uninspired Milan, putting them closer to the title and leaving the Rossoneri only one point clear of Fiorentina in third.
Lorenzo Insigne scored deep into stoppages to give Napoli a thrilling 3-2 victory over Cagliari in this incredibly open game.
Roma were held to a shock home draw by bottom of the table Pescara, who ended their run of eight consecutive defeats.
Siena’s hopes of survival took a hammering with this shock home defeat to Chievo and they had a goal controversially disallowed.
Udinese beat Lazio with a stunning Antonio Di Natale leaping volley and caught them in the Serie A table to keep their European dreams alive.