Real Madrid produced a sensational recovery from 3-1 down to score three late goals and snatch a superb Champions League win over Roma on Jose Mourinho's return to the Stadio Olimpico.
Mourinho guided Roma to the Conference League title in 2021-22 and then to the Europa League final the following season, with the home fans producing a number of banners celebrating their former boss.
But Mourinho's current side Real were heading for defeat and were two goals behind in the 83rd minute.
However, substitutes Carlos Espi and Endrick scored to make it 3-3 before Antonio Rudiger converted a dramatic close-range 90th-minute winner.
Mourinho's changes proved crucial as Roma could not cope with corners from another substitute, Arda Guler, and crumbled late on.
Espi scored five minutes after coming on when he converted a rebound after Endrick's header had been parried. The Brazil forwarded then headed in from Guler's corner before Rudiger steered in another Guler set-piece with a close-range volley.
It was a remarkable finish to a thrilling match.
The hosts had taken a deserved lead in the 20th minute when Marten de Roon produced a first-time 20-yard shot from Matias Soule's pass. However, Real were only behind for five minutes.
Kylian Mbappe, making his 100th Champions League appearance, saw his strike take a deflection off Gianluca Mancini with the ball looping up and over goalkeeper Pierluigi Gollini for his 72nd goal in the competition.