Hearts lost two soft goals in two minutes after taking the lead in Switzerland as they fell to a 2-1 defeat by Zurich.
Lawrence Shankland gave Hearts the lead from the spot midway through the first half of the Europa League play-off first leg but the visitors were behind inside 12 minutes.
Adrian Guerrero equalised after Hearts failed to deal with a simple long ball, and then Blerim Dzemaili capitalised from some more poor defending.
There were further scares but Hearts emerged from their first European game in six years with a real chance of progressing at Tynecastle next week. The losers are guaranteed Europa Conference League group action.
Hearts will need to improve though to reach the more prestigious competition after Zurich brushed off a poor start to their title defence and the loss of home advantage.
Sitting bottom of the Swiss Super League with two points and one goal from five matches, Zurich had to make a 50-mile trip to St Gallen with their own stadium booked for a pop concert.
Hearts suffered an early blow when Craig Halkett went off with a muscle strain in the seventh minute. Toby Sibbick came on to take his place in the back three.
The loss was keenly felt but Robbie Neilson’s side initially dealt with the disruption without needing to over-rely on Craig Gordon, and the visitors took the lead after Nathaniel Atkinson went down in the box.
The referee initially played on but appeared to get a message from his assistant, and replays showed the Australian wing-back had got a full set of studs at the top of his ankle from Ole Selnaes. Shankland drilled the penalty into the bottom corner.
Hearts failed to build on their lead and almost lost it to a Zurich counter-attack four minutes later after Peter Haring was caught in possession. Gordon saved well from Dzemaili.
The Swiss champions were level after Atkinson was left to deal with the goalkeeper’s kick-out and could only head it behind him under pressure from Guerrero, who showed brilliant technique to volley past Gordon.
Atkinson was soon among several Hearts players who failed to deal with a cross and Dzemaili was left unmarked in a crowded penalty box to cut a powerful strike into the top corner.
Hearts rallied and Shankland was denied another penalty after being bundled over. Barrie McKay created a chance for Jorge Grant to level after beating two defenders but home goalkeeper Yanick Brecher got down to save the midfielder’s shot.
Michael Smith replaced Atkinson at half-time but Hearts continued to look vulnerable down the right side of their defence as Zurich spurned four decent chances inside the opening five minutes of the second half.
Guerrero missed another good opportunity to volley home just before Neilson brought on attackers Alan Forrest and Liam Boyce midway through the half.
Both substitutes failed to make the most of swift opportunities inside the box and Zurich got back on top.
The Hearts fans were on edge as Antonio Marchesano sent a free header wide and Gordon produced an excellent stop from Fabian Rohner after the goalkeeper was left exposed.