Barcelona brought the gap to LaLiga leaders Real Madrid back to three points as they thumped Athletic Bilbao 4-0 at the Nou Camp.
Ousmane Dembele headed a 12th-minute opener and subsequently set up goals for Sergi Roberto on 18 minutes and Robert Lewandowski four minutes later as Barca swiftly took control against a Bilbao outfit managed by their former boss Ernesto Valverde.
Substitute Ferran Torres then wrapped up the win for Xavi’s second-placed side with a 73rd-minute effort as Dembele completed a hat-trick of assists.
Antoine Griezmann notched a brace as Atletico Madrid moved into third with a 2-1 victory at fifth-placed Real Betis.
Griezmann put Atletico ahead in the 54th minute by curling the ball in direct from a corner, and added a second strike in the 71st before Nabil Fekir pulled one back with six minutes to go.
Bottom side Elche secured a 2-2 draw at Espanyol thanks to an 82nd-minute equaliser from Gonzalu Verdu, and Girona moved out of the relegation zone as David Lopez’s leveller secured a 1-1 draw at home with Osasuna.
Villarreal pulled off a dramatic come-from-behind 2-1 win at home against Almeria despite being reduced to 10 men.
Alex Baena was sent off moments after drawing the hosts level with a 56th-minute header, receiving a second yellow card for celebrating by lifting his shirt to display a message underneath.
But the Yellow Submarine – whose unused substitute Manuel Morlanes was also red-carded – ended up with all three points via a stoppage-time goal from Nicolas Jackson.
Napoli are three points clear at the top of Serie A after winning 1-0 at Roma courtesy of a Victor Osimhen goal with 10 minutes remaining – a seventh successive league victory for Luciano Spalletti’s team.
AC Milan are second, with Lazio and Atalanta two points behind in third and fourth respectively.
Goals from Mattia Zaccagni and Felipe Anderson saw Lazio win 2-0 at Atalanta, who had had Luis Muriel dismissed late on.
Pietro Pellegri was the match-winner as Torino triumphed 2-1 at Udinese and Marko Arnautovic’s penalty and Lewis Ferguson’s first goal since joining from Aberdeen saw Bologna beat Lecce 2-0 at home.
There was a shock in the Bundesliga as Bochum moved off the foot of the table with a 2-1 home win over leaders Union Berlin, Philipp Hofmann and Gerrit Holtmann netting for the hosts before Milos Pantovic’s stoppage-time reply.
Replacing Bochum at the bottom are Schalke, who were condemned to a 2-1 defeat at Hertha Berlin by an 88th-minute Wilfried Kanga goal in their first match since parting ways with boss Frank Kramer.
In Ligue 1, Lille came out on top of a seven-goal thriller against Monaco at the Stade Pierre-Mauroy.
The visitors went 3-2 up early in the second half through Wissam Ben Yedder, before Remy Cabella’s second goal of the game and a Jonathan Bamba finish turned things around for a 4-3 Lille win.
There was also drama at the Allianz Riviera, where Nicolas Pepe’s penalty deep into stoppage time earned Nice a 1-1 draw with Nantes, who had both goalkeeper Alban Lafont and unused substitute Kader Bamba sent off amid subsequent protests.
Third-placed Lorient drew 2-2 at Troyes, with Quentin Boisgard levelling for them late on, and Lovro Majer’s stoppage-time penalty gave Rennes a 2-1 win at now-bottom Angers.
Elsewhere, Strasbourg grabbed a 2-2 draw at 10-man Toulouse and moved out of the relegation zone, Auxerre dropped in as they lost 2-1 at Reims and Brest won 3-1 at Clermont.