George North marked his return to Wales with a stunning try as Saints kept themselves in the Heineken Cup hunt with a 29-17 win at Ospreys.
Former Scarlets wing North grabbed the ball early in the second half and sprinted clear from inside his own half to spark what had been a drab game into life.
Further scores from George Pisi and Glenn Dickson, plus 12 points from the boot of Stephen Myler and two from Dickson ensured a fine win at the Liberty Stadium.
Ospreys did manage two tries of their own in the second as scrum-half Rhys Webb and skipper Alun Wyn-Jones went over to give their side hope.
But yellow cards for Ryan Bevington and Aisea Natoga hampered their cause, with Christian Day’s sin-binning not proving costly for Saints.
Jim Mallinder’s men still have a chance of making the last eight but need Leinster, who recovered from 14 points down to beat Castres, to suffer a huge slip up against Ospreys on Friday.
Saints could only get their own job done at the Liberty Stadium, though, and it was another impressive display on the road.
They had made a bright start and after Calum Clark’s chargedown kept Ospreys in their own half, the away side turned on the power to win a penalty at the scrum.
Myler made the most of the chance to put Saints three points up inside four minutes and they continued to compete well for the next 10 minutes.
Another penalty award in Ospreys territory saw the fly-half add to Saints’ tally before Dan Biggar’s rapid response reduced the deficit.
It was a scrappy affair with neither side able to make anything stick, with most of the battle taking place in the midfield.
Ospreys were gradually growing into the game, with Webb’s box-kicking making life tough for Saints’ backs in the blustery conditions.
But, to their credit, Tom Collins, Jamie Elliott et al were dealing with the aerial bombardment well and Saints were holding firm.
Myler extended the advantage to six after another penalty was won at the breakdown and the Saints forwards were bossing the game.
Another monster push at the scrum saw Ospreys loosehead prop Bevington sent to the bin, giving Saints a big chance to enhance their chances of victory.
Myler immediately pushed his side further in front with another well-struck penalty after the Northampton No.10 was sent crashing to the turf by a deliberate Justin Tipuric trip.
But Saints were to get a huge let-off just before the break as Tipuric’s final pass to wing Jeff Hassler, who went over in the corner, was deemed forward.
And the away side made the most of that escape in devastating fashion after the break as Kahn Fotuali’i sent the ball wide to North, who galloped from his own half to score his third try in as many games.
Myler hit the upright with the conversion, but Saints held a healthy 17-3 when Bevington returned to the field from the bin.
Ospreys needed a reply and Biggar was doing his best to provide it but the Welsh fly-half couldn’t finish off his clever break with an accurate final pass.
The home side were refusing to go quietly, putting Saints under pressure up front and forcing Day to offend, with the lock sent to the bin for pulling down a maul.
Saints were starting to crack and after a superb save from Dylan Hartley, who held up full-back Fussell over the line, Ospreys had their try.
Webb was the man who made the most of his side’s dominance to dart over the line, with Biggar easily notching the conversion.
Suddenly Ospreys were just seven behind and a man up, but Saints were soon back on the front foot as a great move involving Luther Burrell and Fa’atoina Autagavaia saw Pisi score.
Myler converted and Ospreys winger Aisea Natoga was yellow carded for a high tackle in the build-up, giving Saints what looked to be an easy task of closing out the game.
But Ospreys kept fighting and Wyn-Jones’ score and Biggar’s conversion cut the gap to five with five minutes to play.
Saints, though, weren’t to be beaten and Glenn Dickson’s quick reply and conversion ensured Mallinder’s men retained a chance of progressing from Pool 1.
Ospreys: Fussell; Hassler, Isaacs (John 65), Spratt, Natoga; Biggar, Webb; Bevington, Hibbard (Baldwin 55), Jarvis (A Jones 46), Wyn-Jones (c), Evans (King 64), Lewis (Allen 52), Tipuric, Bearman.
Replacements not used: D Jones, Habberfield, Davies.
Saints: Collins (Autagavaia 40); Elliott, G Pisi, Burrell, North; Myler (G Dickson 72), Fotuali’i (L Dickson 56); A Waller (E Waller 64), Hartley (c) (Haywood 72), Ma’afu (Mercey 52), Lawes, Day, Clark (Dowson 60), Wood (Dickinson 73), Manoa.
Referee: Pascal Gauzere (France)