Antoine Griezmann helped Atletico Madrid make a sensational comeback from 2-1 down to beat Celta Vigo 3-2 and move into fourth in La Liga.
Sevilla remain four points ahead of Atletico in third as they moved within three points of leaders Real Madrid thanks to substitute Joaquin Correa's winner 10 minutes from time in a 1-0 win at Las Palmas.
Real lead Barcelona by a point at the top, but also have two games in hand over their title rivals.
"It was a thrilling and emotional game with a lot of errors, but with two teams looking to win," said Atletico boss Diego Simeone.
"The team was calm and understood there was the chance to equalise and, after the equaliser, the crowd pushed us on for the winner."
Atletico's top four hopes look set to take a huge blow as they once again nearly paid for their profligacy from the penalty spot.
An error from Atletico 'keeper Miguel Angel Moya handed Gustavo Cabral an early opener for Celta. Fernando Torres responded with a sensational looping effort into the far corner.
However, for the third straight game, Atletico failed to convert a spot-kick when Torres smashed the bar midway through the first-half.
Celta also hit the post before the break through Jozabed in an entertaining end-to-end encounter played in torrential Madrid rain.
However, John Guidetti looked to have delivered the telling blow when he slotted home Daniel Wass's cut-back 12 minutes from time. Yet, Atletico responded in style as Yannick Carrasco's crashed home a volley from 25 yards to give the hosts hope.
And just two minutes later Kevin Gameiro's cushioned header was swept home by Griezmann for his 16th goal of the season.
"We turned it round because we are a team that gives our all in every moment and you saw that today," Griezmann told BeIN Sports Spain.