KANSAS CITY, Mo. (AP) -- Scott Servais reclined in a chair in the visiting clubhouse at Kauffman Stadium, a big smile on the Seattle manager's face, and spoke before the first reporter could ask a question.
"Long road trip, happy road trip," he said. "Cold road trip."
Most of it.
The weather finally turned Wednesday and gave Seattle a warm, sun-splashed afternoon in Kansas City, and Servais' club made sure to relish the spring-like temperatures. Kyle Seager hit a go-ahead homer with two outs in the eighth inning, and the Mariners held on to beat the Royals 4-2 to wrap up a winning seven-game journey that covered 10 days and about 5,200 miles.
Seattle went 4-3 on its visits to San Francisco, Minnesota and Kansas City.
"I thought we played really good baseball, and getting these wins the past two games really sets the pace for us going home," said James Paxton, who matched a career-best with 10 strikeouts over six sharp innings before turning the game over to the Seattle bullpen.
Nick Vincent (1-0) worked a perfect seventh, and Juan Nicasio retired three in a row after putting runners on the corners, before closer Edwin Diaz entered for the ninth.
Diaz worked around shortstop Jean Segura's second error of the game to earn his fourth save.
"Our guys up and down the lineup, but probably the top of the lineup, have been outstanding, really driving the train for us," Servais said. "I like where we're at."
The Royals' Danny Duffy and Brad Keller turned a 2-2 game over to reliever Justin Grimm (0-1), and he quickly got the first two outs in the eighth. But after walking Mitch Haniger, the reliever hung a 1-1 pitch that Seager popped into the Royals' bullpen in right field.
Seager also drove in a run with sacrifice fly in the first to provide most of Seattle's offense.
"After the first inning really good, but you don't get to subtract any inning from any outing," Duffy said. "When I take the ball, I expect the bullpen not to be used much, and that hasn't been the case. I was off in the first inning. There was no excuse for that."
What turned into a pitchers' duel Wednesday looked as if it'd be a high-scoring affair early.
Duffy gave up a single, walked three, withstood an ugly error by his catcher and at one point loaded the bases, only to escape the inning having surrendered just two runs.
Paxton countered by walking his first batter and allowing a single, but came through unscathed when Jon Jay was thrown out trying to steal third and Cheslor Cuthbert grounded out to end the inning.
The Royals eventually knotted the game at 2 in the fourth on Paulo Orlando's two-out double.
Duffy's pitch count did him in, and the left-hander was lifted after getting the first out in the fifth inning. He allowed four hits and three walks but also struck out seven.
Paxton scattered six hits and a walk while keeping the Royals at bay.
"Paxton did a great job of bearing down when we got runners in scoring position. We were 1-for-11," Royals manager Ned Yost said. "Not real productive in that phase of our game today."
STATS AND STREAKS
The Mariners' Dee Gordon extended his hit streak to 16 games dating to last season. ... Seager had four go-ahead homers in the eighth inning or later last season. ... The Royals fell to 3-7, their worst start through 10 games since 2012. They've allowed 42 runs in their seven losses and no runs in their three wins. ... The Royals' Mike Moustakas went 2 for 4, his fourth straight multi-hit game.
Mariners: DH Nelson Cruz (sprained ankle) did some running before the game. Servais said he hopes Cruz will be able to return to the lineup this weekend.
Royals: RHP Nate Karns (elbow inflammation) continues to throw side sessions, and Yost said the last hurdle to his return is some fluid on the outside of his elbow dissipating. Yost says that Karns will likely head to the bullpen when he returns.
Mariners: After a day off, RHP Mike Leake takes the mound Friday night when the Mariners open a seven-game homestand with three games against the Oakland Athletics.
Royals: RHP Ian Kennedy tries to build on a solid start to his season when the Royals begin a four-game series with the Los Angeles Angels on Thursday night at Kauffman Stadium.