The impressive Ricardo Pereira of Nice dealt Paris Saint-Germain a severe blow in their bid to win the Ligue 1 title at the Allianz Riviera.
Pereira set up a goal before cutting in and curling a sensational effort into the top corner in the second half as Nice beat PSG 3-1. It means the capital club remain three points behind Monaco - who have a game in hand.
The full-back broke swiftly down the right wing before teeing up Mario Balotelli in the first period, before doubling the score in the second period of a spicy encounter which saw the visitors have two players sent off in the dying moments before Anastasios Donis added a third.
Marquinhos flicked a header in with half an hour remaining to offer Unai Emery's side a glimmer of hope, but they were unable to maintain the pressure on Monaco as they slipped to a first defeat in 17 league matches.
The visitors, who are looking for their fifth league title on the bounce, started the brighter of the two sides.
Angel Di Maria tested Yoan Cardinale early on with an effort from outside the box but the goalkeeper could only fumble what proved to be a tame effort.
Edinson Cavani had a header cleared off the line after making a near-post run from a Di Maria corner as Nice started slowly, before gradually growing into the game.
They had their first sniff of goal in the 20th minute, as a Jean Seri cross found Balotelli unmarked inside the area, but the Italian striker was on the stretch and could only volley the ball over the bar from six yards out.
He did not have to wait long for a breakthrough however, as Pereira charged out of defence on the counter-attack and broke down the right wing before playing the ball inside to Balotelli, who held off a tackle before a hitting a fine finish for his 14th league goal of the season.
PSG were wasteful as they pushed for an equaliser, with Di Maria going for the spectacular from 35 yards, and the deficit was doubled shortly after the break.
Again Nice broke and the ball was played into Pereira, who cut in onto his weaker foot before curling into the top corner from the edge of the area.
Cavani had another header cleared off the line, but the visitors continued to threaten from set pieces and were finally rewarded when Marquinhos flicked in a Thiago Silva header.
Tempers flared in the final 20 minutes as the Parisiens grew frustrated, and it all came to a head in stoppage time as Thiago Motta was sent off for an off-the-ball incident before a wild Di Maria lunge saw him also given his marching orders.
Substitute Donis added a third to wrap up the points as he headed in a deflected cross at the back post to bring Nice to within three points of their opponents.