Michael Stewart’s second-half penalty at Parkhead sent Hearts past wasteful Celtic and into the semi-finals of the Co-operative Insurance Cup.
In the 58th minute the Hearts midfielder, who had been booed by his own supporters during the previous Saturday’s goalless Clydesdale Bank Premier League game with Falkirk, scored from the spot after Hoops left-back Danny Fox had tripped Christian Nade inside the Celtic box.
Home substitutes Paddy McCourt and Georgios Samaras both hit the woodwork and the Greece internationalist missed several chances as the home side pressed for the equaliser.
As the anxiety gripped Parkhead in the dying stages, skipper Stephen McManus was red carded for a wild lunge at Andrew Driver and when the final whistle went the boos rung out around the stadium.
Hearts will join St Mirren, St Johnstone and Rangers in the hat for the last-four draw while Hoops manager Tony Mowbray will have to find answers to his side’s shocking home form, with two wins out of nine at Celtic Park since taking over from Gordon Strachan in the summer.
With around 20,000 inside the stadium at kick-off, and the top tier closed altogether, there was a ghostly atmosphere as Hearts got the game going.
The home side almost went a goal behind within a minute when Jambos midfielder Ian Black played Nade in at the edge of the Celtic box with the home defence posted missing.
The Gorgie striker knocked his shot from 12 yards past Hoops keeper Lukasz Zaluska but Parkhead right-back Andreas Hinkel was perfectly placed to clear a couple of yards from goal.
The much-changed home side, the Co-operative Insurance Cup holders, quickly took a grip of the game in terms of possession but there was enough unease in their defence, and occasional hesitancy in midfield, to suggest the Edinburgh side could find some joy.
Celtic wide-man Shaun Maloney found a yard when he played a one-two with Zheng Zhi but Gorgie keeper Janos Balogh coped easily with the low drive from 14 yards, minutes before Parkhead defender Gary Caldwell blocked a Driver shot following a Hearts corner.
However, as the first half unfolded further, excitement levels dissipated and the Celtic supporters’ anxiety levels increased.
In the 33rd minute Aiden McGeady, blowing hot and cold on the wing, lost possession and Nade sent Black racing through but the former Inverness player failed to connect properly with his shot inside the box and the ball trundled through to Zaluska.
Moments later, with the visitors growing in confidence, Hearts defender Ismael Bouzid headed David Obua’s cross past the far post from 12 yards, Celtic responding within seconds as Zheng fired wide from the edge of the box.
In the 41st minute, as Celtic gave it one big effort before the break, Balogh foiled Chris Killen with a point-blank save to concede a corner but it came to nothing.
Hoops’ cult hero McCourt replaced Maloney for the start of the second half, a move which found favour with the home fans while Eggert Jonsson came on for Black and almost made an instant impact.
Again Celtic were slow out of the traps and within seconds of the restart Hinkel again came to the rescue, thwarting Driver who had knocked the ball past Zaluska after running on to a Jonsson head-flick which cut the Celtic defence wide open.
In the 51st minute it was the turn of the game’s other substitute, McCourt, to make his mark which he did when he produced a moment of magic.
The Northern Ireland internationalist left Hearts right-back Craig Thomson for dead 40 yards from goal, drove inward at goal and cracked the bar with a thundering drive from the edge of the box. But in the 58th minute the Celtic fans were silenced when the visitors took the lead through a Stewart penalty.
With the Hoops defence again all over the place, the lunging Fox tripped Nade inside the box as the Frenchman drove in at goal and there were few appeals from the home side as referee Craig Thomson pointed to the spot.
Zaluska got his hand to Stewart’s unconvincing penalty but failed to stop the ball making its way over the line.
Samaras and McDonald immediately replaced Zheng and Killen and Celtic began throwing everything at the Tynecastle box.
In the 71st minute McGeady set up Samaras who saw his close-range shot brilliantly blocked by Balogh and seconds later the Greece international chipped the Hearts keeper from 14 yards only to see the ball strike the base of the post and bounce out.
Then, moments later, Nade beat McManus three times inside the Parkhead penalty area but his chip did not have enough air to beat Zaluska.
Still the pressure came upon the Hearts box and in the 78th minute Samaras managed to head wide of the target from six yards after McGeady again was the provider.
In the second minute of added time McManus was red carded for a wild lunge at Driver, referee Thomson upgrading it from yellow on the advice of his linesman.
Celtic: Zaluska; Hinkel, McManus, Caldwell, Fox; Crosas, N’Guemo, Maloney (McCourt 45), Zhi (Samaras 58), McGeady, Killen (McDonald 58). Subs not used: Cervi, Wilson. Booked: Fox. Sent Off: McManus
Hearts: Balogh; Thomson, Bouzid, Goncalves, Wallace; Stewart, Palazuelos; Obua, Black (Jonsson 45), Driver; Nade (Witteveen 73). Subs not used: Kello, Kucharski, Glen. Booked: Bouzid, Jonsson, Goncalves
Referee: Craig Thomson