The Steelbacks suffered their first defeat of the NatWest T20 Blast season as Worcestershire Rapids exacted revenge in a final-over victory at New Road.
The Rapids had been thrashed by seven wickets at the County Ground a week earlier, but they bounced back with a three-wicket success.
Ben Cox, who ended unbeaten on 42 from 24 balls, hit nine runs from the last over, bowled by Muhammad Azharullah, as the Steelbacks’ hopes faded with the light.
Tom Kohler-Cadmore was also a key figure for the Rapids as the opener made an impressive 60.
The Steelbacks had shown their resilience with the bat earlier in the game as, after losing three wickets for 50 runs, they managed to get up to 169 for seven.
Ben Duckett was the main contributor, grabbing his best T20 score of 50 after being dropped twice, while Graeme White added a quickfire unbeaten 22 from 10 late on.
The Rapids lost three early wickets as the Steelbacks took control, with Azharullah striking twice.
But Cox stuck around until the end to steer his team to a fourth victory in five matches in the Blast.
The Steelbacks, who had won all three of their T20 matches, lost the toss and were forced to bat.
David Ripley’s men took the decision to open with skipper Alex Wakely and Adam Rossington, but after a slow first over, they were to be punished in the second.
Rossington tried to open things up, but he was caught behind off the bowling of Joe Leach for just two.
Wakely was to escape during Leach’s second over as his top edge evaded the field and went for four.
And the Steelbacks were suddenly going along nicely, with Josh Cobb hitting a couple of big sixes to get his team rolling.
But the Rapids were to land a suck punch as Cobb, who had made a tidy 23, was caught behind off bowling of Chris Russell, who struck with the second ball of the sixth over.
Wakely had made 18 before he became the third of as many batsmen to be caught behind, with wicketkeeper Cox taking a fine diving catch from Ed Barnard’s delivery.
It left the Steelbacks 50 for three in the seventh over and they had not been as fluent with the bat as in their three previous matches.
Duckett and Steven Crook were charged with a rebuilding job and Duckett was lucky to escape when on six as Jack Shantry dropped a simple-looking catch at short third man.
Crook then saw his forward nudge fall just short of Leach as the Steelbacks continued to live dangerously.
But Duckett started to look more comfortable as he hit two consecutive Brett D’Oliveira deliveries into the car park and the Steelbacks were 74 for three at the halfway stage.
The Rapids needed a wicket, and George Rhodes delivered it as Crook was caught at deep square leg for 13 off as many balls.
Duckett was then dropped again, by D’Oliveira at cover, but Seekkuge Prasanna wasn’t so lucky as Ross Whiteley pouched the catch on the boundary to give D’Oliveira a wicket.
The Steelbacks were in a bit of trouble at 95 for five in the 13th over, but Duckett was making the most of his earlier good fortune and a six brought up his highest T20 score.
He reached his 50 with a single off Barnard, making the milestone from 34 balls, while Keogh was going along nicely at the other end, hitting a few welcome fours.
But Keogh was to be denied by an incredible catch as Shantry claimed it one-handed at mid-off after the Steelbacks batsman connected with a full toss from Leach.
He departed for 22 and Duckett was on his way soon after as he was bowled by Leach for 50.
But White wasn’t going to let the Steelbacks crumble and he smashed three consecutive sixes off Shantry’s over, which was to go for a massive 23 runs.
Leach completed a fine spell with a superb final over to keep the Steelbacks below 170, with White ending on 22 off 10 balls.
The away side’s total was competitive and Ben Sanderson opened the bowling as they tried to defend it.
Leach looked good as he blasted a four and a six, but Sanderson struck with the final ball of the over, with Keogh taking a smart catch at point.
The Rapids had taken 17 from the first over, but Richard Gleeson bowled the next - his first over for Northants in T20 cricket - and kept it tight, conceding just two runs.
Azharullah then struck with his first ball as Joe Clarke scooped one up in the air for wicketkeeper Rossington to take.
It was shaping up to be a brilliant over from Azharullah and he got his second wicket with the fifth ball of it as Alexei Kervezee tried to pull one and was caught by Duckett at cover.
That left the Rapids, who clearly had the Duckworth Lewis permutations in mind with rain in the air, 20 for three after three overs.
But the home side got going during Azharullah’s second over, taking three boundaries from it as they got up to 41 for three from five overs.
Kohler-Cadmore was punishing the Steelbacks, but the away side had a big chance to get rid of D’Oliveira for 16 at the other end, with Azharullah dropping the catch off Crook.
Northants needed a wicket, and they got it in brilliant fashion as Keogh held a superb one-handed catch off the bowling of Sanderson to dismiss D’Oliveira for 37.
Gleeson then kept it tight with his final over and the pressure paid off as Prasanna bowled Whiteley for eight, leaving the Rapids five wickets down.
But Kohler-Cadmore, who reached his half-century, was keeping control of the rate and the Rapids were still in good shape to claim the win, with 43 needed from the final five overs.
It needed some magic to dismiss the Rapids opener, and it came again from Keogh, who juggled the ball on the boundary and took the catch to get rid of Kohler-Cadmore for 60.
George Rhodes then went for one in the first ball of the penultimate over as he was caught behind after trying to scoop a Crook delivery.
But Cox was still playing well and his six from the next ball breathed new life into the Rapids’ bid.
The home side needed nine to win from the final over, with Azharullah the man to bowl it for the Steelbacks.
But Cox made it look easy, taking two fours from the first two balls before a Prasanna misfield gave him the single needed for victory.
Worcestershire Rapids: Kohler-Cadmore, Clarke, Kervezee, D’Oliveira, Whiteley, Cox, Leach (c), Barnard, Shantry, Russell, Rhodes.
Steelbacks: Rossington, Cobb, Duckett, Wakely (c), Crook, Prasanna, Keogh, White, Sanderson, Gleeson, Azharullah.