AC Milan climbed back to the top of Serie A after coming from behind to win 3-1 at Verona. while La Liga champions Real Madrid lost to neighbours Atletico.

Sandro Tonali's double helped Milan extend their unbeaten league run to 14 matches and leapfrog city rivals Inter into pole position with two games to play.

Davide Faraoni headed Verona into the lead and Tonali, who had an earlier effort ruled out by VAR, equalised in first-half stoppage time.

Tonali struck again early in the second period and Alessandro Florenzi sealed all three points with a late third goal for Milan, who are two points clear at the top.

Atalanta remain in pursuit of a top-six finish after winning 3-1 at relegation fighters Spezia.

Luis Muriel fired Atalanta into a first-half lead and although Daniele Verde equalised for Spezia,Berat Djimsiti's second-half header and Mario Pasalic's late effort kept the visitors level on points with sixth-placed Roma.

Bottom club Venezia's faint hopes of pulling off a great escape were boosted as Dennis Johnsen's stoppage-time goal clinched a 4-3 home win against Bologna.

Relegation rivals Salernitana and Cagliari drew 1-1 in Salerno and are now five and four points clear of Venezia respectively.

LaLiga champions Real Madrid's five-game winning league run was halted in a 1-0 derby defeat at Atletico.

Real wrapped up their 35th Spanish title last month, but were unable to follow up their stunning midweek Champions League win against Manchester City with another victory.

Atletico's Yannick Carrasco struck the only goal from the penalty spot in the 40th minute after Jesus Vallejo had fouled Marcos Llorente.

Sevilla stayed on course for a Champions League berth after a thrilling finish in a 1-1 draw at Villarreal.

Tottenham loanee Giovani Lo Celso gave Europa League-chasing Villarreal an 86th-minute lead, but Jules Kounde's equaliser in the fifth minute of added time kept Sevilla in third place.

Getafe edged five points clear of the bottom three after a goalless home draw against Rayo Vallecano and Osasuna drew 1-1 at Espanyol.

In Germany, Bundesliga champions Bayern Munich were held to a 2-2 draw at home by relegation battlers Stuttgart.

Bayern, presented with the Bundesliga winners' trophy in their final home game after sealing a 10th straight domestic title last month, led 2-1 at the break after Tiago Tomas' early opener for the visitors was cancelled out by Serge Gnabry and Thomas Muller.

Stuttgart levelled through Sasa Kalajdzic and after Bayern's Kingsley Coman was shown a straight red card in stoppage time for his foul on Konstantinos Mavropanos, the visitors held on for a vital point.

Leipzig are on course for a top-four finish after a comfortable 4-0 home win against Augsburg left them two points ahead of fifth-placed Freiburg with one game remaining.

Eintracht Frankfurt drew 1-1 at home against fellow mid-table side Borussia Monchengladbach.

Ligue 1 champions Paris St Germain let slip a two-goal lead as they were held 2-2 at home by Troyes.

Marquinhos and Neymar's penalty put PSG 2-0 ahead inside 25 minutes, but Troyes hit back through Ike Ugbo before Florian Tardieu's second-half penalty secured the visitors a crucial point in their bid to stave off relegation.

Second-placed Marseille tightened their grip on a Champions League place with a 3-0 win at lowly Lorient.

Lens kept alive their hopes of a top-six finish with a 2-1 win at Reims, but Lyon's Europa League aspirations were dealt a blow as they lost 3-2 at Metz.

Bottom club Bordeaux's relegation was confirmed after a 4-1 defeat at Angers, while Clermont climbed out of the relegation zone by beating Montpellier 2-1.