MADRID: Cristiano Ronaldo’s first LaLiga goal for more than a month saw Real Madrid – al least briefly – narrow the gap on leaders Barcelona in edging struggling Malaga 3-2.

Ronaldo’s relief was clear to see when he fired in the rebound after seeing his penalty saved by Roberto 15 minutes from time. First-half goals from Karim Benzema and Casemiro had twice put the World, European and Spanish champions in front.

However, their defensive fragilities without injured captain Sergio Ramos were also exposed as Diego Rolan and Chory Castro twice levelled for Malaga, who remain in the relegation zone.

Madrid coach Zinedine Zidane said: “We are pleased with the result because the team showed character with time running out to score the third. There were plenty of good things, but also things we didn’t want to see.”

Atletico Madrid remained level on points with Real after they shrugged off a season of goalscoring woes by thrashing Levante 5-0 thanks to doubles from Antoine Griezmann and Kevin Gameiro. This was their first victory at Levante in six visits.

In Germany . . .

In Germany Schalke recovered from a four-goal deficit to deny rivals Borussia Dortmund a much-needed victory as a dramatic Ruhr derby ended in a 4-4 draw.

Pierre-Emerick Aubameyang scored one and set up another as Dortmund raced into a four-goal lead inside 25 minutes, but his dismissal with 18 minutes left contributed to an epic collapse from Peter Bosz’s men, who have taken only two points from their past six league matches.

Dortmund’s 11th-minute opener was perhaps fortunate as Aubameyang saw his initial shot saved, but bundled it in regardless as he slid towards goal. The video referee allowed it to stand despite suspicions of handball. It was 2-0 seven minutes later when Benjamin Stambouli put through his own net from Nuri Sahin’s free kick, and Aubameyang turned provider in the 20th minute with a delicious cross headed in by Mario Gotze at the far post.

Raphael Guerrero made it 4-0 after 25 minutes when a deflected ball looped up invitingly and he volleyed into the far corner. Schalke rallied in the second half as Dortmund’s defensive frailties became evident.

Guido Burgstaller headed in just after the hour mark and four minutes later Amine Harit turned in Yevhen Konoplyanka’s cross. Worries for the hosts only grew in the 72nd minute when Aubameyang, booked in the 55th minute for a foul on Naldo, was sent off after bringing down Harit.

Those worries proved justified as Daniel Caligiuri fired in Schalke’s third with four minutes left before Naldo’s header in the fourth minute of seven added on secured a point. Naby Keita fired Leipzig ahead in the 34th minute and Bernardo made sure with a header three minutes from time, lifting them two points above Schalke and within three of the leaders.

Leaders Bayern Munich suffered their first defeat since Jupp Heynckes returned as head coach when they lost 2-1 at Borussia Moenchengladbach.

Bayern had previously won all nine games since Heynckes, 72, took over for his fourth stint at the club in October in the wake of Carlo Ancelotti’s dismissal. It was an unhappy return for Heynckes to Moenchengladbach, where he spent most of his playing career and where his family home is.

A first-half penalty converted by Thorgan Hazard, after a Niklas Suele handball, put Gladbach ahead. They went into the break 2-0 up at Borussia Park when Lars Stindl’s pass was converted by Matthias Ginter to the delight of the home fans.

Bayern managed to pull a goal back when Chile international Arturo Vidal fired in a long-range shot on 74 minutes which Yann Sommer got a glove to but could not prevent from rolling into the net. This was only Bayern’s second league defeat this season.

In Italy . . .

In Italy Internazionale went top of the table with a hard-fought 3-1 victory against a resurgent Cagliari.

Buoyed since the arrival of Diego Lopez as coach and with nine points from the previous four matches, the Sardinians started confidently and it might have been a different story had they taken an early lead, but Samir Handanovic somehow clawed a volley from the unmarked Leonardo Pavoletti away from the goal-line.

A change in formation from Inter manager Luciano Spalletti, from 4-2-3-1 to 3-5-1-1, brought the opening goal against the run of play after 29 minutes. Antonio Candreva’s cross was knocked back across goal by Ivan Perisic for Mauro Icardi to tap in.

Marcelo Brozovic doubled the lead early in the second half as Inter closed in on a fifth straight league win at Cagliari. Leonardo Pavoletti reduced the deficit midway through the second half and, with their tails up, Lopez’s side once again attacked in waves. But it was to no avail as Icardi struck his 15th goal of the campaign seven minutes from time to restore the two-goal cushion and seal victory.