/* /homes - every home for a search, no 200 cap (2026-10-10). Page styles only. */
body.homes-page{background:#fff}
.homes-top{padding:96px 0 0;border-bottom:1px solid var(--hairline);background:#fff;position:relative;z-index:5}
.homes-top .wrap{max-width:none;padding:0 28px}
.homes-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}
.homes-head h1{font-size:clamp(1.5rem,2.6vw,2.1rem);margin:0}
.homes-head .home-search{margin:0;max-width:440px;flex:1 1 320px;box-shadow:none}
.homes-head .home-search input{padding:12px 16px;font-size:.95rem}
.homes-head .home-search button{padding:0 18px}
.homes-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding-bottom:16px}
.homes-filters select{appearance:none;-webkit-appearance:none;border:1px solid var(--hairline);border-radius:999px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23000'/%3E%3C/svg%3E") no-repeat right 14px center;
  padding:9px 34px 9px 16px;font:400 .88rem var(--sans);color:var(--ink);cursor:pointer}
.homes-filters select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.homes-filters .homes-count{margin-left:auto;font-size:.85rem;color:var(--muted-dark)}
.homes-filters .homes-mapbtn{display:none;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff;
  padding:9px 18px;font:400 .88rem var(--sans);cursor:pointer}
.homes-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start}
.homes-map{position:sticky;top:var(--homes-hdr,74px);height:calc(100vh - var(--homes-hdr,74px) - var(--tk-h,0px));background:var(--cream)}
.homes-map #homesMap{position:absolute;inset:0}
.homes-list{padding:22px 28px 60px}
.homes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 22px}
.home-card{display:block;color:var(--ink);text-decoration:none}
.home-card .hc-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--cream)}
.home-card .hc-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.home-card:hover .hc-photo img,.home-card.hot .hc-photo img{transform:scale(1.04)}
.home-card .hc-tag{position:absolute;top:10px;left:10px;background:#fff;color:var(--ink);font-size:.72rem;letter-spacing:.06em;
  padding:4px 9px;border-radius:999px;text-transform:capitalize}
.home-card .hc-price{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin:12px 0 2px}
.home-card .hc-facts{font-size:.9rem;color:var(--ink-soft)}
.home-card .hc-addr{font-size:.9rem;color:var(--muted-dark);margin-top:2px}
.home-card .hc-court{font-size:.72rem;color:var(--muted);margin-top:6px;line-height:1.4}
.homes-more{display:block;margin:34px auto 0}
.homes-empty,.homes-loading{padding:60px 0;text-align:center;color:var(--muted-dark)}
.homes-loading .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ink);margin:0 3px;animation:hm-b 1s infinite}
.homes-loading .dot:nth-child(2){animation-delay:.15s}.homes-loading .dot:nth-child(3){animation-delay:.3s}
@keyframes hm-b{0%,80%,100%{opacity:.2}40%{opacity:1}}
.homes-disc{font-size:.72rem;line-height:1.55;color:var(--muted);margin-top:44px;border-top:1px solid var(--hairline);padding-top:18px}
/* map pins */
.hm-pin{background:#fff;color:#000;border:1px solid rgba(0,0,0,.25);border-radius:999px;font:600 11px/1 var(--sans);
  padding:5px 7px;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.18);transform:translate(-50%,-50%);display:inline-block}
.hm-pin.hot{background:#000;color:#fff;border-color:#000;z-index:1000}
.leaflet-div-icon.hm-wrap{background:none;border:0}
.hm-cluster{background:#000;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font:600 12px var(--sans);box-shadow:0 0 0 4px rgba(0,0,0,.18)}
.hm-pop{width:220px;color:#000;text-decoration:none;display:block}
.hm-pop img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.hm-pop b{display:block;font-size:1rem;margin:8px 0 2px}
.hm-pop span{display:block;font-size:.8rem;color:#555}
.leaflet-popup-content{margin:10px}
@media (max-width:1100px){.homes-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:820px){
  .homes-top{padding-top:80px}
  .homes-top .wrap,.homes-list{padding-left:16px;padding-right:16px}
  .homes-body{grid-template-columns:minmax(0,1fr)}
  .homes-map{display:none}
  body.homes-mapview .homes-map{display:block;position:fixed;top:var(--homes-top,140px);left:0;right:0;bottom:var(--tk-h,0px);height:auto;z-index:4}
  body.homes-mapview .homes-list{visibility:hidden}
  .homes-filters .homes-mapbtn{display:inline-block}
  .homes-filters .homes-count{margin-left:0;width:100%}
  .homes-grid{grid-template-columns:minmax(0,1fr)}
}
/* listing photos in full colour (the site-wide rule greys every img) */
.home-card .hc-photo img,.hm-pop img{filter:none}
@media (max-width:820px){
  .homes-head .home-search{flex-direction:row;flex:1 1 100%;max-width:none}
  .homes-head .home-search button{padding:0 16px}
}
