Bayer Leverkusen came from behind to beat St. Pauli 2-1 on Sunday and move within five points of Bundesliga leader Borussia Dortmund, with five rounds remaining in the season.
Substitute Lars Bender, whose brother Sven plays for Dortmund, scored the winner in the 77th minute.
"Before the match, everyone said this should be a routine win, but we saw how difficult it was. St. Pauli did everything right," Leverkusen coach Jupp Heynckes said.
In the earlier game Sunday, Marcus Reus scored twice as last-place Borussia Moenchengladbach revived its hopes of avoiding relegation by crushing Cologne 5-1.
Leverkusen wasted a half-dozen good chances before falling behind to a goal by Charles Takyi in the 58th minute from a perfectly executed counterattack.
Florian Bruns broke through on the right and swung in a cross for Takyi to knock the ball into the net.
Leverkusen equalized in the 66th, Gonzalo Castro putting through substitute Eren Derdiyok, who played the ball back for Stefan Kiessling's first-time shot to find the target.
Michael Ballack played well, he sent a powerful shot wide and then had a free kick saved.
But Bender secured Leverkusen's fifth straight win when he beat the offside trap and slotted the ball underneath goalkeeper Benedikt Pliquett.
Leverkusen next plays Bayern Munich, Heynckes' team next season. Bayern fired coach Louis van Gaal on Sunday. Heynckes' move to Bayern was agreed before the dismissal.
Moenchengladbach remained last, two points behind St. Pauli.
The home side scored three goals during a 10-minute spell in the first half and completed the rout by scoring twice in two minutes after the break.
Juan Arango opened the scoring in the 29th minute and Reus followed up with goals in the 34th and 39th.
Milivoje Novakovic pulled a goal back for Cologne in the 50th, but Filip Daems converted a penalty in the 65th and Havard Nordtveit capitalized on some terrible defending to score the fifth in the 67th.