Harper Woods Stops Record-Setting South Christian on Final Play to Clinch 1st Title

By Paul Costanzo
Special for MHSAA.com

November 25, 2023

DETROIT – Carson Vis had been getting away all afternoon. 

The Grand Rapids South Christian quarterback had smashed Finals records for passing yards and total offense in Saturday’s Division 4 Final against Harper Woods, mostly by evading pressure and finding his senior receiver Jake Vermaas for big plays.

So, when the Sailors needed just three yards to tie the game with three seconds to play, Harper Woods made sure they knew where Vermaas was, and that Vis didn’t get away one more time.

Defensive end Javonte Lee-Forbes put immediate pressure on Vis, draping himself on his legs and forcing the 6-foot-4 junior to attempt to fit in a pass – not to Vermaas. Keyontae Wilson broke it up, preserving a 33-27 victory for the Pioneers and giving them the first Finals title in program history.

“We were keying on two things, No. 2 (Vermaas) and No. 5 (Vis),” Harper Woods coach Rod Oden said. “First we needed to identify where (Vermaas) was, and two, we needed to cup the pocket and keep (Vis) inside, and he almost still got outside. Once we were able to contain the quarterback, we knew he had to try to just make a play, and we made a play. We made one more play than they did.”

In a game that featured 1,030 yards of total offense (533 from South Christian, 497 from Harper Woods), the second-most in Finals history, it’s not exactly fitting that the defense won the deciding play.

But it was something Oden knew his team would need, eventually.

“I’m glad it came down to the end,” he said. “Our defense, we knew it would come down to them for us to win the championship. The offense has kind of been consistent all year, and (the defense) had an opportunity to go out there and make a play, and they made it.”

South Christian's Carson Vis (5) unloads a pass as the Pioneers' Johnny Nelson (21) and Javonta Lee-Forbes (28) apply pressure.Both offenses spent most of the game making plays, led by Vis’ record-breaking performance.

He threw for 441 yards on 30 of 44 passing with two touchdowns and one interception. His passing yards broke the record previously set by Armani Posey of Detroit Martin Luther King in 2015 (383). His 30 completions were also a record, breaking the previous mark of 26 set by Cooper Rush of Lansing Catholic (2011) and AJ Westendorp of Holland Christian (2008).

Adding in his 72 rushing yards, Vis finished with 513 yards of total offense, well ahead of Westendorp’s 426, which was the previous record. And all of that – plus a little more – came in the final three quarters, as he had negative-6 total yards through the first 12 minutes.

“I would say it was first-quarter nerves,” Vis said. “I wasn’t being myself out there. Not relaxed and not getting into it. We started getting some easy completions, we were trying to take shots early on. I started getting into a rhythm and started getting it to my guys who were getting open. Definitely (I can appreciate how well I played), but I feel for my guys, my seniors. Some of them, this is our last time playing. So I’m just going to try my best to love on them and be with them.”

Harper Woods didn’t set any records, but had multiple big-time offensive performances, as well, despite losing 1,000-yard rusher Colby Bailey on the second play of the game.

Donald Adams took on the rushing load for the Pioneers (11-3) and starred, rushing for 174 yards on 17 carries. Quarterback Nate Rocheleau had 210 yards and two TDs on 10-of-17 passing. Dakota Guerrant had four catches for 84 yards and a score, while Ramonty Houze had a single catch that went 90 yards for a TD.

“On the one to Ramonty, I had been trying to get it all game,” Rocheleau said. “It was man-to-man press with no high safety, and Ramonty is the fastest guy on the field, so we wanted to take that shot and it worked. The one to Dakota, we worked on that all week in practice where we’re in trips and we stack it, he popped wide open.”

The TD to Houze had the feeling of a back-breaker, as it put Harper Woods up 27-7 early in the third quarter. More so than the lead, it came after South Christian had made its way deep into Harper Woods territory with a chance to make it a one-score game. But Corey Bailey forced and recovered a fumble to end the threat.

Dwight Houston (3) gets ready to make his move as South Christian's Austin Tiesma (7) gets into position to make the stop.It was the second time in as many South Christian possessions that a chance to pull within a single score had ended in a turnover. On the final play of the first half, Wilson intercepted a Vis pass in the end zone after the Sailors had made their way to the Harper Woods 9.

But none of it fazed the Sailors (10-4), who were seeking their second-straight Finals title.

Following Houze’s TD, South Christian finally did pull to within one score at 27-20, getting TD runs from Charlie Schreur (1 yard) and Vis (22 yards).

Harper Woods stretched it back to a 13-point lead with a 10-play, 85-yard drive, capped off by a 1-yard TD run by Stephone Buford.

But when Noah Funk scored on a 12-yard pass from Vis less than two minutes later, South Christian had again pulled to within a score, and a defensive stop set up the final drive, and the late-game drama.

“The message at halftime was, ‘We’ve been resilient, and nothing you ever do in life, when you’re chasing success, is going to be easy. There’s going to be adversity,’” South Christian coach Danny Brown said. “And that was the message. These are a bunch of great guys that do things the right way. If there was ever a time to come and climb that mountain of a little adversity, the second half was that time. They fought like crazy, and I’m proud of them to keep swinging, and we almost had it.”

Harper Woods jumped out a 14-0 lead with first-quarter TD runs by Buford and Dwight Houston. A 39-yard TD pass from Vis to Vermaas put the Sailors on the board in the second quarter, but Guerrant’s 27-yard TD catch had the Pioneers up 20-7 at the half.

Houston finished with 62 yards rushing for the Pioneers, while Buford had 46 to go along with two TDs.

Austin Tiesma had eight catches for 120 yards for South Christian, while Funk had five for 61.

Click for the full box score

PHOTOS (Top) Harper Woods raises its first football championship trophy after winning the Division 4 Final on Saturday. (Middle) South Christian's Carson Vis (5) unloads a pass as the Pioneers' Johnny Nelson (21) and Javonta Lee-Forbes (28) apply pressure. (Below) Dwight Houston (3) gets ready to make his move as South Christian's Austin Tiesma (7) gets into position to make the stop. (Photos by Hockey Weekly Action Photos.)

2025 MHSAA Football Playoff Pairings Announced

By Geoff Kimmerly
MHSAA.com senior editor

October 26, 2025

Here are the pairings for the 2025 MHSAA Football Playoffs, which begin Oct. 31 and Nov. 1 with District Semifinals in the 11-Player Playoffs and Regional Semifinals in the 8-Player Playoffs.

Teams were divided into divisions before the start of play this fall. The top 32 teams in each division in 11-player and top 16 per division in 8-player, based on playoff-point average, were selected to the field. For 11-player, qualifiers were then divided into four regions with eight teams apiece, and for 8-player qualifiers were divided into four regions with four teams in each.

Pairings for the first three weeks of the tournament are based on regular-season playoff point averages, with the highest-ranked team hosting, regardless of the distance between the two schools. For 11-Player District Semifinal and 8-Player Regional Semifinal play, the top-seeded team in each bracket will host the fourth-seeded team, and the second-seeded team will host the third-seeded team. 

District Finals for 11-player and Regional Finals for 8-player will follow during the weekend of Nov. 7-8, and the weekend of Nov. 14-15 will have Regional Finals in the 11-Player Playoffs and Semifinals in the 8-Player Playoffs. The 8-Player Semifinals will pair the winners of Region 1 vs. Region 2 and the winners of Region 3 vs. Region 4 at neutral sites assigned by the MHSAA.

Semifinal games in the 11-Player Playoffs will take place Nov. 21-22, pairing the winners of Region 1 vs. Region 2 and the winners of Region 3 vs. Region 4. The MHSAA also will assign 11-Player Semifinals at neutral sites.

All playoff tickets except for Finals (both 11 and 8-player) will be sold online only via GoFan.

For 11-Player, tickets to District Semifinals and District Finals cost $7, tickets to Regional Finals are $9, and tickets to Semifinals cost $10. For 8-player, tickets for Regional Semifinals are $7, tickets for Regional Finals are $9, and tickets for Semifinals cost $10.

The 8-Player Finals will take place Nov. 22 at Northern Michigan University’s Superior Dome in Marquette, and the 11-Player Finals will be played Nov. 28 and 30 at Ford Field in Detroit. An all-day ticket for 8-Player Finals costs $10 and includes admission to both games, and an all-day ticket for the 11-Player Finals costs $20 and includes admission to that day’s four games.

The 11-Player Finals schedule will be as follows:

Friday, Nov. 28
9:30 a.m. - Division 8
12:30 p.m. - Division 4
4 p.m. - Division 6
7 p.m. - Division 2

Sunday, Nov. 30
9:30 a.m. - Division 7
12:30 p.m. - Division 3
4 p.m. - Division 5
7 p.m. - Division 1

Pairings for both the 11 and 8-Player brackets are as follows: 

11-Player Pairings

DIVISION 1

REGION 1
DISTRICT 1
Jenison (4-5) 52.778 at Hudsonville (9-0) 85.556
Grandville (4-5) 56.111 at Rockford (7-2) 75.444
DISTRICT 2
Kalamazoo Central (6-3) 53.778 at Howell (8-1) 80.111
Grand Ledge (7-2) 65.667 at East Kentwood (7-2) 70.222

REGION 2
DISTRICT 1
Hartland (5-4) 60.000 at Detroit Catholic Central (9-0) 81.056
Brighton (6-3) 69.333 at West Bloomfield (7-2) 72.333
DISTRICT 2
Davison (8-1) 70.000 at Clarkston (8-1) 87.111
Oxford (7-2) 77.556 at Grand Blanc (9-0) 81.444

REGION 3
DISTRICT 1
Salem (5-4) 57.333 at Saline (8-1) 77.500
Brownstown Woodhaven (7-2) 66.111 at Belleville (7-2) 72.889
DISTRICT 2
Northville (7-2) 70.111 at Detroit Cass Tech (9-0) 74.556
Dearborn Fordson (7-2) 70.889 at Farmington (7-2) 71.222

REGION 4
DISTRICT 1
Rochester (5-4) 53.333 at Rochester Adams (7-2) 76.111
Utica Eisenhower (5-4) 57.000 at Rochester Hills Stoney Creek (6-3) 64.111
DISTRICT 2
Sterling Heights Stevenson (5-4) 54.778 at Romeo (6-3) 69.444
Macomb Dakota (6-3) 63.444 at Utica (7-2) 67.778

DIVISION 2

REGION 1
DISTRICT 1
Muskegon Mona Shores (5-4) 52.111 at Muskegon (6-3) 64.556
Traverse City Central (5-4) 53.889 at Traverse City West (5-4) 59.222
DISTRICT 2
Lansing Everett (5-4) 55.778 at Portage Central (9-0) 76.111
Portage Northern (7-2) 62.528 at Byron Center (6-3) 66.333

REGION 2
DISTRICT 1
Waterford Mott (5-4) 53.889 at Midland Dow (8-1) 71.111
East Lansing (4-5) 56.111 at White Lake Lakeland (7-2) 68.000
DISTRICT 2
Bloomfield Hills Brother Rice (5-4) 54.611 at Walled Lake Western (7-2) 68.667
Orchard Lake St. Mary's (6-2) 63.083 at North Farmington (6-3) 64.889

REGION 3
DISTRICT 1
South Lyon East (4-5) 49.222 at South Lyon (9-0) 78.889
Livonia Franklin (6-3) 62.889 at Dexter (8-1) 76.500
DISTRICT 2
Lincoln Park (5-4) 52.444 at Gibraltar Carlson (9-0) 77.667
Temperance Bedford (4-5) 54.357 at Allen Park (5-4) 55.889

REGION 4
DISTRICT 1
Warren Mott (5-4) 50.222 at Birmingham Groves (6-3) 61.556
Birmingham Seaholm (5-4) 55.556 at Warren Cousino (6-3) 59.778
DISTRICT 2
Roseville (4-5) 52.889 at Grosse Pointe South (8-1) 70.333
St. Clair Shores Lakeview (7-2) 62.444 at Port Huron Northern (7-2) 69.111

DIVISION 3

REGION 1
DISTRICT 1
Bay City Western (4-5) 46.556 at Mount Pleasant (9-0) 76.444
Marquette (6-3) 51.889 at Gaylord (9-0) 66.000
DISTRICT 2
Coopersville (4-5) 47.000 at Grand Rapids Kenowa Hills (8-1) 67.111
Cedar Springs (8-1) 60.556 at East Grand Rapids (7-2) 60.778

REGION 2
DISTRICT 1
Zeeland West (6-3) 50.889 at Niles (9-0) 67.778
Zeeland East (6-3) 51.444 at St. Joseph (5-4) 54.889
DISTRICT 2
Coldwater (6-3) 47.111 at Lowell (7-2) 58.778
Middleville Thornapple Kellogg (6-3) 53.222 at Hastings (7-2) 58.556

REGION 3
DISTRICT 1
Owosso (6-3) 49.444 at DeWitt (9-0) 79.667
Linden (6-3) 50.222 at Mason (5-4) 55.444
DISTRICT 2
Ypsilanti Lincoln (6-3) 55.111 at Adrian (8-1) 60.333
Holly (6-3) 58.222 at Fenton (6-3) 58.444

REGION 4
DISTRICT 1
Riverview (6-3) 45.667 at Detroit Martin Luther King (5-4) 59.667
Redford Thurston (6-3) 52.222 at Trenton (5-4) 55.000
DISTRICT 2
Warren De La Salle Collegiate (3-6) 49.306 at Warren Fitzgerald (8-1) 65.889
Marysville (7-2) 54.444 at Port Huron (6-3) 59.889

DIVISION 4

REGION 1
DISTRICT 1
Freeland (7-2) 49.667 at Escanaba (8-1) 58.222
Big Rapids (8-1) 52.667 at Ludington (9-0) 56.778
DISTRICT 2
Holland Christian (5-4) 43.778 at Hudsonville Unity Christian (8-1) 61.333
Spring Lake (6-3) 45.444 at Wyoming Godwin Heights (7-2) 51.444

REGION 2
DISTRICT 1
Grand Rapids Christian (5-4) 45.333 at Battle Creek Harper Creek (8-1) 65.333
Grand Rapids South Christian (4-5) 47.444 at Portland (9-0) 58.444
DISTRICT 2
Three Rivers (5-4) 46.389 at Paw Paw (6-3) 56.111
Vicksburg (5-4) 48.556 at Edwardsburg (6-3) 51.222

REGION 3
DISTRICT 1
Lansing Sexton (6-3) 45.667 at Williamston (9-0) 69.500
St. Johns (5-4) 48.889 at Haslett (7-2) 61.111
DISTRICT 2
Lake Fenton (4-5) 43.000 at Goodrich (9-0) 68.000
Fowlerville (5-4) 44.444 at Chelsea (8-1) 67.778

REGION 4
DISTRICT 1
Tecumseh (6-3) 50.222 at Dearborn Divine Child (8-1) 59.667
Redford Union (7-2) 55.111 at Madison Heights Lamphere (6-3) 57.889
DISTRICT 2
Macomb Lutheran North (7-2) 44.111 at Harper Woods (9-0) 88.222
Center Line (7-2) 48.222 at Harper Woods Chandler Park (7-2) 49.222

DIVISION 5

REGION 1
DISTRICT 1
Negaunee (6-3) 40.875 at Ogemaw Heights (8-1) 54.389
Gladwin (5-4) 43.111 at Kingsford (6-3) 43.222
DISTRICT 2
Clare (6-3) 43.111 at Saginaw Swan Valley (8-1) 54.778
Howard City Tri County (5-4) 43.556 at Whitehall (5-4) 46.333

REGION 2
DISTRICT 1
Wyoming Kelloggsville (6-3) 40.778 at Grand Rapids Catholic Central (9-0) 74.206
Muskegon Oakridge (6-3) 43.000 at Grand Rapids West Catholic (8-1) 62.111
DISTRICT 2
Hopkins (5-4) 41.222 at Kalamazoo United (7-2) 43.286
Dowagiac (5-3) 41.827 at Berrien Springs (5-2) 42.802

REGION 3
DISTRICT 1
Detroit Cody (5-4) 37.222 at Ann Arbor Father Gabriel Richard (9-0) 52.667
Romulus (4-5) 41.111 at Michigan Center (8-1) 43.000
DISTRICT 2
Detroit Voyageur College Prep (4-5) 36.889 at Romulus Summit Academy North (7-1) 54.125
Flat Rock (6-3) 47.889 at Monroe Jefferson (8-1) 52.111

REGION 4
DISTRICT 1
Hazel Park (6-3) 39.333 at Pontiac Notre Dame Prep (7-2) 62.444
Detroit Denby (7-2) 46.556 at Detroit Southeastern (6-3) 49.000
DISTRICT 2
Yale (5-4) 39.000 at Frankenmuth (8-1) 57.778
Armada (6-3) 46.444 at Richmond (8-1) 55.222

DIVISION 6

REGION 1
DISTRICT 1
Calumet (7-2) 40.500 at Kingsley (7-2) 48.167
Boyne City (6-3) 41.944 at Traverse City St. Francis (6-2) 44.472
DISTRICT 2
Sanford Meridian (6-3) 36.111 at Reed City (7-2) 47.667
Montague (5-4) 36.444 at Central Montcalm (7-2) 37.444

REGION 2
DISTRICT 1
Ovid-Elsie (7-2) 42.000 at Belding (8-1) 57.222
Kent City (9-0) 49.667 at Olivet (8-1) 51.333
DISTRICT 2
Flint New Standard Academy (8-1) 34.264 at Montrose (9-0) 45.889
Durand (7-2) 40.222 at Flint Hamady (6-3) 40.444

REGION 3
DISTRICT 1
Onsted (4-5) 32.778 at Jackson Lumen Christi (6-3) 61.889
Buchanan (6-3) 34.357 at Napoleon (6-3) 38.556
DISTRICT 2
Adrian Madison (5-4) 33.889 at Ecorse (7-2) 48.000
Dearborn Heights Robichaud (6-3) 40.984 at Ida (7-2) 41.778

REGION 4
DISTRICT 1
Detroit Central (6-3) 34.889 at Detroit Edison (7-2) 53.056
Warren Michigan Collegiate (5-4) 37.556 at Detroit Pershing (6-3) 40.111
DISTRICT 2
Clinton Township Clintondale (5-4) 33.889 at Almont (9-0) 61.667
Clawson (6-3) 41.000 at Marine City (6-3) 47.222

DIVISION 7

REGION 1
DISTRICT 1
Manton (6-3) 28.000 at Menominee (9-0) 52.486
McBain (7-2) 36.667 at Charlevoix (8-1) 41.556
DISTRICT 2
Morley Stanwood (3-6) 25.556 at Harrison (7-2) 33.333
Shelby (5-4) 26.667 at LeRoy Pine River (6-3) 32.111

REGION 2
DISTRICT 1
Ravenna (4-5) 28.889 at Pewamo-Westphalia (8-0) 41.889
Saranac (7-2) 30.778 at North Muskegon (6-3) 35.514
DISTRICT 2
Ithaca (6-3) 34.222 at Saginaw Valley Lutheran (9-0) 40.333
Cass City (6-3) 35.667 at Elkton-Pigeon-Bay Port Laker (7-2) 37.778

REGION 3
DISTRICT 1
Galesburg-Augusta (4-5) 26.000 at Schoolcraft (7-2) 39.333
Constantine (6-3) 38.667 at Lawton (7-2) 39.000
DISTRICT 2
Union City (5-4) 28.222 at Hanover-Horton (7-2) 42.889
Jonesville (6-3) 30.222 at Bronson (7-2) 35.222

REGION 4
DISTRICT 1
Leslie (5-4) 28.778 at Monroe St. Mary Catholic Central (7-2) 49.667
Ottawa Lake Whiteford (8-1) 36.667 at Clinton (7-2) 40.556
DISTRICT 2
Burton Bendle (6-3) 29.333 at Millington (7-2) 41.000
Rochester Hills Lutheran Northwest (5-4) 29.873 at Detroit Community (6-3) 30.762

DIVISION 8

REGION 1
DISTRICT 1
West Iron County (4-4) 25.361 at Bark River-Harris (7-1) 37.375
L'Anse (5-4) 25.417 at Iron Mountain (5-3) 27.528
DISTRICT 2
Mancelona (5-4) 29.361 at Maple City Glen Lake (7-1) 40.528
Frankfort (6-3) 29.917 at East Jordan (6-3) 32.625

REGION 2
DISTRICT 1
Mount Pleasant Sacred Heart (5-4) 26.206 at Beal City (9-0) 42.111
Saginaw Michigan Lutheran Seminary (6-3) 33.000 at Saginaw Nouvel Catholic Central (7-2) 33.556
DISTRICT 2
Reese (5-4) 27.111 at Harbor Beach (9-0) 42.556
Genesee (4-5) 27.556 at Unionville-Sebewaing (6-3) 32.889

REGION 3
DISTRICT 1
Centreville (5-4) 29.778 at Hudson (9-0) 49.857
White Pigeon (7-2) 35.222 at Decatur (7-2) 38.222
DISTRICT 2
Manchester (5-4) 28.444 at Springport (9-0) 38.931
Fowler (6-3) 34.111 at New Lothrop (6-3) 37.778

REGION 4
DISTRICT 1
Auburn Hills Oakland Christian (5-4) 25.611 at Madison Heights Madison (8-1) 44.556
Clarkston Everest Collegiate (5-4) 28.667 at Waterford Our Lady of the Lakes (5-4) 30.444
DISTRICT 2
Riverview Gabriel Richard (4-5) 29.111 at Melvindale Academy for Business & Tech (9-0) 45.667
Southfield Bradford Academy (6-3) 31.889 at Allen Park Cabrini (8-1) 38.889

8-Player Pairings

DIVISION 1

REGION 1
Gogebic (8-1) 32.264 at Norway (9-0) 37.625
Pickford (7-1) 32.542 at Indian River Inland Lakes (9-0) 36.667

REGION 2
Breckenridge (6-3) 30.250 at Blanchard Montabella (8-1) 35.222
Central Lake (6-3) 30.333 at Merrill (7-2) 31.778

REGION 3
Marcellus (6-3) 28.417 at Martin (9-0) 38.667
Climax-Scotts (7-2) 32.486 at Gobles (7-2) 33.194

REGION 4
Bay City All Saints (7-2) 31.319 at Kingston (8-1) 36.222
Capac (7-2) 33.111 at Brown City (7-2) 33.444

DIVISION 2

REGION 1
St. Ignace (6-3) 29.250 at Felch North Dickinson (9-0) 34.708
Powers North Central (7-2) 31.444 at Lake Linden-Hubbell (7-2) 31.444

REGION 2
Hillman (6-3) 29.208 at Onekama (9-0) 36.667
Gaylord St. Mary (7-2) 29.778 at Mio (8-1) 32.472

REGION 3
Marion (6-3) 29.333 at Portland St Patrick (9-0) 37.750
Grand Rapids Sacred Heart (8-1) 34.972 at Mendon (9-0) 37.375

REGION 4
Pittsford (7-2) 32.111 at Britton Deerfield (8-1) 36.889
Morrice (8-1) 32.222 at Deckerville (8-1) 36.556

The MHSAA is a private, not-for-profit corporation of voluntary membership by more than 1,500 public and private senior high schools and junior high/middle schools which exists to develop common rules for athletic eligibility and competition. No government funds or tax dollars support the MHSAA, which was the first such association nationally to not accept membership dues or tournament entry fees from schools. Member schools which enforce these rules are permitted to participate in MHSAA tournaments, which attract more than 1.4 million spectators each year.

-0-