.cfl-county-page .g1-row-inner { display: block; font-size: 1rem; padding-top: 28px; padding-bottom: 36px; }
.cfl-county-heading { margin-bottom: 28px; }
.cfl-county-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.cfl-county-card { min-width: 0; }
.cfl-county-image { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #f3f3f3; margin-bottom: 14px; }
.cfl-county-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cfl-county-card h2 { font-size: 22px; line-height: 1.3; margin: 0 0 12px; overflow-wrap: anywhere; }
.cfl-county-card h2 a { color: #1b1b1b; }
.cfl-county-card .cfl-county-read { color: #245d00; text-decoration: underline; }
.cfl-county-card a:hover, .cfl-county-card a:focus-visible { color: #173e00; }
.cfl-county-card a:focus-visible { outline: 2px solid #173e00; outline-offset: 3px; }
.cfl-county-card p { margin-bottom: 12px; }
.cfl-county-card time { display: block; font-size: 13px; color: #555; margin-bottom: 10px; }
.cfl-county-status { padding: 28px 0; }
@media (max-width: 800px) { .cfl-county-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .cfl-county-grid { grid-template-columns: minmax(0, 1fr); } }
