Sassuolo boosted their Serie A survival hopes with a 3-1 win over Catania, while Juventus scraped a last-minute 1-0 win at Genoa on Sunday.
Gonzalo Bergessio had grabbed a first-half lead for Catania, who looked dangerous through Spanish winger Keko, but Sassuolo hit back with three goals after the interval to leapfrog their opponents and leave the Sicilians bottom of the table.
Half-time substitute Simone Zaza levelled the scores before Simone Missiroli and Nicola Sansone made sure of Sassuolo’s first win in nine outings, which moves them within three points of safety.
Livorno are the side to catch for the bottom three after they moved out of the drop zone on Sunday with a 2-1 win over Bologna, who dropped into the relegation zone in their place.
Marco Benassi and Paulinho scored on the counter to put Livorno in command, though they were made to sweat for three precious points.
Ibrahima Mbaye was dismissed for a second yellow card with 10 minutes of normal time to play, and Innocent Emeghara’s red card five minutes later put the hosts down to nine and gave Bologna a penalty, which Lazaros Christodoulopoulos converted.
Livorno were able to cling on for a victory that moves them to the safe haven of 17th place.
At the top of the table, Andrea Pirlo curled in a stunning 89th-minute free-kick as Juventus claimed a scrappy 1-0 Serie A win at Genoa.
Gianluigi Buffon had earlier saved an Emanuele Calaio penalty, while Pablo Daniel Osvaldo saw two efforts chalked off for offside as Juve struggled in the absence of the league’s top scorer, Carlos Tevez.
With Roma playing on Monday, the win puts Juventus 17 points clear at the top of Serie A.
Milan’s week of misery continued as fan protests preceded a 4-2 home loss to Parma, who recorded a first Serie A win at San Siro since 1996.
Ex-Milan forward Antonio Cassano scored in both halves for Parma after the hosts had goalkeeper Christian Abbiati sent off for fouling Ezequiel Schelotto in the penalty area in the fifth minute.
However, from 2-0 down with less than 40 minutes to play, Milan fought back as Adil Rami headed in a corner before Mario Balotelli converted from the penalty spot to draw his side level.
Parity lasted less than two minutes though, substitute Amauri flicking in as Parma’s bid for a European place gathered pace with their 16th league game without defeat and fifth Serie A away win in a row, sealed by Jonathan Biabiany’s late header.
Fiorentina halted their recent slump with a 3-1 home win over struggling Chievo, although they lie seven points behind third-placed Napoli in the table.
Two clubs troubled by off-field unrest, Cagliari and Lazio, met at Stadio Sant’Elia, with the capital club triumphing 2-0.
Lazio boss Edy Reja has overseen a recent upturn in form, and goals in each half from Senad Lulic and Balde Keita saw them rise to seventh place with a third win in four league games.
Atalanta beat Sampdoria 3-0 in a mid-table clash, a third straight success lifting the victors four places to ninth.