.listing-pagination { margin: 28px auto 0; text-align: center; }
.listing-pagination[hidden] { display: none; }
.pagination-info { margin: 0 0 12px; color: #655c4e; font-size: 14px; }
.pagination-controls { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; }
.pagination-controls button { min-width: 44px; min-height: 44px; padding: 8px 14px; border: 1px solid #d9c7a9; border-radius: 12px; color: #5f4829; background: #fffdf9; font: inherit; font-weight: 600; cursor: pointer; }
.pagination-controls button[aria-current="page"] { color: #fff; background: #89662f; border-color: #89662f; }
.pagination-controls button:disabled { opacity: .45; cursor: default; }
.pagination-controls button:not(:disabled):hover { border-color: #89662f; box-shadow: 0 2px 10px #89662f20; }
.pagination-controls button:focus-visible { outline: 3px solid #80602e; outline-offset: 3px; }
#listing-title { scroll-margin-top: 100px; }
.property-alist-badge { position: absolute; left: 12px; bottom: 12px; padding: 6px 11px; border: 1px solid #e6cf9b; border-radius: 999px; background: #fff6de; color: #725015; font-size: 12px; font-weight: 700; box-shadow: 0 2px 8px #0002; }
@media (max-width: 480px) { .pagination-controls { gap: 6px; } .pagination-controls button { padding: 8px 11px; } }
