The Highlanders held out a fast-finishing Bulls side to pull off a 16-11 Super Rugby upset in Dunedin.
The home side had to withstand plenty of late pressure to end a two-match losing streak and breathe life back into their finals hopes.
For the Bulls, who had begun the round at the top of the table, the defeat ended a five-match winning run and left them sitting below new leaders the Chiefs, who have the bye this weekend.
The Highlanders didn't hit the front until midway through the second half, when they scored the match's opening try while a man up.
The Bulls had lost prop Dean Greyling to a yellow card after they had been warned about repeated infringing at the breakdown.
Awarded a kickable penalty, the Highlanders spurned a shot at goal and lock Jarrad Hoeata came close to dotting down.
He was ruled held up, but had another dab for the line moments later and this time couldn't be denied.
Mike Delany's conversion made the score 13-6 and when he then landed a penalty, it looked like the Highlanders had some breathing space.
Instead, the Bulls mounted a big comeback over the last 10 minutes.
Greyling had a chance to make up for his sin-binning, but lost the ball in the act of scoring.
However, replacement hooker Willie Wepener did get over shortly after to make it a nervous last five minutes for the home fans.
The Highlanders went for a high-paced and expansive game plan from the start, running the ball at every opportunity.
But they came up against a stout Bulls defence, while mistakes at key moments and their struggles at lineout time also halted their momentum.
The Bulls were happy to kick for territory or loft up-and-unders and went into halftime 6-3 up on the back of two penalties to five-eighth Morne Steyn in his 100th Super Rugby match.
Delaney's second penalty tied the scores, before the Highlanders pulled ahead with Hoeata's try.
HIGHLANDERS 16 (Jarrad Hoeata try Michael Delany con 3 pens) bt BULLS 11 (Willie Wepener try Morne Steyn 2 pens) at Forsyth Barr Stadium. Referee: Ian Smith.