Hearts leapfrogged St Johnstone to climb to fifth place in the Ladbrokes Premiership with a 1-0 victory at Murrayfield.
Kyle Lafferty scored the only goal 16 minutes from time as Craig Levein's men moved into the top half of the table. Miles Storey grabbed an injury-time winner as bottom club Partick Thistle came from behind to beat Dundee 2-1 at Firhill for their first Premiership victory of the season while Thomas Mikkelsen struck late on as Ross County hit back to see off Hamilton Accies 2-1 in Dingwall.
St Mirren have a two-point lead in the Ladbrokes Championship after a 0-0 draw away to Falkirk. Dunfermline moved above Livingston and into second spot with a 3-1 victory against Livi at East End Park, helped by a Kallum Higginbotham double.
Iain Vigurs sent Inverness CT on their way to a 2-0 win away to fourth-placed Dundee United to move out of the bottom two. Queen of the South were 1-0 winners away to bottom club Brechin City and it finished 1-1 between Morton and Dumbarton at Cappielow.
Biggest win of the day came in Ladbrokes League 1 as Arbroath thrashed Airdrieonians 7-1 at Gayfield, helped by doubles from Ryan McCord and Danny Denholm. Michael Moffat hit a hat-trick as Ayr United beat bottom club Forfar Athletic 5-0 at Station Park to move to within two points of leaders Raith Rovers, whose game at Stranraer was abandoned due to a waterlogged pitch with the score 1-1. Iain Flannigan sealed a 4-1 home win for Alloa Athletic over East Fife and Queen’s Park earned a 1-0 victory against Albion Rovers at Cliftonhill.
Stirling Albion extended their advantage at the top of Ladbrokes League 2 to five points thanks to a 3-0 win over bottom side Cowdenbeath at Central Park, with Darren Smith setting them on their way. Montrose are up to second place after winning 1-0 at Berwick and Peterhead came from behind to see off Clyde 4-1 at Broadwood. Stenhousemuir drop to fourth after losing 2-0 to Elgin City at Borough Briggs and Annan Athletic defeated Edinburgh City 1-0 at Ainslie Park.