Bayer Leverkusen came from behind to keep their Bundesliga title hopes alive with a vital win over struggling St Pauli.
Charles Takyi gave the visitors the lead in the 57th minute, but Stefan Kiessling deservedly levelled nine minutes later.
Lars Bender earned Leverkusen the win with 13 minutes to go to move them within five points of league leaders Borussia Dortmund with five games of the season remaining.
Michael Ballack squandered the first chance of the game in the 12th minute, placing his effort too close to St Pauli goalkeeper Benedikt Pliquett.
Arturo Vidal missed an even easier chance in the 38th minute when he was given time and room to shoot on the edge of the six-yard box after being picked out by Tranquillo Barnetta, but he did not even find the target.
St Pauli took the lead against the run of play when Florian Bruns' cross was met by Takyi at the near post and he managed to divert the ball beyond the reach of Fabian Giefer into the far corner.
The goal stung Leverkusen and they responded immediately.
Sidney Sam was rightly adjudged to be offside from Barnetta's pass when he fired his shot in off the underside of the crossbar in the 61st minute.
Kiessling levelled five minutes later, though, rounding off an excellent team move involving Gonzalo Castro and Eren Derdiyok, who ripped the St Pauli defence apart.
Ballack got closer to scoring with two shots, the first just missing the post and the second pushed away by Pliquett, before Bender put the home side in front in the 77th minute.
His shot wriggled just under Pliquett and trickled over the line to earn Leverkusen all three points.