Geelong have broken Port Adelaide's four-game AFL winning streak, withstanding a fierce early challenge to win easily by 35 points.
The Cats kicked seven goals to two after halftime on Saturday at GMHBA Stadium and won 11.16 (82) to 7.5 (47).
Geelong improved to 6-4 and won two in a row for the first time since round four.
But Cats star Patrick Dangerfield was subbed out of the game in the last quarter with a tight calf.
Tyson Stengle kicked three goals for the Cats in Indigenous round and defender Tom Stewart starred, while midfielder Cam Guthrie racked up 37 possessions, including 15 contested.
Cats key forward Jeremy Cameron also kicked three goals, including a booming screw punt on three-quarter time that did a lot to decide the game.
Port utility Dan Houston had 30 disposals and took 11 marks.
After a scrappy opening, Port key forward Jeremy Finlayson fittingly kicked the first goal of the match in Sir Doug Nicholls Round.
Finlayson, a distant relative of Sir Doug, goalled 17 minutes into the first quarter.
The Cats kicked the last three majors of the term to lead by 11 points.
Port briefly hit the front in the second quarter, but Geelong led by a point at the main break.
The Cats surprisingly took no marks inside 50m before halftime, despite ideal conditions and an attack boasting Tom Hawkins, Cameron and Gary Rohan, who returned from injury for his first game of the season.
But the Cats went up a gear in the third, kicking five goals to one.
Finlayson had a very gettable shot on goal late in the term and kicked it out on the full.
The Cats raced the ball down the other end and Stengle kicked his third.
Cameron took a strong mark and kicked a massive goal with a screw punt from 50m on the three-quarter time siren to put another dagger through the Power.
Tellingly, heading into the last quarter the Cats had 20 scoring shots to nine.