Shikhar Dhawan and Virat Kohli scored a century each before Sri Lanka took four quick wickets in the post-lunch session to reduce India to 304 for six at tea on the second day of the first Test against Sri Lanka.
India had taken a first-innings lead of 121 runs at the break in reply to Sri Lanka's 183 all out.
After Dhawan (134, 271b, 13x4) and Kohli (103, 191b, 11x4) shared a 227-run partnership for the third wicket, India suddenly lost four wickets in quick succession.
At tea, Wriddhiman Saha was unbeaten on 25 and Harbhajan Singh was yet to open his account.
After lunch, the two overnight batsmen -- Dhawan and Kohli -- who denied the Sri Lankan bowlers any wicket in the first session of the day -- looked to increase India's lead.
The two also brought up their 200-run partnership for the third wicket off 329 balls. Dhawan was then hit on his head by a bouncer from Nuwan Pradeep (2/70) in the 71st over albeit he was okay to continue his innings.
At the other end, Kohli also reached his century in the 74th over off 187 balls, his fourth hundred as skipper in as many Tests.
But thereafter the slide began.
Kohli had been flirting with danger by playing the sweep shot, and four balls after getting to his century, he was trapped LBW off Tharindu Kaushal (2/111), playing the same stroke.
The off-spinner took two wickets in the space of three balls as he sent back Ajinkya Rahane for a duck, out plumb LBW as well. He could have had a third wicket in three overs, but Dhawan was put down in the 78th over at short cover at 122.
While Wriddhiman Saha came into bat at the other end, the left-hander, who had also been dropped once on day one, couldn't carry on much longer. He added another 10 runs to his total and then played on to his stumps off Pradeep in the 88th over, the second one after the new ball had been taken.
The then clean bowled R Ashwin (7) as India lost four wickets for 47 runs before tea.
Earlier, Dhawan and Kohli had begun their day at the overnight score of 128 for two, 55 runs behind.
With the predicted rain showers staying away, they gave a solid start to the session, even as the pitch was very different from how it behaved in the first session yesterday.
Kohli got going quickly and brought up his 11th Test half-century off 90 balls in the 38th over, fourth of the morning. He had an interesting duel with Rangana Herath (0/54), who had a couple good LBW shouts against the batsman, but Kohli made sure that he planted his front-foot just outside the bowler's line and put that mode of dismissal out of context.
In the 46th over, Herath beat him in flight and keeper Dinesh Chandimal took off the bails, but the third umpire ruled him not out with the back-foot firmly planted in the crease. He was on 54 at that point.
At the other end, Dhawan was scoring quickly enough in comparison to his partner, but by his own standards, it was a watchful and sedate innings. He survived a close call for LBW in the 49th over, on 79, when Kaushal seemed to have trapped him after the ball pitched inside leg-stump and appeared to be hitting the middle one. But umpire Bruce Oxenford denied Lanka that breakthrough.
There were no further half-chances coming for the hosts thereafter as Dhawan-Kohli settled down after an engaging first hour of play that yielded 41 runs. India's 150 had come up in the 45th over of the innings, while the pair brought up their 150-run stand off 264 balls.
In the 53rd over, 12 runs came off Kaushal's over, as Dhawan smacked two fours to take India past the Lankan total.
Four overs later, India crossed the 200-mark.
But more significantly, Dhawan brought up his second successive Test hundred off 178 balls. It came on the heels of the 173-run knock he played against Bangladesh in the Fatullah Test in June. This was also his third Test hundred in the subcontinent.