Cristiano Ronaldo was in the scoring groove again a day after his 36th birthday as Juventus beat Roma 2-0 in Serie A.

Ronaldo gave Juventus a 13th-minute lead with his 23rd goal in 24 appearances in all competitions this season.

The five-time Ballon d'Or winner controlled the ball on the edge of the area with the studs on his right boot before beating Pau Lopez with a drilled left-footed shot.

It was Ronaldo's 300th career goal since turning 30, and Roger Ibanez's 69th-minute own goal sealed a Juventus win which moves them within five points of leaders Inter Milan.

Goran Pandev scored two first half-goals as Genoa beat Napoli 2-1, for whom Matteo Politano grabbed a late consolation.

Atalanta stormed into a three-goal lead against Torino inside 21 minutes but could only draw 3-3.

Josip Ilicic, a Salvatore Sirigu own goal and Luis Muriel put Atalanta in command, but Andrea Belotti (42) and Bremer (45) gave Torino hope before the break and Federico Bonazzoli completed the comeback six minutes from time.

Spezia were surprise 2-1 winners at Sassuolo with Martin Erlic and Emmanuel Gyasi on target after Francesco Caputo had given the hosts the lead.

In Spain, Real Madrid cut the gap on La Liga leaders Atletico Madrid to seven points with a hard-fought 2-1 win at Huesca.

Real dominated possession but fell behind to the league's bottom side when Javi Galan scored three minutes into the second half.

Raphael Varane spared Real's blushes, with both efforts coming on the rebound following set-pieces, and the winner arriving six minutes from time.

Sevilla beat Getafe 3-0 to move above Barcelona into third place. Munir El Haddadi, Papu Gomez and Youssef En-Nesyri were all second-half scorers after Djene Dakonam had been sent off.

Roberto Soldado struck in the second minute of stoppage time to earn Granada a 2-2 draw at Levante.

Jose Luis Morales had twice put Levante ahead with Kenedy scoring Granada's first equaliser just before half-time.

Elche and Villarreal also drew 2-2 after Gerard Moreno had given the visitors a two-goal interval lead. Guido Carrillo and Lucas Boye netted to give Elche a point.

RB Leipzig cut the gap on Bundesliga leaders Bayern Munich to seven points with a 3-0 win at bottom club Schalke.

Nordi Mukiele, Marcel Sabitzer and Willi Orban were on target, while Wout Weghorst and Ridle Baku scored as third-placed Wolfsburg won 2-0 at Augsburg.

Demarai Gray scored on his debut as Bayer Leverkusen beat Stuttgart 5-2 to stay fourth.

Kerem Demirbay (two), Leon Bailey and Florian Wirtz were also on the scoresheet, with Sasa Kalajdzic replying twice for Stuttgart.

Borussia Dortmund were beaten 2-1 at Freiburg. Jeong Woo-yeong and Jonathan Schmid scored within seven minutes of the restart to put Freiburg in control before Youssoufa Moukoko pulled one back.

Moussa Niakhate's penalty was enough for Mainz to beat 10-man Union Berlin, who had Nico Schlotterbeck sent off after 55 minutes.

Cologne were 2-1 winners at Borussia Monchengladbach, Elvis Rexhbecaj scoring twice with Florian Neuhaus replying for the hosts.

Lyon took over top spot from Lille in Ligue 1 as Memphis Depay (two) and Karl Toko Ekambi struck in a 3-0 home win over Strasbourg.

The visitors played most of the game with 10 men after Adrien Thomasson was sent off after 14 minutes.

Laurent Abergel was Lorient's match-winner in a 1-0 home victory against Reims, while Lens and Rennes drew 0-0.