Pedri scored a brilliant second-half goal as Barcelona beat Sevilla to move up to second in La Liga and keep their title hopes alive.
After a goalless first half, the 19-year-old midfielder showed great composure on the edge of the box to thump a shot into the bottom corner.
Sevilla had a penalty shout in the first half when Anthony Martial’s shot hit Ronald Araujo’s arm.
But Barcelona were the better side as Gerard Pique also hit the post.
Defender Pique, though, was perhaps fortunate not to be sent off late on as he pulled back Jesus Corona, who looked set to run clear on goal.
But Barcelona held out to take a crucial three points and extend their unbeaten run to 14 games. They are now 12 points behind leaders Real Madrid with a game in hand.
Sevilla had started the day in second place, but dropped to fourth, behind Barcelona and Atletico Madrid on goal difference, as their own 15-game run without defeat came to an end.
Madrid salvaged a 2-1 win at Celta Vigo on Saturday with a couple of penalties by the league-scoring leader Karim Benzema.
“We will keep fighting until the math shows that we have no chance,” Xavi said.
“We were hoping (Madrid) would have stumbled yesterday but it didn’t happen.”
Barcelona join Sevilla and defending champion Atletico Madrid on 57 points having won eight and drawn one of their last nine matches in all competitions. They haven’t lost in 13 consecutive games.
Real Betis routed Osasuna 4-1 to stay within range of the final Champions League place.
Juanmi scored twice and William Carvalho and Alex Moreno added a goal each for the hosts’ second victory in the last nine matches in all competitions.
The result left Betis four points behind Barcelona, Atletico and Sevilla.
Athletic Bilbao ended their two-match winless run with a 2-1 triumph over Elche to stay in eighth place, near the European spots.
It was the fourth loss in five matches for Elche, who are six points above the drop zone.
In other results, mid-table Valencia were held to a scoreless draw at home by relegation-threatened Cadiz while 10-man Rayo Vallecano drew 2-2 with Granada after conceding a penalty kick four minutes into added time.