CLEVELAND -- Carson Palmer needed 30 minutes of game time to get warmed up on Sunday, but once the 13-year veteran got going there was no stopping him or his Arizona Cardinals in their game with the Cleveland Browns.
The Cardinals overcame a shaky first half by scoring 24 unanswered points in the final two quarters to rally past the Browns 34-20 and raise their record to 6-2.
Palmer threw three touchdown passes in the final 30 minutes after uncharacteristically overthrowing his receivers on three deep throws in the first half.
"We had more energy in the second half," Cardinals coach Bruce Arians said. "We had better tackling defensively. Offensively we started making plays. We had three wide-open touchdown passes in the first half we don't normally miss."
Quarterback Josh McCown threw three touchdown passes in the first half to help the Browns take a 20-7 lead, but the Cardinals fought their way back, starting with a 37-yard field goal by Chandler Catanzaro on the final play of the first half.
The day started ominously for the Browns when the Cardinals took the opening kickoff and marched 82 yards in 11 plays on a drive ending with an 11-yard touchdown pass from Palmer to tight end Troy Niklas.
The Browns had to punt after getting one first down on their opening possession, but after that they dominated the half until Catanzaro's field goal began to turn the tide.
The Browns (2-6) have lost five of their last six games.
"It was a frustrating day," Browns coach Mike Pettine said. "It's hard to explain all of went wrong in the second half. We did some good things defensively taking the ball away. We just really couldn't get things going."
McCown threw two touchdown passes to wide receiver Brian Hartline and one to tight end Gary Barnidge in first half.
The Browns turned the ball over twice. A pass from McCown intended for wide receiver Travis Benjamin was picked off by Cardinals safety Rashad Johnson in the end zone on the second play of the fourth quarter to preserve a 24-20 Arizona lead.
"Soon as I saw him turn up out of the out-and-up I took off in the middle of the field," Johnson said. "I knew (Patrick Peterson) was on (Benjamin). He threw it up and I was able to keep my feet in and make a play for the team."
The Cardinals struck quickly in the second half after cutting the Browns lead to 10 at the end of the second quarter.
The Browns took the third-quarter kickoff and had to punt before making a first down. The Cardinals needed only four plays to make it a three-point game when Palmer connected with Floyd on a 60-yard touchdown pass down the right sideline.
Browns left cornerback Joe Haden, who had coverage on the play, suffered a concussion on the touchdown pass and had to leave the game.
Arizona took the lead the next time it had the ball. The key play in the drive was a 39-yard pass to wide receiver Jaron Brown to the Browns 9. Three plays later, Palmer threw his second touchdown pass of the game to Niklas. Browns safety Donte Whitner suffered a concussion on the long pass to Brown,
"We can't use the injuries as an excuse for taking a dip in the second half," Browns safety Tashaun Gipson said. "They made plays and we didn't."
A 6-yard touchdown pass from Palmer to Fitzgerald with 9:32 left gave the Cardinals a 31-20 cushion. Catanzaro added a 35-yard field goal with 2:16 to play.
NOTES: LB Markus Golden started for the Cardinals in place of Alex Okafor, who was inactive because of a calf injury. Okafor was tied for the team lead with two sacks before the game. ... A hamstring injury prevented Cardinals CB Jerraud Powers from practicing all week, but he started against the Browns. ... Browns S Tashaun Gipson started against the Cardinals after missing the last three games with an ankle injury. He intercepted a pass by Cardinals QB Carson Palmer. ... TE Gary Benjamin caught his sixth touchdown pass of the season for the Browns.