St Mirren 0-3 Rangers
James Tavernier scored twice as managerless Rangers took advantage of Ryan Strain's early red card to beat St Mirren and leapfrog their hosts into second place in the Scottish Premiership.
The visiting captain tucked away a spot-kick after Strain was sent off for a deliberate handball on the half-hour mark.
But, despite a couple of fine saves from Zach Hemming, Rangers rarely looked like extending their lead until Abdallah Sima slotted the second with 20 minutes remaining and Tavernier launched a stunning, stoppage-time strike.
That was enough to end St Mirren's six-game unbeaten home run since the start of the season and take the Ibrox side above them and into second place on goal difference.
More importantly, it means Rangers do not end the weekend further detached from Premiership leaders Celtic.
Aberdeen 0-0 St Johnstone
Bottom side St Johnstone are still without a win in the Scottish Premiership but picked up a deserved draw against Aberdeen after a tepid match played in grizzly conditions at Pittodrie.
Steven MacLean's Saints, already four points adrift at the bottom, had the better of the first hour but could not create enough clear opportunities, with Graham Carey's two efforts over and Luke Jephcott's blocked shot as close as they came.
Aberdeen, who toiled for long spells as they opted for a direct approach, did have the ball in the net just before half-time, but Andy Considine's own goal was ruled out after a VAR check as Luis 'Duk' Lopes was judged to be offside and interfering with play.
Bojan Miovski also had a fantastic chance to break the deadlock in the second half, but having done the hard work fired his shot over the bar from inside the area.