/* ============================================================ FRANKLIN & GRANVILLE HUB STYLING — matches Wake Forest Info Targets the alternate class names used on /franklin-county-info/ and /granville-county-info/ pages ============================================================ *//* Hero section — same gradient and feel as WF Info hub */ .wfm-hub-hero { background: linear-gradient(135deg, #1a3a2a 0%, #2d5c42 100%); color: #d4c9a8; padding: 56px 40px; border-radius: 8px; margin: 0 0 32px; text-align: center; } .wfm-hub-hero .wfm-breadcrumb { font-size: 14px; color: #c2a24e; margin-bottom: 14px; text-transform: uppercase; letter-spacing: 0.08em; } .wfm-hub-hero .wfm-breadcrumb a { color: #c2a24e; text-decoration: none; border-bottom: 1px solid rgba(194, 162, 78, 0.4); } .wfm-hub-hero .wfm-breadcrumb a:hover { color: #fff; border-bottom-color: #fff; } .wfm-hub-hero h1 { font-family: Georgia, serif; font-size: 38px; color: #fff !important; margin: 0 0 14px; line-height: 1.15; } .wfm-hub-hero .wfm-hub-lede { font-size: 17px; line-height: 1.55; color: #d4c9a8; max-width: 700px; margin: 0 auto; }/* Quick Actions strip */ .wfm-quick-actions { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 0 0 32px; } .wfm-qa-btn { background: #f9f8f3; border: 1px solid #e8e4d4; border-left: 4px solid #c2a24e; padding: 14px 16px; border-radius: 0 6px 6px 0; text-decoration: none; color: #1a3a2a; font-size: 14px; font-weight: 600; display: flex; justify-content: space-between; align-items: center; transition: box-shadow 0.18s, transform 0.18s; } .wfm-qa-btn:hover { background: #fff; box-shadow: 0 4px 12px rgba(26, 58, 42, 0.08); transform: translateY(-1px); text-decoration: none; color: #1a3a2a; } .wfm-qa-btn span { color: #c2a24e; font-weight: 700; margin-left: 8px; }/* Stat row */ .wfm-stat-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 40px; } .wfm-stat { background: #f9f8f3; border: 1px solid #e8e4d4; border-top: 4px solid #b8962e; padding: 24px 22px; border-radius: 0 0 8px 8px; text-align: left; } .wfm-stat-num { font-family: Georgia, serif; font-size: 36px; color: #1a3a2a; font-weight: 700; line-height: 1.05; margin-bottom: 6px; } .wfm-stat-label { font-size: 14px; color: #1a3a2a; font-weight: 600; line-height: 1.4; } .wfm-stat-label small { display: block; font-size: 13px; font-weight: 400; color: #555; margin-top: 6px; line-height: 1.5; } .wfm-stat-label a { color: #1a3a2a; text-decoration: underline; }/* Tile grid — alternate naming */ .wfm-tiles-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 28px 0 40px; } .wfm-tile { background: #f9f8f3; border: 1px solid #e8e4d4; border-top: 4px solid #b8962e; padding: 22px 22px 24px; border-radius: 0 0 8px 8px; text-decoration: none; color: #1a3a2a; display: flex; flex-direction: column; transition: box-shadow 0.18s, transform 0.18s; } .wfm-tile:hover { box-shadow: 0 6px 16px rgba(26, 58, 42, 0.10); transform: translateY(-2px); text-decoration: none; color: #1a3a2a; } .wfm-tile h3 { font-family: Georgia, serif; font-size: 19px; color: #1a3a2a; margin: 0 0 8px; line-height: 1.25; } .wfm-tile p { font-size: 14px; color: #444; line-height: 1.5; margin: 0 0 16px; flex-grow: 1; } .wfm-tile-go { color: #c2a24e; font-weight: 700; font-size: 14px; margin-top: auto; }/* Callout & tip boxes */ .wfm-callout, .wfm-tip { background: #f9f8f3; border-left: 4px solid #c2a24e; padding: 22px 26px; border-radius: 0 6px 6px 0; margin: 32px 0; } .wfm-callout h4, .wfm-tip h4 { font-family: Georgia, serif; font-size: 17px; color: #1a3a2a; margin: 0 0 8px; text-transform: uppercase; letter-spacing: 0.04em; } .wfm-callout p, .wfm-tip p { font-size: 15px; color: #333; line-height: 1.6; margin: 0; }/* Section heads (h2 "Browse by Topic" etc.) */ .entry-content > h2:not(.wfm-cta-box h2) { font-family: Georgia, serif; font-size: 24px; color: #1a3a2a; margin: 36px 0 16px; padding-bottom: 8px; border-bottom: 2px solid #c2a24e; }/* Mobile */ @media (max-width: 768px) { .wfm-tiles-grid, .wfm-tiles { grid-template-columns: 1fr; } .wfm-quick-actions { grid-template-columns: repeat(2, 1fr); } .wfm-stat-row { grid-template-columns: 1fr; } .wfm-hub-hero { padding: 36px 24px; } .wfm-hub-hero h1 { font-size: 28px; } }@media (max-width: 480px) { .wfm-quick-actions { grid-template-columns: 1fr; } }

Franklin County Voting & Elections

Franklin County Info › Voting & Elections

Franklin County Voting & Elections

Board of Elections, polling, early voting, and the 2026 election calendar.

Franklin County Board of Elections

  • Address: 279 S. Bickett Boulevard, Suite 300, Louisburg, NC 27549
  • Phone: (919) 496-3898 · Fax: (919) 496-7418
  • Site: franklincountync.gov/331

2026 Election Calendar

  • March 3, 2026: Primary & Board of Education election (completed)
  • October 9, 2026: Voter registration deadline for the General Election
  • October 15–31, 2026: Early voting (3 PM close on Oct. 31)
  • November 3, 2026: General Election

Early voting locations: see franklincountync.gov/502 for the current list (typically includes the BOE office plus possible satellite sites).

How to Register

  • Online: Through the NC State Board of Elections at ncsbe.gov/registering (requires NC driver license or NCDMV-issued ID)
  • By mail or in person: File the voter registration form with the Franklin County BOE by the 25-day deadline before any election
  • Same-day registration: Available during the early voting period at any early voting site (not on Election Day itself)

Absentee Voting

Request an absentee ballot at votebymail.ncsbe.gov. Any NC voter may request one — no excuse needed.

Voter ID

NC requires photo ID to vote. Accepted forms include NC driver license, U.S. passport, military ID, tribal ID, and certain student and government employee IDs. Voters without acceptable ID can request a free NC voter ID at the Franklin County BOE or sign an ID Exception Form at the polls.

Related Pages

Election coverage from Wake Forest Matters

We cover every Franklin County municipal cycle and BOC race. Subscribe free for race-by-race coverage.

Scroll to Top