Gerard Moreno scored the only goal of the game as Espanyol beat Real Madrid 1-0 on Tuesday evening.
Zinedine Zidane’s side had won their last five games but chose to rest Cristiano Ronaldo and they were made to pay for a largely poor performance.
Gareth Bale played in a forward line, but he was a quiet reflection, compared to Moreno down the other end, who poised a constant threat to Sergio Ramos and Raphael Varane.
The home side edged the game, having the better of the chances in the second half, after a dismal opening 45 minutes.
Madrid captain Ramos opted to play as a second striker in the final moments, but even his historical goal-scoring exploits were not enough to force an opener.
With the game petering out to a 0-0 draw, Moreno took matters into his own hands, combining well with Sergio Garcia, who crossed and the striker hammered home a superb volley.
Zidane’s men now find themselves languishing 14 points behind Barcelona, who visit Las Palmas on Thursday evening to play their game in hand over the La Liga champions.
Espanyol had failed to win in their last 22 against Madrid before Tuesday’s game, but they ended a run going back to October 2007 to send the Cornella El-Prat stadium into raptures.