Barcelona's Lionel Messi came off the bench to help the Liga leaders battle back from 4-2 down in stoppage time to snatch a remarkable 4-4 draw at struggling Villarreal on Tuesday.
The Catalans avoided a first league loss since November with a last-gasp Luis Suarez strike after captain and top scorer Messi gave them hope with a deadly free kick in the 90th minute.
The draw resulted in Barca's lead over nearest challengers Atletico Madrid, who had earlier won 2-0 at home to lowly Girona, being trimmed to eight points ahead of Saturday's top-of-the-table showdown at the Nou Camp.
"The spirit which we showed to never give up demonstrates how much we want to lift this league title," Suarez told reporters after they avoided what would have been Barca's first league defeat since November.
"Looking at how the first half was going I think we put in a great performance, we deserved to be winning although we know they had chances to score too."
Even without Messi, Gerard Pique and Ivan Rakitic in their starting lineup, the visitors still strolled into the lead through a Philippe Coutinho goal in the 12th minute, which Brazilian forward Malcom soon doubled with a header.
But Villarreal, who began the game hovering one point above the relegation zone, hauled themselves into contention with a strike from 19-year-old Samuel Chukwueze midway through the first half.
Cameroon striker Karl Toko Ekambi took advantage of slack positioning from Barca goalkeeper Marc-Andre ter Stegen to equalise soon after the interval and Vicente Iborra completed the home side's remarkable revival just after the hour mark.
Messi was called from the bench to rescue the champions but instead Villarreal increased their lead with a strike from their substitute Carlos Bacca.
Alvaro Gonzalez was then dismissed for Villarreal for a second booking with four minutes remaining, paving the way for Messi and Suarez to strike for Barca and produce a remarkable finish to an enthralling contest.
"It was a crazy game, there were times when it seemed either of the two teams could win without any problems. It shows how strong this league is," Barcelona boss Ernesto Valverde said. "You cannot go into any match thinking that you're going to win. It was important not to lose."
Suarez that his side had plenty of work to do though before meeting Atletico in four days' time.
"We have a lovely points margin but even though we didn't lose today we know we have to improve," he said.
"This game shows you that you end up paying dearly for any errors, and we need to make some corrections."