Real Madrid moved to the top of LaLiga, level on points with rivals Atletico, after they won 3-0 at Cadiz, where Karim Benzema scored twice.
Los Blancos, playing for the first time since the European Super League project crumbled, broke the deadlock after half an hour at the Ramon de Carranza through Benzema’s penalty, which was given on VAR review.
Alvaro Odriozola swiftly headed in a second, with Benzema adding another shortly before half-time as Real took control and comfortably saw out the second half.
Victory sees Real Madrid move above their city rivals on head-to-head record, but having now played a match more while Barcelona have two in hand.
Sevilla moved above Barca into third place after they had earlier won 1-0 at Levante with a goal from Youssef En-Nesyri in the 53rd minute.
Osasuna beat Valencia 3-1, while it finished goalless between Real Betis and Athletic Bilbao.
Edgar Mendez struck with 10 minutes left as Alaves beat European hopefuls Villarreal 2-1, and Valladolid grabbed a point with a 1-1 draw at Elche with Lucas Olaza’s goal in the 86th minute.
In the Bundesliga, Borussia Dortmund beat Union Berlin 2-0 to keep in striking distance of the top four.
Marco Reus put the hosts ahead in the 27th minute and defender Raphael Guerreiro added a late second.
Wolfsburg won 3-1 at Stuttgart to close back up on second-placed RB Leipzig, the gap now four points.
Andrej Kramaric scored twice as Hoffenheim beat Borussia Munchengladbach 3-2 at the Rhein-Neckar-Arena, while Adam Szalai’s first-half strike proved enough to give Mainz a 1-0 win at Werder Bremen.
Inter Milan moved a step closer to the Serie A title despite having to settle for a 1-1 draw at Spezia.
Ivan Perisic cancelled out Diego Farias’ 12th-minute opener six minutes before the interval.
It was enough to take them 10 points clear at the top after second-placed rivals AC Milan slipped up at home to Sassuolo.
Giacomo Raspadori did the damage with two late goals, levelling 14 minutes from time and then grabbing a winner seven minutes later. Hakan Calhanoglu had given Milan a 30th-minute lead.
Alex Sandro struck twice as Juventus came from behind to climb to third with a 3-1 win over relegation-threatened Parma in Turin.
Gaston Brugman gave Parma the advantage but Sandro responded with two in the space of four minutes either side of half-time. Matthijs de Ligt put the result beyond doubt after 68 minutes.
Bottom side Crotone were beaten 1-0 at home to Sampdoria but Cagliari moved within three points of safety with a vital 1-0 win at Udinese.
Benevento remain just above the relegation zone after a 2-2 draw at Genoa, level on points with Torino, who draw 1-1 at Bologna.
Mauro Icardi scored a hat-trick as Paris St Germain eased into the semi-finals of the French Cup with a 5-0 thrashing of Angers.
Neymar was also on target while Vincent Manceau put through his own goal. Monaco went through with a 2-0 win at 10-man Lyon.