SYDNEY has overcome severe goalkicking yips to sink Port Adelaide by 19 points for a season-reviving away win.
The Swans triumphed 9.17 (71) to 7.10 (52) at Adelaide Oval on Saturday to climb two rungs to 11th on the ladder.
Despite butchering a series of shots, Sydney (six wins, eight losses) is now only two victories outside the top eight - the same as 12th-placed Port.
The Swans were inspired by Isaac Heeney and captain Callum Mills, while Will Hayward booted three majors, including two in 60 seconds.
Hayward's strikes came in an opening half when the visitors were in command but logged an inaccurate 4.10 to 2.4 for an 18-point half-time lead.
Sydney slipped 27 points clear when Heeney goaled in the third term before a brief cameo from Port's Willie Rioli threatened to turn the tide to the home side.
Rioli scored one major and set up another in a three-minute patch as the Power crept within 16 points, their three-quarter-time deficit.
But Swans champ Heeney and the unheralded Hayward soon effectively sealed the result.
The dynamic duo goaled inside the initial eight minutes of the final term to take the sting fully from Port, who were 32 points down before scoring three late goals.
Heeney was brilliant in his roaming role, gathering a match-high 29 disposals and 13 contested possessions.
Mills (27 possessions, eight marks), the rebounding Nick Blakey (22 touches, one goal) and Angus Sheldrick (21 disposals) all found plenty of the ball.
Brodie Grundy ruled the rucks with 35 hitouts and 22 disposals, and, on return from injury, Errol Gulden (18 possessions) and Tom Papley (16) showed glimpses.
But another returning Swan, Joel Amartey, was the chief culprit in his side's waste.
Amartey booted 0.6 - another 40m attempt fell short, and he sprayed a set shot out-on-the-full in the final quarter.
Chad Warner, Papley and Sheldrick all returned 0.2.
Port Adelaide vice-captain Zak Butters (28 disposals, one goal) and skipper Connor Rozee (25 disposals) toiled gamely.
Forward Sam Powell-Pepper (20 touches) and winger Jase Burgoyne (20) also battled against the Sydney tide.
PORT ADELAIDE 0.2 2.4 4.6 7.10 (52)
SYDNEY 1.6 4.10 5.16 9.17 (71)
GOALS
Port Adelaide: Rioli, Horne-Francis, Georgiades, Butters, Byrne-Jones, Powell-Pepper, Richards
Sydney: Hayward 3, Heeney 2, McInerney, Blakey, McLean, Campbell
BEST
Port Adelaide: Butters, Rozee, Burgoyne, Powell-Pepper
Sydney: Heeney, Grundy, Blakey, Mills, McInerney, Hayward
INJURIES
Port Adelaide: Nil
Sydney: Nil
SUBSTITUTES
Port Adelaide: Jeremy Finlayson, replaced Jordon Sweet in the third quarter
Sydney: Riley Bice, replaced Aaron Francis at three-quarter time
Crowd: 33,576 at Adelaide Oval