/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}
.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}
[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}
.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/@media(max-width:767px){body.dmRoot div[dmtemplateid]:not([dmtemplateid=SlideRightTopFloatM]) .dmHeader .multilingualWidget{position:absolute;top:14px;left:13px;margin-top:0}body.dmRoot div[dmtemplateid][dmtemplateid=SlideRightTopFloatM] .dmHeader .multilingualWidget{position:absolute;top:5px;right:17px}
}@media(min-width:768px) and (max-width:1024px){body:not(.responsiveTablet) #dm div[dmtemplateid=StandardLayoutMultiT] .dmHeader .multilingualWidget{position:absolute!important;top:5px!important;right:17px!important;left:initial!important}
}@media(max-width:767px){body.dmRoot .dmHeader .displayHidden-inner .multilingualWidget{top:0!important}}#dm_content div.dmRespCol div.multilingualWidget,#hcontainer div.dmRespCol div.multilingualWidget{width:auto!important;display:table!important}
.multilingualWidget.displayNone{display:none!important}.multilingualWidget>div{position:relative}.multilingualWidget{clear:both;margin:0;vertical-align:top;display:table!important;font-size:0;font-family:sans-serif}
.multilingualWidget .language{color:#888;display:inline-block}.multilingualWidget .language a{text-align:center;display:inline-block;color:inherit;border:#dadada 1px solid;background-color:#fff}.multilingualWidget .language a img{width:24px;height:26px;min-width:24px;min-height:26px}
.multilingualWidget .language a span{display:none;line-height:initial}.multilingualWidget .language a span.name{margin-top:5px;margin-left:7px;font-size:12px;font-weight:400;text-transform:capitalize}
.multilingualWidget .language a span.short-label{font-size:12px}.multilingualWidget .language a:after{line-height:initial}.multilingualWidget.open .current-language a:after{transform:rotate(-180deg)}.multilingualWidget .current-language a:after{transition:transform .2s}
.multilingualWidget.dropdown .language{width:100%}.multilingualWidget.dropdown .language a{display:block;padding:1px 5px}.multilingualWidget.dropdown .language.other-languages{position:absolute;z-index:800;max-height:0;overflow:hidden;transition:max-height .1s ease-in-out}
.multilingualWidget.dropdown .language.other-languages a{border-top:0!important}.multilingualWidget.dropdown .current-language{position:relative}.multilingualWidget.dropdown .current-language span.name{padding-right:25px}
.multilingualWidget.dropdown .dm-icon{font-size:9px;display:inline-block;position:absolute;top:46%;transform:translateY(-50%);transition:transform .2s;right:8px}.multilingualWidget.dropdown.open .dm-icon{transform:rotate(-180deg) translateY(50%)}
.multilingualWidget.dropdown.open .other-languages{display:block;max-height:300px}.multilingualWidget.dropdown .other-languages,.multilingualWidget.dropdown.flag-only .dm-icon,.multilingualWidget.inline span,.multilingualWidget.no-flag a img{display:none}
.multilingualWidget.dropdown.flag-only a{border:transparent 1px solid;background-color:transparent}.multilingualWidget.dropdown.flag-only.open .language a{background-color:rgba(0,0,0,.3);border:#dadada 1px solid}
.multilingualWidget.dropdown.long-label a{text-align:left;padding:2px 0 2px 5px;position:relative;box-sizing:border-box}.multilingualWidget.dropdown.long-label a span.name,.multilingualWidget.inline.flag-only .language,.multilingualWidget.inline.short-label.no-flag span.short-label{display:inline-block}
.multilingualWidget.dropdown.long-label.no-flag a{padding:7px 10px 9px}.multilingualWidget.dropdown.long-label.no-flag a span.name,.multilingualWidget.dropdown.short-label.no-flag a span.short-label{margin:0;display:inline-block}
.multilingualWidget.dropdown.short-label.no-flag a{padding:8px 22px 9px 10px;font-size:12px;min-height:32px;height:auto;box-sizing:border-box}.multilingualWidget.dropdown.short-label.no-flag .current-language a:after{top:12px}
.multilingualWidget.short-label span.short-label{text-transform:uppercase}.multilingualWidget.inline.flag-only a{padding:2px 5px;height:32px;box-sizing:border-box}.multilingualWidget.inline.flag-only .current-language a{box-shadow:inset 0 0 8px 0 rgba(0,0,0,.6);border-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}
.multilingualWidget.inline.flag-only .other-languages a:not(:last-child){border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.flag-only .dm-icon,.multilingualWidget.inline.short-label.no-flag .dm-icon{display:none}
.multilingualWidget.inline.short-label.no-flag .current-language a{padding-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.short-label.no-flag .current-language a span.short-label{font-weight:700}
.multilingualWidget.inline.short-label.no-flag .other-languages a{border-left-color:transparent!important;border-left-width:0!important;border-left-style:none!important}.multilingualWidget.inline.short-label.no-flag .other-languages a:not(:last-child){padding-right:0;border-right-color:transparent!important;border-right-width:0!important;border-right-style:none!important}
.multilingualWidget.inline.short-label.no-flag a{position:relative;padding:8px 10px;font-size:12px;min-height:32px;height:auto;text-decoration:none}.multilingualWidget.inline.short-label.no-flag a:after{content:"/";position:absolute;top:8px;right:-7px;z-index:1;pointer-events:none}
.multilingualWidget.inline.short-label.no-flag a:hover .short-label{text-decoration:underline}.multilingualWidget.inline.short-label.no-flag .other-languages a:last-child:after{content:""}/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}
.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}
.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}
.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}
.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}
.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}
.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}
.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}
.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}
.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:"○"}
.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:"■"}
.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}
.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}
.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}
.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:"•";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"○";transform:scale(1);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"★";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"➞";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"＋";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"－";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✓";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✗";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal)". "}
.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal)". "}
.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal)". "}
.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal)". "}
.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}
.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}
.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}
}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}
/* Custom Widgets Styles */
@charset "UTF-8";
/* Ensure the page body grows with content so the iframe height is measured correctly */
html, body {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
}

#dl-rental-listings-embed {
  --dl-font-family-base: "Segoe UI", Arial, sans-serif;
  /* ── Token defaults ──
     These are the fallback values. The design panel injects overrides as inline
     CSS variables on this same element, which take priority over these defaults. */
  --dl-color-primary: #0a3d62;
  --dl-color-accent: #e07b39;
  --dl-color-interactive: #0073aa;
  --dl-color-bg: #ffffff;
  --dl-color-card-bg: #ffffff;
  --dl-color-filter-bg: #ffffff;
  --dl-color-surface-subtle: #f6f9fd;
  --dl-color-border: #e3e9f0;
  --dl-color-heading: #0a3d62;
  --dl-color-body: #3b4a5a;
  --dl-color-btn-primary-bg: #0a3d62;
  --dl-color-btn-primary-text: #ffffff;
  --dl-color-btn-outline-color: #e07b39;
  --dl-color-modal-bg: #ffffff;
  --dl-color-map-marker: #FF4136;
  --dl-color-filter-btn-text-override: #0a3d62;
  --dl-color-filter-active: #0073aa;
  --dl-color-card-location: #e07b39;
  --dl-color-available-badge-bg: #e07b39;
  --dl-color-available-badge-text: #ffffff;
  --dl-color-price-badge-bg: #0a3d62;
  --dl-color-price-badge-text: #ffffff;
  --dl-color-card-pill-bg: #f6f9fd;
  --dl-color-card-pill-text: #0a3d62;
  --dl-color-ws-label: #0a3d62;
  --dl-color-ws-check: #e07b39;
  --dl-color-card-read-more: #0073aa;
  --dl-color-modal-close-text: #0a3d62;
  --dl-color-address-text: #0a3d62;
  --dl-color-section-title: #0a3d62;
  --dl-color-amenity-bg: #f6f9fd;
  --dl-color-amenity-text: #0a3d62;
  --dl-color-amenity-check: #0073aa;
  --dl-color-detail-icon: #0073aa;
  /* ── Derived aliases ── */
  --dl-color-bg-main: var(--dl-color-bg);
  --dl-color-bg-container: var(--dl-color-bg);
  --dl-color-title: var(--dl-color-heading);
  --dl-color-filter-btn-text: var(--dl-color-filter-btn-text-override);
  --dl-color-filter-btn-border: var(--dl-color-filter-btn-text-override);
  --dl-color-filter-btn-hover-bg: rgba(10,61,98,0.05);
  --dl-color-dropdown-bg: var(--dl-color-filter-bg);
  --dl-color-dropdown-border: var(--dl-color-border);
  --dl-color-filter-heading: var(--dl-color-filter-btn-text-override);
  --dl-color-filter-label: var(--dl-color-body);
  --dl-color-filter-input-border: var(--dl-color-border);
  --dl-color-filter-input-bg: var(--dl-color-surface-subtle);
  --dl-color-filter-option-text: var(--dl-color-body);
  --dl-color-filter-option-border: var(--dl-color-border);
  --dl-color-filter-option-selected-bg: var(--dl-color-surface-subtle);
  --dl-color-filter-option-selected-border: var(--dl-color-filter-active);
  --dl-color-filter-option-selected-text: var(--dl-color-filter-btn-text-override);
  --dl-color-filter-option-hover-bg: var(--dl-color-surface-subtle);
  --dl-color-active-tag-bg: var(--dl-color-surface-subtle);
  --dl-color-active-tag-text: var(--dl-color-filter-btn-text-override);
  --dl-color-filter-tab-text: var(--dl-color-body);
  --dl-color-filter-tab-active: var(--dl-color-filter-active);
  --dl-color-apply-btn-from: var(--dl-color-filter-active);
  --dl-color-apply-btn-to: var(--dl-color-filter-btn-text-override);
  --dl-color-apply-btn-text: var(--dl-color-btn-primary-text);
  --dl-color-reset-btn-bg: var(--dl-color-border);
  --dl-color-reset-btn-text: var(--dl-color-body);
  --dl-color-card-border: var(--dl-color-border);
  --dl-color-card-title: #1a1a2e;
  --dl-color-card-address: #1a1a2e;
  --dl-color-modal-price: #0a3d62;
  --dl-color-card-meta: #5a6a7a;
  --dl-color-card-placeholder-bg: var(--dl-color-border);
  --dl-color-card-placeholder-text: #aaa;
  --dl-color-card-specs: var(--dl-color-body);
  --dl-color-ws-text: var(--dl-color-body);
  --dl-color-tour-btn-bg: var(--dl-color-btn-primary-bg);
  --dl-color-tour-btn-text: var(--dl-color-btn-primary-text);
  --dl-color-tour-btn-border: var(--dl-color-btn-primary-bg);
  --dl-color-card-apply-btn-bg: transparent;
  --dl-color-card-apply-btn-text: var(--dl-color-btn-outline-color);
  --dl-color-card-apply-btn-border: var(--dl-color-btn-outline-color);
  --dl-color-modal-backdrop: rgba(0,0,0,0.55);
  --dl-color-modal-content-bg: var(--dl-color-modal-bg);
  --dl-color-single-listing-bg: var(--dl-color-modal-bg);
  --dl-color-description-text: var(--dl-color-body);
  --dl-color-detail-item-text: var(--dl-color-body);
  --dl-color-map-marker-text: var(--dl-color-btn-primary-text);
  --dl-color-no-results-text: var(--dl-color-body);
  --dl-shadow-light: rgba(0,0,0,0.10);
  --dl-shadow-card-hover: rgba(10,61,98,0.12);
  --dl-shadow-card-base: rgba(10,61,98,0.06);
  --dl-shadow-dropdown: rgba(0,0,0,0.15);
  --dl-shadow-modal: rgba(0,0,0,0.2);
  --dl-shadow-apply-button: rgba(10,61,98,0.10);
  --dl-shadow-apply-button-hover: rgba(10,61,98,0.15);
  font-family: var(--dl-font-family-base);
  background: var(--dl-color-bg-main);
  margin: 0;
}

#dl-rental-listings-embed [data-doorloop-container] {
  max-width: 1100px;
  margin: 40px auto;
  background: var(--dl-color-bg-container);
  padding: 36px 24px 24px 24px;
  border-radius: 18px;
  box-shadow: 0 6px 32px var(--dl-shadow-light) !important;
}

#dl-rental-listings-embed [data-doorloop-title] {
  text-align: center;
  color: var(--dl-color-title) !important;
  font-size: 2.5rem !important;
  margin-bottom: 30px;
  font-weight: 700 !important;
}

/* Filter Bar */
#dl-rental-listings-embed [data-doorloop-filters] {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 12px;
  margin-bottom: 30px !important;
  padding: 0 10px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-dropdown] {
  position: relative;
  display: inline-block;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-btn] {
  background-color: transparent !important;
  color: var(--dl-color-filter-btn-text) !important;
  border: 1.5px solid var(--dl-color-filter-btn-border) !important;
  border-radius: 25px !important;
  padding: 8px 16px !important;
  font-size: 0.95rem !important;
  cursor: pointer;
  transition: all 0.2s;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-btn]:hover {
  background-color: var(--dl-color-filter-btn-hover-bg) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-btn]::after {
  content: "▼" !important;
  font-size: 0.7em;
  margin-left: 8px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-btn].no-arrow::after {
  content: "" !important;
  margin-left: 0;
}

/* Dropdown */
#dl-rental-listings-embed [data-doorloop-container] [data-filter-content] {
  display: none;
  position: absolute;
  background-color: var(--dl-color-dropdown-bg);
  min-width: 220px;
  box-shadow: 0 8px 16px 0 var(--dl-shadow-dropdown);
  border-radius: 8px;
  padding: 15px;
  z-index: 10;
  margin-top: 8px;
  border: 1px solid var(--dl-color-dropdown-border);
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-dropdown].show [data-filter-content] {
  display: block !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-heading] {
  color: var(--dl-color-filter-heading) !important;
  font-weight: 600 !important;
  margin-bottom: 10px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-group] {
  margin-bottom: 15px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-label] {
  display: block;
  margin-bottom: 5px;
  color: var(--dl-color-filter-label) !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-select],
#dl-rental-listings-embed [data-doorloop-container] [data-filter-input] {
  width: 100%;
  padding: 8px 10px !important;
  border: 1px solid var(--dl-color-filter-input-border) !important;
  border-radius: 6px !important;
  background-color: var(--dl-color-filter-input-bg) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-range] {
  display: flex !important;
  gap: 8px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-range] input {
  width: 100%;
  padding: 8px 10px !important;
  border: 1px solid var(--dl-color-filter-input-border) !important;
  border-radius: 6px !important;
  background-color: var(--dl-color-filter-input-bg) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-actions] {
  display: flex !important;
  justify-content: space-between;
  margin-top: 15px;
  gap: 10px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-apply],
#dl-rental-listings-embed [data-doorloop-container] [data-filter-reset] {
  padding: 8px 15px !important;
  border-radius: 6px !important;
  border: none !important;
  cursor: pointer;
  font-weight: 500 !important;
  flex: 1;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-apply] {
  background: linear-gradient(90deg, var(--dl-color-apply-btn-from) 0%, var(--dl-color-apply-btn-to) 100%) !important;
  color: var(--dl-color-apply-btn-text) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-reset] {
  background: var(--dl-color-reset-btn-bg) !important;
  color: var(--dl-color-reset-btn-text) !important;
}

/* Filter Options */
#dl-rental-listings-embed [data-doorloop-container] [data-enhanced-filter-options] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px;
  margin-bottom: 12px !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-option] {
  background: transparent !important;
  border: 1px solid var(--dl-color-filter-option-border) !important;
  border-radius: 6px !important;
  padding: 8px 12px !important;
  font-size: 0.95rem !important;
  cursor: pointer;
  color: var(--dl-color-filter-option-text) !important;
  font-weight: 500 !important;
  transition: all 0.2s;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-option].selected {
  background: var(--dl-color-filter-option-selected-bg) !important;
  border-color: var(--dl-color-filter-option-selected-border) !important;
  color: var(--dl-color-filter-option-selected-text) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-option]:hover:not(.selected) {
  background: var(--dl-color-filter-option-hover-bg) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-exact-match] {
  display: flex !important;
  align-items: center;
  margin-top: 10px !important;
  margin-bottom: 5px !important;
  cursor: pointer;
}

#dl-rental-listings-embed [data-doorloop-container] [data-exact-match] input {
  margin-right: 8px !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-zipcode-filter] {
  margin-bottom: 15px !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-radius-slider] {
  width: 100% !important;
  margin: 15px 0 10px 0 !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-radius-display] {
  text-align: center !important;
  font-weight: 500 !important;
  color: var(--dl-color-filter-heading) !important;
  margin-bottom: 15px !important;
}

/* Active Filters */
#dl-rental-listings-embed [data-doorloop-container] [data-active-filters] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px;
  margin: 15px 10px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-active-filter] {
  background: var(--dl-color-active-tag-bg) !important;
  color: var(--dl-color-active-tag-text) !important;
  border-radius: 20px !important;
  padding: 5px 12px !important;
  font-size: 0.85rem !important;
  display: inline-flex !important;
  align-items: center;
}

#dl-rental-listings-embed [data-doorloop-container] [data-active-filter] button {
  background: none !important;
  border: none !important;
  color: var(--dl-color-active-tag-text) !important;
  cursor: pointer;
  font-size: 1.1rem !important;
  margin-left: 5px;
  padding: 0 0 0 5px !important;
}

/* Filter Tabs */
#dl-rental-listings-embed [data-doorloop-container] [data-filter-tabs] {
  display: flex !important;
  border-bottom: 1px solid var(--dl-color-dropdown-border) !important;
  margin-bottom: 15px !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-tab] {
  padding: 8px 16px !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  cursor: pointer;
  color: var(--dl-color-filter-tab-text) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-tab].active {
  color: var(--dl-color-filter-tab-active) !important;
  border-bottom: 2px solid var(--dl-color-filter-tab-active) !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-tab-content] {
  display: none;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-tab-content].active {
  display: block !important;
}

#dl-rental-listings-embed [data-doorloop-container] [data-checkboxes-container] {
  max-height: 200px;
  overflow-y: auto;
  padding-right: 10px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-checkbox-container] {
  display: flex !important;
  flex-direction: column;
  gap: 8px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-checkbox] {
  display: flex !important;
  align-items: center;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-checkbox] input {
  margin-right: 8px;
}

#dl-rental-listings-embed [data-doorloop-container] [data-filter-checkbox] label {
  cursor: pointer;
  font-size: 0.9rem !important;
  color: var(--dl-color-filter-label) !important;
}

/* No results */
#dl-rental-listings-embed [data-doorloop-container] [data-doorloop-no-results] {
  text-align: center !important;
  padding: 30px !important;
  color: var(--dl-color-no-results-text) !important;
  font-size: 1.2rem !important;
  line-height: 1.6 !important;
}

/* ── Listings Grid (vertical stack of horizontal cards) ───────────────────── */
#dl-rental-listings-embed [data-doorloop-listings-grid] {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  margin-top: 20px !important;
}

/* ── Horizontal Card ─────────────────────────────────────────────────────── */
#dl-rental-listings-embed [data-doorloop-card] {
  display: flex !important;
  flex-direction: row !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: var(--dl-color-card-bg) !important;
  border: 1px solid var(--dl-color-card-border) !important;
  box-shadow: 0 2px 16px var(--dl-shadow-card-base) !important;
  cursor: pointer !important;
  transition: box-shadow 0.22s, transform 0.22s !important;
  min-height: 260px !important;
}

#dl-rental-listings-embed [data-doorloop-card]:hover {
  box-shadow: 0 8px 28px var(--dl-shadow-card-hover) !important;
  transform: translateY(-3px) !important;
}

/* ── Image Panel (left) ──────────────────────────────────────────────────── */
#dl-rental-listings-embed [data-dl-card-image-panel] {
  width: 42% !important;
  min-width: 280px !important;
  flex-shrink: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  background: var(--dl-color-card-placeholder-bg) !important;
}

#dl-rental-listings-embed [data-dl-card-hero] {
  position: relative !important;
  flex: 1 !important;
  overflow: hidden !important;
  min-height: 200px !important;
  cursor: zoom-in !important;
}

#dl-rental-listings-embed [data-dl-card-hero-img] {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  transition: transform 0.3s ease !important;
  cursor: zoom-in !important;
}

#dl-rental-listings-embed [data-doorloop-card]:hover [data-dl-card-hero-img] {
  transform: scale(1.03) !important;
}

#dl-rental-listings-embed [data-dl-card-no-img] {
  width: 100% !important;
  height: 100% !important;
  min-height: 200px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--dl-color-card-placeholder-text) !important;
  font-size: 1rem !important;
}

/* Available Now badge */
#dl-rental-listings-embed [data-dl-card-available-badge] {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  background: var(--dl-color-available-badge-bg) !important;
  color: var(--dl-color-available-badge-text) !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

/* Price badge */
#dl-rental-listings-embed [data-dl-card-price-badge] {
  position: absolute !important;
  bottom: 12px !important;
  left: 12px !important;
  background: var(--dl-color-price-badge-bg) !important;
  color: var(--dl-color-price-badge-text) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  padding: 5px 14px !important;
  border-radius: 8px !important;
  pointer-events: none !important;
  z-index: 2 !important;
  line-height: 1.2 !important;
}

#dl-rental-listings-embed [data-dl-price-suffix] {
  font-size: 0.75em !important;
  font-weight: 400 !important;
  opacity: 0.85 !important;
}

/* Thumbnail strip */
#dl-rental-listings-embed [data-dl-card-thumbnails] {
  display: flex !important;
  height: 64px !important;
  flex-shrink: 0 !important;
  gap: 2px !important;
  background: var(--dl-color-card-placeholder-bg) !important;
}

#dl-rental-listings-embed [data-dl-card-thumbnail] {
  flex: 1 !important;
  background-size: cover !important;
  background-position: center !important;
  cursor: zoom-in !important;
  position: relative !important;
  transition: opacity 0.2s !important;
}

#dl-rental-listings-embed [data-dl-card-thumbnail]:hover {
  opacity: 0.85 !important;
}

#dl-rental-listings-embed [data-dl-thumb-more] {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.45) !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  pointer-events: none !important;
}

/* ── Details Panel (right) ───────────────────────────────────────────────── */
#dl-rental-listings-embed [data-dl-card-details-panel] {
  flex: 1 !important;
  padding: 22px 24px 20px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  min-width: 0 !important;
}

/* Location line */
#dl-rental-listings-embed [data-dl-card-location] {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: var(--dl-color-card-location) !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

#dl-rental-listings-embed [data-dl-pin-icon] {
  color: var(--dl-color-card-location) !important;
  flex-shrink: 0 !important;
}

/* Card title */
#dl-rental-listings-embed [data-dl-card-title] {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: var(--dl-color-card-address) !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  font-family: var(--dl-font-family-base) !important;
  text-transform: none !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  white-space: normal !important;
}

/* Specs row */
#dl-rental-listings-embed [data-dl-card-specs] {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

#dl-rental-listings-embed [data-dl-card-spec] {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: var(--dl-color-card-specs) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}

#dl-rental-listings-embed [data-dl-card-spec] svg {
  color: var(--dl-color-card-location) !important;
  flex-shrink: 0 !important;
}

/* Amenity pills */
#dl-rental-listings-embed [data-dl-card-amenity-pills] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

#dl-rental-listings-embed [data-dl-card-amenity-pill] {
  background: var(--dl-color-card-pill-bg) !important;
  color: var(--dl-color-card-pill-text) !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  white-space: nowrap !important;
}

#dl-rental-listings-embed [data-dl-amenity-more] {
  background: transparent !important;
  border: 1px solid var(--dl-color-card-pill-text) !important;
  opacity: 0.7 !important;
}

#dl-rental-listings-embed [data-dl-pet-pill] {
  background: #fff5ee !important;
  color: #b05a1a !important;
}

/* What's Special */
#dl-rental-listings-embed [data-dl-card-whats-special] {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

#dl-rental-listings-embed [data-dl-card-ws-label] {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--dl-color-ws-label) !important;
}

#dl-rental-listings-embed [data-dl-card-ws-list] {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

#dl-rental-listings-embed [data-dl-card-ws-list] li {
  font-size: 0.82rem !important;
  color: var(--dl-color-ws-text) !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}

#dl-rental-listings-embed [data-dl-card-ws-list] li::before {
  content: "✓" !important;
  color: var(--dl-color-ws-check) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  flex-shrink: 0 !important;
}

/* Description snippet on card */
#dl-rental-listings-embed [data-dl-card-desc-wrap] {
  margin: 6px 0 4px !important;
}

#dl-rental-listings-embed [data-dl-card-desc] {
  margin: 0 0 4px !important;
  font-size: 0.82rem !important;
  color: var(--dl-color-body) !important;
  line-height: 1.45 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

#dl-rental-listings-embed [data-dl-card-read-more] {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  color: var(--dl-color-card-read-more) !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  line-height: 1.2 !important;
}

#dl-rental-listings-embed [data-dl-card-read-more]:hover {
  opacity: 0.8 !important;
}

/* Action buttons (card) */
#dl-rental-listings-embed [data-dl-card-actions] {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-top: auto !important;
  padding-top: 6px !important;
}

#dl-rental-listings-embed [data-dl-card-tour-btn] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--dl-color-tour-btn-bg) !important;
  color: var(--dl-color-tour-btn-text) !important;
  border: 1.5px solid var(--dl-color-tour-btn-border) !important;
  padding: 9px 20px !important;
  border-radius: 8px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  letter-spacing: 0.02em !important;
}

#dl-rental-listings-embed [data-dl-card-tour-btn]:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
}

#dl-rental-listings-embed [data-dl-card-apply-btn] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--dl-color-card-apply-btn-bg) !important;
  color: var(--dl-color-card-apply-btn-text) !important;
  border: 1.5px solid var(--dl-color-card-apply-btn-border) !important;
  padding: 9px 20px !important;
  border-radius: 8px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  letter-spacing: 0.02em !important;
}

#dl-rental-listings-embed [data-dl-card-apply-btn]:hover {
  background: var(--dl-color-card-apply-btn-text) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

/* ── Modal overlay ────────────────────────────────────────────────────────── */
#property-detail-modal[data-doorloop-property-modal] {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background-color: var(--dl-color-modal-backdrop) !important;
  display: none;
  justify-content: center !important;
  align-items: flex-start !important;
  z-index: 99999 !important;
  overflow-y: auto !important;
  padding: 24px 16px !important;
  font-family: "Segoe UI", Arial, sans-serif;
}

#property-detail-modal[data-doorloop-property-modal].active {
  display: flex !important;
}

#property-detail-modal [data-doorloop-property-modal-content],
#dl-rental-listings-embed [data-doorloop-property-modal-content] {
  background: var(--dl-color-modal-content-bg) !important;
  width: 100% !important;
  max-width: 960px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25) !important;
  position: relative !important;
  margin: auto !important;
}

#property-detail-modal [data-doorloop-property-modal-body],
#dl-rental-listings-embed [data-doorloop-property-modal-body] {
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
  background: var(--dl-color-single-listing-bg) !important;
  padding: 0 !important;
}

#property-detail-modal [data-doorloop-property-modal-close],
#dl-rental-listings-embed [data-doorloop-property-modal-close] {
  position: fixed !important;
  top: 18px !important;
  right: 18px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  border: none !important;
  font-size: 1.4rem !important;
  color: var(--dl-color-modal-close-text) !important;
  cursor: pointer !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 100000 !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2) !important;
  transition: background 0.2s, transform 0.15s !important;
  line-height: 1 !important;
  padding: 0 !important;
}

#property-detail-modal [data-doorloop-property-modal-close]:hover,
#dl-rental-listings-embed [data-doorloop-property-modal-close]:hover {
  background: #fff !important;
  transform: scale(1.1) !important;
}

/* Property navigation arrows */
#property-detail-modal [data-property-nav],
#dl-rental-listings-embed [data-doorloop-property-modal] [data-property-nav] {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 1005 !important;
  border: none !important;
  font-size: 1.4rem !important;
  color: var(--dl-color-address-text) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18) !important;
  transition: all 0.2s ease !important;
}

#property-detail-modal [data-property-nav]:hover,
#dl-rental-listings-embed [data-doorloop-property-modal] [data-property-nav]:hover {
  background: #fff !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.22) !important;
  transform: translateY(-50%) scale(1.06) !important;
}

#property-detail-modal [data-property-nav=prev],
#dl-rental-listings-embed [data-doorloop-property-modal] [data-property-nav=prev] {
  left: 12px !important;
}

#property-detail-modal [data-property-nav=next],
#dl-rental-listings-embed [data-doorloop-property-modal] [data-property-nav=next] {
  right: 12px !important;
}

/* ── Modal Gallery ────────────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-gallery],
#dl-rental-listings-embed [data-dl-modal-gallery] {
  width: 100% !important;
  flex-shrink: 0 !important;
  background: var(--dl-color-card-placeholder-bg) !important;
  overflow: hidden !important;
}

#property-detail-modal [data-dl-modal-gallery-placeholder],
#dl-rental-listings-embed [data-dl-modal-gallery-placeholder] {
  width: 100% !important;
  height: 260px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--dl-color-card-placeholder-text) !important;
  font-size: 1.1rem !important;
  background: var(--dl-color-card-placeholder-bg) !important;
}

#property-detail-modal [data-dl-modal-hero],
#dl-rental-listings-embed [data-dl-modal-hero] {
  position: relative !important;
  width: 100% !important;
  height: 340px !important;
  overflow: hidden !important;
  cursor: zoom-in !important;
}

#property-detail-modal [data-dl-modal-hero-img],
#dl-rental-listings-embed [data-dl-modal-hero-img] {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  transition: transform 0.35s ease !important;
}

#property-detail-modal [data-dl-modal-hero]:hover [data-dl-modal-hero-img],
#dl-rental-listings-embed [data-dl-modal-hero]:hover [data-dl-modal-hero-img] {
  transform: scale(1.02) !important;
}

#property-detail-modal [data-dl-modal-gallery-btn],
#dl-rental-listings-embed [data-dl-modal-gallery-btn] {
  position: absolute !important;
  bottom: 14px !important;
  right: 14px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 7px 14px !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: var(--dl-color-address-text) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  transition: background 0.2s, transform 0.15s !important;
  z-index: 3 !important;
}

#property-detail-modal [data-dl-modal-gallery-btn]:hover,
#dl-rental-listings-embed [data-dl-modal-gallery-btn]:hover {
  background: #fff !important;
  transform: translateY(-1px) !important;
}

#property-detail-modal [data-dl-modal-thumbs],
#dl-rental-listings-embed [data-dl-modal-thumbs] {
  display: flex !important;
  height: 72px !important;
  gap: 3px !important;
  background: var(--dl-color-card-placeholder-bg) !important;
}

#property-detail-modal [data-dl-modal-thumb],
#dl-rental-listings-embed [data-dl-modal-thumb] {
  flex: 1 !important;
  background-size: cover !important;
  background-position: center !important;
  cursor: zoom-in !important;
  position: relative !important;
  transition: opacity 0.2s !important;
  overflow: hidden !important;
}

#property-detail-modal [data-dl-modal-thumb]:hover,
#dl-rental-listings-embed [data-dl-modal-thumb]:hover {
  opacity: 0.82 !important;
}

#property-detail-modal [data-dl-modal-thumb-more],
#dl-rental-listings-embed [data-dl-modal-thumb-more] {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(10, 61, 98, 0.55) !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  pointer-events: none !important;
}

/* ── Modal two-column body ────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-body-inner],
#dl-rental-listings-embed [data-dl-modal-body-inner] {
  display: flex !important;
  flex-direction: row !important;
  gap: 0 !important;
  align-items: flex-start !important;
  padding: 28px 28px 36px 28px !important;
}

#property-detail-modal [data-dl-modal-main-col],
#dl-rental-listings-embed [data-dl-modal-main-col] {
  flex: 1 !important;
  min-width: 0 !important;
  padding-right: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

/* ── Modal header ──────────────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-header],
#dl-rental-listings-embed [data-dl-modal-header] {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

#property-detail-modal [data-dl-modal-location-line],
#dl-rental-listings-embed [data-dl-modal-location-line] {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: var(--dl-color-card-location) !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
}

#property-detail-modal [data-dl-modal-title],
#dl-rental-listings-embed [data-dl-modal-title] {
  font-size: 1.55rem !important;
  font-weight: 800 !important;
  color: var(--dl-color-address-text) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  font-family: var(--dl-font-family-base) !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  text-transform: none !important;
}

/* ── Modal specs strip ─────────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-specs-strip],
#dl-rental-listings-embed [data-dl-modal-specs-strip] {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  background: var(--dl-color-surface-subtle) !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  border: 1px solid var(--dl-color-card-border) !important;
}

#property-detail-modal [data-dl-modal-spec],
#dl-rental-listings-embed [data-dl-modal-spec] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: var(--dl-color-card-specs) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  padding: 2px 16px 2px 0 !important;
}

#property-detail-modal [data-dl-modal-spec] svg,
#dl-rental-listings-embed [data-dl-modal-spec] svg {
  color: var(--dl-color-card-location) !important;
  flex-shrink: 0 !important;
}

#property-detail-modal [data-dl-modal-spec] strong,
#dl-rental-listings-embed [data-dl-modal-spec] strong {
  font-weight: 700 !important;
  color: var(--dl-color-address-text) !important;
}

#property-detail-modal [data-dl-modal-spec-divider],
#dl-rental-listings-embed [data-dl-modal-spec-divider] {
  display: inline-block !important;
  width: 1px !important;
  height: 18px !important;
  background: var(--dl-color-card-border) !important;
  margin: 0 12px 0 4px !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
}

/* ── Modal content sections ────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-section],
#dl-rental-listings-embed [data-dl-modal-section] {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

#property-detail-modal [data-dl-modal-section-title],
#dl-rental-listings-embed [data-dl-modal-section-title] {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  color: var(--dl-color-section-title) !important;
}

#property-detail-modal [data-dl-modal-section-accent],
#dl-rental-listings-embed [data-dl-modal-section-accent] {
  display: inline-block !important;
  width: 3px !important;
  height: 14px !important;
  background: var(--dl-color-card-location) !important;
  border-radius: 2px !important;
  flex-shrink: 0 !important;
}

#property-detail-modal [data-dl-modal-desc-text],
#dl-rental-listings-embed [data-dl-modal-desc-text] {
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
  color: var(--dl-color-description-text) !important;
  margin: 0 !important;
  white-space: pre-wrap !important;
}

/* ── Modal amenity pills ───────────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-amenity-pills],
#dl-rental-listings-embed [data-dl-modal-amenity-pills] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

#property-detail-modal [data-dl-modal-amenity-pill],
#dl-rental-listings-embed [data-dl-modal-amenity-pill] {
  background: var(--dl-color-amenity-bg) !important;
  color: var(--dl-color-amenity-text) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  padding: 5px 12px !important;
  border-radius: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}

#property-detail-modal [data-dl-modal-amenity-pill]::before,
#dl-rental-listings-embed [data-dl-modal-amenity-pill]::before {
  content: "✓" !important;
  margin-right: 5px !important;
  color: var(--dl-color-amenity-check) !important;
  font-weight: 700 !important;
}

#property-detail-modal [data-dl-modal-pet-pill],
#dl-rental-listings-embed [data-dl-modal-pet-pill] {
  background: #fff5ee !important;
  color: #b05a1a !important;
}

#property-detail-modal [data-dl-modal-pet-pill]::before,
#property-detail-modal [data-dl-modal-nopet-pill]::before,
#dl-rental-listings-embed [data-dl-modal-pet-pill]::before,
#dl-rental-listings-embed [data-dl-modal-nopet-pill]::before {
  content: "" !important;
  margin-right: 0 !important;
}

#property-detail-modal [data-dl-modal-nopet-pill],
#dl-rental-listings-embed [data-dl-modal-nopet-pill] {
  background: #fef2f2 !important;
  color: #b91c1c !important;
}

/* ── Modal sidebar (price card) ────────────────────────────────────────────── */
#property-detail-modal [data-dl-modal-sidebar],
#dl-rental-listings-embed [data-dl-modal-sidebar] {
  width: 240px !important;
  flex-shrink: 0 !important;
}

#property-detail-modal [data-dl-modal-price-card],
#dl-rental-listings-embed [data-dl-modal-price-card] {
  background: var(--dl-color-surface-subtle) !important;
  border: 1px solid var(--dl-color-card-border) !important;
  border-radius: 14px !important;
  padding: 22px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  position: sticky !important;
  top: 20px !important;
}

#property-detail-modal [data-dl-modal-price],
#dl-rental-listings-embed [data-dl-modal-price] {
  font-size: 2rem !important;
  font-weight: 800 !important;
  color: var(--dl-color-modal-price) !important;
  line-height: 1 !important;
}

#property-detail-modal [data-dl-modal-price-suffix],
#dl-rental-listings-embed [data-dl-modal-price-suffix] {
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  color: var(--dl-color-card-meta) !important;
  margin-left: 2px !important;
}

#property-detail-modal [data-dl-modal-available-badge],
#dl-rental-listings-embed [data-dl-modal-available-badge] {
  display: inline-flex !important;
  align-items: center !important;
  background: var(--dl-color-available-badge-bg) !important;
  color: var(--dl-color-available-badge-text) !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  width: fit-content !important;
}

#property-detail-modal [data-dl-modal-action-btns],
#dl-rental-listings-embed [data-dl-modal-action-btns] {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding-top: 4px !important;
}

#property-detail-modal [data-dl-modal-tour-btn],
#property-detail-modal [data-dl-modal-apply-btn],
#dl-rental-listings-embed [data-dl-modal-tour-btn],
#property-detail-modal [data-dl-modal-apply-btn],
#dl-rental-listings-embed [data-dl-modal-apply-btn] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 11px 18px !important;
  border-radius: 9px !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  text-align: center !important;
}

#property-detail-modal [data-dl-modal-tour-btn],
#dl-rental-listings-embed [data-dl-modal-tour-btn] {
  background: var(--dl-color-tour-btn-bg) !important;
  color: var(--dl-color-tour-btn-text) !important;
}

#property-detail-modal [data-dl-modal-tour-btn]:hover,
#dl-rental-listings-embed [data-dl-modal-tour-btn]:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
}

#dl-rental-listings-embed [data-dl-modal-apply-btn] {
  background: transparent !important;
  color: var(--dl-color-card-apply-btn-text) !important;
  border: 1.5px solid var(--dl-color-card-apply-btn-border) !important;
}

#property-detail-modal [data-dl-modal-apply-btn]:hover,
#dl-rental-listings-embed [data-dl-modal-apply-btn]:hover {
  background: var(--dl-color-card-apply-btn-text) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

/* ── Map ──────────────────────────────────────────────────────────────────── */
#dl-rental-listings-embed #doorloop-map-container {
  width: 100% !important;
  height: 600px !important;
  margin-top: 20px !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 16px var(--dl-shadow-light) !important;
  overflow: hidden !important;
}

#dl-rental-listings-embed .map-marker-info {
  max-width: 280px;
  padding: 10px;
  font-family: var(--dl-font-family-base);
}

#dl-rental-listings-embed .map-marker-info [data-dl-map-info-title] {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
  color: var(--dl-color-address-text) !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  font-family: var(--dl-font-family-base) !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
}

#dl-rental-listings-embed .map-marker-info p {
  margin: 5px 0;
  color: var(--dl-color-detail-item-text);
  font-size: 0.9rem;
}

#dl-rental-listings-embed .map-marker-info a,
#dl-rental-listings-embed .map-marker-info .map-view-details-link {
  display: inline-block;
  margin-top: 8px;
  color: var(--dl-color-detail-icon);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
}

#dl-rental-listings-embed .map-marker-info a:hover,
#dl-rental-listings-embed .map-marker-info .map-view-details-link:hover {
  text-decoration: underline;
}

#dl-rental-listings-embed .map-marker-info ul {
  list-style: none;
  padding-left: 0;
  margin-top: 10px;
  max-height: 150px;
  overflow-y: auto;
}

#dl-rental-listings-embed .map-marker-info ul li {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--dl-color-dropdown-border);
}

#dl-rental-listings-embed .map-marker-info ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

/* Leaflet custom marker */
.leaflet-custom-div-icon {
  background: transparent !important;
  border: none !important;
  text-align: center;
}

.leaflet-custom-div-icon span {
  display: inline-block;
  text-align: center;
}

/* ── Lightbox ─────────────────────────────────────────────────────────────── */
#dl-lightbox {
  display: none;
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  background: rgba(0, 0, 0, 0.93) !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0;
  transition: opacity 0.25s ease;
}

#dl-lightbox.active {
  display: flex !important;
  opacity: 1 !important;
}

[data-dl-lightbox-img-wrap] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 90vw !important;
  max-height: 90vh !important;
  flex: 1 !important;
}

[data-dl-lightbox-img] {
  max-width: 90vw !important;
  max-height: 85vh !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 6px !important;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.7) !important;
  display: block !important;
  cursor: default !important;
  user-select: none;
}

[data-dl-lightbox-close] {
  position: absolute !important;
  top: 18px !important;
  right: 22px !important;
  background: rgba(255, 255, 255, 0.15) !important;
  border: none !important;
  color: #fff !important;
  font-size: 1.6rem !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10001 !important;
  transition: background 0.2s !important;
  line-height: 1 !important;
  padding: 0 !important;
}

[data-dl-lightbox-close]:hover {
  background: rgba(255, 255, 255, 0.3) !important;
}

[data-dl-lightbox-nav] {
  background: rgba(255, 255, 255, 0.15) !important;
  border: none !important;
  color: #fff !important;
  font-size: 1.8rem !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  z-index: 10001 !important;
  transition: background 0.2s !important;
  margin: 0 10px !important;
  padding: 0 !important;
}

[data-dl-lightbox-nav]:hover {
  background: rgba(255, 255, 255, 0.3) !important;
}

[data-dl-lightbox-indicators] {
  position: absolute !important;
  bottom: 20px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  gap: 8px !important;
  z-index: 10001 !important;
}

[data-dl-lb-dot] {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.4) !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: background 0.2s, transform 0.2s !important;
}

[data-dl-lb-dot].active {
  background: #fff !important;
  transform: scale(1.3) !important;
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 860px) {
  #dl-rental-listings-embed [data-doorloop-card] {
    flex-direction: column !important;
    min-height: unset !important;
  }
  #dl-rental-listings-embed [data-dl-card-image-panel] {
    width: 100% !important;
    min-width: unset !important;
  }
  #dl-rental-listings-embed [data-dl-card-hero] {
    min-height: 220px !important;
  }
  #dl-rental-listings-embed [data-dl-card-details-panel] {
    padding: 18px 18px 16px 18px !important;
  }
  /* Modal responsive */
  #property-detail-modal[data-doorloop-property-modal],
  #dl-rental-listings-embed [data-doorloop-property-modal] {
    padding: 12px !important;
  }
  #property-detail-modal [data-doorloop-property-modal-content],
  #dl-rental-listings-embed [data-doorloop-property-modal-content] {
    max-width: 100% !important;
  }
  #property-detail-modal [data-dl-modal-hero],
  #dl-rental-listings-embed [data-dl-modal-hero] {
    height: 240px !important;
  }
  #property-detail-modal [data-dl-modal-body-inner],
  #dl-rental-listings-embed [data-dl-modal-body-inner] {
    flex-direction: column !important;
    padding: 20px 18px 28px 18px !important;
    gap: 20px !important;
  }
  #property-detail-modal [data-dl-modal-main-col],
  #dl-rental-listings-embed [data-dl-modal-main-col] {
    padding-right: 0 !important;
    order: 2 !important;
  }
  #property-detail-modal [data-dl-modal-sidebar],
  #dl-rental-listings-embed [data-dl-modal-sidebar] {
    width: 100% !important;
    order: 1 !important;
  }
  #property-detail-modal [data-dl-modal-price-card],
  #dl-rental-listings-embed [data-dl-modal-price-card] {
    position: static !important;
  }
  #property-detail-modal [data-dl-modal-action-btns],
  #dl-rental-listings-embed [data-dl-modal-action-btns] {
    flex-direction: row !important;
  }
  #property-detail-modal [data-property-nav],
  #dl-rental-listings-embed [data-doorloop-property-modal] [data-property-nav] {
    top: 30% !important;
  }
  #dl-rental-listings-embed [data-doorloop-container] [data-filter-content] {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 90% !important;
    max-width: 300px !important;
  }
  #dl-rental-listings-embed #doorloop-map-container {
    height: 400px !important;
  }
}
@media (max-width: 600px) {
  [data-dl-lightbox-nav] {
    width: 38px !important;
    height: 38px !important;
    font-size: 1.3rem !important;
    margin: 0 4px !important;
  }
  [data-dl-lightbox-img] {
    max-width: 95vw !important;
    max-height: 80vh !important;
  }
  #dl-rental-listings-embed [data-dl-card-actions] {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  #dl-rental-listings-embed [data-dl-card-tour-btn],
  #dl-rental-listings-embed [data-dl-card-apply-btn] {
    width: 100% !important;
  }
  #property-detail-modal [data-dl-modal-action-btns],
  #dl-rental-listings-embed [data-dl-modal-action-btns] {
    flex-direction: column !important;
  }
  #property-detail-modal [data-dl-modal-title],
  #dl-rental-listings-embed [data-dl-modal-title] {
    font-size: 1.2rem !important;
  }
  #property-detail-modal [data-dl-modal-hero],
  #dl-rental-listings-embed [data-dl-modal-hero] {
    height: 200px !important;
  }
}
