A maiden Test century from Gary Ballance steered England away from trouble and into a commanding position heading into the final day against Sri Lanka at Lord’s.
Ballance, playing in just his second Test match, reached the close unbeaten on 104 as England overcame an afternoon wobble to reach 267-8 in their second innings, leading by 389.
An overnight declaration now looks inevitable for England, who have 90 overs left to claim the 10 wickets required for a 1-0 series lead.
The brilliance of Ballance was much-needed after the home side had slumped to 121-6 in their second innings and his 188-ball effort has effectively batted Sri Lanka out of the match.
He was the second player to post a century on a topsy-turvy fourth day which had earlier seen Sri Lanka captain Angelo Mathews reach the magical mark before his side were dismissed for 453 in the morning session.
Taking a 122-run advantage into their second knock, England saw openers Alastair Cook (28) and Sam Robson (19) and No 4 Ian Bell (9) all dismissed during an exceptional 10-over spell from seamer Shaminda Eranga, before Rangana Herath reignited Sri Lanka's hopes of an unlikely turnaround.
Left-arm spinner Herath removed Joe Root (15) and Moeen Ali (4) in quick succession, Root trapped on the crease and Ali bowled through the gate second ball.
Ballance and Matt Prior began the rebuilding phase either side of tea, however the pressure on the Yorkshire left-hander grew when England's wicket-keeper flashed Nuwan Kulasekara to Lahiru Thirimanne in the gully to fall for 16.
At 121-6 - leading by 243 - all three outcomes remained possible, but the match swung England's way courtesy of a 78-run partnership between Ballance and Jordan for the seventh wicket.
Jordan struck five boundaries in his invaluable innings of 35 and Ballance drove powerfully through extra cover to take the lead past 300.
Herath picked up his third wicket when Jordan lobbed a leading edge to Kumar Sangakkara at mid-off and a fourth followed when Stuart Broad, who bludgeoned a quickfire 24, offered a simple return catch to the left-arm spinner.
With no sign of a declaration forthcoming from the England balcony Ballance kicked on before the close, reaching his maiden Test hundred in style at the start of the final over with a huge six over midwicket after Herath had floated up a tempter.
Sri Lanka skipper Mathews had etched his name on the Lord's Honours Board earlier in the day with a superb century, though he fell soon after for 102 as the tourist conceded a healthy first-innings deficit.
Resuming day four on 415-7, Sri Lanka’s lower order managed to stand by their captain long enough for him to reach three figures, the moment coming when he blazed a James Anderson full toss through the covers for the last of his 12 boundaries.
It was Liam Plunkett who eventually ended Mathews’ 172-ball knock, winning an lbw verdict with a full delivery that on review was proved to be clipping leg stump.
By that stage overnight batsman Herath had already departed, clean bowled by Anderson for two by the only delivery in the session pitched inside the left-hander’s half.
The final wicket was that of Nuwan Pradeep, who hit his own wicket after being struck on the shoulder by a Jordan short delivery.