Atletico Madrid missed out on the chance to replace Barcelona atop the La Liga table as they slumped to a 1-0 defeat against relegation-threatened Malaga.
With Barcelona inactive due to their Club World Cup commitments, even a point would have been enough to send Diego Simeone’s men into the Christmas break as outright league leaders.
But instead they lost Gabi to a red card early in the second half and were condemned to their first defeat in 16 games by a goal from Brazilian striker Charles four minutes from time on Sunday.
Real Madrid remain third but certainly turned on the style as they trounced struggling Rayo Vallecano 10-2 at the Bernabeu.
Gareth Bale stole the headlines by helping himself to four goals, with the visitors imploding after losing Tito and Raul Baena to red cards within the opening 30 minutes.
Karim Benzema grabbed a hat-trick for the hosts, with Cristiano Ronaldo claiming two.
Danilo scored Madrid’s other goal in the third minute, only for Rayo to hit back through Antonio Amaya and Jozabed, much to the dismay of the home fans.
But once the visitors were reduced to nine men, Rafael Benitez’s side ran riot.
Celta Vigo – fourth in the standings – extended their unbeaten run in all competitions to six games with a 2-0 win at Granada.
First-half goals from Fabian Orellana and Iago Aspas proved enough to clinch the points for Eduardo Berizzo’s men at Estadio Los Carmenes.
The victory keeps Celta a point clear of fifth-placed Villarreal, who won 2-0 at Real Sociedad.
Midfielder Denis Suarez scored both of his side’s goals, the second coming two minutes from time.
Levante, meanwhile, will spend Christmas propping up the table after losing 1-0 at Athletic Bilbao.
They pushed the hosts hard at San Mames, but were ultimately undone by Mikel San Jose’s headed goal and a late strike from Inaki Williams.