Rangers crashed out of the Scottish Communities League Cup as Inverness booked their place in the semi-finals with a 3-0 win at Ibrox.
Ally McCoist's men had come out on top against Clydesdale Bank Scottish Premier League opposition in the last round of the competition when they dumped then league leaders Motherwell.
But Caley Thistle proved to be too strong, with Andrew Shinnie, Gary Warren and Graeme Shinnie all on the scoresheet.
Hearts joined Inverness, Celtic and St Mirren in the last four after overcoming Dundee United 5-4 on penalties following a 1-1 draw at Tannadice.
Callum Paterson put the visitors in front after 20 minutes and hit a post in the second half after Johnny Russell's 35th-minute equaliser.
Hearts midfielder Darren Barr was sent off for a second bookable offence after 78 minutes and United went closest to an extra-time winner when John Rankin hit the post in the 119th minute before the disjointed affair went to penalties.
The teams remained level after the regulation five penalties apiece and after Hearts captain Marius Zaliukas converted the 13th spot-kick, Sean Dillon stepped up to fire wide, sending the visitors into the last four alongside Celtic, Inverness and St Mirren.
Rudi Skacel, who left Hearts after winning the Scottish Cup in May and trained with the Tynecastle club before joining United last week, came off the bench in extra-time but was not selected to take a penalty.