Champions Bayern Munich roared back from two goals down to beat Borussia Dortmund 4-2 on Saturday with a hat trick from Robert Lewandowski, to remain two points clear at the top of the Bundesliga.
Dortmund, who had won its four previous games in all competitions, scored twice with Erling Haaland in the opening nine minutes and Poland striker Lewandowski responded with a brace of his own in an explosive first half.
But a goal from Leon Goretzka in the 88th minute put the hosts in front and Lewandowski scored his third in the 90th to kill off the game.
"It is currently the case that if an opponent gets a chance, we get punished," said Bayern coach Hansi Flick. "But we shook ourselves after 2-0 and showed that we won't have it taken away from us.
"We deserved the win in the end because we dominated the game for an hour. The team showed it was awake after going 2-0 down."
Lewandowski, chasing Gerd Mueller's legendary record of 40 league goals in one season dating back from the 1971-72 campaign, now has 31 goals with 10 league games remaining.
Bayern, hunting a record-extending ninth consecutive league title, is on 55 points, two ahead of RB Leipzig, winner 3-0 at Freiburg. Dortmund dropped to sixth on 39.
The league's two best attacks lived up to their reputation in Der Klassiker with a stunning four-goal first-half performance in an empty Allianz Arena.
In a flawless start, Dortmund, who had won the last four games in all competitions, were 2-0 up by the ninth minute with Haaland thundering in a shot and tapping in a cutback to take his league tally to 19 goals.
Bayern, however, quickly worked its way back, took control and struck twice with Lewandowski in the 26th minute and a 44th-minute penalty for a foul on Kingsley Coman, to send the teams level at halftime.
"We started well but we should have kept it up," said Dortmund's Emre Can. "I am very disappointed. At some point, we did not play football anymore. It was not good enough today."
Both took their foot off the gas after the break and Haaland had to be taken off injured on the hour with the visitors looking content with the draw, unwilling to risk too much in search of a winner.
Bayern pushed for a third goal and had their chances before Goretzka volleyed in a bad clearance to turn the game around and Lewandowski capped a superb performance, rifling in from the edge of the box.
Leicester City climbed back into second place in the Premier League as it came from a goal down to win 2-1 at Brighton & Hove Albion thanks to a late goal by Daniel Amartey on Saturday.
Adam Lallana scored his first goal for Brighton in the 10th minute and was close to adding a second when he hit the post with a header before halftime.
Brighton also had a goal disallowed in the first half but Leicester improved after the break and Kelechi Iheanacho equalized in the 62nd minute.
The hosts looked nervy late on and Amartey stooped to head in from close range in the 88th minute.
It was tough on Brighton, who remained down in 16th position, three points above the relegation zone after three narrow defeats in a row.
Leicester moved two points ahead of Manchester United into second place with 53 points from 28 games.
The Foxes six points ahead of fourth-placed Chelsea and seven ahead of fifth-placed Everton with those two meeting at Stamford Bridge on Monday.
Lionel Messi provided two assists as Barcelona overcame a difficult trip to Osasuna to win 2-0 and move to within two points of La Liga leader Atletico Madrid.
Messi helped Barca take the lead on the half-hour mark when he carved open Osasuna's defense with a superb cross-field ball to Jordi Alba, who controlled before blasting into the roof of the net.
He then laid the ball off when 18-year-old midfielder Ilaix Moriba struck in the 83rd minute, producing a confident finish inside the post from outside the area to score his first goal for the club in only his third league appearance.
Barca stays second but moved on to 56 points after 26 games, two points behind Atletico Madrid who have played 24 matches and host third-placed Real Madrid on Sunday. Osasuna is 13th on 28.