Real Madrid scored twice in the final 10 minutes to avoid an embarrassing LaLiga home defeat to Elche.
The Valencians were on course for a memorable win at the Bernabeu as they led 2-0 after 82 minutes, with goals from Lucas Boye and Pere Milla.
But Luka Modric got his side back in it from the spot and then Eder Militao made it 2-2 in the second minute of time added on as Carlo Ancellotti’s men extended their lead at the summit to four points.
Barcelona also needed late action as Frenkie De Jong’s 87th-minute strike earned a 1-0 win at Alaves.
Xavi’s side dominated the match but looked like being held until the Dutchman converted from close range near the end.
Serie A – Napoli close gap on Inter
Napoli kept pace with Serie A leaders Inter Milan after thrashing lowly local rivals Salernitana 4-1, recording their third league victory in a row.
The hosts started brightly and raced into a 17th-minute lead through Juan Jesus, the defender’s goal given after a VAR intervention, with the on-field referee having originally ruled it out for handball.
Against the run of play, with their only shot at goal in the match, Salernitana levelled through Federico Bonazzoli in the 33rd minute.
That was only a brief reprieve for the visitors from across the Gulf of Naples, however, as Dries Mertens put Napoli back in front from the penalty spot in first-half stoppage time before Amir Rahmani tapped home four minutes after the break to make it 3-1.
Salernitana’s afternoon went from bad to worse moments later as Frederic Veseli was sent off for picking up a second yellow card when penalised for handball in the penalty area.
Substitute Lorenzo Insigne scored from the spot to seal a comfortable victory for Napoli who climbed to second on 49 points, one clear of AC Milan, who play Juventus later on Sunday, and four adrift of leaders Inter.
Roma secured a 4-2 victory at Empoli thanks to four goals in 13 first-half minutes, including a double from England striker Tammy Abraham.
The hosts started brightly and created several early openings, but they fell apart after Abraham’s swift turn and shot broke the deadlock in the 24th minute.
Abraham squeezed the ball home in the 33rd minute from close range to double his side’s lead, before January signing Sergio Oliveira scored his second goal since joining on loan from Porto two minutes later to put Roma in command.
Jose Mourinho’s team were not done there, as they added another in the 37th minute, with Nicolo Zaniolo converting at the end of a swift counter-attack from the visitors.
In cruise control, Roma were given a fright in the second half as goals from Andrea Pinamonti and Nedim Bajrami put Empoli in with a chance of an improbable comeback, but Mourinho’s side held on for the three points.
Fiorentina drew 1-1 with Cagliari while Torino and Sassuolo also played out a 1-1 draw. Spezia were 1-0 winners against Sampdoria.
Bundesliga – Bayern restore lead at the top
Bayern Munich cruised to 4-1 victory at Hertha Berlin, scoring twice in each half, to stay firmly in control of the title race and restore their six-point lead at the top.
Corentin Tolisso, who had seen a superb volley ruled as offside in the second minute, did everything right in the 25th, connecting with a Kingsley Coman cross to head the champions into the lead.
Thomas Muller doubled it on the stroke of half-time, stretching to flick in a Joshua Kimmich free-kick as Bayern cruised towards their seventh league win from their last eight matches.
A mistake by Hertha ‘keeper Alexander Schwolow allowed Leroy Sane to slip in and score Bayern’s third goal of the afternoon in the 75th minute and Serge Gnabry made it 4-0 four minutes later, cutting in from the right to slip the ball through the ‘keeper’s legs.
The hosts, who have won just one of their last five league matches and remained in 13th place, got a consolation goal through Jurgen Ekkelenkamp 10 minutes from the end.
Bayern, who have now scored at least once in a record 67 consecutive Bundesliga matches, are on 49 points, six ahead of second-placed Borussia Dortmund, who beat Hoffenheim 3-2 on Saturday.
RB Leipzig’s recovery in the Bundesliga continued with a 2-0 win over Wolfsburg, marking their third victory in a row.
Ligue 1 – PSG preserve 11-point lead
Paris Saint-Germain enjoyed a comfortable 4-0 victory over Reims to maintain an 11-point lead at the top of Ligue 1.
Goals from Marco Verratti, Sergio Ramos and Danilo Pereira and a Wout Faes own goal made it plain sailing for Mauricio Pochettino’s side.
Nice reclaimed second spot with a 2-0 win over Metz, with second-half goals from Khephren Thuram and Amine Gouiri.
Strasbourg were beaten 4-3 in a thrilling game with Bordeaux, while Nantes beat Lorient 4-2.