MINNEAPOLIS — Kyle Gibson dazzled for seven innings before tiring late, rookie Zack Granite had his first career three-hit game and the Minnesota Twins managed to hold on to a 6-5 win against the Detroit Tigers on Saturday.