A review of the weekend's action in the French Ligue 1.
Cedric Bakambu delivered another major blow to Lyon's title hopes as his 89th-minute winner in Sochaux's 2-1 victory left them eight points behind Ligue 1 leaders Paris St Germain.
While Sochaux will celebrate Bakambu's strike for catapulting them out of the drop zone it further derailed Lyon's hopes of reclaiming the league crown following a run that has now seen them without a win in four games.
On a frustrating night for the hosts, that saw them hit the woodwork on three occasions, they looked like they might salvage at least a point when Bafetimbi Gomis' 69th-minute penalty cancelled out Giovanno Sio's opener.
But an unmarked Bakambu left them with no time for a second comeback after Sio's clever build-up play.
Sochaux's win, their first in six games since upsetting PSG, moves them two points clear of danger.
Marseille replaced Lyon in second place following an impressive first away win of the year on Sunday - 1-0 in Nice.
A solitary first-half Andre-Pierre Gignac header was enough to claim all three points for the visitors and their first win in three saw them move seven points behind leaders PSG.
A third defeat in four meant Nice missed a great opportunity to move up to fourth and with it put a large dent in their Champions League aspirations.
Lille maintained their push for a Champions League spot after beating struggling Brest 2-1 at the Stade Francis-Le Ble.
Florian Raspentino put the home side ahead after 10 minutes, before Lille levelled eight minutes later through Salomon Kalou.
And with 11 minutes left Lille grabbed the winner through Nolan Roux.
St Etienne were held to a 2-2 draw at Troyes.
Despite twice taking the lead in a frantic first half with goals from Pierre-Emerick Aubameyang and Brandao, the visitors were pinned back on both occasions by a dogged Troyes side.
The hosts were thankful to Julien Faussurier and Benjamin Nivet who scored the goals to earn a draw but the result did little for Troyes' hopes of Ligue 1 survival, leaving them four points adrift of safety.
Bastia twice came from behind to complete a 4-3 win at Valenciennes that boosts the Corsicans' chances of staying up.
Remi Gomis briefly set Valenciennes on their way towards a first win in six outings but Toifilou Maoulida soon scored his first goal of a brace to level the tie.
A Gael Danic penalty sent VA into half-time with a 2-1 lead but Bastia came roaring back after the break, with Maoulida equalising before substitute Florian Thauvin settled the match with a double inside the last six minutes - his first goal coming from the spot.
Gregory Pujol squeezed in a third for the hosts in stoppage time but it was too little, too late for Daniel Sanchez's men, who remain in 12th place while both sides are eight points clear of the drop zone.
Two goals in the last 12 minutes saw Nancy claim their second successive in a week as victory over Rennes saw them move off the foot of Ligue 1.
Thomas Ayasse put the league's bottom side ahead 12 minutes from time with a stunning volley before Djamel Bakar secured all three points with a minute remaining.
The result sees Nancy move off the bottom and just two points from safety with their third win in four games, a run of form which has come at the most opportune time.
For Rennes, it extended their winless run to six league games and it appears their attention has turned to next month's Coupe de la Ligue final against St Etienne.
Clarck N'Sikulu grabbed a last-gasp leveller for Evian as they picked up a vital point in a 2-2 draw against relegation rivals Reims.
The attacker popped up in the third minute of added time for the home side as they recovered from two goals down at the Parc des Sports.
Floyd Ayite put the visitors ahead after 12 minutes before he saw red three minutes later for a dangerous tackle.
Gaetan Courtet put the visitors two up after 67 minutes. Yannick Sagbo pulled a goal back for the home side a minute later before N'Sikulu struck to deny Reims.
Etienne Capoue scored twice to earn Toulouse a narrow 3-2 victory from an entertaining clash at Ajaccio.
The hosts led through Jonathan Zebina's own goal but Capoue levelled and Franck Tabanou put Toulouse ahead.
Adrian Mutu then made it 2-2 before the break, but Capoue grabbed the winner from the penalty spot 11 minutes from time.
Defeat means Ajaccio still have work to do to avoid the drop - they are five points above the bottom three - while for Toulouse European qualification looks out of reach.
Ludovic Obraniak left it late to rescue a deserved point for Bordeaux and deny Lorient's hopes of cutting the gap on the top five in Ligue 1 after a 1-1 draw.
Bordeaux have been on a lean run of late, with just one win in seven matches before tonight derailing their own push for a European place next season.
It seemed likely their problems would continue when Jeremie Aliadiere struck just before half-time.
But while Les Girondins improved vastly after the interval, they did not have much luck in front of goal until Obraniak slotted home three minutes from time.
Barcelona will be the next visitors to the Parc des Princes but on Friday, Paris St Germain put thoughts of Lionel Messi and company to one side to take a step closer to the Ligue 1 title.
Montpellier, last season's surprise French champions, made PSG work hard for their reward, the only goal coming when Kevin Gameiro prodded home from close range in the 80th minute.
Jeremy Menez bustled through midfield and played a smart ball to Zlatan Ibrahimovic, whose run took him into the left side of the penalty area. Montpellier defenders hurried back but could not intercept the striker's left-footed pass that found Gameiro racing in to turn home from six yards.