.fl-public-projects-page { min-height: 320px; padding: 20px 0 42px; }
.fl-public-projects { margin: 32px auto; max-width: 1180px; padding: 0 18px; }
.fl-public-projects-header { margin-bottom: 18px; }
.fl-public-projects-kicker { margin: 0 0 6px; color: #087ba5; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fl-public-projects h2 { margin: 0; color: #063451; font-size: clamp(1.65rem, 3vw, 2.25rem); }
.fl-public-projects-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.fl-public-project-card { border: 1px solid #d7e1e8; border-radius: 12px; padding: 19px; background: #fff; box-shadow: 0 8px 24px rgba(6, 52, 81, .08); }
.fl-public-project-card h3 { margin: 12px 0 8px; color: #063451; font-size: 1.2rem; }
.fl-public-project-card p { margin: 0; color: #435f73; line-height: 1.6; }
.fl-public-project-status { display: inline-flex; border-radius: 999px; padding: 5px 9px; background: #e5f5fb; color: #075f89; font-size: .75rem; font-weight: 800; }
.fl-public-projects-empty { border-left: 4px solid #087ba5; padding: 12px 14px; background: #f3f9fb; color: #435f73; }
@media (max-width: 900px) { .fl-public-projects-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .fl-public-projects-grid { grid-template-columns: 1fr; } }
