.listing-filters{margin:0 0 26px;padding:22px;border:1px solid #dce7e1;border-radius:18px;background:linear-gradient(130deg,#fff,#f7fbf8);box-shadow:0 4px 18px #163d2910;color:#193747}
.listing-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.listing-filter-heading h2{font-size:1.12rem;margin:0 0 5px;font-weight:700}
.listing-filter-heading p{margin:0;color:#647786;font-size:.88rem}
.listing-filter-heading>i{padding:12px;border-radius:12px;background:#eaf5ee;color:#247358}
.listing-search-row{display:flex;gap:10px;align-items:stretch}
.listing-search-field{display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:#fff;border:1px solid #cadbd1;border-radius:10px;padding:0 13px;color:#647786}
.listing-search-field input{border:0;outline:none;min-width:0;width:100%;padding:12px 0;background:transparent;color:#193747;font-size:.94rem}
.listing-search-field:focus-within{outline:2px solid #247358;outline-offset:2px}
.listing-filters .btn-primary{border-radius:10px;background:#247358;border-color:#247358;padding:10px 20px;font-weight:600}
.listing-filter-details{margin-top:14px;border-top:1px solid #e0e9e4;padding-top:12px}
.listing-filter-details summary{display:flex;align-items:center;gap:8px;cursor:pointer;color:#345e49;font-size:.9rem;font-weight:600;list-style:none;width:fit-content;padding:5px 2px}
.listing-filter-details summary::-webkit-details-marker{display:none}
.listing-filter-details[open] summary>.fa-chevron-down{transform:rotate(180deg)}
.listing-filter-count{border-radius:20px;background:#e0efe5;padding:1px 7px;font-size:.75rem}
.listing-filter-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:16px}
.listing-filter-fields label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:.83rem;font-weight:600;color:#3f5d50}
.listing-filter-fields input,.listing-filter-fields select{width:100%;min-width:0;height:44px;padding:9px 11px;border:1px solid #cadbd1;border-radius:9px;background:#fff;font-size:.9rem;color:#193747}
.listing-filters .select2-container .select2-selection--single{height:44px!important;border:1px solid #cadbd1!important;border-radius:9px!important}
.listing-filters .select2-container .select2-selection__rendered{line-height:42px!important;padding-left:11px!important;font-weight:400}
.listing-filters .select2-selection__arrow{height:42px!important}
.listing-price-hint{font-size:.8rem;line-height:1.55;color:#647786;margin:12px 0}
.listing-filter-buttons{display:flex;gap:18px;align-items:center}
.listing-filters a{color:#345e49;text-decoration:none}
.listing-filters a:hover{text-decoration:underline}
.listing-filter-active{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.listing-filter-active>a{display:flex;align-items:center;gap:12px;font-size:.8rem;padding:6px 10px;border:1px solid #d4e4d9;border-radius:20px;background:#edf6f0;max-width:100%;overflow-wrap:anywhere}
.listing-filter-active>a.listing-filter-clear{background:transparent;border-color:transparent}
.listing-filter-errors{padding:10px;margin-bottom:14px;border-radius:8px;background:#fff0ef;color:#9a3430}
.listing-filter-empty{text-align:center;padding:36px 20px;margin:12px 0 30px;border-radius:16px;background:#f6f9f7;color:#647786}
.listing-filter-empty h2{font-size:1.15rem;color:#193747;margin:14px 0 8px}
.listing-filter-empty a{color:#247358}
@media(max-width:991px){.listing-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.listing-filters{padding:16px}.listing-filter-fields{grid-template-columns:1fr;gap:12px}.listing-search-row{gap:8px}.listing-filters .btn-primary{padding:10px 14px}.listing-filter-heading>i{display:none}}

.listing-type-chips {display:flex;gap:8px;flex-wrap:wrap;margin:14px 0;} .listing-type-chips a {border:1px solid #dce5ee;border-radius:24px;padding:9px 15px;color:#153a55;text-decoration:none;} .listing-type-chips a[aria-current=page] {background:#153a55;color:white;} .listing-type-chips a:focus-visible {outline:3px solid #19a274;outline-offset:2px;}

.listing-filter-fields [hidden]{display:none!important}.listing-filter-fields label{min-width:0}.listing-filter-fields input,.listing-filter-fields select{min-height:44px;width:100%}.listing-filter-fields input:focus-visible,.listing-filter-fields select:focus-visible{outline:3px solid #247358;outline-offset:2px}
