Lionel Messi scored his 50th career hat trick as Barcelona twice came from behind to defeat a spirited Sevilla side 4-2 at the Ramon Sanchez Pizjuan.
Messi twice canceled out Jesus Navas and Gabriel Marchado before sealing his treble on 85 minutes. Luis Suarez added a fourth in injury time to ensure Barca remain 7 points clear at the top of the La Liga standings. For Sevilla, they now drop into 5th.
For second placed Atletico Madrid, they were 2-0 winners over Villareal on Sunday afternoon. Diego Simone’s men who were in control from start to finish took the lead through Alvaro Morata at the half hour mark before Saul Niguez sealed victory with a second goal with two minutes of the 90 to play.
The win takes Atletico to 50 points for the season, seven behind Barcelona.
In Levante, the home side lost 2-1 against a below per Real Madrid side. Real opened the scoring on 43 minutes via a Karim Benzema penalty but Levante equalized on the hour mark off Roger Marti’s strike. Substitute Gareth Bale won the game for the visitors, converting from the spot with 13 minutes to play.
Real are still 9 points behind leaders Barca and only trail Atletico by two.
Elsewhere, Getafe moved into 4th on the table thanks to a 2-1 win over Rayo Vallecano on Saturday. Jamie Mata and Jorge Molina scored the two goals for Getafe, either side of Raul de Tomas equalizer.
In the other games, only Real Betis and Bilbao won on the past weekend. Betis defeated Valladolid 2-0 away from home while Bilbao took care of Eiber 1-0.
In Italy, Juventus continued their march towards another Serie A title, with a hard-fought 1-0 win away to Bologna.
After a frustrating first half, the Biancconeri scored the all-important goal through Paulo Dybala on 67 minutes.
The victory means Juventus remain 13 points ahead of second placed Napoli who also won on game week 25.
In their game away to Parma, Napoli were 4-0 winners. In the game, Arkadiusz Milik helped himself to his 13th and 14th goals of the season with Adam Ounas and Piotr Zielinski scoring the other two goals.
Napoli have now won 17 of their 25 game and move to 56 points for the season.
For third placed Inter Milan, they conceded a late Jordan Veratout penalty to draw 3-3 away to Fiorentina. Stefan De Vrij opened the scoring via an own goal to put the home side ahead but Matia Vecino and Mateo Politano scored in the first half to ensure Inter lead 2-1 by halftime. In the second, Inter scored again through Ivan Perisic’s penalty to go 3-1 up but conceded two late goal as Luis Murial and Veratout struck to hand the home side a point.
Inter now move to 46 points from 24 games and are now only a point above Milan who saw Krzysztof Pitek, Frank kessie and Samu Castallejo all score in the 3-0 win away to Emploi on Friday.
Elsewhere, Edin Dzeko scored twice including a winner in injury time as Roma scrapped past Frosinone away from home. Lorenzo Pellegrini scored the other goal for the Romans while Camillo Ciano and Andrea Pinamonti struck for the home side.
Sampdoria and Torino were the only other teams that won their fixtures over the weekend. Fabio Quagliarella scored the only goal as Samp defeated Cgaliari 1-0 while Armando Izzo and Iago Falque were on target in Torino’s 2-0 home win against Atalanta on Saturday.
In the French Ligue One, Kylian Mbappe continued his fine scoring form, finding the back of the net twice as runaway leaders PSG defeated Nimes 3-0 on Saturday. Christoph Nkuku scored the other goal for Tomas Tuchel’s men who now move 17 points clear at the top of the log, with a game in hand.
On the same game week, second placed Lille were held to a 1-1 draw away to stubborn Strasbourg. Lille took the lead on 43 minutes through Jonathan Ikone but were pegged back by Anthony Goncalves’s strike 22 minutes to time.
Third placed Lyon lost 2-0 away to resurgent Monaco to move 5 points behind Lille. Both goals came in the first half with Gelson Martins scoring the opener inside 16 minutes and Ronny Lopez scoring the second 11 minutes later. Monaco now moves into 16th with 25 points, 5 away from the drop zone.
Elsewhere, 10 man Marseille dropped into 10th, following a 1-1 draw away to Rennes. Benjamin Andre put Rennes ahead inside 9 minutes but his Valarie Germain pulled the visitors level 11 minutes into the second half. Marseille would later on see Jordan Amavi sent off on 90 minutes. After a while in the top 4, Rudi Garcia’s men now relinquish their spot to St. Etienne who overcame Dijon 1-0 on Friday.
Elsewhere, Reims, Nantes, Guingamp and Amiens where also winners this past weekend. Reims were 4-2 winners away to Montpellier, Guingamp defeated Angers 1-0, Nantes overcame Bourduex 1-0 while Amiens ran out 1-0 victors at home to Nice.
In Germany, Borrusia Dortmund returned to winning ways on Sunday with a hard fought 3-2 victory at home to Bayer Leverkusen. Axel Dan Zagadou scored as early as the 3oth minute to put the hosts ahead but Kavin Volland equalized for Leverkusen 7 minutes later. Jordan Sanho made it 2-1 on 38 minutes before Mario Gotze put day light between the two sides with Dortmund’s 3rd on the hour mark. Leverkusen were not done as yet with Jonathan Tah pulling one back on 75 minutes but Dortmund held on to record a first victory in four games.
The win see Lucien Favre’s side maintain their 3 point lead at the top of the standings with 54 points from 23 games.
For second placed Bayern, they were 1-0 winners at home to 10 man Hertha Berlin with Javier Martinez scoring the lone goal on 62 minutes. Berlin had karim Kekic given his marching orders with only 6 minutes to play.
As the race for European football heats up, Wolfsburg and Frankfurt all took care of business this past weekend. Wolfsburg humiliated third placed Gladbach 3-0 at the Borrusia Park while Frankfurt overcame Hannover with the same scor-line.
Elsewhere, there were also victories for Mainz, Dusseldorf and Freiburg. Mainz were 3-0 winners over Schalkh 04, Dusseldorf overcame Nuremburg 2-1 while Freiburg walloped Augsburg 5-1.