Leicestershire 207 for 3 (Pettini 76, Delport 68) beat Lancashire 198 for 4 (Petersen 103*) by nine runs
Leicestershire's record T20 score at Grace Road proved only just enough to beat Lancashire Lightning, despite Alviro Petersen's superb unbeaten century for the champions.
So the holders, Lancashire, are eliminated, leaving their director of cricket, Ashley Giles, to bemoan: "We almost got there thanks to a brilliant century from Alviro, but we were always behind the eight ball, and most of it was our own doing.
"We're out of the competition now, and it's not just down to this game, we haven't got it right in a lot of games. When you don't string two wins together, you're always going to struggle to qualify.
"We've consistently lost our way in games. Their score was above par, and that Alviro played so well, and it still wasn't enough, is a pretty big indication they got too much."
Leicestershire's total, after being put in by Lancashire, was built on a brutal partnership of 140 between Pettini and Delport for the second wicket, compiled in just 12.1 overs.
Mark Cosgrove had gone early, chipping a simple catch to Jordan Clark at mid-on off the bowling of former Leicestershire seamer Nathan Buck, but the South African Delport, whose form had been inconsistent since he joined the Foxes for the second half of the T20 season, quickly showed he was determined to make an impression in Leicestershire's final home group game.
George Edwards was the first to suffer, with the last two balls of his first over hit high over wide mid-wicket and then long-on. Jordan Clark, dropping short, was pulled high over square leg and across Milligan Road.
Pettini, wristier and rather less elegant , was nonetheless almost as effective, depositing Stephen Parry's left-arm spin into the Bennett End car park, one of four sixes hit by the former Essex batsman. Delport had hit six maximums in going to 68 off just 35 balls when he top-edged the 36th high to extra cover off Edwards.
Pettini followed, leg before to Clark for 76 from 51 balls, but Farhaan Behardien and Lewis Hill ensured Leicestershire reached their record T20 score at the Fischer County Ground, Grace Road.
Lancashire quickly lost Luis Reece, bowled hitting across the line at Richard Jones, and when they lost Karl Brown, who sliced off-spinner Rob Sayer's first ball high to long-off, and then Liam Livingstone, who nicked a Jones out-swinger to wicket-keeper Hill to leave them on 59 for 3, it looked as though the chase might peter out quickly.
Petersen, however, found solid support from captain Steven Croft, and though always slightly behind the required rate, the pair kept Lightning in the hunt in compiling a partnership of 66.
Croft smeared a Sayer full toss to midwicket, and Leicestershire seamer Clint McKay - who bowls the best slower ball in T20 cricket, conceded just ten runs from his final two overs, the 17th and 19th of the Lancashire innings, leaving Petersen just too much to do, though he hit the final ball of the innings for four to go his century, his first in T20 cricket.