Celtic extended their lead at the top of the Ladbrokes Premiership to three points after a dramatic 4-3 win over Aberdeen at Pittodrie.
Scott Sinclair twice had the Hoops ahead but the Dons hit back with penalties from Stevie May and Sam Cosgrove, only for Odsonne Edouard and Sinclair, with his hat-trick goal, to make it 4-2 before Lewis Ferguson pulled one back.
Rangers were held to a 1-1 draw by Hibernian at Ibrox despite going ahead through Alfredo Morelos as Darren McGregor equalised with four minutes left.
Jordan Jones scored the only goal as third-placed Kilmarnock beat Motherwell 1-0 at Fir Park. The Steelmen had Curtis Main sent off with 20 minutes to go.
Hearts defeated Hamilton Accies 2-0 at Tynecastle thanks to goals from Steven Naismith and Arnaud Djoum before the visitors were reduced to 10 men, with Shaun Want sent off.
Tony Watt scored a last-minute winner as St Johnstone moved into the top six with a 1-0 victory over St Mirren in Paisley.
Bottom club Dundee and Livingston drew 0-0 at the Kilmac Stadium at Dens Park. Jack Hamilton saw red for Livi in the closing minutes.
Download the new SPFL app now for access to all the latest Scottish football news, social media updates and video content, all in one place. Available for free from the App Store and Android stores and also HERE.