Bayern Munich landed the first significant blow in this season's Bundesliga title race as they rallied to beat Borussia Dortmund 3-2 away in Der Klassiker.
Last season's champions were tied with opponents Dortmund heading into the weekend but forged a three-point gap - two clear of Saturday's early second-placed winners RB Leipzig - despite trailing to an effort from Marco Reus.
Bayern had lost Joshua Kimmich to injury with the game still goalless yet soon took the game away from BVB in clinical fashion either side of half-time at Signal Iduna Park.
David Alaba - the subject of some scrutiny amid failed contract negotiations - provided a swift riposte to the breakthrough goal, before Robert Lewandowski's 19th career strike against former club Dortmund secured a lead that substitute Leroy Sane stretched 10 minutes from time.
Erling Haaland belatedly found his shooting boots to set up a tense finale and Reus blazed a glorious opportunity over, while Lewandowski saw a late second ruled out for offside in a thrilling end to the match.
Lewandowski should have had his side in front within 41 seconds, instead lashing into the side-netting, before Roman Burki made an excellent two-handed save from Leon Goretzka's close-range header.
Haaland ran onto Gio Reyna's pass but directed a delicate finish across the face of goal and then looked to have been punished for his profligacy as Lewandowski took his second opportunity, only for a VAR review to highlight a marginal offside.
After Kimmich hobbled off - hurt in a lunge on Haaland - Reus hit Dortmund's 45th-minute opener, turning a smart effort past Manuel Neuer at the near post from Raphael Guerreiro's cutback.
But there was still time for Bayern to restore parity before the break as a set-piece routine allowed Alaba to shoot from 20 yards and earn a decisive deflection off Thomas Meunier.
They then needed less than three minutes of the second half to lead as Lewandowski stooped to meet Lucas Hernandez's cross and head inside the right-hand post, although the same section of the goal frame then denied Kingsley Coman a quick third.
Ex-Schalke winger Sane arrowed in a fine low strike on the break to seemingly settle matters, but Haaland kept Hansi Flick's men on their toes as he stayed onside to round Neuer and lash into the net, a feat Reus could not repeat when he thundered his volley over.
That would prove Dortmund's last big chance, even as another VAR review robbed Lewandowski of a stoppage-time second.
What does it mean? Bayern do just enough again
This was the sides' third meeting in 2020 and the third that has gone to the wire. But as long as Dortmund's title hopes depend on taking points off Bayern, a close-fought defeat counts for little.
Kimmich struck the winning goals in the league in May and the DFL-Supercup in September, yet Flick's side got the job done in his absence here, claiming a seventh win in eight against BVB in the Bundesliga.
Lewy loves this fixture
Lewandowski looks unlikely to loosen his hold on former club Dortmund any time soon. The striker had to wait until the second half to get his goal, but that was his 13th in his past eight Bundesliga games against BVB. An assist for Sane's third was just as crucial.
Haaland hesitance costly
Haaland made the scoresheet, but he should have helped himself to more. Indeed, while a Lewandowski goal appeared inevitable, Dortmund's main man repeatedly made the wrong call in promising positions.
Quick enough to get in behind the Bayern defence time and again, Haaland too often looked for a team-mate but completed only six passes in the Bayern half, while the goal was the only one of his four shots to hit the target.
The international break provides some respite after this breathless affair. Dortmund are then at Hertha Berlin in a fortnight, while Bayern host Werder Bremen.