Mario Mandzukic scored a late header to hand Juventus a precious 2-1 win over Sporting CP in a hard-fought Champions League clash at the Allianz Stadium.
The hosts squandered a number of excellent opportunities in a dominant opening half, but Croatian striker Mandzukic stepped up in the 84th minute to ensure that the Bianconeri were not made to pay for their profligacy.
Sporting had taken an early lead as the unfortunate Alex Sandro put through his own net, but Juve responded brightly.
Paulo Dybala, Sami Khedira and Mandzukic all missed chances to score before Miralem Pjanic did finally pull them level with a superb free-kick in the 29th minute.
There was little to get excited about in a dire second half until Mandzukic's late intervention secured the Serie A champions first win in three matches.
The two sides meet again in Portugal in a fortnight with Massimiliano Allegri's side knowing a win could guarantee them a spot in the last 16.
Though the hosts would end the game strongest, Sporting started in composed fashion and got their reward in slapstick style after just 12 minutes.
Gelson Martins' low effort was thwarted by Gianluigi Buffon, but the ball bounced off the onrushing Alex Sandro and rolled almost apologetically into the net to hand the visitors a surprise lead.
The goal sparked the hosts into life and Khedira was denied a leveller soon after as Rui Patricio got down well to keep out his half-volley from the edge of the penalty area, before a stretching Jeremy Mathieu kept Mandzukic's prodded effort out.
Moments after Dybala struck wide, Juventus scored the equaliser their relentless pressure deserved.
The outcome never looked in doubt as Pjanic stood over the ball 20 yards out and the Bosnian duly clipped a wonderful free-kick over the wall and into Patricio's right-hand corner.
Mandzukic came agonisingly close to scoring a second just a minute later, but was once again denied by some resolute Sporting defending - Cristiano Piccini this time getting enough of his body in the way to divert the Croatian's low effort agonisingly past the post.
Gonzalo Higuain's fierce strike was tipped onto the post by Patricio shortly before the break, as Allegri's side finished the half in dominant fashion.
The high pressing that was a feature of Juve's first-half display was absent in the early stages of the second period as Sporting found a way to combat their rampant attack.
Mandzukic saw a downward header kept out by Patricio in the 70th minute, but the powerful forward was to have his moment in the spotlight as hope began to run out.
Substitute Douglas Costa's teasing cross was met by the 31-year-old at the back post, where he thumped a header home to hand Juve their second Champions League win of the campaign.
KEY OPTA STATS
- Juventus are unbeaten in their last 21 Champions League home games (W14 D7), their longest streak in the competition.
- Mario Mandzukic has scored in each of his last four Champions League appearances, his best streak in this competition.
- The last time Juventus were behind in a Champions League home game was in February 2016, against Bayern Munchen.
- Miralem Pjanic has scored his 10th goal for Juventus in all competitions – four of which were free-kicks.
- Since his Champions League debut in February 2009, Pjanic has scored three free-kick goals: fewer only than Cristiano Ronaldo and Willian over this period.
|City style suits me and thrills neutrals, says De Bruyne|
|Guardiola ready to risk Kompany for Man City after Stones´ injury|
|Stones can bounce back stronger - Kompany|
|In-form Chelsea have regained hunger - Conte|
|Inter 2 Atalanta 0: Icardi brace sends Spalletti´s side second|
|Giampaolo promises more from ´extraordinary´ Sampdoria|
|Record-breaking Valencia tee up blockbuster Barcelona clash|
|Poor West Ham performance at Watford was to be expected - Moyes|
|We will see what happens in the future - Silva non-committal on Everton rumours|
|Stones can bounce back stronger - Kompany|
|Football needs to do more to combat racism - Boateng|
|Watford 2 West Ham 0: Misery for Moyes on Hammers bow|
|Unlucky 13: Benevento suffer record-breaking defeat|
|Juventus lost composure amid Sampdoria onslaught - Allegri|
|Sampdoria 3 Juventus 2: Champions slip further off the pace after thriller|
|Coleman confirmed as Sunderland boss|
|I was just injured - Belgium´s Nainggolan blasts ´stupid´ claims of feigned ailment|
|Leeds United 2 Middlesbrough 1: Losing streak snapped to ease pressure on Christiansen|
|Hughes backs Giggs for Wales job|
|Madrid confirm Ramos´ broken nose after derby clash|
|Kane wants to retire with Tottenham|
|Mourinho: Man United lacked balance with attacking line-up|
|Pastore not considering PSG exit to help World Cup chances|
|Wenger, Ozil & Sanchez uncertainty affecting Arsenal, says Seaman|
|Silva not surprised by Chelsea, Spurs interest in Richarlison|
|Ancelotti, Conte, Allegri on shortlist to replace Ventura|
|Perth Glory 0 Melbourne Victory 2: Visitors claim first A-League win of season|
|Marcelo unaware of Ramos-Ronaldo rift at Real Madrid|
|Neymar will take PSG´s next penalty - Cavani|
|Ranieri would consider coaching Italy|
|Postecoglou set for decision on Socceroos future|
|Championship Review: Millwall deny sloppy Sunderland, Wolves back on top|
|Simeone rallies around under-fire Griezmann|
|It´s a growth process - Montella optimistic despite Napoli loss|
|Spalletti happy at Inter, tips Ancelotti for Italy job|
|Sarri defends sacked Ventura over Insigne´s Italy snub|
|Los Blank-os! Misfiring Real Madrid break new ground under Zidane|
|Zidane upbeat despite derby stalemate|
|Zidane unsure on Ramos absence with suspected broken nose|
|Mind the gap! Real Madrid must make history to retain LaLiga title|
|Napoli 2 AC Milan 1: Insigne stars after Italy snub as leaders move four points clear|
|Atletico Madrid 0 Real Madrid 0: Defences dominate in historic derby|
|Pjaca scores winner for Juventus Primavera on return from injury|
|Lions don´t recover like humans! - Ibrahimovic and Pogba thrilled to be back|
|Pogba was different class - Mourinho praises midfielder after impressive comeback|
|Competition is good – PSG boss Emery explains benching Mbappe|
|Klopp apologises after Moreno misses birth of child|
|Manchester United 4 Newcastle United 1: Pogba shines as Ibrahimovic makes his return|
|Hodgson accuses Niasse of diving to win Everton penalty|
|Roma 2 Lazio 1: Nainggolan stunner proves decisive|
|´Why not?´ - Hazard believes Chelsea can catch City|
|Bournemouth hat-trick hero Wilson: I need to be selfish|
|Valverde admits scoreline in Leganes win was ´excessive´|
|Pulis leaves uncertain future to West Brom board|
|Results not far away for struggling Swansea, claims Clement|
|Heynckes proud of 500 Bundesliga wins as Bayern go six points clear|
|Al-Hilal 1 Urawa Red Diamonds 1: Rafael earns valuable first-leg draw|
|Stones could be set for six-week spell on sidelines|
|Paris Saint-Germain 4 Nantes 1: Cavani double puts hosts six clear|
|Guardiola delighted to maintain rhythm after international break|
|Woeful Sunderland set new record ahead of expected Coleman appointment|
|Suarez unmoved despite ending Barca drought|
|Leganes 0 Barcelona 3: Scruffy Suarez double ends goal drought|
|Crystal Palace 2 Everton 2: Niasse equaliser boosts Unsworth´s case|
|Heynckes reaches record 500th Bundesliga win|
|Bournemouth 4 Huddersfield Town 0: Hat-trick hero Wilson stars for 10-man Cherries|
|Burnley 2 Swansea City 0: Old boy Cork stars as Dyche´s men win again|
|Liverpool 3 Southampton 0: Record-breaking Salah blows Saints away|
|Leicester City 0 Manchester City 2: Jesus & De Bruyne on target as Guardiola´s title tilt continues|
|West Brom 0 Chelsea 4: Hazard leads rampant champions in piling pressure on Pulis|
|They love the club - Wenger hopeful over Ozil, Sanchez deals|
|Bayern Munich 3 Augsburg 0: Lewandowski double sends leaders six points clear|
|Wenger hails tenacious Ozil after derby delight|
|Lacazette and Sanchez are always dangerous - Ozil|
|Pochettino fumes over refereeing decisions after derby defeat|
|I´m happy at Juventus - Allegri rejects Italy speculation|
|Lamela returns from injury for Tottenham U23s|
|Arsenal 2 Tottenham 0: Ozil and Sanchez come up trumps for Wenger|
|Kimmich: Working with Guardiola was incredible|
|Bale thanks Coleman after Wales coach steps down|
|Kane & Alli fit for Spurs at Arsenal, Lacazette starts|
|Sydney leapfrog slapstick Jets at A-League summit|
|Christensen guides the way for Loftus-Cheek & Abraham at Chelsea|
|Mertens: Sarri´s tactics give Napoli 12 men|
|Aubameyang back in Dortmund fold pre-Spurs|
|Bosz laments ´ridiculous´ goals|
|Madrid have best kids stockpiled – Simeone|
|Guardiola backs Stones to get even better|
|Ibrahimovic will start with bench role, says Mourinho|
|Injections to play a friendly – Mourinho slams England over Jones handling|
|Championship Review: Sheffield United go top|
|Schurrle: Dortmund couldn´t deal with Stuttgart counter-attacks|