PSG face a real fight to retain their Ligue 1 title after being deservedly beaten 2-0 by a slick Monaco side at the Parc des Princes on Sunday evening.
Goals from Sofiane Diop and Guillermo Maripan in either half sealed what was an assured performance by Niko Kovac's visitors, who controlled the contest and in turn put themselves back into the mix in an exciting title battle.
It was a game in which PSG predictably had most of the ball - well over 70% of possession - but unlike in midweek against Barcelona, PSG seemed toothless and could not create anything like a clear-cut opportunity throughout.
Kylian Mbappe in particular was subdued and with Neymar injured, Mauro Icardi and Moise Kean were unable to pick up the slack, with both of them putting in equally anonymous performances.
PSG 0-2 Monaco: Mbappe, Kean and Icardi flop as visitors earn deserved win
As it was, Monaco soaked up PSG's territorial advantage and were largely clinical when chances came their way. Just six minutes were on the clock when Bruno Aguilar's delivery found the head of Diop, who powered the ball into the net.
Monaco retreated into their territory once again and invited PSG to attack them, but were robust in holding back the tide and doubled their advantage five minutes into the second half.
Guillermo Maripan scored his fifth goal since the turn of the year, an amazing return for a defender, pouncing on a loose ball in the area to smash into the net past Keylor Navas.
Kevin Volland missed a good chance to make it three soon after but it proved academic; PSG were lethargic throughout and only mustered a single shot on target in the game.
With this victory, Monaco move to within six points of leaders Lille, who have 58 points, followed by Lyon three points back on 55. PSG have 54 with 12 games remaining in one of the most exciting Ligue 1 title races in years.
Substitute in, Fodé Ballo-Touré.
Substitute out, Kevin Volland.
Yellow card for Kylian Mbappé.
Substitute in, Djibril Sidibé.
Substitute in, Aleksandr Golovin.
Substitute out, Ruben Aguilar.
Substitute out, Sofiane Diop.
Substitute in, Julian Draxler.
Substitute in, Danilo Pereira.
Substitute out, Mauro Icardi.
Substitute out, Leandro Paredes.
Substitute in, Stevan Jovetić.
Substitute out, Wissam Ben Yedder.
Yellow card for Leandro Paredes.
Substitute in, Marco Verratti.
Substitute in, Rafinha.
Substitute out, Ander Herrera.
Substitute out, Idrissa Gana Guèye.
Goal by Guillermo Maripán.
Yellow card for Presnel Kimpembe.
Yellow card for Idrissa Gana Guèye.
Yellow card for Aurélien Tchouameni.
Assist given by Ruben Aguilar.
Goal by Sofiane Diop.