/**handles:generic-modal,listing-filter-styles,listing-carousel-styles**/
.generic-modal{position:fixed;inset:0;z-index:99999;display:none}.generic-modal.is-open{display:block}.generic-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}.generic-modal__dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;width:90%;max-width:640px;max-height:90vh;overflow-y:auto;padding:2rem;border-radius:8px}.generic-modal__close{position:absolute;top:1rem;right:1rem;background:0 0;border:none;font-size:1.5rem;cursor:pointer}
.lf-filters{width:100%}p:empty{display:none}.lf-box{border:1px solid #63856e;padding:1rem;border-radius:.5rem;background:#fff}.lf-box legend{font-weight:600;font-size:1.1rem}.lf-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:.5rem}@media (max-width:640px){.lf-grid-3{display:flex;flex-direction:column;gap:1rem}}.lf-grid-3>div{display:flex;flex-direction:column;gap:.35rem}.lf-grid-3 label{font-weight:500;font-size:.9rem}.lf-inline{display:flex;gap:.5rem;align-items:center}.lf-inline select{flex:1;padding:.5rem;border:1px solid #63856e;border-radius:.25rem;font-size:.9rem}.lf-actions{margin-top:1rem;display:flex;gap:.75rem;align-items:center}.lf-actions button[type=submit]{background:#3d5f48;color:#fff;border:none;padding:.65rem 1.5rem;border-radius:.35rem;font-weight:600;cursor:pointer;transition:background .2s}.lf-actions button[type=submit]:hover{background:#2f4437}.lf-actions button[type=submit]:active{background:#253629}.lf-reset{color:#3d5f48;text-decoration:none;font-weight:500;padding:.65rem 1rem;transition:color .2s}.lf-reset:hover{color:#2f4437;text-decoration:underline}
.swiper,.swiper-inner{position:relative;width:100%;z-index:1}.swiper .swiper-inner{overflow:hidden}.swiper{--edge-left:18px;--edge-right:18px}.swiper .swiper-wrapper{display:flex!important;flex-wrap:nowrap;list-style:none;margin:0;padding:0;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;padding-inline:var(--edge-left) var(--edge-right);scroll-padding-inline:var(--edge-left) var(--edge-right);-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,0) 0,rgba(0,0,0,0.25) calc(var(--edge-left) * 0.45),rgba(0,0,0,0.6) calc(var(--edge-left) * 0.75),rgba(0,0,0,1) var(--edge-left),rgba(0,0,0,1) calc(100% - var(--edge-right)),rgba(0,0,0,0.6) calc(100% - var(--edge-right) * 0.75),rgba(0,0,0,0.25) calc(100% - var(--edge-right) * 0.45),rgba(0,0,0,0) 100%);mask-image:linear-gradient(to right,rgba(0,0,0,0) 0,rgba(0,0,0,0.25) calc(var(--edge-left) * 0.45),rgba(0,0,0,0.6) calc(var(--edge-left) * 0.75),rgba(0,0,0,1) var(--edge-left),rgba(0,0,0,1) calc(100% - var(--edge-right)),rgba(0,0,0,0.6) calc(100% - var(--edge-right) * 0.75),rgba(0,0,0,0.25) calc(100% - var(--edge-right) * 0.45),rgba(0,0,0,0) 100%)}.swiper .swiper-slide{flex:0 0 auto;width:clamp(260px,50vw,420px);box-sizing:border-box;scroll-snap-align:start}.swiper,.swiper-slide,.swiper-slide *,.swiper-wrapper{pointer-events:auto}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;color:#63856e00;background:rgba(0,0,0,0);color:#63856e;z-index:30;pointer-events:auto;cursor:pointer;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.swiper-button-prev{left:.1rem}.swiper-button-next{right:.1rem}.swiper-button-prev::after{content:"‹";font-size:50px;line-height:1}.swiper-button-next::after{content:"›";font-size:50px;line-height:1}.swiper-button-next:active,.swiper-button-next:focus,.swiper-button-prev:active,.swiper-button-prev:focus{outline:0;box-shadow:none}.swiper .swiper-wrapper{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-gutter:stable both-edges;padding-bottom:20px}.listing-card{position:relative}.listing-card .listing-badges{position:absolute;top:.2rem;left:0;right:.4rem;z-index:5;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;pointer-events:none}.listing-card .listing-badges .wp-block-post-terms__list{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}.listing-card .listing-badges .wp-block-post-terms__separator{display:none}.listing-card .listing-badges a{display:inline-flex;align-items:center;padding:.28rem .6rem;border-radius:9999px;font-size:.85rem;font-weight:600;line-height:1;text-decoration:none;color:#fff;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(2px)}.listing-badges a[href*=amherst],.listing-badges a[href*=belchertown],.listing-badges a[href*=deerfield],.listing-badges a[href*=florence],.listing-badges a[href*=greenfield],.listing-badges a[href*=hadley],.listing-badges a[href*=leverett],.listing-badges a[href*=northampton],.listing-badges a[href*=pelham],.listing-badges a[href*=shelburne],.listing-badges a[href*=sunderland]{display:none!important}.listing-badges a[href*="%24"],.listing-badges a[href*=cost],.listing-badges a[href*=month],.listing-badges a[href*=price],.listing-badges a[href*=rent]{background:#3d5f48;color:#fff}.listing-badges a[href*=bed],.listing-badges a[href*=bedroom]{background:#1a5fa8;color:#fff}.listing-badges a[href*=bath],.listing-badges a[href*=bathroom]{background:#6d3d7f;color:#fff}.listing-badges a[href*=home],.listing-badges a[href*=listing]{background:#b57108;color:#fff}.listing-badges a{pointer-events:none;cursor:default}.listing-image{overflow:hidden;border-radius:9.2px 9.2px 0 0}@media (max-width:640px){.swiper{--edge-left:0px;--edge-right:0px}.swiper .swiper-wrapper{-webkit-mask-image:none;mask-image:none;padding-inline:0;scroll-padding-inline:0;gap:0}.swiper .swiper-slide{width:100%;scroll-snap-align:center}.swiper-button-next,.swiper-button-prev{display:grid;width:40px;height:40px;font-size:40px;background:rgba(0,0,0,0);color:#63856e;z-index:30}}