Bayern held at Hamburg to open door for Dortmund
Bayern Munich dropped points for the second straight week in the Bundesliga as they were held to a 2-2 draw at Hamburg on Saturday.
Borussia Dortmund have a chance to revive a dormant title race with a win at home to bottom club Heidenheim on Sunday, which would draw them to within six points.
Hamburg had lost 17 and drawn three of their past 20 games with Bayern but put up a fight against the defending champions, taking the lead with a Fabio Vieira penalty after 32 minutes.
Bayern hit back when Harry Kane and Luis Diaz scored either side of half-time, but the hosts swiftly equalised through Luka Vuskovic.
Hamburg had chance to win it late with Manuel Neuer well outside his box, but Alphonso Davies denied Vieira and saved Bayern with a desperation clearance.
It was the first time Hamburg avoided defeat against Bayern since 2014, a run of nine straight defeats with 39 goals conceded.
Arsenal loanee Vieira tucked a penalty under Neuer's outstretched hand to give Hamburg the lead, their first goal against Bayern in seven matches dating back to 2016.
Kane brought the visitors level just before the break, scoring on the spin from a rebound with a classic poacher's finish.
Half-time substitute Diaz gave Bayern the lead 90 seconds into the second period, guiding a Michael Olise pass in from close range.
The visitors levelled minutes later though as Vuskovic headed a cross past Neuer and just inside the post, before holding on to nab a valuable point.
Andrej Kramaric scored twice as Hoffenheim extended their strong run with a 3-1 home win over Union Berlin.
Hoffenheim narrowly escaped relegation last season but have picked up 19 of a possible 21 points in their past seven games to move level with second-placed Dortmund.
Bayern host Hoffenheim next Sunday and Kramaric told Sky Germany: "We're up for it -- it'll be a great test. If we keep up the performances we've had in the past few weeks, we won't leave empty-handed."
Union's rise to mid-table this season has been driven by steely defence but the Berlin club's resistance was broken when defender Leopold Querfeld clipped Hoffenheim's Fisnik Asllani in the box.
Kramaric converted from the spot with a cool chipped finish. The Croatia forward headed in a second from a Bazoumana Toure cross just before half-time.
Another Toure cross enabled the hosts to seal victory just after the break, as Union's Diogo Leite scuffed the ball into his own net with Kramaric lurking.
- Leverkusen ease past Frankfurt -
Bayer Leverkusen moved a point behind fourth-placed Leipzig with a 3-1 win at free-falling Eintracht Frankfurt, without a coach until Albert Riera takes over next week. The hosts finished with 10 men.
Arthur gave Leverkusen the lead, his first Bundesliga goal, after a clever Alejandro Grimaldo backheel.
Malik Tillman made the most of some poor positioning from Frankfurt goalkeeper Kaua Santos moments later to double the lead.
A Robin Koch goal just after half-time gave Frankfurt a glimmer of hope, but Ellyes Skhiri picked up two yellow cards in three second-half minutes.
Frankfurt have won just one of their past 13 games in all competitions. On Friday, Riera was named coach in a surprise appointment, but the former Spain international, currently with Slovenian side Celje, will not arrive until Monday.
"We'll be starting from zero," Frankfurt's Mario Goetze said, "step by step."
Elsewhere, RB Leipzig became the latest victim of resurgent Mainz, going down 2-1 at home after taking the lead.
Conrad Harder put the hosts in front but Leipzig captain David Raum gave away a penalty for the second time in two games, allowing Germany midfielder Nadiem Amiri to level from the spot.
Silas gave Mainz the lead early in the second half. Mainz have lost just once in nine games since Urs Fischer took over as coach in December.
Elsewhere, Augsburg beat St Pauli 2-1 and Werder Bremen's Keke Topp snatched a point with a splendid late goal at home in a 1-1 draw with Borussia Moenchengladbach.
Y.Torres--CT