Bayern Munich were crowned Bundesliga champions for the 10th consecutive season on Saturday after a 3-1 home win over second-placed Borussia Dortmund.
First-half goals by Serge Gnabry and Robert Lewandowski put Bayern in control at a sold-out Allianz Arena before Emre Can converted a penalty after the break for Dortmund.
But teenager Jamal Musiala fired in a late goal to spark early celebrations in the home crowd.
This is the first time a club has won 10 straight titles in one of Europe’s top five leagues.
The Bavarian giants’ eighth successive win over Dortmund leaves Bayern an unassailable 12 points clear with three games left.
Bayern dominated the opening half and Gnabry fired a magnificent volley into the top corner from the edge of the box to give them a 15th-minute lead.
Gnabry had a second effort disallowed before Lewandowski doubled the advantage 11 minutes before half-time.
It was the Poland striker’s 27th goal in 26 matches against Dortmund, who he left for Bayern in 2014.
Dortmund responded early in the second half as Can converted a penalty after Marco Reus was brought down in the area.
The visitors had their appeals for another spot-kick waved away with 30 minutes left when Lucas Hernandez brought Jude Bellingham down in the area.
Lewandowski won the battle of the Bundesliga’s star strikers as Erling Haaland, who has been linked with big-money move to Manchester City, failed to score despite forcing Bayern goalkeeper Manuel Neuer into two late saves.
Musiala put the result beyond doubt when he slotted home seconds after his initial shot was saved by Dortmund keeper Marwin Hitz.
Late Union goals stun Leipzig
Earlier, Union Berlin scored two late goals to poach a 2-1 win at RB Leipzig, which kept alive their Champions League qualification hopes.
Bayer Leverkusen thumped bottom club Greuther Fuerth 4-1 to take third place from Leipzig and move three points clear of fifth-placed Freiburg in the race for the top four.
Freiburg missed the chance to draw level on points with Leipzig, conceding a late equaliser in a 3-3 draw with Borussia Moenchengladbach.
Union are just two points further back in sixth, with five clubs, including seventh-placed Cologne, separated by just six points with three games remaining in the battle to reach next season’s Champions League group stage.
Yussuf Poulsen put Leipzig ahead early in the second half to put the hosts on course for their second win in four days over Union, who they beat 2-1 in the German Cup semi-finals on Wednesday.
However, Union avenged the cup defeat as substitutes Sven Michel and then Kevin Behrens scored in the 86th and 88th minutes.
The defeat ended Leipzig’s unbeaten run of 15 games in all competitions, ahead of their Europa League semi-final, first leg at home to Rangers on Thursday.
Union are bidding to reach the Champions League for the first time in just their third season since being promoted to the Bundesliga.
Freiburg, also hoping for a maiden appearance in Europe’s premier competition, looked set to pile the pressure on Leipzig as they fought back from 2-0 down at half-time to lead Gladbach.
But Lars Stindl struck for the away side in the third minute of injury time.
Fuerth were finally relegated after their loss to Leverkusen, having been last in the table since September.
Eintracht Frankfurt, who visit West Ham on Thursday in their Europa League semi-final first leg, conceded a late equaliser to draw 2-2 at home to Hoffenheim.