Real Madrid's Brazilian duo Eder Militao and Casemiro struck in the second half to secure a 2-0 home win over stubborn Osasuna on Saturday and keep the heat on La Liga leaders Atletico Madrid.
Defender Militao finally prised open the visitors' defence by heading home from a corner in the 76th minute for his first league goal of the season.
Midfielder Casemiro made sure of the points four minutes later with a fortuitous strike when he attempted to control a through ball from Karim Benzema and sent it trickling into the bottom corner of the net, flummoxing keeper Sergio Herrera.
The win took second-placed Real to 74 points from 34 games after Atletico had moved onto 76 by riding their luck to win 1-0 at Elche earlier on Saturday. Fellow title rivals Barcelona and Sevilla are in action on Sunday and Monday respectively.
"This was a very hard-fought victory. Our opponents defended very well and we had to keep trying until the end, we had to stay patient," said Real coach Zinedine Zidane.
"I'm so happy with the players. When your team plays well and has five chances like we had in the first half it's easy to get frustrated. But we showed patience and kept playing well."
Having stayed on Atletico's heels, Real will now turn their attention to reaching the Champions League final when they head to Chelsea in Wednesday's semi-final second leg after a 1-1 draw in the Spanish capital last week.
They may have to make do without the experience of centre back Raphael Varane, who came off at halftime with a suspected muscle injury.
Zidane left midfielders Toni Kroos and Luka Modric on the bench for the whole game and turned to reserve team player Antonio Blanco, while bringing on fellow youngsters Miguel Gutierrez and Sergio Arribas in the second half.
Eden Hazard was Real's most dangerous player in an impressive first half from the hosts, who had a slew of chances to go in front.
Osasuna keeper Sergio Herrera reacted quickly to repel a close-range shot from Hazard and moments later tipped a powerful Militao header over the bar before thwarting the Brazilian again later in the second half.
The visitors did their best to keep Real at bay while offering little in attack although they had a goal ruled out for offside by Chimy Avila just before halftime.
Osasuna also nearly benefitted from an over-hit backpass by Militao which forced Madrid keeper Thibaut Courtois to race towards his line and stop the ball.
Substitute Rodrygo nearly found a breakthrough out of nothing when he danced past a couple of visiting defenders and went for goal, pulling his shot just wide of the far post.
It took a set-piece for Real to finally take the lead, Militao meeting Isco's corner with venom to make it third time lucky and Casemiro's fortunate goal soon followed to see the home side over the line.
"We've had so many difficulties but today we've got three more points and we're going to keep fighting until the end," Zidane added.
"We know we can win (La Liga and the Champions League). I won't say that we will win them, but we're going to do everything we can to try."
Atleti ride their luck
Atletico Madrid stayed in charge of La Liga's four-way title race by earning a nerve-shredding 1-0 victory at struggling Elche on Saturday, riding their luck to the extreme when the hosts missed a penalty in stoppage time.
Marcos Llorente scored the only goal with a deflected shot in the 23rd minute but gave away the penalty in the 90th after a careless handball as Atleti defended a free kick after sitting on their slim lead rather than looking to put the game to bed.
Elche midfielder Fidel Chaves's spot kick beat goalkeeper Jan Oblak but came off the post, providing another twist in an action-packed game in which Atletico had two goals ruled out for offside and a penalty award taken away following a VAR review.
Fidel's spurned penalty threw Diego Simeone's side a lifeline in the thrilling title race while leaving Elche still 18th and in the relegation zone. They would have moved out of the drop zone if Fidel had scored from the spot.
The win took Atletico to 76 points with four games left but Real Madrid moved two points behind them by beating Osasuna 2-0. Barcelona are third on 71 points and visit Valencia on Sunday. Sevilla, on 70 points, host Athletic Bilbao on Monday.
It was the second time this season Atleti had benefitted from their opponents squandering a late penalty, with Oblak saving from Alaves' Joselu to secure a 1-0 home win in March.
It was also the second stroke of fortune in three days for Atletico, who sank to a chastening 2-1 defeat at Athletic Bilbao last week and looked set to lose top spot to Barca, who then fell to a shock 2-1 loss at home to Granada on Thursday.
Atleti visit Barca next Saturday in what could be a pivotal weekend in the title race, with Real hosting Sevilla the next day.
"Winning today was an obligation and we were able to get the job done," said Llorente.
"At this stage of the season everyone has so much at stake, whether you're fighting relegation, going for Europe or the title. Every team is playing as if their lives depend on it."
Atletico went on the attack early on against Elche and should have taken the lead after a slick move between Angel Correa and Luis Suarez, who could only find the side-netting.
Suarez did manage to put the ball in the net soon after following a move with Llorente but was left frustrated again when the goal was ruled out after a VAR review for a fractional offside.
The Uruguayan missed the target early in the second half and then had a second goal chalked off, this time for a clear offside.
Suarez was replaced by midfielder Saul late on as Simeone sought to protect Atletico's lead.
The move almost backfired when Elche's Antonio Barragan caught sight of goal from close range but volleyed just over the bar.
Fidel's spurned penalty was an even bigger let off but, somehow, Atletico remain in the box seat in the title race.
Llorente added: "I don't believe in luck. But we've got the three points which gives us huge belief for what's left to come."