Mauro Icardi's last-gasp header kept Inter Milan in third place in Serie A after they beat rivals AC Milan 1-0 at San Siro.

The Nerazzurri had to wait until the second minute of stoppage time to break the deadlock but Icardi's close-range finish from Matias Vecino's cross extended Inter's winning league run to five games.

AC Milan started brightly, with Suso drilling wide from 25 yards early on and Hakan Calhanoglu volleying off target shortly afterwards.

Inter sprang into life when Ivan Perisic's header forced Gianluigi Donnarumma into a save, and they almost took the lead after 34 minutes when Stefan de Vrij hooked an effort onto the post.

Vecino also had a fine chance to break the deadlock as the first half drew to a close, but he fired over from 10 yards when well placed.

Opportunities were few and far between in the second half, with Matteo Politano firing a volley over for the Nerazzurri on the hour mark.

Suso wasted AC Milan's best chance in the 80th minute when he tamely shot at Samir Handanovic before Inter captain Icardi struck in added time.

Lazio also left it late but picked up their seventh win in nine league games with a 2-0 victory at Parma.

Ciro Immobile broke the deadlock with an 81st-minute penalty after Valon Berisha went down in the box, and Joaquin Correa sealed the three points in added time.

Chievo remain rock bottom as Josip Ilicic inspired Atalanta to a 5-1 victory with a hat-trick at Stadio Marc'Antonio Bentegodi.

The hosts had Federico Barba sent off after 40 minutes but by that time Atalanta were already 2-0 up thanks to goals from Marten de Roon and Ilicic.

Slovenia star Ilicic went on to complete his treble with two goals in two minutes at the start of the second period.

Robin Gosens added a fifth for the visitors before Valter Birsa grabbed a consolation for Chievo with an 84th-minute penalty.

Daniel Ciofani's double failed to inspire Frosinone to a much-needed victory as they were held to a 3-3 draw at home to Empoli.

Matias Silvestre's own goal put the Giallazzurri in front but the centre-back atoned for his error by putting Empoli in front in the 48th minute after Miha Zajc had equalised.

Ciofani scored his first goal six minutes later and added his second from the spot just after the hour mark to leave his side on the brink of their first win of the campaign.

However, Moreno Longo's side, who are second from bottom on two points, were denied in the 79th minute as Salih Ucan popped up with Empoli's leveller.

Bologna and Torino were also involved in a high-scoring draw, with Arturo Calabresi completing the Rossoblu's comeback.

Torino had taken a two-goal lead inside 54 minutes thanks to efforts from Iago Falque and Daniele Baselli.

Federico Santander brought Bologna back into the contest just before the hour mark and Calabresi rescued a point by smashing home with 13 minutes remaining.

Fiorentina were also forced to settle for a point after Leonardo Pavoletti cancelled out Jordan Veretout's penalty to earn Cagliari a 1-1 draw