Atalanta climbed into the Serie A Champions League places with a 2-0 win at rivals Lazio on Saturday as fellow top-four hopefuls Roma stumbled to a 1-1 draw against lowly Lecce.

Goals from Davide Zappacosta and Rasmus Hojlund saw the Bergamo club jump from sixth to third, leapfrogging Lazio, reigning champions AC Milan and Roma in the fierce battle to qualify for Europe's top club competition.

Maurizio Sarri's Lazio, who could have overtaken city rivals Roma with a win at the Stadio Olimpico, dropped to sixth and lie two points off the top four. 

Atalanta, Roma and fifth-placed Milan are level on 41 points but remain some 15 points behind runaway leaders Napoli.

Atalanta made the breakthrough in a breathless encounter in the Italian capital when Zappacosta unleashed a sweet strike into the top corner in the 23rd minute.

Young Danish striker Hojlund doubled the advantage for Gian Piero Gasperini's men in the 65th minute, converting Ademola Lookman's cross as Lazio were made to pay for not taking their opportunities.

"We play these types of matches and they give you a lot of confidence," said Gasperini. "To reach the Champions League would be extraordinary."

Wijnaldum returns for Roma

Jose Mourinho's Roma occupy the final Champions League spot after dropping two points at 14th-placed Lecce as Netherlands star Georginio Wijnaldum made a long-awaited return from injury.

They made a terrible start when an under-pressure Roger Ibanez turned the ball into his own net from a corner in the seventh minute.

Paulo Dybala equalised from the penalty spot 10 minutes later following a Lecce handball as Roma reacted strongly to the early setback.

But the visitors, buoyed by the return of midfielder Wijnaldum from the bench after a lengthy absence caused by a tibia fracture in August, failed to find a winner.

Lecce goalkeeper Wladimiro Falcone shone with a string of saves, denying Tammy Abraham on three occasions.

"It's not the result we wanted, but it was a difficult match on a terrible pitch," said Mourinho.

Empoli scored a stoppage-time equaliser as they recovered from two goals down to draw 2-2 at home to relegation-threatened Spezia, in an entertaining contest where both sides were reduced to 10 men. 

Fabiano Parisi was sent off for the hosts in the 21st minute following a VAR review after blocking a goal-bound header from a corner with his arm.

Empoli goalkeeper Guglielmo Vicario thought he had saved the resulting penalty by Daniele Verde, but the referee ordered it to be retaken for encroachment, and Verde made no mistake at the second attempt.

Verde gave Spezia a 2-0 lead with a stunning long-range strike in the 31st minute, but Salvatore Esposito's red card for a second bookable offence shortly after half-time saw the match swing in Empoli's favour.

Nicolo Cambiaghi halved the deficit with a goal in the 71st minute before Emanuel Vignato's injury-time equaliser denied what would have been a valuable win for Spezia, who lie in 17th place, five points above the relegation zone.

Olivier Giroud ended AC Milan's dramatic slump with the only goal in a 1-0 win over Torino at the San Siro on Friday.

The France striker's header from a Theo Hernandez cross in the second half snapped the champions' three-match losing streak in the Italian top flight.