Mohamed Salah scored a hat-trick as Roma kept in touch with Serie A leaders Juventus by beating Bologna 3-0 at the Stadio Olimpico on Sunday night.
Juve’s earlier victory at Chievo pushed them seven points clear at the top, but free-scoring Roma made sure to advance their determined chase of the Scudetto with another impressive home win.
Salah’s lucky opener punctuated a frustrating first half while his brace after the break was convincing.
Miralem Pjanic earlier fired a 75th-minute free-kick as Juve clinched a 2-1 win at Chievo.
The Bianconeri had led through Mario Mandzukic’s second-half opener until Sergio Pellissier beat Gianluigi Buffon, who was making his 600th Serie A appearance, from the penalty spot.
Substitute Gianluca Lapadula grabbed his maiden AC Milan goal to earn the Scudetto-chasing Rossoneri all three points from their trip to Palermo.
His 27 goals helped Pescara achieve promotion to the top flight last season but the Turin-born striker has struggled to make an impact for his new employers at San Siro.
After Suso gave Milan the lead in Sicily, Ilija Nestorovski set struggling Palermo on a path to their first point in five games, only for Lapadula to clinch a 2-1 triumph.
Inter Milan’s as-yet-unnamed new head coach caught a glimpse of the size of the task awaiting him as the Nerazzurri struggled to put away basement boys Crotone.
The club will reveal the identity of Frank de Boer’s successor in the next couple of days – with Stefano Pioli currently the favourite – and the board’s pick has plenty to do to revive a title bid.
With time running out, Ivan Perisic broke the deadlock before Mauro Icardi grabbed a last-gasp brace to determine a 3-0 home victory.
Atalanta extended their winning run to four matches with a 3-0 victory at Sassuolo.
Alejandro Gomez opened the scoring with his third goal of the season, while defenders Mattia Caldara and Andrea Conti were also on target before half-time.
Massimo Maccarone’s double helped Empoli to an emphatic 4-0 win at Pescara and their first league success on the road this term.
The veteran former Middlesbrough striker scored twice in the first half, either side of setting up Manuel Pucciarelli for Empoli’s second, while Riccardo Saponara added a fourth.
Elsewhere, Luis Muriel cancelled out Federico Bernardeschi’s opener as Sampdoria rescued a 1-1 draw at Fiorentina, while Genoa midfielder Lucas Ocampos gave Udinese the same treatment by replying to Cyril Thereau’s goal at the Marassi.
On Saturday, Lazio salvaged a point at Napoli after goals from Keita and Marek Hamsik cancelled each other out in a frenetic two-minute spell at Stadio San Paolo.
Biancocelesti boss Simone Inzaghi reverted to a back three in a bid to shackle a Napoli side who won the equivalent fixture 5-0 last season, but still gave up the bulk of possession, territory and chances in the 1-1 draw.
When Hamsik gave the hosts a 52nd-minute lead with a smart turn and finish it might have broken Lazio’s resistance but from virtually the next attack Keita latched on to Marco Parolo’s pass and beat Pepe Reina, who should have done better at his near post.
Andrea Belotti scored twice as Torino blew Cagliari away 5-1 to reassert their European ambitions.
After taking two points from their last three Serie A matches, Sinisa Mihajlovic’s side were in need of victory at Stadio Olimpico Grande Torino and obliged in some style.
Italy international Belotti topped and tailed the scoring, opening the floodgates inside two minutes and converting his eighth of the season from the penalty spot on the hour.
Adem Ljacic (11) and Marco Benassi (38) effectively killed the tie before Federico Melchiorri reduced the deficit before half-time.
By the time the visitors had Daniele Dessena sent off in the 58th minute Daniele Baselli had already scored Torino’s fourth, leaving Belotti to wrap things up from 12 yards.