MADRID, Dec. 3 -- FC Barcelona moved back to third place in La Liga on Sunday night after a 1-0 win at home to Atletico Madrid.
Joao Felix, playing on loan at Barca from Atletico, scored the game's only goal, as Barca produced their best first half performance in several weeks.
Atletico had the better of the second 45, but despite playing most of the game in Barca's half, the only difficult save Barca keeper Inaki Pena had to make was from a Memphis Depay free kick.
On Saturday, Real Madrid stayed top of La Liga after an easy 2-0 win at home to struggling Granada, with Brahim Diaz in the right place to poke home after Jude Bellingham's shot was saved in the first half and Rodrygo netting the second.
Granada weren't helped by an early injury to goalkeeper Raul Fernandez, but failed to get a shot on target in Alexander Medina's debut as coach.
Girona produced another late comeback to win 2-1 at home to Valencia, after Hugo Duro put Valencia ahead in the 57th minute.
Substitutes Cristhian Stuani and Yan Couto combined twice for the striker to latch onto crosses from Couto from the right in the 82nd and 88th minutes to turn the game around.
Rayo Vallecano had only conceded three goals away from home before Saturday, but were stunned by an excellent display from Athletic Bilbao who ran out 4-0 winners.
Gorka Guruzeta opened the scoring in the 23rd minute, and the home side doubled their lead in the 47th minute when Inaki Williams' cross was deflected in by Rayo defender Alfonso Espino.
Inaki scored Athletic's third after an excellent team move, and his brother Nico celebrated his new contract by adding a spectacular fourth as Athletic ran riot.
Mallorca and Alaves drew a close game of few chances 0-0, with a result that will probably please the visitors more than the home side, who had the better of the game but have now failed to win any of their last 10 league games.
Bottom outfit Almeria gave one of their best performances of the season, but still failed to beat a Real Betis side reduced to 10 men after Hector Bellerin's 27th-minute red card.
Almeria are still looking for their first win despite trying 20 shots, as Betis keeper Rui Silva kept out everything the home side could produce.
Sevilla coach Diego Alonso is on the brink of losing his job after his side were held to a 1-1 draw at home to Villarreal to leave them without a league win since he took charge.
Kike Salas put Sevilla ahead in the 76th minute with a powerful header, but Jose Luis Morales kept up his scoring run with his sixth goal in two weeks to make it 1-1 just a minute later.
It could have been worse for Sevilla after VAR ruled out Ben Brereton Diaz's header that would have given Villarreal all three points.
Osasuna and Real Sociedad shared the points in their derby, with Moi Gomez opening the scoring for the home side in the second minute, before Umar Sadiq leveled with a thundering drive into the top corner three minutes before halftime.
Las Palmas began the weekend with a 2-0 win at home to Getafe on Friday night.