The Liberal Democrats have won a by-election for the vacant Culloden and Ardersier seat on Highland Council by just 25 votes, ahead of the SNP in second place.
SNP candidate Pauline Munro had led comfortably all the way against eight rival candidates until the final round of eight stages of the count under the complex single transferable vote (STV) system.
She requested a recount because the numbers were so close, but a review of the numbers added a single vote to give Lib Dem candidate Trish Robertson a 25-vote majority.
Mrs Robertson succeeds Labour’s John Ford who died in the summer at the age of 85.
She said: “I’m a bit shocked. The SNP were out in front so much, I thought they’d won but I’m happy and looking forward to getting started.”
Mrs Munro said: “I’d like to thank everybody who came out to vote for the SNP. Nobody wanted this, under the circumstances.
“John Ford was a fine guy. My commiserations to the Labour Party and John’s family and friends.
“I congratulate Trish Robertson. She got elected on the back of the Tory vote.”
“Second preference” under the STV system suggested Conservative voters made the difference, switching their support to the Lib Dems rather than the SNP in the last leg, once their own candidate had dropped out of the race due to having too few votes.