Atletico Madrid suffered a shock LaLiga defeat by struggling Mallorca while city rivals Real cruised 12 points clear at the top of the table.
Diego Simeone rested a number of key players for his side’s trip to the Son Moix ahead of their bid to erase a first-leg deficit in their Champions League quarter-final clash with Manchester City on Wednesday.
But he was left stunned as Vedat Muriqi’s 71st-minute penalty proved enough for the hosts to end a run of seven straight defeats and hand Atletico their first loss after six straight domestic wins.
Ahead of their own clash with Chelsea, Real Madrid had no such problems as they cruised to a 2-0 win over Getafe with goals from Casemiro and Lucas Vazquez, further strengthening their grip on the title.
Villarreal prepared to defend a narrow first-leg lead over against Bayern Munich by drawing 1-1 at home with Athletic Bilbao.
Raul Garcia gave the visitors a 1-0 lead shortly before half-time but Pedraza fired a 60th-minute leveller to ensure Unai Emery’s men will head to Germany in good heart.
Real Betis came from behind to win 2-1 in Cadiz with goals from Cristian Tello and a late Borja Iglesias penalty.
Inter Milan beat Verona 2-0 to move up to second place in Serie A and heap the pressure onto title rivals AC Milan and Napoli, both of whom are scheduled to play on Sunday.
Nicolo Barella hit a 22nd-minute opener and Edin Dzeko’s effort eight minutes later proved enough for Simone Inzaghi’s men to move within a point of their city rivals, having played the same number of games.
Juventus tightened their grip on fourth place as they came from behind to win 2-1 in Cagliari thanks to Matthijs de Ligt’s leveller on the stroke of half-time and a 75th-minute winner from Dusan Vlahovic, while Empoli and Spezia played out a goalless draw.
Bayern Munich moved nine points clear in the Bundesliga but they had to wait until Robert Lewandowski scored a 82nd-minute penalty to claim a 1-0 win at home to Augsburg.
Union Berlin roared to an emphatic 4-1 win over Hertha Berlin at the Olympic Stadium, pushing their rivals deeper into relegation trouble.
Genki Haraguchi’s opener for Union was cancelled out by a Timo Baumgartl own goal, but second-half strikes from Grischa Pomel, Sheraldo Becker and Sven Michel secured a memorable win for the away side.
Lukas Nmecha scored twice as Wolfsburg ended a run of three straight losses in style with a 4-0 win over Arminia Bielefeld, who remain second from bottom of the table.
Koln staged a dramatic fightback to beat Mainz 3-2 after the visitors established a 2-0 lead through Jonathan Burkardt and Karim Onisiwo.
Ellyes Skhiri reduced the deficit on the hour mark then late strikes from Dejan Ljubicic and Luca Kilan ensured the three points for the hosts.
First-half goals from Marcus Thuram and Alassane Plea earned Borussia Monchengladbach a 2-0 win at Greuther Furth, who remain rooted to the bottom of the table.
Neymar and Kylian Mbappe each helped themselves to a hat-trick as Paris St Germain retained their 15-point lead at the top of Ligue 1 with a comprehensive 6-1 win at struggling Clermont.
Two first-half goals from Benjamin Bourigeaud, and a third from Martin Terrier, proved enough for Rennes to remain a distant second after a 3-2 win at Reims.