Juventus battled past 10-man Inter Milan with two late goals giving the champions a 3-2 win in the San Siro on Saturday to reopen a four-point lead over Napoli at the top of the Serie A table.
Inter looked as if they would pull off an unlikely victory as the hosts led until three minutes from the whistle despite playing more than 70 minutes a man down after Matias Vecino was sent off.
But Milan Skriniar turned the ball into his own net after 87 minutes with Gonzalo Higuain heading in the winner two minutes later.
“I have to congratulate the lads, it was an important step towards the Scudetto,” said Juventus coach Massimiliano Allegri.
“It was a beautiful night of football between two teams who had to win.
“Winning at the San Siro is very complicated, they did very well with 10 men. We know that to win the championship we have to win all of our games.”
Juve’s lead had been cut to one point after their defeat by Napoli in Turin last week.
Maurizio Sarri’s second-placed Napoli travel to Fiorentina on Sunday bidding to match the champions and keep their push for a third title after 1987 and 1990 alive.
Saturday’s defeat damages Inter’s hopes of Champions League football next season as they stay fifth behind Roma and Lazio with just three games to play.
“It will be hard to put this defeat behind us,” said Inter coach Luciano Spalletti. “This match meant a huge amount to us and the team deserved a different result.
“We used up a lot of energy being a man down and in the final moments it hurt us.”
Douglas Costa fired in the opener for Juventus after 13 minutes following a cross from Juan Cuadrado. Minutes later Vecino was shown red for a foul on Mario Mandzukic.
Juventus thought they had scored a second just before half-time but the video assistant referee (VAR) showed Blaise Matuidi was offside when he found the net.
Mauro Icardi headed in the equaliser for Inter seven minutes after the break for his 27th goal this season, and the hosts took the lead when the ball bounced in off Juventus defender Andrea Barzagli.
But in a late flurry a Cuadrado shot across goal took a deflection off Skriniar and Higuain headed in from close range off a Paulo Dybala free-kick.
In a bizarre finish, Allegri was sent to the stands for coming onto the pitch to celebrate.
“It looked as if it was over, like against Napoli it looked as if it was going to end in a draw and we lost,” Higuain said in reference to last week’s 1-0 loss to second-placed Napoli.
“It’s a very important win and a great confidence booster.”
Roma warm up for Liverpool
Earlier, 10-man Roma warmed-up for next week’s must-win Champions League clash with Liverpool by easing to a 4-1 win over struggling Chievo to consolidate third place.
Eusebio Di Francesco’s side are three points ahead of Lazio, who play Torino on Sunday, with Inter staying a further point back in fifth.
Edin Dzeko scored in either half, with Patrik Schick and Stephan El Shaarawy also on target as Roma overran the side from Verona despite being a man down after Juan Jesus saw red 10 minutes into the second half.
Roma next face Liverpool in the Stadio Olimpico on Wednesday night (at 1:45am Cambodian time), where they have to overturn a 5-2 first-leg deficit to advance to the final.
“We have to recover our physical and mental energy, leave the pitch on Wednesday knowing we’ve done all we possibly could,” Di Francesco said.
“We’ve proved in the past that we can achieve great results in the Champions League, so we must all believe.”
Roma took the lead when Radja Nainggolan crossed to Schick after nine minutes, with Dzeko volleying in a second five minutes before the break off a Aleksandar Kolarov centre.
The hosts dominated even after Brazilian defender Juan Jesus was sent off for fouling Inglese and Alisson saved the resulting penalty, with El Shaarawy and Dzeko adding two more within 10 minutes.
Inglese headed in a late consolation goal for Chievo, but they remain two points above the drop zone.