James Taylor’s maiden one-day international half-century proved in vain as England lost the fourth ODI to Sri Lanka by six wickets to slip 3-1 down in the seven-match series.
Taylor (90), who replaced the banned Alastair Cook for the match in Colombo, hit six fours and two sixes during an entertaining 109-ball knock as he and Joe Root (36) put on 93 for the third wicket.
But England stumbled once the 24-year-old holed out to Kusal Perera in the deep and were grateful for a blistering cameo from stand-in skipper Eoin Morgan (62 off 47 balls) to reach 265 all out.
Sri Lanka did not look overly troubled for the majority of their run chase and secured the win with two balls to spare, thanks largely to Kumar Sangakkara (86), who scored his seventh ODI fifty of 2014.
Morgan, who assumed the captaincy with Cook missing out due to England’s slow-over rate in their victory in Hambantota on Wednesday, won the toss and opted to bat.
But he must have wondered if he had made the right call when Alex Hales (0) went for a first-ball duck and Moeen Ali (19) clipped behind to Sangakkara to leave England 27-2 in the eighth over.
However, Taylor – who averaged almost 90 for Nottinghamshire in domestic 50-over cricket in the 2014 season – and Root rebuilt the innings, dispatching the boundary balls on offer and running speedily between the wickets.
Taylor survived an lbw appeal on review after replays showed he got an inside edge on a ball from Jeevan Mendis, but Sri Lanka eventually snaffled a fourth wicket when spinner Rangana Herath rearranged Root’s stumps.
Taylor pushed on with Ravi Bopara (22) in a 48-run stand but England’s knock unravelled when the former Leicestershire player departed with the score on 170 while looking to loft to the ropes.
Sri Lanka then stalled the run rate by picking up wickets at regular intervals – until Morgan pummelled four fours and three sixes as he amassed his first ODI fifty since January.
England got rid of the dangerous Tillakaratne Dilshan (16) at the start of Sri Lanka's response but Perera and Kumar Sangakkara then safely navigated the best part of 15 overs.
Perera (31) fell to a sharp catch by Chris Jordan at slip, though that proved just a momentary high for England, with Sangakkara and Mahela Jayawardene (44) – the latter back in the side after missing Wednesday’s game for personal reasons – dovetailing brilliantly.
The 37-year-olds put on 96 for the third wicket in 17 overs – Sangakkara notching his 90th ODI fifty of a stellar career – as Sri Lanka closed to within 100 runs of their opponents.
Jordan then forced Jayawardene to chop onto his stumps and latterly dismissed Sangakkara when the veteran hit into Chris Woakes’ hands at deep cover to miss out on a 20th ODI century.
But skipper Angelo Mathews (51) and Lahiru Thirimanne (19) guided the hosts home and a win in Palekelle on Wednesday will hand Sri Lanka the series.
Watch the fifth ODI between Sri Lanka and England, from 8.30am on Wednesday on Sky Sports 2.