Hearts mounted a superb second-half comeback to earn a share of the points and deal a severe blow to Rangers' title ambitions at the same time.
The match looked over at half-time with Rangers two goals ahead through Kyle Lafferty and Barry Ferguson and looking in control of the match.
Hearts, with Calum Elliot on for the second half, played two strikers up front and it transformed the game.
Hristos Karipidis headed home from close range before Ruben Palazuelos steered the ball into the net to give Hearts an unlikely share of the points.
Rangers started brightly with Lafferty looking dangerous and it was the striker who put Rangers ahead. DaMarcus Beasley's pass found Lafferty in space and he drilled his shot low past Jamie MacDonald.
Steven Whittaker nearly turned in a Steve Davis cross as Rangers sought to increase their lead. Their second goal arrived just before half-time after the unfortunate Lafferty had been stretchered off.
When Pedro Mendes' corner was cleared back to him the Portuguese midfielder found Ferguson with a superb pass and the Rangers skipper fired home into the corner of the net.
Rangers went so close to going three ahead after the break when Davis' pass put Nacho Novo through but his shot struck the post.
Hearts threatened when Bruno Aguiar's pass found Elliot but Allan McGregor did well to turn his shot over.
From the corner Hearts reduced the deficit when Karipidis headed home.
Rangers were stunned when Hearts equalised a few minutes later. From David Obua's cross Elliot headed down to Palazuelos who guided his shot home from ten yards.
Mendea and Kris Boyd saw efforts held by MacDonald before the visitors nearly took all three points only for MacGregor to make a superb save from Elliot's powerful strike.