KENNEBUNK — Kennebunk’s offense struggled to finish drives Friday night against Falmouth, but the defense carried the Rams to a seventh straight victory.

Dante DeLorenzo and Zack Sullivan each returned an interception for a touchdown as the Rams rallied from a 7-6 halftime deficit, earning a 25-7 win.

“It was great,” DeLorenzo said of Kennebunk’s defense. “Our offense couldn’t finish, couldn’t punch it in, but our defense really stepped up. That’s what we have to do. If one person can’t produce, another person has to — if one part of the game can’t produce, the others have to step up.”

The Rams improved to 7-0 and will head to South Berwick next week to take on undefeated Marshwood in the final week of the Class B South regular season.

Kennebunk grabbed a 6-0 lead on a 60-yard touchdown pass from Tripp Bush to Ryan Connors in the opening minute.

It was still 6-0 when the Yachtsmen pounced on a fumble at the Kennebunk 33 with 1:03 left in the half. Nick Mancini hit Riley Reed for a 30-yard gain, and Coleman Allen rammed his way into the end zone.

“You have those (ugly) games once or twice during the season and I’d rather have it on a night like tonight than two or three weeks from now in a playoff game,” said Kennebunk Coach Joe Rafferty.

Connors kicked two field goals in the third quarter to make it 12-7, and then DeLorenzo and Sullivan sealed the win with their interception returns.

EDWARD LITTLE 21, SOUTH PORTLAND 20: The Red Eddies (3-4) overcame a 14-0 halftime deficit, then capped a frantic last-minute drive with a touchdown and conversion with 5.1 seconds remaining to beat the Red Riots (1-6) in South Portland.

South Portland broke a 14-14 tie on a 12-yard run by Anthony Poole with 1:18 remaining, but the conversion was blocked.

Poole rushed for two touchdowns in the first half.

GREELY 22, GORHAM 14: Joey Capella’s touchdown run and 2-point conversion in overtime lifted the Rangers (4-3) over the Rams (3-4) in Cumberland.

Gorham was stopped on fourth down in overtime, after throwing an incompletion on the final play of regulation from the Greely 18.

BRUNSWICK 14, BREWER 0: Nate Girardin ran 18 yards for a touchdown in the first quarter, and Cam Hathaway dove in from the 1 on fourth-and-goal early in the second as the Dragons (5-2) defeated the Witches (1-6) in Brewer.

NOBLE 28, YORK 21: Matt Beerworth returned one of his three interceptions 89 yards for a score in the first quarter, then set up the go-ahead TD midway through the fourth with another interception as the Knights (5-2) edged the Wildcats (3-4) at York.

Teagan Hynes had a TD pass in each half for York.

WELLS 33, MOUNTAIN VALLEY 0: Tyler Bridge rushed for two touchdowns and took the second-half kickoff 80 yards for a score as the Warriors (7-0) dominated the Falcons (5-2) at Wells.

Jonah Potter added a pair of TD runs, including a 63-yard burst in the fourth quarter.

SANFORD 60, DEERING 26: Xavier Levine completed 6 of 8 passes for 107 yards and three touchdowns as the Spartans (5-2) beat the Rams (2-5) in Sanford.

Levine had two TD passes in the second quarter, helping Sanford turn a 6-6 tie into a 33-12 halftime lead.

LEAVITT 49, MORSE 14: Wyatt Hathaway was 6 of 11 passing for 152 yards and two touchdowns as the Hornets (6-1) defeated the Shipbuilders (3-4) in Bath.