In a game of wit and determination, the 49ers gutted out a victory against the stingy Arizona Cardinals. When the Cardinals went up 16-0 at one point, many people felt as if the 49ers couldn’t come back. Afterall, the 49ers had less than 100 yards of total offense at that point in the game. However, gritty defensive play and relentless QB play from Jimmy Garoppolo ultimately was the deciding factor in the 49ers escaping with the victory.

Jimmy had the big breakout game many media pundits and fans have been clamoring for ever since he received his lucrative contract. For the afternoon, Jimmy threw for 424 yards, 4 touchdowns to go along with 2 interceptions. Many know that Jimmy is due for a back-breaking, head-scratching throw or two, and as expected, he threw some. However, those turnovers did not seem to affect his confidence, as he led a game-winning drive for the high and mighty 49ers. Aside from his solid QB play, the biggest takeaway from this game was Kyle Shanahan’s ability to adjust his play calling in the second half. For the first half, most of his play calls included failed inside and outside zone runs for minimal gains, as well as pass plays that either resulted in tough contested catches, or throws that were in traffic. It felt as if the WRs were getting very little separation, if any.

Whether the Arizona defense was playing lights out or not however, Kyle’s ability to adapt and put his offense in positive situations in the second half kept this team alive throughout the game. The adjustment was noticeable, as you saw plenty of WR screens and RB screens, as well as shallow crossers to give his play-makers the chance to make some noise. For the night, the leading receiver for the 49ers was rookie standout Deebo Samuel who finished with 8 catches for 134 yards. It would be his second consecutive game topping 100 yards receiving. Other standouts include Kyle Juszczyk, who caught 7 passes for 63 yards, and touchdown machine Ross Dwelley, who had 4 catches for 14 yards, two of which were touchdowns, including the first down at the end of the game that set up Jeff Wilson Jr.’s touchdown catch and run. In a game that included a banged-up Emmanuel Sanders, as well as the absence of George Kittle and Matt Breida, Kyle Shanahan was able to work around these massive losses, and still call one hell of a game. Coming into the game, the 49ers came in averaging 162 rushing yards per game on the season. They wound up finishing for 34 yards rushing total. Tevin Coleman had 14 rush yards on 12 carries, and Raheem Mostert had 13 rush yards on 6 carries. Overall, many felt like this was going to be a “Jimmy needs to be the offense” type of game, and without question he delivered.

As for the defense, it was another admirable game from the remaining Hot Boyzz and Robert Saleh. Four sacks and constant pressure throughout the day kept Kyler Murray on his toes and rolling out of the pocket on most of his pass plays. However even with the pressure, Murray still had a decent day, completing 24/33 passes for 150 yards and 2 TDs. The defensive line was pressuring Kyler on over half of his drop backs, and the results showed. As for the run defense, it was another rough day, as the Cardinals ran for 135 yards, with big runs between both Kenyan Drake and Kyler Murray. One thing the 49ers defense had yet to see until they played Arizona two weeks ago was the play of mobile QBs. The DL was able to contain somewhat, although for the game it wasn’t consistent. To conclude however, the defense on both the front end and back end performed very well, limiting Kliff Kingsbury to a shallow, “safe” style of offense that did not result in too much yardage. Robert Saleh continues to show why he’s one of the best defensive play-callers in the game right now, as his ability to adjust his defense to counter short screens and Murray scrambles was one of the biggest factors in the 49ers winning the game.

Overall, the team played solid football. After an ugly first quarter, both Shanahan and Saleh, as well as the players on the field being able to adjust to the situations in front of them, only prove why the 49ers are looking more and more likely to make a deep playoff run. Next up on the ledger: Aaron Rodgers and the Packers on Sunday Night Football.