James Cook rushed for a season-high 111 yards and two touchdowns as the Buffalo Bills defeated the host Seattle Seahawks 31-10 in a matchup of division leaders on a sloppy Sunday afternoon. Josh Allen completed 24 of 34 passes for 283 yards and two scores for the AFC East-leading Bills (6-2), who won their third game in a row. Khalil Shakir grabbed a career-high nine receptions for 107 yards. The NFC West-leading Seahawks (4-4), who lost for the fourth time in their past five games, managed just 233 yards of total offense without leading receiver DK Metcalf, who suffered a sprained medial collateral ligament last week at Atlanta.