.mls-card{border:1px solid var(--color-line);height:100%;box-shadow:var(--shadow-card);color:inherit;transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s;background:#fff;border-radius:16px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.mls-card:hover,.mls-card.is-active{box-shadow:var(--shadow-lift);border-color:#cfe0d1;transform:translateY(-3px)}.mls-card__media{aspect-ratio:16/10;background:var(--color-primary-tint);position:relative;overflow:hidden}.mls-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.mls-card:hover .mls-card__media img{transform:scale(1.04)}.mls-card__nophoto{color:var(--color-primary-dark);place-items:center;font-size:.9rem;font-weight:600;display:grid;position:absolute;inset:0}.mls-card__count{color:#fff;background:#0000008c;border-radius:999px;padding:.22rem .5rem;font-size:.72rem;font-weight:600;position:absolute;bottom:10px;right:10px}.mls-card__oh{color:#fff;background:linear-gradient(90deg,#16491aeb,#16491aa6);padding:.35rem .75rem;font-size:.78rem;font-weight:700;position:absolute;bottom:0;left:0;right:0}.mls-card__oh+.mls-card__count{bottom:36px}.mls-card__count:has(+.mls-card__oh){bottom:36px}.mls-card__body{flex-direction:column;flex:1;gap:.18rem;padding:.85rem 1rem 1rem;display:flex}.mls-card__price{font-family:var(--font-display);color:var(--color-ink);font-size:1.28rem;font-weight:800;line-height:1.2}.mls-card__stats{color:var(--color-ink);flex-wrap:wrap;gap:.35rem .9rem;margin:.2rem 0 .15rem;font-size:.86rem;font-weight:600;display:flex}.mls-card__stats span{align-items:center;gap:.3rem;display:inline-flex}.mls-card__stats svg{color:var(--color-primary)}.mls-card__addr{font-size:.95rem;font-weight:600;line-height:1.35}.mls-card__town{color:var(--color-muted);font-size:.88rem}.mls-card__courtesy{color:var(--color-muted);margin-top:auto;padding-top:.55rem;font-size:.74rem;line-height:1.35}.mls-grid{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:1.1rem;display:grid}.mls-bar{top:var(--header-h);z-index:40;-webkit-backdrop-filter:saturate(1.4)blur(8px);backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--color-line);background:#fffffff5;position:sticky}.mls-bar__row{flex-wrap:wrap;align-items:center;gap:.5rem;padding-block:.7rem;display:flex}.mls-loc{border:1.5px solid var(--color-line);cursor:text;background:#fff;border-radius:12px;flex-wrap:wrap;flex:340px;align-items:center;gap:.35rem;min-width:0;min-height:46px;padding:.3rem .45rem;display:flex;position:relative}.mls-loc:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-tint)}.mls-loc input{min-width:120px;font:inherit;background:0 0;border:0;outline:0;flex:140px;padding:.35rem .3rem;font-size:.95rem}.mls-chip{background:var(--color-primary-tint);color:var(--color-primary-darker);border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .35rem .25rem .65rem;font-size:.82rem;font-weight:600;display:inline-flex}.mls-chip button{color:inherit;cursor:pointer;background:#16491a1f;border:0;border-radius:50%;width:20px;height:20px;font-size:.85rem;line-height:1}.mls-chip button:hover{background:#16491a40}.mls-suggest{z-index:50;border:1px solid var(--color-line);box-shadow:var(--shadow-lift);background:#fff;border-radius:12px;max-height:360px;padding:.35rem;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.mls-suggest button{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--color-ink);background:0 0;border:0;border-radius:9px;align-items:baseline;gap:.6rem;padding:.55rem .65rem;font-size:.93rem;display:flex}.mls-suggest button[aria-selected=true],.mls-suggest button:hover{background:var(--color-primary-tint)}.mls-suggest small{color:var(--color-muted);font-size:.8rem}.mls-suggest__kind{letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary-dark);min-width:44px;font-size:.66rem;font-weight:800}.mls-btn{white-space:nowrap;border:1.5px solid var(--color-line);color:var(--color-ink);height:46px;font:inherit;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:.35rem;padding:0 .85rem;font-size:.9rem;font-weight:600;display:inline-flex}.mls-btn:hover{border-color:var(--color-primary);color:var(--color-primary-dark)}.mls-btn.is-on{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary-darker)}.mls-btn--primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.mls-btn--primary:hover{background:var(--color-primary-dark);color:#fff}.mls-btn .mls-dot{background:var(--color-primary);color:#fff;border-radius:999px;padding:.05rem .4rem;font-size:.7rem}.mls-select{border:1.5px solid var(--color-line);height:46px;font:inherit;color:var(--color-ink);cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2314201a' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right .7rem center no-repeat;border-radius:12px;padding:0 2rem 0 .75rem;font-size:.9rem;font-weight:600}.mls-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-tint);outline:none}.mls-hide-sm{display:none!important}@media (min-width:900px){.mls-hide-sm{display:inline-flex!important}.mls-only-sm{display:none!important}}.mls-panel-scrim{z-index:80;background:#0f151273;position:fixed;inset:0}.mls-panel{z-index:81;max-height:88vh;box-shadow:var(--shadow-lift);padding-bottom:env(safe-area-inset-bottom,0px);background:#fff;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:fixed;inset:auto 0 0}@media (min-width:900px){.mls-panel{border-radius:18px;width:min(720px,94vw);max-height:86vh;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.mls-panel__head{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.mls-panel__head h2{margin:0;font-size:1.2rem}.mls-panel__body{gap:1.2rem;padding:1rem 1.25rem 1.25rem;display:grid;overflow:auto}.mls-panel__foot{border-top:1px solid var(--color-line);justify-content:space-between;gap:.6rem;padding:.85rem 1.25rem;display:flex}.mls-field{gap:.45rem;display:grid}.mls-field>span{font-size:.88rem;font-weight:700}.mls-two{grid-template-columns:1fr 1fr;align-items:center;gap:.6rem;display:grid}.mls-seg{flex-wrap:wrap;gap:.4rem;display:flex}.mls-seg button{border:1.5px solid var(--color-line);font:inherit;cursor:pointer;color:var(--color-ink);background:#fff;border-radius:999px;padding:.45rem .85rem;font-size:.86rem;font-weight:600}.mls-seg button[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.mls-check{cursor:pointer;align-items:center;gap:.55rem;font-size:.92rem;display:flex}.mls-check input{width:18px;height:18px;accent-color:var(--color-primary)}.mls-checks{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.55rem 1rem;display:grid}.mls-panel .form-input,.mls-panel .mls-select{width:100%}.mls-layout{grid-template-columns:1fr;gap:0;display:grid}@media (min-width:1100px){.mls-layout.has-map{grid-template-columns:minmax(0,1fr) minmax(380px,42%)}}.mls-results{min-width:0;padding:1.1rem 1.25rem 2.5rem}@media (min-width:768px){.mls-results{padding-inline:2rem}}.mls-mapcol{display:none}@media (min-width:1100px){.mls-layout.has-map .mls-mapcol{top:calc(var(--header-h) + 67px);height:calc(100vh - var(--header-h) - 67px);border-left:1px solid var(--color-line);display:block;position:sticky}}.mls-mapfull{z-index:75;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0}.mls-mapfull__bar{border-bottom:1px solid var(--color-line);padding:.6rem .75rem;padding-top:calc(.6rem + env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;gap:.5rem;display:flex}.mls-map{background:#e9efe9;width:100%;height:100%;min-height:300px;position:relative}.mls-map__note{z-index:500;box-shadow:var(--shadow-card);white-space:nowrap;background:#fff;border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:600;position:absolute;top:10px;left:50%;transform:translate(-50%)}.mls-map__area{z-index:500;position:absolute;top:10px;left:50%;transform:translate(-50%)}.mls-pin{white-space:nowrap;color:#fff;font:700 12px/1 var(--font-sans);cursor:pointer;background:#14201a;border:1.5px solid #fff;border-radius:8px;padding:5px 7px;display:inline-block;transform:translate(-50%,-100%);box-shadow:0 2px 6px #0000004d}.mls-pin:after{content:"";border:5px solid #0000;border-top-color:#14201a;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.mls-pin.is-own{background:var(--color-primary)}.mls-pin.is-own:after{border-top-color:var(--color-primary)}.mls-pin.is-soft{background:#6b7a70}.mls-pin.is-soft:after{border-top-color:#6b7a70}.mls-pin.is-hot{background:var(--color-accent);z-index:1000;transform:translate(-50%,-100%)scale(1.15)}.mls-pin.is-hot:after{border-top-color:var(--color-accent)}.leaflet-div-icon.mls-pin-wrap{background:0 0;border:0}.mls-pop{width:230px;font-family:var(--font-sans)}.mls-pop img{object-fit:cover;border-radius:8px;width:100%;height:130px;display:block}.mls-pop b{margin-top:.4rem;font-size:1rem;display:block}.mls-pop span{color:var(--color-muted);font-size:.8rem;line-height:1.35;display:block}.mls-pop a{color:var(--color-accent);font-weight:700}.mls-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.mls-head h2{font-size:1.15rem;font-family:var(--font-sans);margin:0;font-weight:700}.mls-head p{color:var(--color-muted);margin:0;font-size:.85rem}.mls-own{background:linear-gradient(180deg, var(--color-primary-tint), #fff);border:1px solid #cfe6cf;border-radius:18px;margin-bottom:1.75rem;padding:1rem}.mls-own__title{font-size:1.05rem;font-family:var(--font-display);color:var(--color-primary-darker);align-items:center;gap:.5rem;margin:.15rem .2rem .9rem;display:flex}.mls-pages{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:2rem;display:flex}.mls-pages button,.mls-pages span{border:1.5px solid var(--color-line);min-width:42px;height:42px;font:inherit;cursor:pointer;color:var(--color-ink);background:#fff;border-radius:10px;padding:0 .6rem;font-weight:600}.mls-pages span{cursor:default;border:0;place-items:center;display:inline-grid}.mls-pages button[aria-current=page]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.mls-pages button:disabled{opacity:.45;cursor:default}.mls-skel{border:1px solid var(--color-line);background:#fff;border-radius:16px;overflow:hidden}.mls-skel div{background:linear-gradient(90deg,#eef2ee 25%,#f6f8f6 50%,#eef2ee 75%) 0 0/200% 100%;animation:1.2s linear infinite mlsShimmer}@keyframes mlsShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.mls-empty{text-align:center;background:var(--color-surface);border:1px dashed #cfd9d1;border-radius:18px;padding:3rem 1rem}.mls-notice{border-top:1px solid var(--color-line);color:var(--color-muted);margin-top:2rem;padding-top:1rem;font-size:.76rem;line-height:1.6}.mls-mapbtn{z-index:60;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));position:fixed;transform:translate(-50%);box-shadow:0 10px 24px #00000040;border-radius:999px!important}@media (min-width:1100px){.mls-mapbtn{display:none!important}}.mls-gallery{position:relative}.mls-gallery__main{aspect-ratio:16/10;touch-action:pan-y;background:#f0f0ee;border-radius:16px;position:relative;overflow:hidden}.mls-gallery__main img{object-fit:cover;cursor:zoom-in;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.mls-arrow{cursor:pointer;color:#fff;z-index:2;background:#00000080;border:0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.5rem;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.mls-arrow:hover{background:#000000b3}.mls-counter{color:#fff;background:#0000009e;border-radius:999px;padding:.3rem .65rem;font-size:.82rem;font-weight:600;position:absolute;bottom:12px;right:12px}.mls-expand{cursor:pointer;font:inherit;background:#ffffffeb;border:0;border-radius:999px;padding:.35rem .7rem;font-size:.8rem;font-weight:700;position:absolute;bottom:12px;left:12px}.mls-thumbs{scroll-snap-type:x proximity;gap:.5rem;margin-top:.6rem;padding-bottom:4px;display:flex;overflow-x:auto}.mls-thumbs button{cursor:pointer;opacity:.78;scroll-snap-align:start;background:#eee;border:2px solid #0000;border-radius:8px;flex:none;width:92px;height:64px;padding:0;overflow:hidden}.mls-thumbs button[aria-current=true]{border-color:var(--color-primary);opacity:1}.mls-thumbs img{object-fit:cover;width:100%;height:100%}.mls-lightbox{z-index:90;color:#fff;background:#080a09f5;flex-direction:column;display:flex;position:fixed;inset:0}.mls-lightbox__top{padding:.75rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;font-weight:600;display:flex}.mls-lightbox__img{touch-action:pan-y;flex:1;place-items:center;min-height:0;display:grid;position:relative}.mls-lightbox__img img{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%}.mls-lightbox__cap{text-align:center;padding:.6rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));color:#cfd6d1;min-height:2.6rem;font-size:.9rem}.mls-close{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:50%;width:42px;height:42px;font-size:1.4rem}.mls-detail-grid{grid-template-columns:1fr;align-items:start;gap:2rem;margin-top:1.75rem;display:grid}@media (min-width:960px){.mls-detail-grid{grid-template-columns:minmax(0,1fr) 340px}}.mls-aside{top:calc(var(--header-h) + 1rem);gap:1rem;display:grid;position:sticky}.mls-keyfacts{border-bottom:1px solid var(--color-line);flex-wrap:wrap;gap:.75rem 1.6rem;margin-bottom:1.4rem;padding-bottom:1.1rem;font-weight:600;display:flex}.mls-keyfacts span{align-items:center;gap:.4rem;display:inline-flex}.mls-keyfacts svg{color:var(--color-primary)}.mls-sec{margin-bottom:1.6rem}.mls-sec h2{margin-bottom:.8rem;font-size:1.25rem}.mls-facts{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.1rem 1.5rem;margin:0;display:grid}.mls-facts div{border-bottom:1px solid var(--color-line);justify-content:space-between;gap:1rem;padding:.55rem 0;font-size:.92rem;display:flex}.mls-facts dt{color:var(--color-muted);flex-shrink:0}.mls-facts dd{text-align:right;margin:0;font-weight:600}.mls-facts--wide{grid-template-columns:1fr}.mls-facts--wide div{grid-template-columns:minmax(120px,34%) 1fr;display:grid}.mls-facts--wide dd{text-align:left;font-weight:500}.mls-rooms{border-collapse:collapse;width:100%;font-size:.92rem}.mls-rooms th,.mls-rooms td{text-align:left;border-bottom:1px solid var(--color-line);padding:.5rem .4rem}.mls-rooms th{color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.mls-ohbox{gap:.5rem;display:grid}.mls-ohbox div{background:var(--color-primary-tint);color:var(--color-primary-darker);border-radius:12px;align-items:center;gap:.65rem;padding:.7rem .9rem;font-weight:600;display:flex}.mls-pay{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.mls-pay strong{font-family:var(--font-display);font-size:1.35rem}.mls-share{flex-wrap:wrap;gap:.5rem;display:flex}.mls-status-off{text-align:center;padding:2.5rem 1rem}.mls-pin--dot{border-radius:50%;width:13px;height:13px;padding:0;font-size:0;transform:translate(-50%,-50%)}.mls-pin--dot:after{display:none}.mls-pin--dot.is-hot{transform:translate(-50%,-50%)scale(1.6)}
