Cagliari stunned Atalanta in Bergamo to catch them in joint fourth place, but Josip Ilicic’s foolish red card for a reaction foul proved costly.
Romelu Lukaku scored twice, including a stoppage-time penalty, allowing Inter to overturn Bologna for a 2-1 victory at the Dall’Ara.
Another diving Gaetano Castrovilli header earned Fiorentina a point, cancelling out Gervinho’s counter-attack in a 1-1 with Parma.
Udinese under caretaker manager Luca Gotti fought back for a surprise 3-1 win away to Genoa, as Thiago Motta showed tactical naivety.
Sassuolo fought back twice for a thrilling 2-2 draw away to Lecce, as the Salentini played their fourth consecutive stalemate.
Lazio ended their 30-year wait for a Serie A victory at San Siro, as Ciro Immobile and Joaquin Correa beat Milan 2-1 and put the Aquile in joint fourth place.
Nicolò Zaniolo and Jordan Veretout gave Roma a precious victory, despite Alex Meret saving an Aleksandar Kolarov penalty and Napoli rattling the woodwork.
Gianluca Caprari’s last-gasp header secured Sampdoria a 1-0 win at SPAL to give Claudio Ranieri his first victory and lift them off the bottom of Serie A.
Matthijs de Ligt was the main man in the Derby della Mole, as he risked giving away another penalty and then scored the winner for Juventus.
Mario Balotelli scored and threatened to storm off the field due to racist abuse, but his Brescia were still beaten 2-1 by high-flying Verona.