/* Shared public collections: achievements, news, and member businesses. */
.public-site .listing-page { padding: 48px 0 64px; background: #f5f7fa; }
.listing-page .listing-intro { font-size: 1rem; line-height: 1.7; max-width: 760px; }
.listing-page .ach-filter-bar { background: #fff; border: 1px solid #e0e5ec; border-radius: 14px; padding: 20px; box-shadow: 0 2px 6px #172b4d04; margin-bottom: 32px !important; }
.listing-page .ach-filter-form { display:flex; flex-wrap:wrap; align-items:end; gap:16px; }
.listing-page .ach-filter-group { flex:1 1 220px; min-width:0; }
.listing-page .ach-filter-divider { display:none; }
.listing-page .ach-filter-label { display:block; font-size:.8rem; font-weight:600; color:#536176; margin-bottom:8px; }
.listing-page .ach-filter-input-wrap { display:flex; align-items:center; gap:10px; }
.listing-page .ach-filter-input,.listing-page .ach-filter-select { min-height:46px; width:100%; border:1px solid #cfd7e3; border-radius:8px; padding:10px 14px; background:#fff; color:#243247; font-size:.9rem; }
.listing-page .ach-filter-select { padding-right:36px; }
.listing-page .ach-filter-btn,.listing-page .ach-filter-clear { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:10px 20px; border-radius:8px; font-size:.9rem; font-weight:600; }
.listing-page .ach-filter-btn { background:#642d36; color:#fff; border:1px solid #642d36; }
.listing-page .ach-filter-clear { background:#fff; color:#536176; border:1px solid #cfd7e3; }
.listing-page :is(.ach-card,.announcement-card,.biz-card) { display:flex; flex-direction:column; background:#fff; border:1px solid #e0e5ec; border-radius:16px; overflow:hidden; box-shadow:0 3px 12px #172b4d06; transition:box-shadow .2s; }
.listing-page :is(.ach-card,.announcement-card,.biz-card):hover { box-shadow:0 8px 24px #172b4d12; }
.listing-page :is(.ach-card-img-wrap,.biz-card-logo-tile,.listing-placeholder) { height:210px; min-height:210px; background:#edf1f6; }
.listing-page .announcement-card > img { height:210px !important; width:100%; object-fit:cover; border-radius:0; }
.listing-page .ach-card-img { width:100%; height:100%; object-fit:cover; }
.listing-page .biz-card-logo-tile { padding:24px; }
.listing-page .biz-card-logo-tile img { width:100%; height:100%; object-fit:contain; }
.listing-page :is(.listing-placeholder,.ach-card-img-placeholder,.biz-card-logo-placeholder) { display:flex; align-items:center; justify-content:center; color:#9aa6b7; font-size:3rem; }
.listing-page :is(.ach-card-body,.announcement-card .card-body,.biz-card-body) { flex:1; display:flex; flex-direction:column; gap:12px; padding:24px !important; }
.listing-page :is(.ach-card-title,.biz-card-title,.announcement-card h6) { font-size:1.15rem !important; line-height:1.5 !important; font-weight:650; color:#243247; margin:0; overflow-wrap:anywhere; }
.listing-page :is(.ach-card-desc,.business-description,.announcement-card .card-body > p) { font-size:.9rem; line-height:1.75; color:#637086; margin:0; }
.listing-page :is(.ach-card-meta,.biz-card-meta) { font-size:.8rem; color:#718096; }
.listing-page .ach-card-link,.listing-page .biz-card-fb-btn { margin-top:auto; display:flex; align-items:center; justify-content:space-between; border-top:1px solid #edf0f4; padding-top:14px; font-size:.85rem; font-weight:600; color:#642d36; }
.listing-page .biz-card-fb-btn { background:transparent; border-radius:0; }
.listing-page .announcement-card .card-body > div:last-child { margin-top:auto; border-top:1px solid #edf0f4; padding-top:14px; flex-wrap:wrap; gap:8px; }
.listing-page .pagination { flex-wrap:wrap; justify-content:center; }
.listing-page .pagination .page-link { border:1px solid #dce2ea !important; border-radius:8px !important; min-width:42px; min-height:42px; display:flex; align-items:center; justify-content:center; color:#642d36; background:#fff; }
.listing-page .pagination .active .page-link { background:#642d36 !important; color:#fff; border-color:#642d36 !important; }
@media(max-width:575px){.public-site .listing-page{padding:32px 0 48px;}.listing-page .ach-filter-group{flex-basis:100%;}.listing-page .ach-filter-btn{flex:1;}.listing-page .ach-filter-bar{padding:16px;}}
@media(prefers-reduced-motion:reduce){.listing-page :is(.ach-card,.announcement-card,.biz-card){transition:none;}}
