Dasun Shanaka blasted a rapid unbeaten half-century and held his nerve when bowling the final over as Sri Lanka beat India by 16 runs to level the Twenty20 International series.
Captain Shanaka bludgeoned 56 not out off only 22 balls to get the tourists up to 206-6 at the MCA Stadium on Thursday.
Kusal Mendis (52 from 31) also made a quickfire half-century, while Charith Asalanka struck 37 and Pathum Nissanka 33 two days after India edged the first T20I by two runs.
India looked to be heading for a hammering when they slumped to 57-5 in reply, the impressive Kasun Rajitha (2-22) removing openers Ishan Kishan and Shubman Gill.
But a sixth-wicket stand of 91 between Axar Patel and Suryakumar Yadav kept them in the hunt, the spinner having also taken 2-24 after he kept it tight in the last over to seal victory in the opening match.
Dilshan Madushanka (2-45) removed Yadav (51 off 36) in the 16th over, yet Axar flexed his muscles with support from Shivam Mavi to give India a chance of pulling off an unlikely win.
With 21 needed off the final over, Shanaka dismissed Axar (65 off 31) and Mavi (26) with two of the only six balls he delivered to set up a decider in Rajkot on Saturday.
Shanaka steps up to lead by example
Sri Lanka had lost four wickets for 30 runs when Shanaka arrived at the crease, but the skipper took control of the situation with a swashbuckling knock.
He cleared the rope six times, Mavi and Umran Malik coming in for some treatment as 77 runs were scored in the final five overs.
Shanaka then took responsibility to bowl the last over and clearly thrived on the pressure, with Axar caught in the deep and Mavi taken by Maheesh Theekshana off the last ball.
Axar shows all-round capabilities
Spinner Axar was excellent with the ball, giving little away and taking two wickets.
He threatened to get India home with a brilliant knock to make a game of it, hitting six sixes and three fours. He was unable to deliver more final-over heroics, though, as India fell short.