Northamptonshire added more than 150 to the total for the final three wickets and accounted for four Glamorgan batsmen to setup an intriguing final day at The County Ground.
Opener Nick Selman’s 69, along with Billy Root’s 56, helped Glamorgan reach close on 205 for four, 248 ahead, although an increasingly flat pitch is likely to play some role in the outcome on Day 4.
Earlier, Gareth Berg and debutant Wayne Parnell both scored half-centuries to reduce Northamptonshire’s first-innings deficit to just 43 – having been 56 for five.
Adam Rossington and Saif Zaib had rebuilt phenomenally on the second day, but Berg and Parnell’s eighth-wicket stand of 108 pulled the match towards parity.
The experienced pair scored freely despite an early new ball, as they chalked up previously unlikely batting points for passing 300 and 350.
Parnell reached his half-century first, from 81 balls, thanks to a wonderfully caressed cover drive, before the experienced duo touched gloves on a three-figure stand.
Berg was forced to wait to follow his partner to the milestone as he dropped twice in the same over by James Weighell, off his own bowling, before Parnell departed – the South African all-rounder yorked by Weighell for 54.
Berg did eventually get to fifty in 83 balls as he and Nathan Buck added 34 together.
Northamptonshire’s innings ended when Buck was snaffled at backward point, with Weighell managing to get his fingers underneath a dipping ball, and Ben Sanderson was castled – leaving Berg unbeaten on 69.
As with the first-innings, Glamorgan’s openers David Lloyd and Selman moved past 50 together, Selman dropped on 15 by Rossington, who damaged a finger on his left hand in the process and was forced to off the field for the remainder of the day.
Ricardo Vasconcelos kept and captained in Rossington’s place and almost immediately was called upon as Buck found Lloyd’s outside edge.
Buck struck again in his following over, to keep up the flurry of wickets trend which has shaped the match so far, as Andy Balbirnie mistimed a pull to the short legside boundary.
Selman, having passed 50 in 124 balls, departed for 69 when he flicked Berg down the leg side to give Vasconcelos a second grab with the gloves.
Root, having begun the season with a century against Yorkshire, passed his half-century in 103 balls before he was also caught behind, for 56 off Sanderson.
Glamorgan 407 (Berg 3/69, Parnell 3/82) & 205/4 (Buck 2/44, Berg 1/28)
Northamptonshire 364 (Rossington 76, Berg 69*)