Pallekele : Sri Lankan spinners struck back with three wickets to check India's surge after opener Shikhar Dhawan smashed a century on the opening day of the third and final Test on Saturday.
The left-handed Dhawan hit a 123-ball 119 before becoming left-armer Malinda Pushpakumara's second victim at the Pallekele International Cricket Stadium.
India were 235-3 at tea with skipper Virat Kohli on 11 and Ajinkya Rahane on three. Kohli won the toss and elected to bat first in their bid for a series sweep.
A 188-run opening stand between Dhawan and Lokesh Rahul, who made 85, took India through the first session without losing a wicket against a hapless Sri Lankan attack.
Sri Lanka captain Dinesh Chandimal then rotated his spinners in the second session and India lost three top batsmen in just 11 overs.
Rahul, who scored his seventh consecutive Test fifty, was the first to go after mistiming a drive to mid-on off Pushpakumara.
Rahul joins Everton Weekes, Andy Flower, Shivnarine Chanderpaul, Kumar Sangakkara and Chris Rogers in the list of batsmen who have made seven consecutive 50-plus scores in Tests.
Left-arm wrist spinner Lakshan Sandakan sent Cheteshwar Pujara back to the pavilion for eight after the batsman edged the ball to slip.