/* Layout leve: a página mantém o estilo Bootstrap existente e apenas se adapta às telas. */
body.results-page { overflow-x: hidden; }

#imoveis {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    width: 100%;
    margin-top: 18px;
}

.card {
    display: block;
    overflow: hidden;
    border: 1px solid #d9dfe7;
    border-radius: 8px;
    color: #202938;
    background: #fff;
    text-decoration: none;
    transition: box-shadow .18s ease;
}

.card:hover { color: #202938; box-shadow: 0 5px 14px rgba(0, 0, 0, .12); }

.card-image { display: block; width: 100%; height: 205px; object-fit: cover; background: #eef1f5; }
.card-title { display: -webkit-box; overflow: hidden; margin: 12px 12px 5px; font-family: "Saira", sans-serif; font-size: 15px; font-weight: 600; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.card-codigo { margin: 0 12px 12px; color: #6c757d; font-family: "Saira", sans-serif; font-size: 13px; font-weight: 500; }
.card-preco { margin: 0 12px 12px; color: #1c6ae7; font-size: 20px; font-weight: 700; }

.result-filter-card { padding: 18px; border: 1px solid #dee2e6; border-radius: 8px; background: #fff; }
.result-filter-title { margin-bottom: 14px; font-size: 18px; }.applied-filters { display: flex; flex-wrap: wrap; gap: 6px; }.tag { padding: 4px 8px; border-radius: 4px; background: #f1f5fb; color: #31537e; font-size: 12px; }
.btn-search { color: #fff; border-color: #1c6ae7; background: #1c6ae7; }.btn-search:hover { color: #fff; border-color: #1457c2; background: #1457c2; }
.pagination { flex-wrap: wrap; gap: 3px; }.pagination .page-link { border-radius: 4px; }

@media (max-width: 991px) { #imoveis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) {
    .section .container { padding-right: 12px; padding-left: 12px; }
    #imoveis { grid-template-columns: 1fr; gap: 12px; }
    .card-image { height: 220px; }
    .topbar .d-flex { justify-content: center !important; text-align: center; }
    .topbar a, .topbar span { font-size: 12px; }
    .pagination { justify-content: center; }
    .pagination .page-link { min-width: 34px; padding: .35rem .45rem; }
    .modal-dialog { margin: .5rem; }
}
