Second-half substitute Noah Okafor scored an 88th-minute winner as AC Milan beat eight-man Lazio in Serie A on Friday night.
The two teams looked to be heading for a goalless draw at Stadio Olimpico, but Okafor came up with a late goal to secure a 1-0 victory for the visitors.
The result has seen third-placed Milan move to within one point of second-placed Juventus in the Serie A table, while Lazio, who had Luca Pellegrini, Adam Marusic and Matteo Guendouzi all sent off, remain in eighth, four points behind sixth-placed Roma.
Lazio had the first opening of the match in the eighth minute, with Matias Vecino making contact on a flick from Felipe Anderson, but his effort flew wide of the far post.
Three minutes later, the hosts registered a shot on target, with Valentin Castellanos striking from distance after Luis Alberto's through ball was cut out, but Milan goalkeeper Mike Maignan made the save.
Lazio wanted a penalty in the 13th minute when a mix-up at the back for Milan led to Castellanos being taken out by Maignan, but the referee was happy for the play to continue.
Milan's first opportunity of the match came in the 17th minute for Olivier Giroud, but the experienced striker's header from an Alessandro Florenzi cross was wide of the post.
Christian Pulisic had a half-chance for the visitors in the 36th minute after Lazio could only half-clear a corner, but the United States international fired his volley into the stands.
Maignan was then forced into a smart save down the other end to keep out a strike from Alberto, before Pulisic brought a stop from Lazio goalkeeper Ivan Provedel in the final exchanges of the first period after unleashing a left-footed effort.
Rafael Leao had the first attempt of the second period, but his effort from the edge of the box was always rising over the Lazio crossbar.
The home side were then reduced to 10 men in the 57th minute, with Pellegrini sent off for a second bookable offence, with the defender pulling Pulisic to the ground.
Ciro Immobile was introduced for Lazio on the hour and had a half-chance shortly after, but his glancing header was saved by Maignan in the Milan goal, before Provedel denied Giroud down the other end during an open period of the contest.
Tijjani Reijnders was next to try his luck for Milan in the 73rd minute, but his effort just flashed wide of the far post, before Provedel denied Ruben Loftus-Cheek and Immobile missed from four yards out down the other end, with both teams committing players forward in search of a winner.
The breakthrough appeared to come in the 76th minute through Leao, but his deflected effort was disallowed for offside following a VAR check.
Milan did manage to score in the 88th minute, though, with Okafor, who only entered the field in the 71st minute, finding the back of the net at the second time of asking after his first effort from the middle of the penalty box was kept out by the Lazio goalkeeper.
There was time for more late drama, with Marusic and Guendouzi both sent off in the final exchanges, as Lazio finished with eight men on the field.
Milan's attention will now switch to the Europa League, preparing to host Slavia Prague for the first leg of their last-16 tie on March 7, while Lazio will travel to Bayern Munich for the second leg of their last-16 Champions League clash on March 5, holding a 1-0 advantage from the first leg in Italy. body check tags ::