Essex (39-2) trail Lancashire (319) by 280 runs
The tail wagged to take Lancashire to a third batting point that had looked out of their reach at the midway point on the first day of the opening Specsavers County Championship match of the season.
Lancashire were in danger of being skittled for around 250, but the last three wickets amassed 102 runs to validate the decision to bat after winning the toss.
Kyle Jarvis and Jimmy Anderson put on 51 for the last wicket to frustrate Essex in the early-evening sunshine, and then took a wicket apiece as the home side finished on 39 for two.
Before then, the South African Dane Vilas had been the only batsman to pass fifty, keeping the scoreboard moving with 74 off 101 balls of sustained aggression that included 10 fours.
Haseeb Hameed and Steven Croft both fell just short, Hameed by three runs and Croft by two.
Aaron Beard, at 19 and playing only his third Championship match, was the pick of the Essex bowlers with some tidy contributions throughout the day to finish with three wickets for 47.
Neil Wagner, the New Zealand Test player on debut, showed touches of intent, but conceded a plethora of boundaries in figures of three for 100.
In mitigation he had only stepped off a flight from the other side of the world on Tuesday morning.
In a further glimpse of the future, prodigal son Adam Wheater was preferred as gloveman to James Foster, who was dropped for the first time in a 17-year Essex career.
Jamie Porter made the breakthrough after Lancashire won the toss with his 10th ball of the day when he got one to rear up on Alex Davies, who edged the ball behind.
Liam Livingstone, who had taken the fight to former team-mate Neil Wagner with a series of boundaries, was next to go with the score on 50.
He had hit six fours in his 28 before he nicked Aaron Beard and fell to the double act of Tom Westley and Varun Chopra. Westley dived to parry the ball into the air at second slip and Chopra swept up behind.
All the while Haseeb Hameed was batting patiently and competently and showing no discomfort from the hand injury that caused him to retire while batting against Cambridge MCCU earlier in the week.
He hit six fours in his 103-ball 47, though his best shot was arguably when he drove Wagner through the covers for three to the furthest corner of the ground with f in hot pursuit.
But he lasted just three balls after lunch before he injudiciously left alone a delivery from Porter that nipped back.
Croft, who survived a sharp stumping chance down legside off Harmer, fell to the South African spinner when he got a top-edge to a sweep and substitute fielder Callum Taylor claimed above his head. The Lancashire captain had hit seven fours in his 73-ball 48.
Taylor also played a key part in the dismissal of Shivnarine Chanderpaul soon after. The West Indian veteran was sent back to the non-striker’s end by Vilas and failed to beat Taylor’s throw over the stumps to the bowler.
Four balls later, and to his first, Ryan McLaren got an outside edge to Westley to give Wagner his first Essex wicket. At that point Lancashire were 160 for six.
But a seventh-wicket stand of 57 between Vilas and Jordan Clark repaired the immediate damage. Clark took 14 off one Harmer over, including a six over long leg, before he was lbw without playing a shot to Beard.
Stephen Parry put on 47 with Vilas before he edged Wagner high into the air and Harmer dashed in from third slip, throwing himself full-length before taking the catch skidding on to the square. And Vilas followed soon after, trying to hit Beard over the top and finding Wagner at mid-off.
Anderson executed a passable reverse-sweep for four off Harmer to take Lancashire past 300. Jarvis finally went for 28, snapped up by Chopra at slip off Wagner.
That left Essex nine overs to negotiate at the end. They floundered, losing Nick Browne caught behind off Jarvis for 16 and nightwatchman Beard giving Davies a second catch off Anderson.