Josip Stanisic, Alejandro Grimaldo and Jeremie Frimpong scored the goals as Bayer Leverkusen defeated Bayern Munich in Saturday's top-of-the-table clash.
Bayern started the match on the front foot, pressing aggressively to take control of the game, but without creating any clear-cut chances, with the closest they came being a Leon Goretzka shot that sailed over.
As the first half progressed, Leverkusen ate their way into the game and began to play their way out of the pressure.
The home side then drew first blood on 18 minutes when Robert Andrich raced down the left and crossed for Bayern loanee Josip Stanisic, who popped up behind Sacha Boey to score against his parent club.
Leverkusen went close again five minutes later when a lifted ball found Nathan Tella, whose first-time shot forced a save from Manuel Neuer, and they continued to dominate as the game went into the break.
As the second half progressed, Bayern coach Thomas Tuchel brought on Joshua Kimmich, Thomas Muller and Mathys Tel in an attempt to change the game, but Bayern continued to struggle to create clear-cut chances.
Instead, Leverkusen hit the champions on the counter deep into stoppage time. After Manuel Neuer moved up the pitch for a corner, Leverkusen cleared the ball and released Jeremie Frimpong, who used his pace to get closer to the Bayern goal before firing the ball into an empty net.
The win extended Leverkusen's unbeaten run in all competitions to 31 matches and moved them five points clear of Bayern Munich at the top of the table.