Matt Gafa and Rikki Sheriffe each scored two tries as Harlequins moved back into the Super League play-off places with a hard-fought victory over Hull Kingston Rovers.
Gafa scored in each half to take his tally for the season to eight as the London club produced a dominant first-half display and then withstood a second-half fightback from a determined Rovers side.
The visitors made the brighter opening to the game and it was only a combination of poor decision-making and strong home defence that kept the scoresheet blank. First, the burly Rovers stand-off, Paul Cooke, broke tackles before Ben Galea's grubber kick eluded everybody. Moments later Ben Fisher knocked on with the line at his mercy.
Midway through the half Quins turned the game on its head, scoring two tries in three minutes. The first came when Danny Orr's chip allowed Jon Wells to leap highest and plunge over the line; seconds later the captain, Rob Purdham, stole in after Sheriffe had made an electrifying 50-metre run.
With Henry Paul converting one of the tries and adding a penalty, Harlequins had a 12-0 advantage and the confidence seemed to drain from the visitors. The Londoners then made their dominance tell again when Orr made a surging break and Gafa was on hand to scamper over, Paul adding the extras again.
Just as in the first half Hull KR made a strong start to the second period. This time they were rewarded when Ben Cockayne profited from a Cooke up-and-under to crash over for a try.
The conditions deteriorated but Quins still managed to stretch their lead when first Paul kicked a drop-goal and then Gafa scored his second try after more good work by Purdham. But the visitors were refusing to go quietly and quick tries from Cockayne and Kirk Netherton produced a frantic finale to the game.
With the minutes ticking away, and with Rovers desperate for possession, Sheriffe found space to twice dart in and seal victory for the home side.
Harlequins: Wells, Clubb, Gafa, Howell, Sheriffe, Paul, Orr, Temata, Randall, Ward, Mbu, Worrincy, Purdham. Interchange: Rinaldi, Melling, Haggerty, Grayshon.
Hull Kingston Rovers: Briscoe, Fox, Cockayne, Walker, Fitzhenry, Cooke, J Webster, Mills, Fisher, Vella, Newton, Lovegrove, Galea. Interchange: Crossman, Gene, I'Anson, K Netherton.
Referee: I Smith (Oldham).