Elina Svitolina progressed through to her first grand slam semi-final as she ended Karolina Muchova's Wimbledon run with a 7-5 6-4 triumph.
Having shocked third-seed Karolina Pliskova in the round of 16, Muchova made a fine start on No.1 Court, racing to a 5-2 lead in the opening set.
But her inexperience was exposed as Svitolina moved through the gears to come from behind and claim the first set, then reeling off a five-game winning streak to start the second.
And despite a late charge from Muchova, Svitolina regained her composure to serve out for victory with an ace, setting up a last-four clash with Simona Halep.
Svitolina started well with a break in the first game, but Muchova swiftly rallied, breaking twice herself before holding serve to surge 5-2 in front.
The world number eight clawed her way back into the contest and after breaking in the ninth game, held in the next to draw level at 5-5.
An epic game followed, with Svitolina finally coming out on top when she converted a fifth break-point opportunity after 12 minutes of absorbing play between the pair, with a slack overhead from Muchova then handing the Ukrainian the set.
Svitolina found herself 2-0 down in the second set, but immediately got her revenge in the next game before clawing back two break points to hold.
A weary Muchova shot handed the eighth seed the advantage, and the 22-year-old found herself 4-2 down when she sent a weak effort into the net from the baseline.
Another break followed, but Muchova – aided by the memories of her win over Pliskova from a similarly perilous position – stalled her opponent's progress.
However, Muchova's resistance was finally ended when, after she won a wonderful point with a sublime backhand volley, she failed to return a powerful serve to the corner.
Elina Svitolina  bt Karolina Muchova 7-5 6-4
Svitolina – 24/16
Muchova – 34/31
Svitolina – 2/1
Muchova – 0/1
BREAK POINTS WON
Svitolina – 6/11
Muchova – 4/6
FIRST SERVE PERCENTAGE
Svitolina - 55
Muchova - 66
PERCENTAGE OF POINTS WON ON FIRST/SECOND SERVE
Svitolina – 59/47
Muchova – 52/46
Svitolina - 71
Muchova - 66