Lucknow Super Giants beat Indian Premier League leaders Gujarat Titans by six wickets with a 34-ball 61 from tournament leading run-scorer Nicholas Pooran.
Chasing a challenging 181, the West Indian batter struck one four and seven sixes to drive his side towards victory.
By the time he was dismissed, caught by Shahrukh Khan off Rashid Khan, Lucknow were 155-3 and Ayush Badoni finished the match in style with a consecutive four and six in the final over.
Having been put into bat, Sai Sudharsan (56 from 37) and Shubman Gill (60 from 38) got the Titans off to a flying start, striking a 120-run opening partnership.
The pair fell in consecutive overs, Gill caught superbly by Aiden Markram at long-on in the 13th and Sudharasan mishitting Ravi Bishnoi's delivery to Pooran at cover six balls later.
From that point the visitors' innings slowed, with Washington Sundar bowled for two to become Bishnoi's second dismissal of the over, and Jos Buttler caught by a diving Shardul Thakur for 16.
Thakur then removed Sherfane Rutherford and Rahul Tewatia with consecutive deliveries in the final over as the Titans finished on 180-6.
Lucknow lost Rishabh Pant, caught by Sundar off the bowling of Prasidh Krishna, just after the powerplay, but Pooran arrived to put on a 58-run partnership with Aiden Markram.
Markram (58 from 31) became Krishna's second victim, finding Shubman Gill at long-off, but Pooran powered on until he was finally dismissed in the 16th over.
Titans enjoyed a parsimonious spell after his departure, taking the match to the final over, but Badoni steeled himself to close out the match with successive boundaries.
The result sees the Titans slip from the top of table, with their net run-rate falling below that of Delhi Capitals, while Lucknow move up three places to third, level on points with the two sides above them.