@layer components{.listing-overlay-panel{--overlay-bg:#1f252c;--overlay-border:#c6ccd1;--overlay-border-2:#454a4f;--overlay-glow:0 0 1.125rem rgb(0 0 0/42%);--overlay-text:#f5f7fb;--overlay-muted:#c9d2db;--overlay-accent:#cbd5e1;--overlay-pill-border:rgb(255 255 255/18%);--overlay-pill-text:#e2e8f0;--overlay-radius:1.2rem;width:22rem;background:var(--overlay-bg);color:var(--overlay-text);border-radius:var(--overlay-radius);border:.0625rem solid var(--overlay-border);box-shadow:var(--overlay-glow);overflow:hidden;position:relative;backdrop-filter:blur(.25rem);isolation:isolate}.listing-overlay-panel:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:.0625rem;background:linear-gradient(135deg,var(--overlay-border),var(--overlay-border-2));mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}.listing-overlay-panel .overlay-media{position:relative;width:100%;aspect-ratio:16/9;overflow:visible}.listing-overlay-panel .overlay-photo{width:100%;height:100%;object-fit:cover;display:block}.listing-overlay-panel .overlay-avatar{position:absolute;bottom:-1.1rem;left:1rem;width:2.6rem;height:2.6rem;border-radius:624.9375rem;background:#fff;padding:.16rem;box-shadow:0 .625rem 1.375rem rgb(0 0 0/35%);z-index:3}.listing-overlay-panel .overlay-avatar img{width:100%;height:100%;border-radius:624.9375rem;object-fit:cover;display:block}.listing-overlay-panel .overlay-avatar.overlay-avatar-elite{background:linear-gradient(135deg,#fcd34d,#f59e0b);padding:.16rem}.listing-overlay-panel .overlay-body{padding:1.3rem 1.1rem 1rem;display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:2}.listing-overlay-panel .overlay-title{font-size:1.02rem;font-weight:600;letter-spacing:-.01em}.listing-overlay-panel .overlay-price{font-size:1.18rem;font-weight:800;letter-spacing:-.02em}.listing-overlay-panel.variant-elite .overlay-price{letter-spacing:.0313rem;background:linear-gradient(135deg,#f7de9c,#eeb44f);background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.listing-overlay-panel .overlay-expenses{font-size:.85rem;color:var(--overlay-muted);margin-top:-.15rem}.listing-overlay-panel.variant-elite .overlay-expenses{color:#e6d3a5}.listing-overlay-panel .overlay-meta{display:flex;gap:.75rem;flex-wrap:wrap;color:var(--overlay-muted);font-size:.92rem}.listing-overlay-panel.variant-elite .overlay-meta{color:#f3efe4}.listing-overlay-panel .overlay-meta-item{display:inline-flex;align-items:center;gap:.28rem}.listing-overlay-panel .overlay-meta-item svg{color:var(--overlay-accent)}.listing-overlay-panel.variant-elite .overlay-meta-item svg{color:#efc46c}.listing-overlay-panel .overlay-amenities{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.15rem}.listing-overlay-panel .overlay-pill{display:inline-flex;align-items:center;padding:.4rem .68rem;border-radius:62.4375rem;border:.0625rem solid var(--overlay-pill-border);color:var(--overlay-pill-text);background:rgb(255 255 255/4%);font-size:.88rem;white-space:nowrap}.listing-overlay-panel.variant-elite .overlay-pill{position:relative;z-index:0;color:#f3efe4;background:rgb(255 240 210/5%);border:.0625rem solid #eeb44f;border-radius:62.4375rem;box-shadow:inset 0 0 0 .0375rem rgb(247 206 120/32%),0 0 0 .0219rem rgb(247 206 120/24%)}.listing-overlay-panel .overlay-cta{margin-top:.25rem;width:100%;background:none;color:var(--overlay-pill-text);font-weight:600;letter-spacing:-.01em;padding:.65rem 0;border:none;border-top:.0625rem solid rgb(255 255 255/7%);display:inline-flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer;transition:color .2s ease,transform .2s ease}.listing-overlay-panel .overlay-cta:hover{color:var(--overlay-accent);transform:translateY(-.0625rem)}.listing-overlay-panel.variant-elite .overlay-cta{font-weight:400;color:#f1ce79}.listing-overlay-panel.variant-elite .overlay-cta svg{color:#e4c88d}.listing-overlay-panel.variant-elite .overlay-cta span{font-weight:100;background:linear-gradient(135deg,#f4dba3,#d9a853);background-clip:text;-webkit-text-fill-color:transparent}.listing-overlay-panel.variant-premium{--overlay-bg:#151826;--overlay-border:rgb(130 97 255/90%);--overlay-border-2:rgb(102 63 214/70%);--overlay-glow:0 0 1.125rem rgb(102 63 214/35%);--overlay-accent:#c084fc;--overlay-pill-border:rgb(192 132 252/60%);--overlay-pill-text:#f3e8ff;animation:overlay-premium-pulse 6s ease-in-out infinite}.listing-overlay-panel.variant-premium .overlay-avatar{background:linear-gradient(135deg,#c084fc,#7c3aed);padding:.18rem}.listing-overlay-panel.variant-elite{--overlay-bg:#181a20;--overlay-border:#f6d88c;--overlay-border-2:#eeb44f;--overlay-glow:0 0 1.125rem rgb(247 206 120/34%),0 0 2rem rgb(238 180 79/28%);--overlay-accent:#f1c86c;--overlay-pill-border:#eeb44f;--overlay-pill-text:#f6e7c4;--overlay-text:#fdf6df;--overlay-muted:#e8d6aa;animation:overlay-elite-pulse 6s ease-in-out infinite}.listing-overlay-panel.variant-elite .overlay-avatar{background:linear-gradient(135deg,#f7de9c,#eeb44f);padding:.2rem;box-shadow:0 0 1.25rem 0 rgb(247 206 120/45%)}.listing-overlay-panel.variant-elite .overlay-title{font-weight:500;color:#f9f7ef}@keyframes overlay-elite-pulse{0%{box-shadow:0 0 1.125rem rgb(247 206 120/34%),0 0 2rem rgb(238 180 79/28%)}50%{box-shadow:0 .3125rem 2.25rem rgb(247 206 120/42%),0 0 2.25rem rgb(238 180 79/32%)}to{box-shadow:0 0 1.125rem rgb(247 206 120/34%),0 0 2rem rgb(238 180 79/28%)}}@keyframes overlay-premium-pulse{0%{box-shadow:0 0 1.125rem rgb(102 63 214/35%)}50%{box-shadow:0 .3125rem 2.25rem rgb(102 63 214/35%)}to{box-shadow:0 0 1.125rem rgb(102 63 214/35%)}}}@layer components{.bh-map-overlay-popup .maplibregl-popup-content{padding:0!important;pointer-events:auto}.bh-map-overlay-popup .maplibregl-popup-content,.bh-map-overlay-popup.maplibregl-popup{background:transparent!important;box-shadow:none!important;border:none!important;max-width:none!important;width:auto!important}.bh-map-overlay-popup .maplibregl-popup-close-button,.bh-map-overlay-popup .maplibregl-popup-tip{display:none}.bh-map-overlay-popup{background:transparent;box-shadow:none;border:none;z-index:30}}.bh-map-marker--draggable{cursor:grab}.bh-map-marker--draggable:active{cursor:grabbing}.bh-map-marker--draggable:focus-within{outline:2px solid var(--ring);outline-offset:3px;border-radius:9999px}.bh-floating-overlay{position:absolute;z-index:40;pointer-events:auto;transform-origin:bottom center;filter:drop-shadow(0 12px 28px rgb(0 0 0/28%))}@layer components{.bh-cluster-marker{--bh-cluster-size:3rem;--bh-cluster-glow-inset:0.375rem;--bh-cluster-font-size:0.95rem;position:relative}.bh-cluster-marker--sm{--bh-cluster-size:2.5rem;--bh-cluster-glow-inset:0.325rem;--bh-cluster-font-size:0.85rem}.bh-cluster-marker--md{--bh-cluster-size:3rem;--bh-cluster-glow-inset:0.375rem;--bh-cluster-font-size:0.95rem}.bh-cluster-marker--lg{--bh-cluster-size:3.6rem;--bh-cluster-glow-inset:0.45rem;--bh-cluster-font-size:1.05rem}.bh-cluster-marker:after{content:"";position:absolute;inset:calc(-1 * var(--bh-cluster-glow-inset));border-radius:624.9375rem;background:radial-gradient(circle,var(--outer-light,#fff) 0,transparent 70%);filter:blur(.625rem);opacity:.35;transform-origin:center;animation:bh-cluster-glow 2.4s ease-in-out infinite;z-index:0}.bh-cluster-marker__body,.bh-cluster-marker__frame,.bh-cluster-marker__halo{width:var(--bh-cluster-size);height:var(--bh-cluster-size)}.bh-cluster-marker__body{font-size:var(--bh-cluster-font-size);animation:bh-cluster-breathe 2.8s ease-in-out infinite}}@keyframes bh-cluster-glow{0%{transform:scale(.95);opacity:.32}50%{transform:scale(1.06);opacity:.55}to{transform:scale(.95);opacity:.32}}@keyframes bh-cluster-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@layer components{.property-pin-container{--bh-pin-container-width:5.4rem;--bh-pin-container-height:6.4rem;--bh-pin-size:3rem;--bh-pin-top:0.95rem;--bh-price-top:2.35rem;--bh-price-font:0.8rem;--bh-price-pad-y:0.28rem;--bh-price-pad-x:0.68rem;--bh-price-radius:1.05rem;--bh-badge-top:0.05rem;--bh-badge-font:0.58rem;--bh-badge-pad-y:0.2rem;--bh-badge-pad-x:0.5rem;--bh-badge-radius:0.5rem;--bh-elite-pin-size:3.25rem;--bh-elite-pin-size-outer:3.45rem;--bh-elite-price-offset:3.15rem;position:relative;width:var(--bh-pin-container-width);height:var(--bh-pin-container-height);display:flex;justify-content:center;align-items:center;z-index:10}.property-pin-container.size-md{--bh-pin-container-width:5.4rem;--bh-pin-container-height:6.4rem;--bh-pin-size:3rem;--bh-pin-top:0.95rem;--bh-price-top:2.35rem;--bh-price-font:0.8rem;--bh-price-pad-y:0.28rem;--bh-price-pad-x:0.65rem;--bh-price-radius:1.05rem;--bh-badge-top:0.05rem;--bh-badge-font:0.58rem;--bh-badge-pad-y:0.2rem;--bh-badge-pad-x:0.48rem;--bh-badge-radius:0.48rem;--bh-elite-pin-size:3.25rem;--bh-elite-pin-size-outer:3.45rem;--bh-elite-price-offset:3.15rem}.property-pin-container.size-sm{--bh-pin-container-width:4.3rem;--bh-pin-container-height:5.1rem;--bh-pin-size:2.4rem;--bh-pin-top:0.75rem;--bh-price-top:1.95rem;--bh-price-font:0.7rem;--bh-price-pad-y:0.22rem;--bh-price-pad-x:0.5rem;--bh-price-radius:0.92rem;--bh-badge-top:-0.08rem;--bh-badge-font:0.52rem;--bh-badge-pad-y:0.15rem;--bh-badge-pad-x:0.4rem;--bh-badge-radius:0.42rem;--bh-elite-pin-size:2.7rem;--bh-elite-pin-size-outer:2.85rem;--bh-elite-price-offset:2.55rem}.property-pin-container.size-lg{--bh-pin-container-width:6.3rem;--bh-pin-container-height:7.6rem;--bh-pin-size:3.6rem;--bh-pin-top:1.15rem;--bh-price-top:2.85rem;--bh-price-font:0.92rem;--bh-price-pad-y:0.32rem;--bh-price-pad-x:0.78rem;--bh-price-radius:1.18rem;--bh-badge-top:0.18rem;--bh-badge-font:0.64rem;--bh-badge-pad-y:0.24rem;--bh-badge-pad-x:0.6rem;--bh-badge-radius:0.58rem;--bh-elite-pin-size:3.95rem;--bh-elite-pin-size-outer:4.1rem;--bh-elite-price-offset:3.55rem}.property-pin-container.variant-elite{--bh-pin-container-height:6.2rem}.property-pin-container.variant-elite.size-sm{--bh-pin-container-height:4.9rem}.property-pin-container.variant-elite.size-lg{--bh-pin-container-height:6.8rem}.property-pin-container .pin-floating{width:100%;height:100%;display:flex;justify-content:center;align-items:center;animation:bh-float 4s ease-in-out infinite}.property-pin-container .pin-shape{width:var(--bh-pin-size);height:var(--bh-pin-size);border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--pin-gradient);box-shadow:inset -.0625rem -.0625rem .125rem rgb(255 255 255/40%),inset .125rem .125rem .3125rem rgb(0 0 0/20%),0 .625rem 1.25rem rgb(0 0 0/25%);position:absolute;top:var(--bh-pin-top);z-index:1;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.property-pin-container:hover .pin-shape{transform:rotate(-45deg) scale(1.1);cursor:pointer}.property-pin-container:hover{z-index:20}.property-pin-container:hover .price-pill{transform:translate(-50%,-50%) scale(1.06);box-shadow:0 .25rem .75rem rgb(0 0 0/20%),0 0 0 .0938rem rgb(0 0 0/5%)}.property-pin-container:hover .company-avatar{transform:translateX(-50%) scale(1.06);box-shadow:0 .35rem .85rem rgb(0 0 0/28%)}.property-pin-container .price-pill{position:absolute;top:var(--bh-price-top);left:50%;transform:translate(-50%,-50%);background:#fff;color:var(--pin-text-color);font-family:var(--font-sans);font-weight:800;font-size:var(--bh-price-font);letter-spacing:-.02em;padding:var(--bh-price-pad-y) var(--bh-price-pad-x);border-radius:var(--bh-price-radius);white-space:nowrap;box-shadow:0 .125rem .5rem rgb(0 0 0/15%),0 0 0 .0625rem rgb(0 0 0/4%);z-index:5;transition:transform .25s ease,box-shadow .25s ease}.property-pin-container .pin-badge{color:var(--pin-badge-text);font-size:var(--bh-badge-font);font-weight:900;text-transform:uppercase;letter-spacing:.05em;padding:var(--bh-badge-pad-y) var(--bh-badge-pad-x);border-radius:var(--bh-badge-radius);box-shadow:0 .25rem .375rem rgb(0 0 0/10%)}.property-pin-container .company-avatar,.property-pin-container .pin-badge{position:absolute;top:var(--bh-badge-top);left:50%;transform:translateX(-50%);background:#fff;z-index:6}.property-pin-container .company-avatar{width:1.9rem;height:1.9rem;border-radius:9999px;padding:.12rem;box-shadow:0 .25rem .5rem rgb(0 0 0/22%);transition:transform .25s ease,box-shadow .25s ease}.property-pin-container .company-avatar img{width:100%;height:100%;border-radius:9999px;object-fit:cover;display:block}.property-pin-container .pin-badge .pin-badge-label{display:block;font-weight:900;font-size:.625rem;letter-spacing:.06em}.property-pin-container .pin-badge.pin-badge-elite{background:linear-gradient(90deg,#b45309,#f59e0b,#b45309);background-size:200% auto;color:white;border:.0625rem solid #fef3c7;box-shadow:0 .25rem .75rem rgb(0 0 0/40%);animation:shine 3s linear infinite;padding:calc(var(--bh-badge-pad-y) + .1rem) calc(var(--bh-badge-pad-x) + .1rem);border-radius:calc(var(--bh-badge-radius) + .1rem);text-align:center}.property-pin-container .pin-badge.pin-badge-elite .pin-badge-price{display:block;margin-top:.125rem;font-weight:700;letter-spacing:-.01rem;font-size:1rem}.property-pin-container .pin-photo-wrapper{position:absolute;bottom:.75rem;left:50%;transform:translateX(-50%);width:2.625rem;height:2.625rem;border-radius:50%;background:var(--pin-gradient);padding:.1875rem;box-shadow:0 .3125rem .9375rem rgb(0 0 0/30%);z-index:4}.property-pin-container .pin-photo-wrapper img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;border:.125rem solid white}.property-pin-container.variant-elite .pin-shape{width:var(--bh-elite-pin-size-outer);height:var(--bh-elite-pin-size-outer);background:#000;border:.1875rem solid #f59e0b;box-shadow:0 0 0 .125rem #fef3c7,0 .9375rem 2.1875rem rgb(0 0 0/50%),0 0 1.25rem rgb(245 158 11/40%);overflow:hidden;z-index:2}.property-pin-container.variant-elite .pin-image-bg{width:140%;height:140%;position:absolute;top:-20%;left:-20%;object-fit:cover;transform:rotate(45deg);transition:transform .4s ease}.property-pin-container.variant-elite:hover .pin-image-bg{transform:rotate(45deg) scale(1.1)}.property-pin-container.variant-elite .price-pill{top:auto;bottom:0;background:#fff;color:#92400e;border:.125rem solid #f59e0b;font-size:.875rem;padding:.25rem .75rem;box-shadow:0 .25rem .75rem rgb(0 0 0/30%);z-index:10}.property-pin-container.variant-elite .pin-badge{top:-1.875rem;background:linear-gradient(90deg,#7c2d12,#92400e,#7c2d12);background-size:200% auto;color:white;border:.0625rem solid #fef3c7;box-shadow:0 .25rem .75rem rgb(0 0 0/40%);animation:shine 3s linear infinite}}@keyframes bh-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.375rem)}}@keyframes shine{to{background-position:200%}}