Virat Kohli's fifth Indian Premier League century helped Royal Challengers Bangalore record a much-needed 10-run victory over Kolkata Knight Riders, despite the best efforts of the in-form Andre Russell.
Captain Kohli led from the front, making an even 100, while Moeen Ali contributed 66 in a hurry as the Royal Challengers posted a formidable score of 213-4 at Eden Gardens.
Kolkata appeared set to fall well short in reply, labouring to 60-3 at the halfway stage following two early wickets for returning paceman Dale Steyn.
However, not for the first time this season, Russell produced an onslaught at the back-end of an innings to suddenly put the game back in the balance.
The West Indian all-rounder hammered nine sixes as he and Nitish Rana (85 not out) put Bangalore on the back foot, getting what seemed a nigh-on impossible equation down to 24 required from the final over.
Russell kept his side's hopes alive by hitting Moeen for six down the ground, leaving the equation at 17 off three, but a dot ball by the England spinner curtailed the Knight Riders' late charge.
The following delivery saw Russell run out for 65 and while Rana finished the game with another six, Bangalore had just about held their nerve under pressure. The victory is just their second of the campaign, though they remain bottom of the table.
KOHLI TIMES IT JUST RIGHT
With AB de Villiers not in the starting XI, the pressure on Kohli was even greater to perform for his struggling franchise.
The right-hander needed 40 balls to reach 50 but exploded into life after such a patient start, needing just a further 18 deliveries to make it through to three figures. He reached the milestone in glorious fashion, sending a cover drive to the fence for his ninth four.
Kohli had also smashed four sixes before he was caught off the final ball of the innings having put on 64 with Marcus Stoinis, who ended up unbeaten on 17.
Moeen had earlier dominated a 90-run stand for the third wicket, the England international belting six sixes.
STEYN RUINS KOLKATA CHASE
In need of a boost to their bowling attack, Bangalore turned to Steyn. The South African bowler had last played for the team in the IPL nine years ago, yet he showed what they had been missing with an early burst to put the home team on the back foot.
He dismissed Chris Lynn and Shubman Gill in the powerplay, while the Knight Riders were further hampered by Robin Uthappa eating up 20 deliveries to make just nine runs.
Too many early dot balls came back to haunt them at the death as well, with Russell and Rana running out of time.
Still, Russell has now amassed 377 runs in the tournament this year, despite facing just 171 balls. His tally of 39 sixes tops the charts, as he sits 13 clear of fellow West Indian Chris Gayle.