Barcelona wasted a golden opportunity to extend their lead at the top of LaLiga as they suffered a shock 2-1 defeat at Rayo Vallecano on Wednesday thanks to goals in each half from Alvaro Garcia and Fran Garcia.
With seven games to play, Barca are top of the league on 76 points, 11 ahead second-placed Real Madrid, who were also stunned 4-2 at lowly Girona on Tuesday. Rayo Vallecano are ninth on 43 points, four adrift of the European qualification spots.
Rayo halted Barca's seven game unbeaten streak in the league with a gutsy performance in front of their fans at a sold-out Estadio de Vallecas.
They were the better side for most of the match against a slapdash Barca and opened the scoring in the 19th minute after Sergio Camello challenged Gavi and quickly fed Alvaro Garcia who riffled an unstoppable low shot past Marc-Andre ter Stegen.
The hosts kept pressing and wasted a couple of chances but got a scare when Robert Lewandowski netted what would have been an equaliser in the 40th minute, before his effort was ruled out after the VAR replay showed he was fractionally offside.
Rayo got back on top in the second half and extended their lead in the 52nd minute thanks to a great effort from Fran Garcia, who stole the ball from Frenkie de Jong in midfield and ran through the heart of the Barca defence to score with a tidy finish past Ter Stegen.
Camello missed another great chance in the 64th minute and Unai Lopez also wasted another opportunity to extend Rayo's lead a little later.
However, Barca cut the deficit through Lewandowski, who latched on to a loose ball inside the box and drilled it into the net in the 83rd minute.
It proved a consolation, however, as Rayo held on to secure the win.
"Rayo played a great game. They deserved the win and we were not up to the task tonight," defender Ronald Araujo told DAZN.
"Good thing we have a good advantage in the standings and we play the next two games at home, it's our turn to play at home."
Atletico celebrate anniversary with 3-1 comeback win over Mallorca
Atletico Madrid recovered from conceding an early goal to beat Mallorca 3-1 in LaLiga on Wednesday, a result that put them two points behind their second-placed city rivals Real Madrid.
With seven games to play, third-placed Atletico climbed to 63 points, closing the gap to Real, who lost 4-2 at Girona on Tuesday.
Celebrating their 120th anniversary in front of a nearly sold-out Metropolitano stadium and wearing a blue and white kit inspired by the one they used in their first match in 1903, Atletico fell behind in the 19th minute after Mallorca defender Matija Nastasic scored with a header from a corner.
But Atletico took control of the match, creating several opportunities mainly through in-form Antoine Griezmann, who is in contention for LaLiga's player of the season.
The referee initially awarded Atletico a penalty for a foul on Nahuel Molina inside the box, but reversed his decision after checking the VAR replay.
Atletico recovered netting twice within two minutes at the end of the first half and the beginning of the second.
Rodrigo de Paul scored in added time before the break with a close-range strike and right after halftime Alvaro Morata netted with a towering header from a perfect Molina cross.
Yannick Carrasco wrapped up the points from a counter-attack in the 76th minute, collecting a brilliant long pass from Griezmann and dribbling around the goalkeeper before tapping into the empty goal.
Dimarco sends Inter into Coppa Italia final again
Inter Milan midfielder Federico Dimarco's first-half goal earned his side a place in the Coppa Italia final for the second year in a row after a 1-0 home win over Juventus in their semi-final second leg on Wednesday secured a 2-1 aggregate victory.
It was the first time in six attempts that Inter had got the better of Juve in a Coppa Italia semi-final, ending the visitors' streak of three consecutive finals.
Inter will face either Fiorentina or Cremonese in the final on May 24 at the Stadio Olimpico, with Fiorentina leading 2-0 after their semi-final first leg in Cremona. They will play the second leg on Thursday.
"It was a wonderful evening, a lot of fair play, both teams played an intense match from start to finish. Clearly, my team deserved (to reach) the final over the two legs," Inter manager Simone Inzaghi told Mediaset.
"The lads did so well tonight, as we never dropped back an inch against a quality opponent."
Defending champions Inter started on the front foot, racing into the lead after 15 minutes when midfielder Nicolo Barella played the ball through to Dimarco inside the box and he found the net with one touch.
Soon after the second half began, Edin Dzeko appeared to have doubled the hosts' lead with a nice finish from a tight angle, but he was flagged offside.
Juve keeper Mattia Perin then pulled off a superb one-handed save to tip Henrikh Mkhitaryan's attempt wide in the 73rd minute.
With time running out, Juve attempted to get through the Inter defence, but Inter keeper Andre Onana was alert to snuff out the danger.