The visitors dominated early on but took their foot off the accelerator once they went two goals ahead, allowing the Bianconeri to seal an unlikely tie.
Paulo Dybala and Stefano Sturaro both scored their maiden Champions League goals as Juventus recovered from a 2-0 deficit to secure a 2-2 draw with Bayern Munich in a see-saw first leg of their last-16 tie.
The visitors looked to be coasting to a fourth straight win over their Italian opponents when they went two goals up, Thomas Muller getting the first of them on 43 minutes when converting a cutback from Douglas Costa.
A curling strike from Arjen Robben 10 minutes after the break was no more than Bayern deserved for their dominance.
Yet Juventus produced a dramatic recovery in the final half-hour, starting with Dybala halving the deficit with a cool finish following a defensive mistake by the German side.
The comeback was complete when substitute Sturaro scored just seven minutes after coming on, the midfielder turning home fellow replacement Alvaro Morata's header across the face of goal.
Trending this week