Toni Kroos was sent off in a 1-1 draw against lowly Girona as Real Madrid returned to the top of the table but dropped LaLiga points for only the second time this season.
Vinicius Junior’s ninth goal of the season with just over 20 minutes of normal time remaining put Los Blancos in front at the Santiago Bernabeu.
That was not enough to secure the victory, though, as Marco Asensio was penalised for handball following a VAR check and Cristhian Stuani converted from the spot in the 80th minute.
Rodrygo had a late goal disallowed and Kroos was sent off for a second bookable offence as Los Blancos had to settle for a result that inched them a point above Barcelona at the summit, while Girona are out of the relegation zone.
Luka Modric shot wide in the second minute on his return from injury before Valentin Castellanos fired an early warning shot at the other end, drilling narrowly off target.
Rodrygo let fly with a rasping right-foot drive that was superbly tipped wide by Paulo Gazzaniga, but Girona continued to look dangerous and a header from captain Valery Fernandez flashed just past the left post.
A strike from Madrid forward Rodrygo rattled the right post and Yangel Herrera’s left-foot effort for Girona crashed against the crossbar after Fernandez outmuscled Dani Carvajal.
There was a flashpoint early in the second half when David Lopez was perhaps fortune to only be shown a yellow card for a clash with Vinicius, who went down claiming the Girona defender headbutted him.
It was Vinicius who made the breakthrough in the 70th minute, Federico Valverde spinning away from a defender and giving the forward a tap-in from inside the six-yard box.
Gazzaniga brilliantly palmed Asensio’s powerful strike against the bar soon after that opening goal, before the Madrid winger was adjudged to have handled in the box following a VAR check.
Stuani sent Thibaut Courtois the wrong way with a superb spot-kick, and there was more drama when Rodrygo found the back of the net, but the goal was ruled out as Gazzaniga had a hand on the ball when the striker poked it past him.
Kroos was then dismissed for a second bookable offence after a cynical stoppage-time foul as Madrid slipped up.
What does it mean? Surprise slip-up for champions
Madrid are back above Barca, but they would have been expecting to beat a side who are without an away win in LaLiga this season.
Without injured captain Karim Benzema once again, they could not have any complaints as a well-drilled Girona side were good value for a point.
Girona join Osasuna as the only teams to have taken a point off unbeaten Madrid in LaLiga this term.
Romeu stifles Madrid
Former Barcelona midfielder Oriol Romeu was outstanding in the middle of the park for Girona, breaking up play superbly and showing great distribution.
He gained possession seven times as Madrid were not at their fluent best and were made to pay.
Mixed match for Vinícius
While Vinicius was on target once again, this was definitely not one of his better displays.
He lost possession on 17 occasions in a game that highlighted that Benzema cannot return soon enough.
Madrid, surprisingly beaten by RB Leipzig last time out in Europe, will attempt to win Champions League Group F when Celtic travel to the Spanish capital on Wednesday. Girona are at home to Athletic Bilbao on Friday.