By Neil Johnston BBC Sport
Cristiano Ronaldo scored two spectacular goals as Real Madrid swept aside Osasuna to move three points behind La Liga leaders Atletico Madrid.
Ronaldo opened the scoring with an unstoppable 25-yard shot before doubling the lead with an equally special finish from the same distance.
Headers by Sergio Ramos and substitute Daniel Carvajal sealed the points.
Real, who move up to second in the table, have won their last four league games, scoring 17 without conceding.
This was every bit as emphatic as the score suggests, with Carlo Ancelotti’s team hitting form at the right time.
Ronaldo joins 30-goal club
Cristiano Ronaldo is the second player to score 30-plus goals in one of the top five European leagues this season, after Liverpool’s Luis Suarez
After losing back-to-back league games last month for the first time in five years, Real have bounced back to take 12 points from the last four games.
However they still need Atletico to slip up twice in their final four games – because of their head-to-head record against their city rivals – including the final-day trip to fellow title contenders Barcelona.
Los Blancos head to Germany to face Bayern Munich, who they lead 1-0 from the first leg, on Tuesday still on course for a domestic and European treble.
They are 90 minutes away from a first Champions League final for 12 years and, with four games remaining, are still fighting for their first La Liga title since 2011-12.
Real paraded the Copa del Rey, which they won earlier this month after beating Barcelona, ahead of kick-off before showing their fans that they are determined to add more silverware to the Bernabeu trophy cabinet.