Bristol City moved into the Sky Bet Championship play-off places as Adam Webster's first-half header secured a 1-0 win at out-of-form Middlesbrough.
Having beaten Sheffield United on Saturday, Lee Johnson's side saw off another of their promotion rivals as they leapfrogged Derby and Aston Villa to move into the top six.
Middlesbrough had plenty of opportunities, but Jonny Howson and Britt Assombalonga both hit the frame of the goal on another frustrating night for the hosts.
Boro have now suffered five defeats in a row, and have slipped two points adrift of the play-off positions as their form has imploded at a critical stage of the season.
Even the long-awaited return of Stewart Downing was unable to help them, with the former England international failing to arrest a goalless run that now stands at three games.
Downing returned to Middlesbrough's Championship starting line-up for the first time in 2019 after signing a waiver that scrapped the automatic award of a new one-year contract.
The 34-year-old was prominent from the outset, setting up Assombalonga for the first of three golden first-half chances that went begging for Middlesbrough.
Assombalonga saw his goalbound header hacked clear by Bailey Wright, George Saville blazed over the crossbar after Ryan Shotton rolled the ball into his path and Howson took an age to steady himself in the box before firing a wasteful effort into the legs of goalkeeper Max O'Leary.
Howson went even closer moments later, firing in a deflected effort that somehow stayed out after cannoning off the inside of a post, and Boro were made to pay for their profligacy when the Robins opened the scoring against the run of play shortly after the half-hour mark.
Jay Dasilva swung over a corner from the right, and Webster was completely unmarked as he powered home a header from the edge of the six-yard box.
Suddenly City were buoyant, and the visitors would have been further ahead at the interval had Downing not produced an excellent sliding block to prevent Josh Brownhill's shot finding the net.
Darren Randolph saved from Jamie Paterson as the game flowed from one end to the other, and Boro's frustration continued on the stroke of half-time as Assombalonga diverted Howson's low cross wide of the target.
Assombalonga went even closer seven minutes into the second half, receiving the ball from Downing at the end of a well-worked free-kick routine before drilling in a shot that cracked against the base of the left-hand post.
Marlon Pack wasted a great chance to make things safe for the Robins, side-footing wide after breaking into the box with 20 minutes left, but the visitors held on for a crucial win.
ga('create', 'UA-72310761-1', 'auto', {'name': 'pacontentapi'});
ga('pacontentapi.set', 'referrer', location.origin);
ga('pacontentapi.set', 'dimension1', 'By Press Association Sport staff');
ga('pacontentapi.set', 'dimension2', 'e9e2048c-81d6-42d6-9e42-de97691c149a');
ga('pacontentapi.set', 'dimension3', 'paservice:sport,paservice:sport:club-news,paservice:sport:football,paservice:sport:match-reports');
ga('pacontentapi.set', 'dimension6', 'story');
ga('pacontentapi.set', 'dimension7', 'composite');
ga('pacontentapi.set', 'dimension8', null);
ga('pacontentapi.set', 'dimension9', 'sport:football');
ga('pacontentapi.send', 'pageview', { 'location': location.href, 'page': (location.pathname + location.search + location.hash), 'title': 'Bristol City move into play-off places and heap more misery on Middlesbrough'});