Milan have missed the opportunity to close the gap on Serie A leaders Napoli after they were thumped 4-0 by a rampant Lazio at the Stadio Olimpico.
Stefano Pioli's men were condemned to a first defeat in seven league matches after goals from Sergej Milinkovic-Savic and Mattia Zaccagni gave the hosts a halftime advantage.
Luis Alberto added a third from the spot after the interval before Felipe Anderson rounded off the scoring as the Rossoneri failed to win for the fifth game in a row in all competitions.
Despite their recent poor form Milan remain in second place, 12 points adrift of runaway leaders Napoli.
But the impressive result sees Maurizio Sarri's Lazio leap from sixth to third, where they lie alongside Inter and Roma - all within a point of Milan.
Lazio were ahead just four minutes in, Luis Alberto cleverly dummying a Zaccagni pass into the path of Milinkovic-Savic to coolly stroke into the bottom corner.
Sandro Tonali stung the palms of Ivan Provedel as Milan looked for a response, but the champions would find themselves two goals down before halftime.
Adam Marusic saw a shot come back off the post after latching onto Pedro's through-ball, but Zaccagni was there to bundle home the rebound for his third goal in three league games.
Shaky defending continued to be Milan's downfall in the second half, with Lazio going further ahead when Pierre Kalulu brought down Pedro for a penalty, which Luis Alberto blasted down the middle past Ciprian Tatarusanu.
Anderson slotted home after a neat pass from Luis Alberto to further embarrass Milan.