Leaders Barcelona require five points from their last five games to wrap up the La Liga title after substitute Jordi Alba struck an 85th-minute winner against 10-man Osasuna at the Nou Camp.
The mid-table visitors had Jorge Herrando sent off less than half an hour into his debut for a professional foul on Pedri – the seventh red card for the club in La Liga this season.
But Osasuna stayed organised and frustrated their opponents until Alba’s winner with the outside of his foot.
Barcelona dominated possession even before Herrando’s dismissal, with Osasuna making nine changes before their appearance in the Copa del Rey final against Real Madrid in Seville on Saturday (kick-off 21:00 BST).
Pedri, Ronald Araujo and substitute Ousmane Dembele all wasted chances, Raphinha went close with a free-kick, while Frenkie de Jong and Ansu Fati forced good saves from Fernandez.
But Osasuna were hard-working and went close themselves through Lucas Torro and Iker Munoz.
Barca, who had 15-year-old winger Lamine Yamal as an unused substitute, had a 79th-minute goal by Robert Lewandowski ruled out for offside before Alba’s late winner left the home fans in the 76,061 crowd celebrating.
- 1ter Stegen
- 15ChristensenSubstituted forGarcíaat 52′minutes
- 28BaldeSubstituted forAlbaat 76′minutes
- 5BusquetsSubstituted forF Torresat 76′minutes
- 21F de Jong
- 22RaphinhaSubstituted forDembéléat 52′minutes
- 30GaviSubstituted forAnsu Fatiat 36′minutes
- 10Ansu Fati
- 11F Torres
- 13Peña Sotorres
- 31HerrandoBooked at 26mins
- 6TorróSubstituted forÁlvaro Armadoat 59′minutes
- 14GarcíaSubstituted forBarja Alfonsoat 45′minutes
- 22OrozSubstituted forMuñozat 45′minutes
- 33BenitoSubstituted forHernándezat 70′minutes
- 9ÁvilaSubstituted forKikeat 59′minutes
- 3Álvaro Armado
- 11Barja Alfonso
- 16Gómez Bardonado
- Javier Iglesias Villanueva