:root{
  --nvpx-black:#050505;
  --nvpx-charcoal:#17191d;
  --nvpx-ink:#111318;
  --nvpx-muted:#666b74;
  --nvpx-rule:#d8dce2;
  --nvpx-soft:#f2f4f6;
  --nvpx-panel:min(100%,1760px);
  --nvpx-copy:min(calc(100% - 96px),1420px);
}

/* Search-result metadata reset. PropertyMinder's new-listing classes may add
   red/orange fills; the approved card language is neutral black/white/grey. */
#_searchResultsMenu article.property-listing .days-of-market,
#_searchResultsMenu article.property-listing ._daysOnMarket,
#_searchResultsMenu article.property-listing .yesterdayListingOnMarket .days-of-market,
#_searchResultsMenu article.property-listing .newListing .days-of-market{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#777c85!important;
  box-shadow:none!important;
  outline:0!important;
}

/* Passive detail mode never changes PropertyMinder's Map/List routing or
   shared wrapper geometry. Only confirmed native detail sources are hidden. */
html[data-nvpm-passive-detail] [data-nvpm-passive-source]{display:none!important}
html[data-nvpm-passive-detail] .nvpm-property-native-shell,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .search-details-inner,
html[data-nvpm-passive-detail] .nvpm-property-native-shell #_listingDetailsView,
html[data-nvpm-passive-detail] .nvpm-property-native-shell ._detailsHtmlScrolled,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .mCustomScrollBox,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .mCSB_container,
html[data-nvpm-passive-detail] .nvpm-property-native-shell #_detailsHtml{
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .details-navigation,
html[data-nvpm-passive-detail] .nvpm-property-native-shell #detailsHtm{
  display:none!important;
  width:0!important;height:0!important;min-height:0!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
}

/* Native action row: same PropertyMinder controls, presentation only. */
html[data-nvpm-passive-detail] #_detailsView,
html[data-nvpm-passive-detail] ._detailsView,
html[data-nvpm-passive-detail] .details-menu-wrapp-wrapp,
html[data-nvpm-passive-detail] .details-menu-wrapp{
  margin-top:0!important;
  padding-top:0!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-shell,
html[data-nvpm-passive-detail] .nvpm-toolbar-host,
html[data-nvpm-passive-detail] .nvpm-toolbar-portal{
  background:var(--nvpx-black)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal{
  padding-left:18px!important;
  padding-right:18px!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-button,
html[data-nvpm-passive-detail] .nvpm-finance-toolbar-button{
  color:#fff!important;
  background:transparent!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-button:hover,
html[data-nvpm-passive-detail] .nvpm-toolbar-button:focus-visible,
html[data-nvpm-passive-detail] .nvpm-finance-toolbar-button:hover,
html[data-nvpm-passive-detail] .nvpm-finance-toolbar-button:focus-visible{
  color:#fff!important;
  background:#24262b!important;
  border-color:#3a3d43!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-back{
  min-width:auto!important;
  padding-left:10px!important;
  padding-right:14px!important;
  color:#fff!important;
  background:transparent!important;
  border:0!important;
  border-radius:8px!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-back:hover,
html[data-nvpm-passive-detail] .nvpm-toolbar-back:focus-visible{
  color:#fff!important;
  background:#24262b!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-back .nvpm-toolbar-label{color:#fff!important}
html[data-nvpm-passive-detail] .nvpm-toolbar-save.nvpm-is-saved svg path{fill:currentColor!important}

.nvpm-property-experience-host{
  position:relative;z-index:2;
  width:var(--nvpx-viewport-width,100vw)!important;
  max-width:none!important;
  margin:0 0 0 calc(0px - var(--nvpx-viewport-left,0px))!important;
  padding:0!important;
  overflow-x:clip!important;
  box-sizing:border-box!important;
  background:#fff;
  opacity:0;
  transform:translateY(3px);
  transition:opacity .16s ease,transform .16s ease;
}
.nvpm-property-experience-host.is-ready{opacity:1;transform:none}
.nvpm-property-experience{
  position:relative;width:100%;max-width:none;margin:0;padding:0;overflow-x:clip;
  background:#fff;color:var(--nvpx-ink);font-family:"Poppins",Arial,sans-serif;
}

.nvpx-gallery{width:var(--nvpx-panel);margin:0 auto;background:var(--nvpx-black)}
.nvpx-gallery__stage{
  position:relative;display:grid;
  grid-template-columns:minmax(0,2.2fr) minmax(300px,.8fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:4px;height:clamp(520px,66dvh,790px);overflow:hidden;background:#111;
}
.nvpx-gallery.is-single .nvpx-gallery__stage{grid-template-columns:1fr}
.nvpx-gallery.is-two .nvpx-gallery__photo--side-one{grid-row:1/span 2}
.nvpx-gallery__photo{display:block;width:100%;height:100%;padding:0;border:0;background:#111;overflow:hidden;cursor:zoom-in}
.nvpx-gallery__photo--main{grid-column:1;grid-row:1/span 2}
.nvpx-gallery__photo--side-one{grid-column:2;grid-row:1}
.nvpx-gallery__photo--side-two{grid-column:2;grid-row:2}
.nvpx-gallery__photo--mobile-third{display:none}
.nvpx-gallery__photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .42s ease}
.nvpx-gallery__photo:hover img{transform:scale(1.018)}
.nvpx-gallery__counter,.nvpx-gallery__view-all{
  position:absolute;z-index:2;bottom:16px;min-height:42px;padding:0 16px;
  border:1px solid rgba(255,255,255,.45);border-radius:0;color:#fff;
  background:rgba(5,5,5,.8);font:600 12px/1 "Poppins",Arial,sans-serif;cursor:pointer;
}
.nvpx-gallery__counter{left:16px}.nvpx-gallery__view-all{right:16px}
.nvpx-gallery__counter:focus-visible,.nvpx-gallery__view-all:focus-visible,.nvpx-gallery__photo:focus-visible{outline:2px solid #fff;outline-offset:-2px}

.nvpx-summary{
  width:var(--nvpx-panel);margin:0 auto;display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:22px 52px;padding:34px 52px 28px;background:var(--nvpx-black);color:#fff;box-sizing:border-box;
}
.nvpx-summary__address{margin:0;color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:clamp(36px,2.8vw,54px);font-weight:500;line-height:1.04;letter-spacing:-.025em}
.nvpx-summary__locality{margin:7px 0 0;color:#f2f2f4;font-size:18px;line-height:1.35}
.nvpx-summary__status{margin:12px 0 0;color:#bfc3ca;font-size:13px;line-height:1.5}
.nvpx-summary__price{align-self:center;color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:clamp(44px,3.8vw,66px);line-height:1;text-align:right;white-space:nowrap}
.nvpx-summary__facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.18);margin-top:2px}
.nvpx-summary__fact{display:grid;grid-template-columns:30px auto;grid-template-rows:auto auto;align-items:center;column-gap:12px;padding:18px 22px 0;border-right:1px solid rgba(255,255,255,.18)}
.nvpx-summary__fact:first-child{padding-left:0}.nvpx-summary__fact:last-child{border-right:0}
.nvpx-summary__fact svg{grid-row:1/span 2;width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.nvpx-summary__fact strong{display:block;color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:26px;font-weight:500;line-height:1}
.nvpx-summary__fact span{display:block;margin-top:6px;color:#bfc3ca;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}

.nvpx-content{width:100%;margin:0;background:#fff}
.nvpx-section{min-width:0;padding:64px max(48px,calc((100% - 1420px)/2));box-sizing:border-box}
.nvpx-section[hidden]{display:none!important}
.nvpx-section__title{margin:0 0 24px;color:inherit;font-family:"Playfair Display",Georgia,serif;font-size:clamp(30px,2.5vw,42px);font-weight:500;line-height:1.14;letter-spacing:-.018em}
.nvpx-section__title::before,.nvpx-section__title::after{content:none!important;display:none!important}

.nvpx-description{background:#fff;color:var(--nvpx-ink)}
.nvpx-description__wrap{position:relative;max-width:930px}
.nvpx-description__copy{margin:0;font-size:16px;line-height:1.85;color:#34373d;white-space:normal}
.nvpx-description__wrap.is-collapsed{max-height:13.9em;overflow:hidden}
.nvpx-description__wrap.is-collapsed::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4.6em;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 88%);pointer-events:none}
.nvpx-description__toggle{margin-top:22px;min-height:42px;padding:0 20px;border:1px solid #aeb3bb;border-radius:999px;background:#fff;color:#111318;font:600 12px/1 "Poppins",Arial,sans-serif;cursor:pointer}
.nvpx-description__toggle:hover,.nvpx-description__toggle:focus-visible{background:#111318;color:#fff;border-color:#111318}
.nvpx-description__toggle[hidden]{display:none!important}

.nvpx-details{background:var(--nvpx-black);color:#fff}
.nvpx-details__body,.nvpx-details__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 52px}
.nvpx-details .nvpx-field{border-bottom:1px solid rgba(255,255,255,.18)}
.nvpx-details .nvpx-field__label{color:#fff}
.nvpx-details .nvpx-field__value{color:#c9ccd2}

.nvpx-features{background:var(--nvpx-soft);color:var(--nvpx-ink)}
.nvpx-feature-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 44px}
.nvpx-feature-group{min-width:0;background:#fff;border:1px solid var(--nvpx-rule);padding:24px 26px}
.nvpx-feature-group h3{margin:0 0 12px;font-family:"Playfair Display",Georgia,serif;font-size:24px;font-weight:500;color:#111318}
.nvpx-feature-group__rows{display:block}

.nvpx-field{min-width:0;padding:14px 0;border-bottom:1px solid var(--nvpx-rule);display:grid;grid-template-columns:minmax(142px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start}
.nvpx-field:last-child{border-bottom:0}
.nvpx-field__label{font-size:12px;font-weight:700;line-height:1.42;color:#16181c}
.nvpx-field__value{font-size:13px;font-weight:400;line-height:1.55;color:#4a4d54;overflow-wrap:anywhere}

.nvpx-map{background:var(--nvpx-black);color:#fff;padding-top:54px;padding-bottom:48px}
.nvpx-map__header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.nvpx-map__header .nvpx-section__title{margin:0}
.nvpx-map__filters-toggle{min-height:42px;padding:0 18px;border:1px solid rgba(255,255,255,.55);border-radius:0;background:transparent;color:#fff;font:600 12px/1 "Poppins",Arial,sans-serif;cursor:pointer}
.nvpx-map__filters-toggle:hover,.nvpx-map__filters-toggle:focus-visible{background:#fff;color:#050505;border-color:#fff}
.nvpx-map__filters-toggle[hidden]{display:none!important}
.nvpx-map__native-host{width:100%;overflow:hidden;border:1px solid #3a3d43;background:#fff;padding:10px;box-sizing:border-box}
.nvpx-map__native{display:block!important;width:100%!important;margin:0!important;padding:0!important;background:#fff!important;color:#111318!important}
.nvpx-map__native>.container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.nvpx-map__native .page-space{padding:0!important;margin:0!important}
.nvpx-map__native h1.heading{display:none!important}
.nvpx-map__native .MapAndLayers{width:100%!important;margin:0!important}
.nvpx-map__native .detailsMapContainer,.nvpx-map__native .mapContainerMask{min-height:390px!important;max-height:390px!important}
.nvpx-map__native.nvpx-map-filters-collapsed #_detailsLayersMapControl{display:none!important}
.nvpx-map__native #_detailsLayersMapControl{position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;margin:0 0 10px!important;padding:18px!important;background:#f4f5f7!important;color:#111318!important;box-sizing:border-box!important;opacity:1!important}
.nvpx-map__native #_detailsLayersMapControl *{color:#111318!important;text-shadow:none!important}
.nvpx-map__native #_detailsLayersMapControl input,.nvpx-map__native #_detailsLayersMapControl label{opacity:1!important;visibility:visible!important}

.nvpx-map-cta{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:36px;margin-top:26px;padding-top:26px;border-top:1px solid rgba(255,255,255,.22)}
.nvpx-map-cta__copy span{display:block;margin-bottom:7px;color:#aeb2ba;font-size:10px;font-weight:700;letter-spacing:.18em}
.nvpx-map-cta__copy h3{margin:0;color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:clamp(26px,2.4vw,38px);font-weight:500;line-height:1.12}
.nvpx-map-cta__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.nvpx-map-cta__button{min-height:48px;padding:0 16px;border:1px solid rgba(255,255,255,.48);border-radius:0;background:transparent;color:#fff;font:600 12px/1 "Poppins",Arial,sans-serif;cursor:pointer}
.nvpx-map-cta__button:hover,.nvpx-map-cta__button:focus-visible{background:#24262b;border-color:#fff;color:#fff}
.nvpx-map-cta__button--primary{background:#fff;border-color:#fff;color:#050505}
.nvpx-map-cta__button--primary:hover,.nvpx-map-cta__button--primary:focus-visible{background:#e8e9eb;color:#050505}

.nvpx-courtesy{background:#fff;color:var(--nvpx-ink);padding-top:38px;padding-bottom:38px;border-bottom:1px solid var(--nvpx-rule)}
.nvpx-courtesy .nvpx-section__title{margin-bottom:10px;font-family:"Poppins",Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#6c717a}
.nvpx-courtesy__copy{margin:0;font-size:15px;font-weight:500;color:#111318}

@media(max-width:1100px){
  .nvpx-section{padding-left:38px;padding-right:38px}
  .nvpx-feature-groups{gap:22px}
  .nvpx-summary{padding-left:38px;padding-right:38px}
}

@media(max-width:900px){
  :root{--nvpx-panel:100%;--nvpx-copy:100%}

  html[data-nvpm-passive-detail] .nvpm-toolbar-shell{
    position:sticky!important;top:0!important;z-index:220!important;
  }
  html[data-nvpm-passive-detail] .nvpm-toolbar-portal{padding-left:8px!important;padding-right:8px!important}
  html[data-nvpm-passive-detail] .nvpm-toolbar-back{padding-left:8px!important;padding-right:8px!important;border-radius:6px!important}
  html[data-nvpm-passive-detail] .nvpm-toolbar-button:hover,
  html[data-nvpm-passive-detail] .nvpm-toolbar-button:focus-visible,
  html[data-nvpm-passive-detail] .nvpm-toolbar-back:hover,
  html[data-nvpm-passive-detail] .nvpm-toolbar-back:focus-visible{color:#fff!important;background:#202226!important}

  html[data-nvpm-passive-detail] .nvpm-finance-dock,
  html[data-nvpm-passive-detail] .nvpm-direct-tour-dock.nvpm-finance-dock-host{
    background:#050505!important;
    border-top:1px solid #2f3237!important;
    box-shadow:0 -10px 28px rgba(0,0,0,.2)!important;
    gap:0!important;
    padding-left:0!important;padding-right:0!important;
  }
  html[data-nvpm-passive-detail] .nvpm-finance-dock button,
  html[data-nvpm-passive-detail] .nvpm-direct-tour-dock.nvpm-finance-dock-host button{
    min-width:0!important;
    color:#fff!important;
    background:#050505!important;
    border:0!important;
    border-right:1px solid #2f3237!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  html[data-nvpm-passive-detail] .nvpm-finance-dock button:last-child,
  html[data-nvpm-passive-detail] .nvpm-direct-tour-dock.nvpm-finance-dock-host button:last-child{border-right:0!important}
  html[data-nvpm-passive-detail] .nvpm-finance-dock button:is(:active,:focus-visible),
  html[data-nvpm-passive-detail] .nvpm-direct-tour-dock.nvpm-finance-dock-host button:is(:active,:focus-visible){background:#222429!important;color:#fff!important}

  .nvpx-gallery{width:100%;margin:0}
  .nvpx-gallery__stage{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,45svh) 82px;height:auto;gap:3px}
  .nvpx-gallery__photo--main{grid-column:1/-1;grid-row:1}
  .nvpx-gallery__photo--side{grid-row:2;display:block;width:100%}
  .nvpx-gallery__photo--side-one{grid-column:1}
  .nvpx-gallery__photo--side-two{grid-column:2}
  .nvpx-gallery__photo--mobile-third{display:block;grid-column:3;grid-row:2;width:100%;height:100%}
  .nvpx-gallery__counter{left:auto;right:14px;bottom:96px}.nvpx-gallery__view-all{display:none}

  .nvpx-summary{width:100%;grid-template-columns:1fr;padding:26px 22px 22px;gap:14px}
  .nvpx-summary__address{font-size:clamp(28px,7.7vw,36px);line-height:1.08}
  .nvpx-summary__locality{font-size:17px;margin-top:5px}
  .nvpx-summary__price{font-size:clamp(39px,10vw,50px);text-align:left}
  .nvpx-summary__status{font-size:12px;margin-top:9px}
  .nvpx-summary__facts{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:3px}
  .nvpx-summary__fact{display:flex;flex-direction:column;gap:5px;justify-content:flex-start;padding:15px 6px 0;text-align:center;column-gap:0}
  .nvpx-summary__fact:first-child{padding-left:6px}
  .nvpx-summary__fact svg{width:21px;height:21px;grid-row:auto;margin:0 auto 2px}
  .nvpx-summary__fact strong{font-size:21px}.nvpx-summary__fact span{font-size:8px;letter-spacing:.07em;margin-top:0}

  .nvpx-section{padding:42px 22px}
  .nvpx-section__title{font-size:31px;margin-bottom:20px}
  .nvpx-description__copy{font-size:16px;line-height:1.72}
  .nvpx-description__wrap.is-collapsed{max-height:12em}
  .nvpx-details__body,.nvpx-details__grid{grid-template-columns:1fr;gap:0}
  .nvpx-feature-groups{grid-template-columns:1fr;gap:16px}
  .nvpx-feature-group{padding:20px 18px}
  .nvpx-feature-group h3{font-size:23px}
  .nvpx-field{grid-template-columns:minmax(118px,.72fr) minmax(0,1.28fr);gap:14px;padding:13px 0}

  .nvpx-map{padding-top:38px;padding-bottom:calc(32px + env(safe-area-inset-bottom))}
  .nvpx-map__header{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:17px}
  .nvpx-map__filters-toggle{width:100%;min-height:44px}
  .nvpx-map__native-host{padding:6px}
  .nvpx-map__native .detailsMapContainer,.nvpx-map__native .mapContainerMask{min-height:360px!important;max-height:360px!important}
  .nvpx-map__native #_detailsLayersMapControl{padding:16px 14px!important}
  .nvpx-map-cta{grid-template-columns:1fr;gap:18px;margin-top:20px;padding-top:22px}
  .nvpx-map-cta__copy h3{font-size:30px}
  .nvpx-map-cta__actions{grid-template-columns:1fr;gap:9px}
  .nvpx-map-cta__button{min-height:46px}
  .nvpx-courtesy{padding-top:30px;padding-bottom:30px}
}

@media(max-width:520px){
  .nvpx-gallery__stage{grid-template-rows:minmax(0,42svh) 78px}
  .nvpx-gallery__counter{bottom:91px}
  .nvpx-summary{padding-left:20px;padding-right:20px}
  .nvpx-summary__address{font-size:30px}
  .nvpx-summary__price{font-size:42px}
  .nvpx-summary__facts{overflow-x:auto;scrollbar-width:none}
  .nvpx-summary__fact{min-width:74px}
  .nvpx-section{padding-left:20px;padding-right:20px}
  .nvpx-field{grid-template-columns:minmax(108px,.68fr) minmax(0,1.32fr);gap:12px}
}

/* Keep PropertyMinder's originating Map/List DOM alive, but remove it from layout only after a verified property detail has latched. */
#_searchResultsMenu.nvpm-origin-results-suppressed {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}


/* =========================================================
   Live detail repair build 41
   One detail-flow controller, one toolbar system, one footer ending.
========================================================= */
html[data-nvpm-passive-detail] {
  --nvpx-toolbar-height: 60px;
  --nvpx-fixed-cta-height: 76px;
}

html[data-nvpm-passive-detail],
html[data-nvpm-passive-detail] body {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
}

/* PropertyMinder's search-form host is the white reservation above detail.
   Collapse the host only while a verified property is mounted. */
html[data-nvpm-passive-detail] #_searchView .searchform-wrapp-wrapp,
html[data-nvpm-passive-detail] #_searchView .searchform-wrapp._topBar,
html[data-nvpm-passive-detail] #_searchView #_topBar,
html[data-nvpm-passive-detail] #_searchView .top_bar_buttons,
html[data-nvpm-passive-detail] #_searchView :is(.nvpm-search-utility,.nvpm-search-actions,.nvpm-mobile-tools,.nvpm-mobile-filter-toggle) {
  display: block !important;
  visibility: hidden !important;
  width: 100% !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  box-shadow: none !important;
  transform: none !important;
}
html[data-nvpm-passive-detail] :is(#content,#include,#include>.layout,#_searchView,#_wrapapp) {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html[data-nvpm-passive-detail] :is(
  #_wrapapp,#_detailsView,._detailsView,#_listingDetailsView,
  .search-details-shell,.search-details-inner,.search-details-wrapp,
  ._detailsHtmlScrolled,.mCustomScrollBox,.mCSB_container,
  #_detailsHtml,._detailsHtml,.nvpm-detail-flow-owner
) {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
  transform: none !important;
  touch-action: pan-y !important;
}

#_searchResultsMenu.nvpm-origin-results-detail-owner {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.nvpm-origin-branch-suppressed,
#_mapView.nvpm-origin-map-suppressed {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.nvpm-detail-affix-spacer-collapsed {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html[data-nvpm-passive-detail] :is(#_detailsView,._detailsView).nvpm-detail-affix-released,
html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-document-owner {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  transform: none !important;
}

/* One toolbar implementation. In flow below the PropertyMinder header; fixed
   only after its own anchor reaches the viewport top. */
.nvpm-toolbar-flow-anchor {
  display: block !important;
  width: 100% !important;
  height: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
html[data-nvpm-passive-detail] :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  z-index: 2147480800 !important;
  background: #050505 !important;
  box-shadow: none !important;
}
html[data-nvpm-passive-detail] :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.16) !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal {
  width: 100% !important;
  height: var(--nvpx-toolbar-height) !important;
  min-height: var(--nvpx-toolbar-height) !important;
  max-height: var(--nvpx-toolbar-height) !important;
  margin: 0 !important;
  padding: 8px 18px !important;
  background: #050505 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button) {
  min-height: 44px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  transition: background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button):hover,
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button):focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #1b1d21 !important;
  border-color: rgba(255,255,255,.78) !important;
  box-shadow: 0 0 0 1px #050505,0 0 0 2px rgba(255,255,255,.7) !important;
  transform: translateY(-1px) !important;
  outline: 0 !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-back { min-width: 148px !important; padding: 0 14px !important; }

/* The approved continuous black image composition. */
html[data-nvpm-passive-detail] .nvpm-property-experience-host,
html[data-nvpm-passive-detail] .nvpm-property-experience,
html[data-nvpm-passive-detail] .nvpx-gallery,
html[data-nvpm-passive-detail] .nvpx-gallery__stage {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
html[data-nvpm-passive-detail] .nvpx-gallery {
  width: var(--nvpx-panel) !important;
  margin: 0 auto !important;
  padding: 12px 12px 0 !important;
  background: #050505 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__stage { gap: 6px !important; background: #050505 !important; }
html[data-nvpm-passive-detail] .nvpx-gallery__photo { background: #111 !important; }
html[data-nvpm-passive-detail] .nvpx-summary { border-top: 0 !important; }

/* Read More / Read Less is driven by rendered overflow and preserves state. */
html[data-nvpm-passive-detail] .nvpx-description__wrap { width: 100% !important; }
html[data-nvpm-passive-detail] .nvpx-description__wrap.is-collapsed { max-height: 9.4em !important; }
html[data-nvpm-passive-detail] .nvpx-description__wrap:not(.is-collapsed) { max-height: none !important; overflow: visible !important; }
html[data-nvpm-passive-detail] .nvpx-description__toggle:not([hidden]) {
  display: inline-flex !important;
  visibility: visible !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Full-width desktop Property Details. */
html[data-nvpm-passive-detail] :is(.nvpx-details,.nvpx-details__body,.nvpx-details__grid) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpx-details__body { display: block !important; }
html[data-nvpm-passive-detail] .nvpx-details__grid {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  grid-auto-flow: row !important;
  gap: 0 72px !important;
}

/* Native map stays in its original PropertyMinder hierarchy. */
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 48px max(32px,calc((100% - 1420px)/2)) 42px !important;
  overflow: visible !important;
  color: #fff !important;
  background: #050505 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place :is(.container,.page-space,.MapAndLayers) {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place h1.heading {
  display: block !important;
  margin: 0 0 20px !important;
  color: #fff !important;
  font: 500 clamp(30px,2.5vw,42px)/1.14 "Playfair Display",Georgia,serif !important;
}
.nvpx-native-map-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  margin: 0 0 12px !important;
  padding: 0 18px !important;
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.5) !important;
  border-radius: 999px !important;
  font: 600 12px/1 "Poppins",Arial,sans-serif !important;
  cursor: pointer !important;
}
.nvpx-native-map-toggle:hover,.nvpx-native-map-toggle:focus-visible,.nvpx-native-map-toggle[aria-expanded="true"] {
  color: #050505 !important;
  background: #fff !important;
  border-color: #fff !important;
  outline: 0 !important;
}
html[data-nvpm-passive-detail] #map-details #_detailsLayersMapControl {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 10px !important;
  padding: 22px !important;
  overflow: visible !important;
  color: #111318 !important;
  background: #f4f5f7 !important;
  border: 1px solid #d9dde3 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #map-details #_detailsLayersMapControl[hidden] { display: none !important; }
html[data-nvpm-passive-detail] #map-details :is(.loadMapMask,a.loadMapMask) {
  position: relative !important;
  inset: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: #fff !important;
  background: #17191d !important;
  border: 0 !important;
}
html[data-nvpm-passive-detail] #map-details .loadMapBtn {
  min-height: 42px !important;
  padding: 0 18px !important;
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.42) !important;
  border-radius: 999px !important;
}
html[data-nvpm-passive-detail] #map-details :is(.mapContainerMask,.detailsMapContainer) {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  min-height: 430px !important;
  max-height: 430px !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #e9edf2 !important;
}

/* One compact desktop concierge bar. Mobile keeps the protected native dock. */
@media (min-width: 901px) {
  html[data-nvpm-passive-detail] .nvpm-property-experience { padding-bottom: calc(var(--nvpx-fixed-cta-height) + 18px) !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta {
    position: fixed !important;
    left: 50% !important;
    bottom: 16px !important;
    z-index: 2147480700 !important;
    width: min(calc(100vw - 56px),1120px) !important;
    min-height: var(--nvpx-fixed-cta-height) !important;
    margin: 0 !important;
    padding: 10px 12px 10px 22px !important;
    display: grid !important;
    grid-template-columns: minmax(300px,.92fr) minmax(0,1.72fr) !important;
    align-items: center !important;
    gap: 18px !important;
    color: #fff !important;
    background: rgba(5,5,5,.97) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 14px !important;
    box-shadow: 0 18px 44px rgba(0,0,0,.28) !important;
    transform: translateX(-50%) !important;
    backdrop-filter: blur(12px) !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__copy > span { display: none !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__copy h3 { margin: 0 !important; color: #fff !important; font-size: 22px !important; line-height: 1.15 !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__note { margin: 7px 0 0 !important; color: #bfc3ca !important; font: 500 11px/1.45 "Poppins",Arial,sans-serif !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__actions { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 8px !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button {
    min-height: 46px !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #17191d !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-radius: 9px !important;
    box-shadow: none !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:hover,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:focus-visible {
    background: #1f2227 !important;
    border-color: rgba(255,255,255,.78) !important;
    box-shadow: 0 0 0 1px #050505,0 0 0 2px rgba(255,255,255,.7) !important;
    transform: translateY(-1px) !important;
    outline: 0 !important;
  }
}

.nvpx-back-to-top {
  position: fixed !important;
  right: 22px !important;
  bottom: calc(var(--nvpx-fixed-cta-height) + 34px) !important;
  z-index: 2147480750 !important;
  min-width: 48px !important;
  min-height: 48px !important;
  padding: 0 15px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  color: #fff !important;
  background: #050505 !important;
  border: 1px solid rgba(255,255,255,.3) !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.24) !important;
  font: 700 12px/1 "Poppins",Arial,sans-serif !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
  transition: opacity .18s ease,transform .18s ease,background-color .18s ease !important;
}
.nvpx-back-to-top.is-visible { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; transform: none !important; }

/* Dynamic native courtesy/MLS ending and master PropertyMinder footer. */
html[data-nvpm-passive-detail] .nvpm-property-native-shell { width: 100% !important; max-width: none !important; height: auto !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; }
html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer.presented_by {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 22px max(32px,calc((100% - 1220px)/2)) !important;
  color: #111318 !important;
  background: #fff !important;
  border-top: 1px solid #d8dce2 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #f2f4f6 !important;
}
html[data-nvpm-passive-detail] #footer-content > .heading { display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }
html[data-nvpm-passive-detail] #footer-content > :is(.row,.presented_by,.disclaimer_mls,.disclaimer.info_deemed) {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.row,.presented_by) { padding: 24px max(32px,calc((100% - 1220px)/2)) 22px !important; background: #fff !important; border-top: 1px solid #d8dce2 !important; }
html[data-nvpm-passive-detail] #footer-content > :is(.disclaimer_mls,.disclaimer.info_deemed) { padding: 18px max(32px,calc((100% - 1220px)/2)) 16px !important; background: #f2f4f6 !important; border-top: 1px solid #d8dce2 !important; }
html[data-nvpm-passive-detail] #footer-content :is(.row,.page-space,.span12,.span4,.contacts-info,.agentInfoView,.presented_by,.disclaimer_mls,.disclaimer.info_deemed) {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content > :empty { display: none !important; }
html[data-nvpm-passive-detail] :is(#nv-footer,footer#nv-footer,.site-footer) { margin-top: 0 !important; padding-top: 0 !important; padding-bottom: calc(var(--nvpx-fixed-cta-height) + 12px) !important; }

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] { --nvpx-toolbar-height: 58px; }
  html[data-nvpm-passive-detail] :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed { top: env(safe-area-inset-top) !important; }
  html[data-nvpm-passive-detail] .nvpm-toolbar-portal { padding-left: 8px !important; padding-right: 8px !important; }
  html[data-nvpm-passive-detail] .nvpm-toolbar-back { min-width: 0 !important; padding-left: 8px !important; padding-right: 8px !important; }
  html[data-nvpm-passive-detail] .nvpx-gallery { width: 100% !important; padding: 8px 8px 0 !important; }
  html[data-nvpm-passive-detail] .nvpx-details__grid { grid-template-columns: 1fr !important; gap: 0 !important; }
  html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place { padding: 38px 20px calc(32px + env(safe-area-inset-bottom)) !important; }
  html[data-nvpm-passive-detail] #map-details :is(.mapContainerMask,.detailsMapContainer) { min-height: 360px !important; max-height: 360px !important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta { display: none !important; }
  .nvpx-back-to-top { right: 12px !important; bottom: calc(82px + env(safe-area-inset-bottom)) !important; min-width: 44px !important; min-height: 44px !important; padding: 0 12px !important; }
  html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer.presented_by,
  html[data-nvpm-passive-detail] #footer-content > :is(.row,.presented_by,.disclaimer_mls,.disclaimer.info_deemed) { padding-left: 20px !important; padding-right: 20px !important; }
  html[data-nvpm-passive-detail] :is(#nv-footer,footer#nv-footer,.site-footer) { padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important; }
}


/* =========================================================
   Live detail repair 41 - final cascade layer.
   This block intentionally loads after the protected V132 application CSS.
========================================================= */
html[data-nvpm-passive-detail] .nvpm-detail-reservation-collapsed,
html[data-nvpm-passive-detail][data-nvpm-search-ui="recovery-mobile-layout-r18"] .nvpm-detail-reservation-collapsed,
html[data-nvpm-passive-detail] #_searchView :is(.searchform-wrapp-wrapp,.searchform-wrapp._topBar,#_topBar,.top_bar_buttons,.nvpm-search-utility,.nvpm-search-actions,.nvpm-mobile-tools,.nvpm-mobile-filter-toggle) {
  display:block!important;
  visibility:hidden!important;
  width:100%!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  box-shadow:none!important;
  transform:none!important;
}
html[data-nvpm-passive-detail] :is(#content,#include,#include>.layout,#_searchView,#_wrapapp,#_detailsView,._detailsView) {
  margin-top:0!important;
  padding-top:0!important;
}

html[data-nvpm-passive-detail][data-nvpm-search-ui="recovery-mobile-layout-r18"]
  :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow {
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  height:var(--nvpx-toolbar-height)!important;
  min-height:var(--nvpx-toolbar-height)!important;
  max-height:var(--nvpx-toolbar-height)!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  z-index:2147480800!important;
}
html[data-nvpm-passive-detail][data-nvpm-search-ui="recovery-mobile-layout-r18"]
  :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed {
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:auto!important;
  left:0!important;
  width:100vw!important;
  max-width:none!important;
  margin:0!important;
  transform:none!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-flow-anchor { min-height:0!important; max-height:var(--nvpx-toolbar-height)!important; }
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button) {
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button):is(:hover,:focus-visible) {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#1b1d21!important;
  border-color:rgba(255,255,255,.78)!important;
  box-shadow:0 0 0 1px #050505,0 0 0 2px rgba(255,255,255,.70)!important;
  transform:translateY(-1px)!important;
  outline:0!important;
}

html[data-nvpm-passive-detail] .nvpm-property-experience-host,
html[data-nvpm-passive-detail] .nvpm-property-experience,
html[data-nvpm-passive-detail] .nvpx-content,
html[data-nvpm-passive-detail] .nvpx-description,
html[data-nvpm-passive-detail] .nvpx-description__toggle {
  position:relative!important;
  pointer-events:auto!important;
}
html[data-nvpm-passive-detail] .nvpm-property-experience-host { z-index:3!important; }
html[data-nvpm-passive-detail] .nvpx-description__toggle { z-index:5!important; touch-action:manipulation!important; }

/* Do not consume the native Show Map action during boot. The exact
   PropertyMinder control remains visible and clickable after its handler binds. */
html[data-nvpm-passive-detail] #map-details .nvpx-native-map-load-source,
html[data-nvpm-passive-detail] #map-details .nvpx-native-map-load-source .loadMapBtn,
html[data-nvpm-passive-detail] #map-details :is(.loadMap._loadMap,.loadMapMask._loadMap,a.loadMapMask,button.loadMapBtn) {
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
html[data-nvpm-passive-detail] #map-details[data-nvpm-map-ready="awaiting-user"] :is(.loadMapMask,a.loadMapMask) {
  display:flex!important;
}

/* Compact the dynamic PropertyMinder legal/footer ending without replacing it. */
html[data-nvpm-passive-detail] .nvpm-property-native-shell > .disclaimer.presented_by,
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content {
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0 0 0 -50vw!important;
  padding-bottom:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content,
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content :is(.row,.page-space,.span12,.span4,.contacts-info,.agentInfoView,.presented_by,.disclaimer_mls,.disclaimer.info_deemed),
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content + *,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer_mls ~ * {
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  box-sizing:border-box!important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > :empty { display:none!important; }
html[data-nvpm-passive-detail] :is(#nv-footer,footer#nv-footer,.site-footer) {
  min-height:0!important;
  height:auto!important;
  margin-top:0!important;
  padding-top:0!important;
  padding-bottom:calc(var(--nvpx-fixed-cta-height) + 10px)!important;
}
@media(max-width:900px){
  html[data-nvpm-passive-detail][data-nvpm-search-ui="recovery-mobile-layout-r18"]
    :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed {
    top:env(safe-area-inset-top)!important;
  }
  html[data-nvpm-passive-detail] :is(#nv-footer,footer#nv-footer,.site-footer) {
    padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;
  }
}

/* PropertyMinder may place the footer tail outside its detail shell. */
html[data-nvpm-passive-detail] #footer-content + *,
html[data-nvpm-passive-detail] .disclaimer_mls ~ * {
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
}


/* =========================================================
   Mobile Detail Stability 43 - final cascade.
   Based on the live-working C41 detail runtime. This layer does not hide
   broad PropertyMinder containers and does not eagerly load every thumbnail.
========================================================= */

/* Quiet Back control and one consistent hover language across the action row. */
html[data-nvpm-passive-detail] #_wrapapp[data-nvpm-full-app="recovery-mobile-layout-r18"].nvpm-detail-active
  .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button) {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:10px!important;
  box-shadow:none!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
html[data-nvpm-passive-detail] #_wrapapp[data-nvpm-full-app="recovery-mobile-layout-r18"].nvpm-detail-active
  .nvpm-toolbar-portal .nvpm-toolbar-back {
  min-width:0!important;
  padding-left:12px!important;
  padding-right:14px!important;
  background:transparent!important;
  border-color:transparent!important;
  border-radius:8px!important;
}
html[data-nvpm-passive-detail] #_wrapapp[data-nvpm-full-app="recovery-mobile-layout-r18"].nvpm-detail-active
  .nvpm-toolbar-portal :is(.nvpm-toolbar-back,.nvpm-toolbar-button,.nvpm-finance-toolbar-button):is(:hover,:focus-visible) {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#1b1d21!important;
  border-color:rgba(255,255,255,.78)!important;
  box-shadow:0 0 0 1px #050505,0 0 0 2px rgba(255,255,255,.70)!important;
  transform:translateY(-1px)!important;
  outline:0!important;
}

/* Map disclosure hides only PropertyMinder's exact MapAndLayers block. */
.nvpx-map-disclosure {
  width:100%!important;
  min-height:58px!important;
  margin:0!important;
  padding:0 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#17191d!important;
  border:1px solid #32353b!important;
  border-radius:10px!important;
  box-shadow:none!important;
  font:650 14px/1 "Poppins",Arial,sans-serif!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
.nvpx-map-disclosure svg {
  width:22px!important;height:22px!important;flex:0 0 22px!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
  transition:transform .18s ease!important;
}
.nvpx-map-disclosure[aria-expanded="true"] svg { transform:rotate(180deg)!important; }
.nvpx-map-disclosure:is(:hover,:focus-visible) { background:#1f2227!important;border-color:rgba(255,255,255,.78)!important;outline:0!important; }
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place .nvpx-map-disclosure + .MapAndLayers { margin-top:14px!important; }
html[data-nvpm-passive-detail] #map-details.nvpx-map-collapsed .page-space { min-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important; }

/* Keep the native map trigger alive. It is visually parked only while the
   proxy click is being attempted; it is restored automatically as fallback. */
html[data-nvpm-passive-detail] #map-details .nvpx-native-map-load-source.nvpx-map-proxy-active {
  position:absolute!important;
  width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;
  opacity:0!important;visibility:visible!important;pointer-events:none!important;
}
html[data-nvpm-passive-detail] #map-details[data-nvpm-map-ready="native-fallback"] .nvpx-native-map-load-source {
  position:relative!important;
  width:auto!important;height:auto!important;min-width:0!important;min-height:44px!important;
  margin:12px auto!important;padding:0!important;overflow:visible!important;
  clip:auto!important;clip-path:none!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
}

/* Desktop gallery remains C41. Mobile gets one selected image and a horizontal rail. */
.nvpx-gallery__thumbs { display:none; }

@media(max-width:900px){
  html[data-nvpm-passive-detail] { --nvpx-mobile-dock-height:76px; }

  html[data-nvpm-passive-detail] .nvpx-gallery { width:100%!important;padding:8px 8px 10px!important;overflow:hidden!important; }
  html[data-nvpm-passive-detail] .nvpx-gallery__stage {
    position:relative!important;display:block!important;width:100%!important;
    height:clamp(300px,44svh,480px)!important;overflow:hidden!important;background:#050505!important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__photo--main { display:block!important;width:100%!important;height:100%!important; }
  html[data-nvpm-passive-detail] :is(.nvpx-gallery__photo--side,.nvpx-gallery__photo--mobile-third) { display:none!important; }
  html[data-nvpm-passive-detail] .nvpx-gallery__counter { right:12px!important;bottom:12px!important;left:auto!important; }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumbs {
    display:flex!important;width:100%!important;margin:0!important;padding:9px 0 2px!important;gap:8px!important;
    overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain!important;
    scroll-snap-type:x proximity!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;
    touch-action:pan-x!important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumbs::-webkit-scrollbar { display:none!important; }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb {
    position:relative!important;flex:0 0 112px!important;width:112px!important;height:76px!important;
    margin:0!important;padding:0!important;overflow:hidden!important;scroll-snap-align:center!important;
    background:#111!important;border:2px solid transparent!important;border-radius:7px!important;
    box-shadow:none!important;cursor:pointer!important;opacity:.72!important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb.is-active { border-color:#fff!important;opacity:1!important; }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb img { display:block!important;width:100%!important;height:100%!important;object-fit:cover!important; }

  html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place { padding:34px 20px calc(28px + env(safe-area-inset-bottom))!important; }
  .nvpx-map-disclosure { min-height:56px!important;padding:0 16px!important; }
  html[data-nvpm-passive-detail] #map-details.nvpx-map-expanded .nvpx-native-map-toggle { width:100%!important;min-height:46px!important;margin:0 0 10px!important;border-radius:8px!important; }

  /* Fixed four-action mobile dock. */
  html[data-nvpm-passive-detail] .nvpm-property-experience { padding-bottom:calc(var(--nvpx-mobile-dock-height) + env(safe-area-inset-bottom) + 16px)!important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta {
    position:fixed!important;right:0!important;bottom:0!important;left:0!important;z-index:2147482200!important;
    display:block!important;width:100%!important;min-height:var(--nvpx-mobile-dock-height)!important;
    margin:0!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;
    color:#fff!important;background:#050505!important;border:0!important;border-top:1px solid #2f3237!important;
    border-radius:0!important;box-shadow:0 -10px 28px rgba(0,0,0,.22)!important;box-sizing:border-box!important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__copy { display:none!important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__actions { display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;width:100%!important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary {
    min-width:0!important;min-height:52px!important;margin:0!important;padding:5px 4px!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;background:#050505!important;
    border:0!important;border-right:1px solid #2f3237!important;border-radius:0!important;box-shadow:none!important;
    font:700 10.5px/1.15 "Poppins",Arial,sans-serif!important;white-space:normal!important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:last-child { border-right:0!important; }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:is(:active,:focus-visible) { background:#222429!important;transform:none!important;outline:0!important; }
  html[data-nvpm-passive-detail] :is(.nvpm-finance-dock,.nvpm-direct-tour-dock.nvpm-finance-dock-host) { display:none!important;visibility:hidden!important;pointer-events:none!important; }
  .nvpx-back-to-top { bottom:calc(var(--nvpx-mobile-dock-height) + env(safe-area-inset-bottom) + 12px)!important; }
  html[data-nvpm-passive-detail] :is(#nv-footer,footer#nv-footer,.site-footer) { padding-bottom:calc(var(--nvpx-mobile-dock-height) + env(safe-area-inset-bottom) + 12px)!important; }
}


/* =========================================================
   Mobile blank-panel guard build 44
   PropertyMinder can rehydrate the outer search reservation or replace an
   affix spacer after the toolbar is already fixed. These classes keep those
   transient white blocks at zero size while a verified detail is mounted.
========================================================= */
html[data-nvpm-passive-detail] .nvpm-detail-reservation-collapsed,
html[data-nvpm-passive-detail] .nvpm-detail-transient-blank-collapsed {
  display:block!important;
  position:relative!important;
  inset:auto!important;
  float:none!important;
  flex:0 0 0!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  contain:strict!important;
}
html[data-nvpm-passive-detail] .nvpm-detail-reservation-collapsed::before,
html[data-nvpm-passive-detail] .nvpm-detail-reservation-collapsed::after,
html[data-nvpm-passive-detail] .nvpm-detail-transient-blank-collapsed::before,
html[data-nvpm-passive-detail] .nvpm-detail-transient-blank-collapsed::after {
  content:none!important;
  display:none!important;
}
@media(max-width:900px){
  html[data-nvpm-passive-detail] #_searchView.nvpm-detail-reservation-collapsed {
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html[data-nvpm-passive-detail] .nvpm-toolbar-flow-anchor {
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
}


/* =========================================================
   Mobile top reservation and main-image swipe build 46
   Safari can reserve an implicit grid track for a zero-height search action.
   Remove those search-only nodes from layout and neutralize every wrapper on
   the path to the live #_wrapapp while a verified property detail is open.
========================================================= */
html[data-nvpm-passive-detail] .nvpm-detail-reservation-collapsed,
html[data-nvpm-passive-detail] .nvpm-detail-transient-blank-collapsed {
  display:none!important;
  position:relative!important;
  width:0!important;height:0!important;min-width:0!important;min-height:0!important;max-width:0!important;max-height:0!important;
  margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;
  visibility:hidden!important;opacity:0!important;pointer-events:none!important;
  background:transparent!important;box-shadow:none!important;transform:none!important;contain:none!important;
}
html[data-nvpm-passive-detail] .nvpm-detail-layout-host {
  display:block!important;position:relative!important;inset:auto!important;
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;overflow:visible!important;
  grid-template-columns:none!important;grid-template-rows:none!important;grid-auto-rows:auto!important;
  column-gap:0!important;row-gap:0!important;align-content:start!important;justify-content:stretch!important;
  background:transparent!important;box-shadow:none!important;transform:none!important;contain:none!important;
}
html[data-nvpm-passive-detail] .nvpm-detail-app-branch {
  grid-column:auto!important;grid-row:auto!important;grid-area:auto!important;order:0!important;
  align-self:auto!important;justify-self:auto!important;width:100%!important;min-width:0!important;
  height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding-top:0!important;transform:none!important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__photo--main {
  touch-action:pan-y!important;
  -webkit-user-select:none!important;user-select:none!important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__photo--main img {
  pointer-events:none!important;
  transition:transform .18s ease,opacity .18s ease!important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__photo--main.nvpx-gallery-swipe-left img {
  transform:translateX(-2.5%)!important;opacity:.78!important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__photo--main.nvpx-gallery-swipe-right img {
  transform:translateX(2.5%)!important;opacity:.78!important;
}
@media(max-width:900px){
  html[data-nvpm-passive-detail][data-nvpm-search-ui="recovery-mobile-layout-r18"]
    :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed {
    top:0!important;
  }
}

/* =========================================================
   Navigation and detail UX build 46
   Exact origin restoration, pre-paint mobile detail guard, faster gallery,
   always-visible location map, grouped property sections, and compact IDX end.
========================================================= */

html.nvpm-detail-preflight,
html.nvpm-detail-preflight body,
html[data-nvpm-passive-detail],
html[data-nvpm-passive-detail] body {
  background:#050505!important;
}

@media(max-width:900px){
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]),
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) body {
    margin:0!important;
    padding:0!important;
  }
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) #_searchView {
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:visible!important;
    grid-template-columns:none!important;
    grid-template-rows:0 minmax(0,auto)!important;
    grid-auto-rows:0!important;
    gap:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
  }
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) #_searchView > :is(
    .searchform-wrapp-wrapp,
    .searchform-wrapp._topBar,
    #_topBar,
    .top_bar_buttons,
    .nvpm-search-actions,
    .nvpm-mobile-tools,
    .nvpm-mobile-filter-toggle,
    .nvpm-search-utility
  ),
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) #_searchView :is(
    .nvpm-search-actions,
    .nvpm-mobile-tools,
    .nvpm-mobile-filter-toggle
  ) {
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    max-width:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) #_searchView > #_wrapapp,
  html:is(.nvpm-detail-preflight,[data-nvpm-passive-detail]) #_wrapapp {
    position:relative!important;
    inset:auto!important;
    grid-area:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding-top:0!important;
    overflow:visible!important;
  }
  html[data-nvpm-passive-detail]
    :is(.nvpm-toolbar-shell,.nvpm-toolbar-host).nvpm-toolbar-detail-flow.nvpm-toolbar-is-fixed {
    top:0!important;
  }
}

.nvpm-detail-preflight-shell {
  position:fixed!important;
  inset:0!important;
  z-index:2147480750!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  color:#fff!important;
  background:#050505!important;
  font-family:"Poppins",Arial,sans-serif!important;
  text-align:center!important;
  pointer-events:none!important;
}
.nvpm-detail-preflight-mark {
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(30px,9vw,48px)!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
}
.nvpm-detail-preflight-copy {
  color:#b9bdc5!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.nvpx-favorite-toast {
  position:fixed!important;
  left:50%!important;
  bottom:calc(var(--nvpx-mobile-dock-height,82px) + env(safe-area-inset-bottom) + 18px)!important;
  z-index:2147483300!important;
  max-width:calc(100vw - 32px)!important;
  padding:11px 16px!important;
  color:#fff!important;
  background:rgba(17,17,17,.96)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:999px!important;
  box-shadow:0 12px 30px rgba(0,0,0,.32)!important;
  font:700 12px/1.2 "Poppins",Arial,sans-serif!important;
  opacity:0!important;
  transform:translate(-50%,10px)!important;
  transition:opacity .18s ease,transform .18s ease!important;
  pointer-events:none!important;
}
.nvpx-favorite-toast.is-visible { opacity:1!important;transform:translate(-50%,0)!important; }

.nvpx-gallery__photo--main.is-loading,
.nvpx-gallery__thumb.is-loading {
  background:linear-gradient(110deg,#17191d 15%,#25282d 35%,#17191d 55%)!important;
  background-size:220% 100%!important;
  animation:nvpx-photo-skeleton 1.35s linear infinite!important;
}
.nvpx-gallery__photo--main.is-loading img,
.nvpx-gallery__thumb.is-loading img { opacity:.15!important; }
@keyframes nvpx-photo-skeleton { from{background-position:100% 0} to{background-position:-120% 0} }

.nvpx-detail-accordions { display:grid;gap:12px; }
.nvpx-detail-accordion {
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  color:inherit!important;
  background:rgba(255,255,255,.035)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:14px!important;
}
.nvpx-features .nvpx-detail-accordion {
  background:#fff!important;
  border-color:#d8dce2!important;
}
.nvpx-detail-accordion > summary {
  min-height:58px!important;
  padding:0 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  color:inherit!important;
  font:600 16px/1.2 "Poppins",Arial,sans-serif!important;
  cursor:pointer!important;
  list-style:none!important;
}
.nvpx-detail-accordion > summary::-webkit-details-marker { display:none!important; }
.nvpx-detail-accordion__icon { font-size:24px!important;font-weight:300!important;transition:transform .18s ease!important; }
.nvpx-detail-accordion[open] .nvpx-detail-accordion__icon { transform:rotate(45deg)!important; }
.nvpx-detail-accordion__body { padding:0 18px 12px!important;border-top:1px solid rgba(255,255,255,.14)!important; }
.nvpx-features .nvpx-detail-accordion__body { border-top-color:#e3e5e9!important; }
.nvpx-detail-accordion__rows .nvpx-field:last-child { border-bottom:0!important; }

html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place.nvpx-map-always-visible .nvpx-map-disclosure {
  display:none!important;
}
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place.nvpx-map-always-visible .MapAndLayers {
  display:block!important;
  margin-top:14px!important;
}
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place .detailsMapContainer,
html[data-nvpm-passive-detail] #map-details.nvpx-map__native-in-place .mapContainerMask {
  min-height:clamp(360px,52vh,560px)!important;
  max-height:560px!important;
}
.nvpx-map-utilities {
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:14px 0 0!important;
}
.nvpx-map-utility {
  min-height:42px!important;
  padding:0 16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.48)!important;
  border-radius:999px!important;
  font:600 12px/1 "Poppins",Arial,sans-serif!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.nvpx-map-utility:is(:hover,:focus-visible) { background:#fff!important;color:#050505!important;border-color:#fff!important; }
@media(max-width:900px){
  .nvpx-map-utilities { display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  .nvpx-map-utility { width:100%!important; }
}

.nvpx-native-courtesy {
  margin:0!important;
  padding:24px max(22px,calc((100% - 1220px)/2))!important;
  color:#22262c!important;
  background:#fff!important;
  border-top:1px solid #d8dce2!important;
  border-bottom:1px solid #d8dce2!important;
  font:500 14px/1.65 "Poppins",Arial,sans-serif!important;
}
.nvpx-native-courtesy__label {
  display:block!important;
  margin-bottom:7px!important;
  color:#6b7079!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
html[data-nvpm-passive-detail] #footer-content.nvpx-idx-ending {
  padding:26px max(20px,calc((100% - 1220px)/2))!important;
  background:#f2f4f6!important;
}
html[data-nvpm-passive-detail] #footer-content.nvpx-idx-ending > :is(.disclaimer_mls,.disclaimer.info_deemed,.nvpx-idx-disclosure) {
  max-width:1220px!important;
  margin:0 auto!important;
  padding:20px!important;
  color:#666b74!important;
  background:#fff!important;
  border:1px solid #d8dce2!important;
  border-radius:14px!important;
  font:400 11px/1.6 "Poppins",Arial,sans-serif!important;
}
.nvpx-native-agent-details {
  max-width:1220px!important;
  margin:0 auto 14px!important;
  color:#111318!important;
  background:#fff!important;
  border:1px solid #d8dce2!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.nvpx-native-agent-details > summary {
  min-height:54px!important;
  padding:0 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  list-style:none!important;
  font:600 14px/1.2 "Poppins",Arial,sans-serif!important;
  cursor:pointer!important;
}
.nvpx-native-agent-details > summary::-webkit-details-marker { display:none!important; }
.nvpx-native-agent-details[open] > summary span:last-child { transform:rotate(45deg)!important; }
.nvpx-native-agent-details > :not(summary) { margin:0!important;padding:18px!important;border-top:1px solid #e2e5e9!important; }

@media(max-width:900px){
  html.nvpm-mobile-layout-r18[data-nvpm-search-ui="recovery-mobile-layout-r18"] .nvpm-mobile-tools {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    height:auto!important;
  }
  html.nvpm-mobile-layout-r18[data-nvpm-search-ui="recovery-mobile-layout-r18"] .nvpx-change-search-button {
    grid-column:1/-1!important;
    width:100%!important;
    min-height:38px!important;
    margin:2px 0 0!important;
    color:#111!important;
    background:#fff!important;
    border:1px solid #c9c6bf!important;
    border-radius:10px!important;
    font:700 12px/1 "Poppins",Arial,sans-serif!important;
  }
}
.nvpx-search-escape-overlay {
  position:fixed!important;
  inset:0!important;
  z-index:2147483300!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:0!important;
  background:rgba(5,5,5,.58)!important;
}
.nvpx-search-escape-sheet {
  width:100%!important;
  max-width:620px!important;
  max-height:82dvh!important;
  padding:0 20px calc(20px + env(safe-area-inset-bottom))!important;
  overflow:auto!important;
  color:#111!important;
  background:#fff!important;
  border-radius:24px 24px 0 0!important;
  box-shadow:0 -18px 50px rgba(0,0,0,.28)!important;
  font-family:"Poppins",Arial,sans-serif!important;
}
.nvpx-search-escape-sheet header,
.nvpx-filter-sheet-header {
  min-height:72px!important;
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  border-bottom:1px solid #dedede!important;
}
.nvpx-search-escape-sheet header button,
.nvpx-filter-sheet-header button {
  justify-self:start!important;
  color:#111!important;
  background:transparent!important;
  border:0!important;
  font:700 14px/1 "Poppins",Arial,sans-serif!important;
}
.nvpx-search-escape-sheet header strong,
.nvpx-filter-sheet-header strong { font:700 18px/1.2 "Poppins",Arial,sans-serif!important; }
.nvpx-search-escape-sheet > p { margin:20px 0!important;color:#61656d!important;font-size:13px!important;line-height:1.55!important; }
.nvpx-search-escape-actions { display:grid!important;gap:10px!important; }
.nvpx-search-escape-action {
  min-height:54px!important;
  padding:0 16px!important;
  color:#111!important;
  background:#fff!important;
  border:1px solid #cfd2d8!important;
  border-radius:12px!important;
  font:700 14px/1.2 "Poppins",Arial,sans-serif!important;
  text-align:left!important;
}
.nvpx-search-escape-action.is-primary { color:#fff!important;background:#111!important;border-color:#111!important; }

@media(max-width:900px){
  html.nvpm-mobile-layout-r18.nvpm-mobile-filters-open,
  html.nvpm-mobile-layout-r18.nvpm-mobile-filters-open body { overflow:hidden!important; }
  .nvpx-filter-backdrop {
    position:fixed!important;
    inset:0!important;
    z-index:2147483100!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    background:rgba(5,5,5,.58)!important;
    border:0!important;
  }
  html.nvpm-mobile-layout-r18.nvpm-mobile-filters-open[data-nvpm-search-ui="recovery-mobile-layout-r18"]
    #_searchView .searchform-wrapp._topBar.nvpx-filter-sheet {
    position:fixed!important;
    z-index:2147483200!important;
    inset:auto 0 0!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:82dvh!important;
    margin:0!important;
    padding:0 20px calc(16px + env(safe-area-inset-bottom))!important;
    overflow:auto!important;
    color:#111!important;
    background:#fff!important;
    border:0!important;
    border-radius:24px 24px 0 0!important;
    box-shadow:0 -18px 50px rgba(0,0,0,.28)!important;
  }
  .nvpx-filter-sheet-header { position:sticky!important;top:0!important;z-index:4!important;background:#fff!important; }
  .nvpx-filter-sheet-footer {
    position:sticky!important;
    bottom:0!important;
    z-index:4!important;
    display:grid!important;
    grid-template-columns:1fr 1.2fr!important;
    gap:10px!important;
    margin:16px -20px calc(-16px - env(safe-area-inset-bottom))!important;
    padding:14px 20px calc(14px + env(safe-area-inset-bottom))!important;
    background:#fff!important;
    border-top:1px solid #dedede!important;
  }
  .nvpx-filter-sheet-footer button {
    min-height:50px!important;
    border-radius:12px!important;
    font:700 14px/1 "Poppins",Arial,sans-serif!important;
  }
  .nvpx-filter-sheet-footer [data-nvpx-filter-clear] { color:#111!important;background:#fff!important;border:1px solid #aaa!important; }
  .nvpx-filter-sheet-footer [data-nvpx-filter-done] { color:#fff!important;background:#111!important;border:1px solid #111!important; }
}

[data-nvpm-restored-origin-card="true"] { scroll-margin-top:160px!important; }


/* =========================================================
   Build 53 — C46 mechanics with mobile route repair
   No replacement sort, save, route, filter, or PropertyMinder data handlers.
========================================================= */

/* Desktop and mobile gallery: one selected image, synchronized arrows, scrolling rail. */
html[data-nvpm-passive-detail] .nvpx-gallery__stage{position:relative!important;}
html[data-nvpm-passive-detail] .nvpx-gallery__arrow{
  position:absolute!important;top:50%!important;z-index:24!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:42px!important;height:66px!important;margin:0!important;padding:0!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:rgba(5,5,5,.62)!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:0!important;box-shadow:none!important;
  font:300 38px/1 Georgia,serif!important;transform:translateY(-50%)!important;cursor:pointer!important;backdrop-filter:blur(5px)!important;
}
html[data-nvpm-passive-detail] .nvpx-gallery__arrow--previous{left:14px!important;}
html[data-nvpm-passive-detail] .nvpx-gallery__arrow--next{right:14px!important;}
html[data-nvpm-passive-detail] .nvpx-gallery__arrow:is(:hover,:focus-visible){background:rgba(5,5,5,.88)!important;border-color:rgba(255,255,255,.52)!important;outline:0!important;}
html[data-nvpm-passive-detail] .nvpx-gallery__arrow:disabled{opacity:.28!important;cursor:default!important;}

@media(min-width:901px){
  html[data-nvpm-passive-detail] .nvpx-gallery{padding:8px 8px 12px!important;overflow:hidden!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__stage{display:block!important;height:min(68vh,760px)!important;min-height:520px!important;background:#050505!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__photo--main{display:block!important;width:100%!important;height:100%!important;}
  html[data-nvpm-passive-detail] :is(.nvpx-gallery__photo--side,.nvpx-gallery__photo--mobile-third){display:none!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__thumbs{
    display:flex!important;gap:8px!important;width:100%!important;margin:8px 0 0!important;padding:0 0 2px!important;overflow-x:auto!important;overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;scrollbar-width:thin!important;overscroll-behavior-inline:contain!important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb{
    flex:0 0 132px!important;width:132px!important;height:82px!important;margin:0!important;padding:0!important;overflow:hidden!important;
    background:#111!important;border:1px solid transparent!important;border-radius:0!important;opacity:.62!important;scroll-snap-align:start!important;cursor:pointer!important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb.is-active{border-color:#fff!important;opacity:1!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__counter{bottom:18px!important;left:18px!important;right:auto!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__view-all{bottom:18px!important;right:18px!important;}
}
@media(max-width:900px){
  html[data-nvpm-passive-detail] .nvpx-gallery__arrow{width:36px!important;height:54px!important;font-size:32px!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__arrow--previous{left:8px!important;}
  html[data-nvpm-passive-detail] .nvpx-gallery__arrow--next{right:8px!important;}
}

/* Enlarged viewer stays local to the selected listing and can never navigate Home. */
html.nvpx-gallery-viewer-open,html.nvpx-gallery-viewer-open body{overflow:hidden!important;}
.nvpx-gallery-viewer{position:fixed!important;inset:0!important;z-index:2147483400!important;display:none!important;align-items:center!important;justify-content:center!important;color:#fff!important;background:rgba(0,0,0,.96)!important;}
.nvpx-gallery-viewer.is-open{display:flex!important;}
.nvpx-gallery-viewer__stage{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;padding:54px 76px!important;box-sizing:border-box!important;}
.nvpx-gallery-viewer__stage img{display:block!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;transform-origin:center!important;transition:transform .2s ease!important;}
.nvpx-gallery-viewer.is-zoomed .nvpx-gallery-viewer__stage{overflow:auto!important;align-items:flex-start!important;justify-content:flex-start!important;}
.nvpx-gallery-viewer.is-zoomed .nvpx-gallery-viewer__stage img{max-width:none!important;max-height:none!important;transform:scale(1.55)!important;cursor:zoom-out!important;}
.nvpx-gallery-viewer__close,.nvpx-gallery-viewer__arrow{position:absolute!important;z-index:3!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:rgba(10,10,10,.68)!important;border:1px solid rgba(255,255,255,.32)!important;border-radius:0!important;cursor:pointer!important;}
.nvpx-gallery-viewer__close{top:18px!important;right:20px!important;width:44px!important;height:44px!important;font:300 34px/1 Arial,sans-serif!important;}
.nvpx-gallery-viewer__arrow{top:50%!important;width:50px!important;height:76px!important;font:300 44px/1 Georgia,serif!important;transform:translateY(-50%)!important;}
.nvpx-gallery-viewer__arrow--previous{left:18px!important;}.nvpx-gallery-viewer__arrow--next{right:18px!important;}
.nvpx-gallery-viewer__counter{position:absolute!important;left:50%!important;bottom:20px!important;z-index:3!important;transform:translateX(-50%)!important;padding:8px 13px!important;background:rgba(10,10,10,.72)!important;border:1px solid rgba(255,255,255,.24)!important;font:600 12px/1 Poppins,Arial,sans-serif!important;letter-spacing:.06em!important;}
@media(max-width:900px){.nvpx-gallery-viewer__stage{padding:58px 12px 68px!important;}.nvpx-gallery-viewer__arrow{width:40px!important;height:58px!important;font-size:36px!important;}.nvpx-gallery-viewer__arrow--previous{left:6px!important;}.nvpx-gallery-viewer__arrow--next{right:6px!important;}}

/* Editorial detail flow: no generic accordion stack. */
html[data-nvpm-passive-detail] .nvpx-details__grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 42px!important;border-top:1px solid #d9dde3!important;}
html[data-nvpm-passive-detail] .nvpx-feature-groups{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px 48px!important;}
html[data-nvpm-passive-detail] .nvpx-feature-group{padding:0!important;background:transparent!important;border:0!important;}
html[data-nvpm-passive-detail] .nvpx-feature-group h3{margin:0 0 13px!important;padding:0 0 11px!important;color:#111!important;border-bottom:1px solid #cfd3da!important;font:500 20px/1.25 "Playfair Display",Georgia,serif!important;letter-spacing:-.01em!important;}
html[data-nvpm-passive-detail] .nvpx-feature-group__rows{display:block!important;}
@media(max-width:900px){html[data-nvpm-passive-detail] .nvpx-details__grid,html[data-nvpm-passive-detail] .nvpx-feature-groups{grid-template-columns:1fr!important;gap:0!important;}html[data-nvpm-passive-detail] .nvpx-feature-group{padding:24px 0!important;border-bottom:1px solid #d9dde3!important;}}

/* Custom editorial description control. */
html[data-nvpm-passive-detail] .nvpx-description__toggle{
  position:relative!important;display:inline-flex!important;align-items:center!important;min-height:38px!important;margin:20px 0 0!important;padding:0 34px 6px 0!important;
  color:#111!important;-webkit-text-fill-color:#111!important;background:transparent!important;border:0!important;border-bottom:1px solid #111!important;border-radius:0!important;
  box-shadow:none!important;font:600 11px/1 Poppins,Arial,sans-serif!important;letter-spacing:.13em!important;text-transform:uppercase!important;cursor:pointer!important;
}
html[data-nvpm-passive-detail] .nvpx-description__toggle:after{content:"→"!important;position:absolute!important;right:0!important;bottom:7px!important;font:400 18px/1 Georgia,serif!important;}
html[data-nvpm-passive-detail] .nvpx-description__toggle[aria-expanded="true"]:after{content:"↑"!important;}
html[data-nvpm-passive-detail] .nvpx-description__toggle:is(:hover,:focus-visible){padding-right:40px!important;outline:0!important;}

/* Location presentation and aligned custom map actions. */
html[data-nvpm-passive-detail] #map-details{padding-top:48px!important;background:#050505!important;}
html[data-nvpm-passive-detail] #map-details .nvpx-map-heading{display:block!important;margin:0!important;padding:0 max(22px,calc((100% - 1220px)/2)) 22px!important;color:#fff!important;background:#050505!important;border:0!important;font:500 clamp(30px,4vw,50px)/1.05 "Playfair Display",Georgia,serif!important;letter-spacing:-.025em!important;text-align:left!important;}
html[data-nvpm-passive-detail] .nvpx-map-controls{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;margin:0!important;padding:0 max(22px,calc((100% - 1220px)/2)) 16px!important;background:#050505!important;}
html[data-nvpm-passive-detail] .nvpx-map-controls .nvpx-map-utility{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;margin:0!important;padding:0 16px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:transparent!important;border:1px solid rgba(255,255,255,.34)!important;border-radius:0!important;box-shadow:none!important;font:600 11px/1 Poppins,Arial,sans-serif!important;letter-spacing:.06em!important;text-decoration:none!important;text-transform:uppercase!important;cursor:pointer!important;}
html[data-nvpm-passive-detail] .nvpx-map-controls .nvpx-map-utility:is(:hover,:focus-visible,[aria-expanded="true"]){color:#050505!important;-webkit-text-fill-color:#050505!important;background:#fff!important;border-color:#fff!important;outline:0!important;}
html[data-nvpm-passive-detail] .nvpx-map-controls .nvpx-open-full-map span:last-child{font-size:15px!important;}
@media(max-width:900px){html[data-nvpm-passive-detail] #map-details{padding-top:34px!important;}html[data-nvpm-passive-detail] .nvpx-map-controls{justify-content:stretch!important;padding:0 14px 14px!important;}html[data-nvpm-passive-detail] .nvpx-map-controls .nvpx-map-utility{flex:1 1 50%!important;padding:0 10px!important;font-size:10px!important;}}

/* One Payment Estimate per viewport. */
@media(min-width:901px){html[data-nvpm-passive-detail] .nvpx-map-cta__actions>[data-nvpx-cta-action="payment"]{display:none!important;}}
@media(max-width:900px){html[data-nvpm-passive-detail] .nvpm-toolbar-portal .nvpm-finance-toolbar-button{display:none!important;}}

/* Style only the genuine C46 PropertyMinder desktop sort trigger. Never alter its menu, open state, handlers, or native inputs. */
@media(min-width:901px){
  html[data-nvpm-search-ui="recovery-mobile-layout-r18"] #_searchResultsMenu .dropdown-toggle-sorting{
    min-height:42px!important;padding:0 17px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:#0b0b0b!important;border:1px solid #0b0b0b!important;border-radius:999px!important;box-shadow:none!important;font:650 12px/1 Poppins,Arial,sans-serif!important;letter-spacing:.04em!important;cursor:pointer!important;
  }
  html[data-nvpm-search-ui="recovery-mobile-layout-r18"] #_searchResultsMenu .dropdown-toggle-sorting:before{content:"Sort by  "!important;color:#c8cbd0!important;font-weight:500!important;}
  html[data-nvpm-search-ui="recovery-mobile-layout-r18"] #_searchResultsMenu .dropdown-toggle-sorting:after{content:"  ⌄"!important;color:#fff!important;font:400 15px/1 Arial,sans-serif!important;}
  html[data-nvpm-search-ui="recovery-mobile-layout-r18"] #_searchResultsMenu .dropdown-toggle-sorting:is(:hover,:focus-visible){background:#25272b!important;border-color:#25272b!important;outline:0!important;}
}

/* Preserve the complete native PropertyMinder/NVHomesLV footer. */
html[data-nvpm-passive-detail] :is(#footer-content,#footer,#nv-footer,footer#nv-footer,.site-footer){display:block!important;visibility:visible!important;opacity:1!important;max-height:none!important;overflow:visible!important;}
html[data-nvpm-passive-detail] .nvpx-native-courtesy__label{display:inline!important;margin-right:.35em!important;color:inherit!important;font:inherit!important;letter-spacing:inherit!important;text-transform:none!important;}

/* Preflight overlay covers native detail on desktop and mobile until C46 mounts. */
.nvpm-detail-preflight-shell{z-index:2147483600!important;}


/* Compact detail language control; the original translator engine stays mounted off-canvas. */
html[data-nvpm-passive-detail] .nvpx-language-switch{grid-column:2!important;justify-self:end!important;display:inline-flex!important;align-items:center!important;gap:7px!important;margin-top:-6px!important;color:#aeb2ba!important;font:600 11px/1 Poppins,Arial,sans-serif!important;letter-spacing:.08em!important;}
html[data-nvpm-passive-detail] .nvpx-language-switch button{margin:0!important;padding:4px 0!important;color:#c7c9ce!important;background:transparent!important;border:0!important;border-bottom:1px solid transparent!important;font:inherit!important;cursor:pointer!important;}
html[data-nvpm-passive-detail] .nvpx-language-switch button[aria-pressed="true"],html[data-nvpm-passive-detail] .nvpx-language-switch button:is(:hover,:focus-visible){color:#fff!important;border-bottom-color:#fff!important;outline:0!important;}
html[data-nvpm-passive-detail] body>.gtranslate_wrapper,html[data-nvpm-passive-detail] body>.skiptranslate{position:fixed!important;left:-10000px!important;top:0!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;}
@media(max-width:900px){html[data-nvpm-passive-detail] .nvpx-language-switch{grid-column:1/-1!important;justify-self:start!important;margin-top:0!important;}}


/* =========================================================
   Build 53 mobile route repair.
   Never remove the live PropertyMinder click target during a mobile tap.
   The runtime guard paints above the page only after the native click has
   completed; the underlying application remains measurable and clickable.
========================================================= */
@media(max-width:900px){
  html.nvpm-detail-preflight:not([data-nvpm-passive-detail]) #_wrapapp{
    visibility:visible!important;
    pointer-events:auto!important;
  }
}
