.listing-card-media{isolation:isolate;touch-action:pan-y pinch-zoom;background:#e9ece3;flex-shrink:0;position:relative}.listing-card-media .listing-card-photo{width:100%;height:100%;display:block}.listing-card-media .listing-card-photo>img{object-fit:cover;width:100%;height:100%}.listing-card-media .listing-card-photo:after{content:"";pointer-events:none;background:linear-gradient(#0000,#102a253b);position:absolute;inset:50% 0 0}.listing-card-media .homes-photo-placeholder{text-align:center;padding:45px;position:absolute;inset:0}.listing-card-media .card-photo-arrow{z-index:2;color:#193d32;cursor:pointer;touch-action:manipulation;background:#fffef9f5;border:1px solid #c1cbb9;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #17332326}.card-photo-previous{left:10px}.card-photo-next{right:10px}.listing-card-media .card-photo-arrow:hover{background:#fff;border-color:#315b40;box-shadow:0 3px 13px #17332338}.listing-card-media .card-photo-count{color:#fffef7;font-variant-numeric:tabular-nums;pointer-events:none;background:#17382fec;border:1px solid #ffffff38;border-radius:7px;align-items:center;gap:7px;padding:6px 9px;font-size:.7rem;font-weight:650;display:flex;position:absolute;bottom:15px;right:13px}.listing-card-media .card-photo-caption{color:#fffef8;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#102f26c9;border-radius:5px;max-width:calc(100% - 122px);padding:5px 8px;font-size:.66rem;font-weight:500;position:absolute;bottom:16px;left:15px;overflow:hidden}.listing-card-media .card-photo-more{color:#fffef8;touch-action:manipulation;background:#102f26ed;border:1px solid #ffffff38;border-radius:7px;align-items:center;gap:6px;max-width:calc(100% - 110px);min-height:44px;padding:8px 10px;font-size:.69rem;font-weight:600;line-height:1.35;text-decoration:none;display:flex;position:absolute;bottom:9px;left:12px}.listing-card-media .card-photo-more:hover{color:#fff;background:#214c39;text-decoration:none}.listing-card-media .card-photo-more svg{flex-shrink:0}.listing-card-media .card-photo-progress{pointer-events:none;background:#ffffff4d;height:3px;position:absolute;inset:auto 0 0;overflow:hidden}.listing-card-media .card-photo-progress>span{transform-origin:0;background:#fffef5;width:100%;height:100%;transition:transform .2s;display:block}.listing-card-media .card-photo-retry{color:#244c35;cursor:pointer;background:#fffef9;border:1px solid #9dad95;border-radius:6px;min-height:44px;padding:8px 12px;font-size:.74rem;font-weight:650;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.listing-card-media :is(a,button):focus-visible{outline-offset:-4px;outline:3px solid #b9742f}@media (hover:hover){.card-photo-arrow{opacity:0;transition:opacity .15s}.listing-card-media:hover .card-photo-arrow,.listing-card-media:focus-within .card-photo-arrow{opacity:1}}@media (prefers-reduced-motion:reduce){.card-photo-arrow,.listing-card-media .card-photo-progress>span{transition:none}}
.listing-staging.homes-public .listing-card{background:#fffefa;border:1px solid #ccd4c8;border-radius:18px;height:100%;transition:box-shadow .18s,border-color .18s;box-shadow:0 4px 16px #183b2305}.listing-staging.homes-public .listing-card:focus-within{border-color:#698267;box-shadow:0 5px 22px #183b2310}.listing-staging.homes-public .listing-card-body{padding:20px 21px 18px}.listing-staging.homes-public .listing-card .listing-kind{letter-spacing:.005em;color:#536552;margin:0 0 6px;font-size:.7rem;font-weight:550;line-height:1.65}.listing-staging.homes-public .listing-card .listing-price{letter-spacing:-.045em;color:#193b2e;font-variant-numeric:tabular-nums;margin:0 0 13px;font-size:clamp(1.7rem,2.3vw,2rem);font-weight:650;line-height:1.15}.listing-staging.homes-public .listing-card h2{letter-spacing:-.012em;overflow-wrap:anywhere;text-wrap:pretty;margin:0 0 3px;font-size:1.03rem;font-weight:600;line-height:1.45}.listing-staging.homes-public .listing-card h2 a{text-decoration:none}.listing-staging.homes-public .listing-card h2 a:hover{text-underline-offset:4px;text-decoration:underline}.listing-staging.homes-public .listing-card h2+p{color:#61715c;margin:0;font-size:.76rem;line-height:1.6}.listing-staging.homes-public .listing-card .listing-facts{font-variant-numeric:tabular-nums;gap:10px 16px;margin:14px 0 13px;padding:0;font-size:.82rem;font-weight:600}.listing-staging.homes-public .listing-card .listing-facts li{color:#354e3c;align-items:center;gap:6px;display:inline-flex}.listing-staging.homes-public .listing-card .listing-facts svg{color:#6b7f62;flex-shrink:0}.listing-staging.homes-public .listing-card-badges{gap:6px;margin:0 0 12px}.listing-staging.homes-public .listing-card-badges li{background:#edf2e5;border-color:#cad7bf;padding:4px 9px;font-size:.66rem;font-weight:650}.listing-staging.homes-public .listing-card-quick-facts{gap:5px 13px;margin:0 0 10px}.listing-staging.homes-public .listing-card-quick-facts li{color:#52644d;background:0 0;border:0;border-radius:0;padding:0;font-size:.75rem}.listing-staging.homes-public .listing-card-quick-facts li+li:before{content:"·";color:#78906d;margin-right:13px}.listing-card-detail-disclosure{border-top:1px solid #e3e7db;margin:12px 0 0;padding-top:2px}.listing-card-detail-disclosure summary{color:#426044;cursor:pointer;touch-action:manipulation;justify-content:space-between;align-items:center;gap:12px;min-height:42px;font-size:.72rem;font-weight:600;list-style:none;display:flex}.listing-card-detail-disclosure summary::-webkit-details-marker{display:none}.listing-card-detail-disclosure summary:hover{color:#173e2e}.listing-card-detail-disclosure summary:focus-visible{outline-offset:2px;border-radius:3px;outline:3px solid #b5793c}.listing-card-detail-disclosure summary svg{flex-shrink:0;transition:transform .16s}.listing-card-detail-disclosure[open] summary svg{transform:rotate(180deg)}.listing-card-detail-disclosure .listing-card-details{padding:0 0 6px}.listing-staging.homes-public .listing-card .listing-card-updated{color:#63745e;margin:8px 0 10px;font-size:.67rem;line-height:1.5}.listing-staging.homes-public .listing-card-signals{background:#f3f5ed;border:1px solid #e4e8d9;border-radius:9px;margin:13px 0;padding:13px 12px 11px}.listing-staging.homes-public .listing-card-signals-heading{color:#4c6548;letter-spacing:.1em;margin-bottom:8px;font-size:.63rem}.listing-staging.homes-public .listing-card-signals ul{gap:7px 12px}.listing-staging.homes-public .listing-card-signals li{color:#52664a;background:0 0;border-radius:0;padding:0;font-size:.7rem;line-height:1.5}.listing-staging.homes-public .listing-card-signals li strong{color:#234b35;font-weight:750}.listing-staging.homes-public .listing-card-signals-note{color:#5e7254;margin-top:8px;font-size:.62rem;line-height:1.5}.listing-staging.homes-public .listing-card .homes-card-research-link{letter-spacing:-.005em;color:#264e35;justify-content:space-between;align-items:center;gap:15px;min-height:46px;font-size:.78rem;font-weight:650;text-decoration:none;display:flex}.listing-card .homes-card-research-link svg{transition:transform .16s}.listing-card .homes-card-research-link:hover svg{transform:translate(2px,-2px)}@media (hover:hover){.listing-staging.homes-public .listing-card:hover{border-color:#9cb095;box-shadow:0 8px 26px #173b260c}}@media (max-width:650px){.listing-staging.homes-public .listing-card{border-radius:15px}.listing-staging.homes-public .listing-card-body{padding:19px 19px 16px}.listing-staging.homes-public .listing-card .listing-price{font-size:1.9rem}.listing-staging.homes-public .listing-card .listing-facts{font-size:.85rem}}@media (prefers-reduced-motion:reduce){.listing-staging.homes-public .listing-card,.listing-card-detail-disclosure summary svg,.listing-card .homes-card-research-link svg{transition:none}}
