
/* Housing Program Finder — Housing Program Manager 2.0.4
   Polished Program detail presentation. */
.hpf-program,.hpf-directory,.hpf-page{max-width:1200px;margin:0 auto;padding:50px 24px}
.hpf-hero{padding:20px 0 34px}
.hpf-kicker,.hpf-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b7280}
.hpf-hero h1{font-size:clamp(38px,5vw,64px);line-height:1.08;margin:.35em 0}
.hpf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.hpf-card{background:#f5f7fa;border-radius:18px;padding:28px}
.hpf-wide{grid-column:1/-1}
.hpf-value{font-size:18px;line-height:1.65;margin-top:8px}
.hpf-section{margin-top:42px}
.hpf-section h2{font-size:28px;margin:0 0 18px}
.hpf-tax-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.hpf-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hpf-pill{display:inline-block;background:#f1f3f5;border-radius:999px;padding:9px 14px;text-decoration:none!important}
.hpf-pill:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(17,24,39,.08)}
.hpf-prose,.hpf-info-list{line-height:1.7}
.hpf-info-list{border-top:1px solid #e5e7eb}
.hpf-info-row{display:grid;grid-template-columns:30% 70%;gap:20px;padding:18px 0;border-bottom:1px solid #e5e7eb}
.hpf-info-label{font-weight:700}
.hpf-cta{margin-top:42px;background:#111827;color:#fff;border-radius:18px;padding:28px;display:flex;justify-content:space-between;gap:30px;align-items:center}
.hpf-cta p{margin:8px 0 0;opacity:.8}
.hpf-link{display:inline-block;font-weight:700;text-decoration:none;margin-top:8px}
.hpf-updated{margin-top:28px;color:#6b7280;font-size:14px}
.hpf-directory-head{text-align:center;padding:20px 0 45px}
.hpf-directory-head h1,.hpf-page h1{font-size:48px;margin-bottom:12px}
.hpf-directory-head p{max-width:720px;margin:auto;font-size:18px;line-height:1.6}
.hpf-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.hpf-program-card{background:#fff;border-radius:16px;padding:28px;box-shadow:0 8px 30px rgba(17,24,39,.07)}
.hpf-program-card h2{font-size:25px;line-height:1.25}
.hpf-program-card h2 a{text-decoration:none}
.hpf-program-card p{line-height:1.6}
.hpf-readmore{font-weight:700;text-decoration:none}
.hpf-simple-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.hpf-directory-link{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid #e5e7eb;border-radius:14px;text-decoration:none}
.hpf-directory-link span{color:#6b7280;font-size:14px}
.hpf-note,.hpf-contact-placeholder{margin-top:30px;padding:22px;background:#f5f7fa;border-radius:14px;line-height:1.7}
.hpf-empty{max-width:900px;margin:50px auto;padding:30px;background:#f5f7fa;border-radius:14px}
@media(max-width:900px){.hpf-program-grid,.hpf-simple-grid{grid-template-columns:1fr 1fr}.hpf-grid,.hpf-tax-grid{grid-template-columns:1fr}.hpf-wide{grid-column:auto}.hpf-info-row{grid-template-columns:1fr}.hpf-cta{display:block}}
@media(max-width:600px){.hpf-program-grid,.hpf-simple-grid{grid-template-columns:1fr}.hpf-directory-head h1,.hpf-page h1{font-size:38px}}
