: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}
}

/* Candidate 22: 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;
}

/* =========================================================
   Candidate 23: fixed action systems and finished legal ending.
   Presentation only: native PropertyMinder routing remains untouched.
========================================================= */
html[data-nvpm-passive-detail] {
  --nvpx-toolbar-height: 60px;
  --nvpx-fixed-cta-height: 76px;
}

/* Keep the native action row available throughout the detail scroll. */
html[data-nvpm-passive-detail] .nvpm-toolbar-shell,
html[data-nvpm-passive-detail] .nvpm-toolbar-host {
  position: sticky !important;
  top: 0 !important;
  z-index: 2147480800 !important;
  width: 100% !important;
  margin: 0 !important;
  background: #050505 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.14) !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal {
  height: var(--nvpx-toolbar-height) !important;
  min-height: var(--nvpx-toolbar-height) !important;
  max-height: var(--nvpx-toolbar-height) !important;
}

/* Back is an equal toolbar action, never a white pill. */
html[data-nvpm-passive-detail] .nvpm-toolbar-portal .nvpm-toolbar-back,
html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-active .nvpm-toolbar-portal .nvpm-toolbar-back {
  min-width: 148px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal .nvpm-toolbar-back:hover,
html[data-nvpm-passive-detail] .nvpm-toolbar-portal .nvpm-toolbar-back:focus-visible,
html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-active .nvpm-toolbar-portal .nvpm-toolbar-back:hover,
html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-active .nvpm-toolbar-portal .nvpm-toolbar-back:focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #26282d !important;
  border-color: rgba(255,255,255,.48) !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.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,.18) !important;
  border-radius: 10px !important;
  transition: background-color .18s ease,border-color .18s ease,transform .18s ease !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-button,.nvpm-finance-toolbar-button):hover,
html[data-nvpm-passive-detail] .nvpm-toolbar-portal :is(.nvpm-toolbar-button,.nvpm-finance-toolbar-button):focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #26282d !important;
  border-color: rgba(255,255,255,.48) !important;
  transform: translateY(-1px) !important;
}

/* One compact fixed desktop concierge bar with one visual language. */
@media (min-width: 901px) {
  html[data-nvpm-passive-detail] .nvpm-property-experience {
    padding-bottom: calc(var(--nvpx-fixed-cta-height) + 24px) !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(260px,.9fr) minmax(0,1.6fr) !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;
    white-space: nowrap !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__actions {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 8px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary {
    min-height: 46px !important;
    margin: 0 !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;
    transition: background-color .18s ease,border-color .18s ease,transform .18s ease !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:hover,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:focus-visible,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary:hover,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary:focus-visible {
    color: #050505 !important;
    -webkit-text-fill-color: #050505 !important;
    background: #fff !important;
    border-color: #fff !important;
    transform: translateY(-1px) !important;
  }
}

/* Back to top floats above the fixed concierge bar. */
.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;
}
.nvpx-back-to-top:hover,.nvpx-back-to-top:focus-visible { background:#26282d !important; }

/* Finish the native brokerage / GLVAR ending without replacing required content. */
html[data-nvpm-passive-detail] .nvpm-property-native-shell :is(.presented_by,.disclaimer_mls) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 32px max(32px,calc((100% - 1220px)/2)) !important;
  box-sizing: border-box !important;
  background: #f2f4f6 !important;
  border-top: 1px solid #d8dce2 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .presented_by .row,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .presented_by .page-space,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .presented_by .span12 {
  width: 100% !important;
  max-width: 1220px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .presented_by .contacts-info {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns:minmax(0,1fr) 170px !important;
  align-items:center !important;
  gap:32px !important;
  padding:0 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .details-agent-logo {
  justify-self:end !important;
  max-width:150px !important;
  height:auto !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer_mls,
html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer.info_deemed {
  color:#555b64 !important;
  text-align:center !important;
  line-height:1.55 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer_mls img { max-height:54px !important; width:auto !important; }
html[data-nvpm-passive-detail] .nvpm-property-native-shell :is(.similar-list,.similarListings,.photos-content) { display:none !important; }

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] { --nvpx-toolbar-height: 58px; --nvpx-fixed-cta-height: 76px; }
  html[data-nvpm-passive-detail] .nvpm-toolbar-shell,
  html[data-nvpm-passive-detail] .nvpm-toolbar-host { top: env(safe-area-inset-top) !important; }
  html[data-nvpm-passive-detail] .nvpm-toolbar-portal .nvpm-toolbar-back,
  html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-active .nvpm-toolbar-portal .nvpm-toolbar-back {
    min-width: 0 !important;
    border-radius: 9px !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 :is(.presented_by,.disclaimer_mls) {
    padding:24px 20px !important;
  }
  html[data-nvpm-passive-detail] .nvpm-property-native-shell .presented_by .contacts-info {
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  html[data-nvpm-passive-detail] .nvpm-property-native-shell .details-agent-logo {
    justify-self:start !important;
    max-width:120px !important;
  }
}

/* =========================================================
   Candidate 24: toolbar/footer parity and compact native ending.
   Presentation-only overrides on the Candidate 22 passive latch.
========================================================= */
html[data-nvpm-passive-detail] {
  --nvpx-toolbar-fixed-top: 0px;
}

/* The portal remains the in-flow spacer; the toolbar becomes viewport-wide
   only after the runtime marks it as fixed. This avoids route-width clipping. */
html[data-nvpm-passive-detail] .nvpm-toolbar-shell.nvpm-toolbar-is-fixed,
html[data-nvpm-passive-detail] .nvpm-toolbar-host.nvpm-toolbar-is-fixed {
  position: fixed !important;
  top: var(--nvpx-toolbar-fixed-top) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: none !important;
  z-index: 2147480800 !important;
}
html[data-nvpm-passive-detail] .nvpm-toolbar-shell.nvpm-toolbar-is-fixed .nvpm-toolbar-portal,
html[data-nvpm-passive-detail] .nvpm-toolbar-host.nvpm-toolbar-is-fixed .nvpm-toolbar-portal {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Match the clear Payment Estimate focus/hover treatment across every action. */
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;
}

/* The fixed concierge bar uses the same visible interaction language. */
@media (min-width: 901px) {
  html[data-nvpm-passive-detail] .nvpx-map-cta__button,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #17191d !important;
    border-color: rgba(255,255,255,.28) !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:hover,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button:focus-visible,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary:hover,
  html[data-nvpm-passive-detail] .nvpx-map-cta__button--primary:focus-visible {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    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;
  }
}

/* Make the native compliance/footer ending identical from Map and Listings.
   Break it out of a narrow native detail column, remove inherited minimum
   heights, and leave only the clearance needed for the fixed CTA. */
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;
  margin-left: -50vw !important;
  margin-right: 0 !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,.disclaimer_mls
) {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content {
  padding: 0 0 calc(var(--nvpx-fixed-cta-height) + 22px) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: #f2f4f6 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > .heading {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > .row {
  margin: 0 !important;
  padding: 28px max(32px,calc((100% - 1220px)/2)) 24px !important;
  background: #fff !important;
  border-top: 1px solid #d8dce2 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > .disclaimer_mls {
  margin: 0 !important;
  padding: 24px max(32px,calc((100% - 1220px)/2)) 22px !important;
  background: #f2f4f6 !important;
  border-top: 1px solid #d8dce2 !important;
  border-bottom: 0 !important;
}
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;
}

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content {
    padding-bottom: calc(78px + env(safe-area-inset-bottom)) !important;
  }
  html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > .row,
  html[data-nvpm-passive-detail] .nvpm-property-native-shell #footer-content > .disclaimer_mls {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* =========================================================
   Candidate 34: finished Candidate 33 detail flow.
   Native PropertyMinder routing remains untouched.
========================================================= */
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;
}

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;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: 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;
}

/* The verified property action row is the only fixed top action surface. */
html[data-nvpm-passive-detail] .nvpm-toolbar-shell,
html[data-nvpm-passive-detail] .nvpm-toolbar-host,
html[data-nvpm-passive-detail] .nvpm-toolbar-shell.nvpm-toolbar-is-fixed,
html[data-nvpm-passive-detail] .nvpm-toolbar-host.nvpm-toolbar-is-fixed {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  z-index: 2147480800 !important;
}
html[data-nvpm-passive-detail] .nvpm-property-experience-host {
  margin-top: var(--nvpx-toolbar-height, 60px) !important;
}

/* Rendered overflow, not character count, controls Read More / Read Less. */
html[data-nvpm-passive-detail] .nvpx-description__wrap {
  width: 100% !important;
}
html[data-nvpm-passive-detail] .nvpx-description__toggle:not([hidden]) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Property Details owns the full desktop content width. The outer body is not
   a two-column grid; only the actual field grid creates two equal columns. */
html[data-nvpm-passive-detail] .nvpx-details__body {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
}
html[data-nvpm-passive-detail] .nvpx-details__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 64px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Approved CTA language: one message, then four distinct actions. */
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;
}
@media (min-width: 901px) {
  html[data-nvpm-passive-detail] .nvpx-map-cta {
    grid-template-columns: minmax(300px, .92fr) minmax(0, 1.72fr) !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__actions {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Native IDX courtesy remains dynamic. The custom summary and PropertyMinder's
   required brokerage/MLS content both use the whole viewport without negative
   breakout offsets or a clipped left column. */
html[data-nvpm-passive-detail] .nvpx-courtesy {
  width: 100% !important;
  max-width: none !important;
}
html[data-nvpm-passive-detail] :is(
  #footer-content,
  #nv-footer,
  #footer,
  footer,
  .site-footer,
  [data-site-footer]
) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  overflow: visible !important;
  transform: none !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content {
  padding: 0 0 calc(var(--nvpx-fixed-cta-height, 76px) + 18px) !important;
  background: #f2f4f6 !important;
}
html[data-nvpm-passive-detail] #footer-content > .heading {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.row, .presented_by, .disclaimer_mls, .disclaimer.info_deemed) {
  position: relative !important;
  left: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.row, .presented_by) {
  padding: 26px max(32px, calc((100% - 1220px) / 2)) 24px !important;
  background: #fff !important;
  border-top: 1px solid #d8dce2 !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.disclaimer_mls, .disclaimer.info_deemed) {
  padding: 22px max(32px, calc((100% - 1220px) / 2)) 20px !important;
  background: #f2f4f6 !important;
  border-top: 1px solid #d8dce2 !important;
  border-bottom: 0 !important;
}
html[data-nvpm-passive-detail] #footer-content :is(
  .row,
  .page-space,
  .span12,
  .span4,
  .contacts-info,
  .agentInfoView,
  .presented_by,
  .disclaimer_mls,
  .disclaimer.info_deemed
) {
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: 1220px !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
  transform: none !important;
}
html[data-nvpm-passive-detail] #footer-content .contacts-info {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 170px !important;
  align-items: center !important;
  gap: 30px !important;
}
html[data-nvpm-passive-detail] #footer-content .details-agent-logo {
  justify-self: end !important;
  max-width: 150px !important;
  height: auto !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell {
  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: transparent !important;
}
html[data-nvpm-passive-detail] .nvpm-property-native-shell :is(
  #similar-details,
  #statistics-details,
  .similar-list,
  .similarListings,
  .photos-content
) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
html[data-nvpm-passive-detail] :is(#footer-content, #nv-footer, #footer, footer, .site-footer) + * {
  margin-top: 0 !important;
}

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] .nvpm-toolbar-shell,
  html[data-nvpm-passive-detail] .nvpm-toolbar-host,
  html[data-nvpm-passive-detail] .nvpm-toolbar-shell.nvpm-toolbar-is-fixed,
  html[data-nvpm-passive-detail] .nvpm-toolbar-host.nvpm-toolbar-is-fixed {
    top: env(safe-area-inset-top) !important;
  }
  html[data-nvpm-passive-detail] .nvpm-property-experience-host {
    margin-top: calc(58px + env(safe-area-inset-top)) !important;
  }
  html[data-nvpm-passive-detail] .nvpx-details__grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map-cta__actions {
    grid-template-columns: 1fr !important;
  }
  html[data-nvpm-passive-detail] #footer-content {
    padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
  }
  html[data-nvpm-passive-detail] #footer-content > :is(.row, .presented_by, .disclaimer_mls, .disclaimer.info_deemed) {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  html[data-nvpm-passive-detail] #footer-content .contacts-info {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  html[data-nvpm-passive-detail] #footer-content .details-agent-logo {
    justify-self: start !important;
    max-width: 120px !important;
  }
}

/* Candidate 34 final acceptance: open every verified property at its own top,
   keep Read More reachable, and normalize the native legal/footer columns. */
html[data-nvpm-passive-detail] .nvpx-description__wrap.is-collapsed {
  max-height: 9.4em !important;
}

html[data-nvpm-passive-detail] .nvpx-courtesy__copy {
  width: 100% !important;
  max-width: none !important;
  overflow-wrap: anywhere !important;
}

html[data-nvpm-passive-detail] #footer-content .row {
  margin-right: 0 !important;
  margin-left: 0 !important;
}
html[data-nvpm-passive-detail] #footer-content [class*="span"] {
  float: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] #footer-content > .row > .page-space,
html[data-nvpm-passive-detail] #footer-content > .row > .page-space > .span12,
html[data-nvpm-passive-detail] #footer-content > .row > .page-space > .span12 > .row {
  width: 100% !important;
  max-width: 1220px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 0 !important;
}
html[data-nvpm-passive-detail] #footer-content .contacts-info .agentInfoView {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  overflow-wrap: anywhere !important;
}
html[data-nvpm-passive-detail] #footer-content .contacts-info .details-agent-logo {
  grid-column: 2 !important;
  grid-row: 1 !important;
  margin: 0 !important;
}
html[data-nvpm-passive-detail] #footer-content .disclaimer_mls,
html[data-nvpm-passive-detail] #footer-content .disclaimer.info_deemed {
  float: none !important;
  clear: both !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] .nvpx-description__wrap.is-collapsed {
    max-height: 9.8em !important;
  }
  html[data-nvpm-passive-detail] #footer-content .contacts-info .agentInfoView,
  html[data-nvpm-passive-detail] #footer-content .contacts-info .details-agent-logo {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}


/* =========================================================
   Candidate 35: live PropertyMinder affix-spacer correction.
   The immediate 1px spacer before #_detailsView is the only
   PropertyMinder spacer collapsed while a verified detail is open.
========================================================= */
html[data-nvpm-passive-detail] .nvpm-detail-affix-spacer-collapsed {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !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;
}

html[data-nvpm-passive-detail] #_detailsView.nvpm-detail-affix-released,
html[data-nvpm-passive-detail] ._detailsView.nvpm-detail-affix-released {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: 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;
}

html[data-nvpm-passive-detail] #_wrapapp.nvpm-detail-document-owner {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
}

/* Restore the approved living black image composition: the photographs and
   property bridge read as one continuous panel instead of a floating image. */
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 must remain available whenever the rendered copy is clipped. */
html[data-nvpm-passive-detail] .nvpx-description__toggle:not([hidden]) {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Force the desktop Property Details field grid to occupy the complete inner
   section width, independent of inherited PropertyMinder column rules. */
html[data-nvpm-passive-detail] .nvpx-details,
html[data-nvpm-passive-detail] .nvpx-details > .nvpx-section__title,
html[data-nvpm-passive-detail] .nvpx-details__body,
html[data-nvpm-passive-detail] .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;
}
html[data-nvpm-passive-detail] .nvpx-details .nvpx-field {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Native map remains the action/data authority. Candidate 35 removes the
   full white overlay treatment: the map is visible first, and the native
   Nearby & Schools controls open as a compact in-flow panel above it. */
html[data-nvpm-passive-detail] .nvpx-map__header {
  align-items: center !important;
  margin-bottom: 18px !important;
}
html[data-nvpm-passive-detail] .nvpx-map__filters-toggle {
  width: auto !important;
  min-width: 0 !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.48) !important;
  border-radius: 999px !important;
}
html[data-nvpm-passive-detail] .nvpx-map__filters-toggle[aria-expanded="true"],
html[data-nvpm-passive-detail] .nvpx-map__filters-toggle:hover,
html[data-nvpm-passive-detail] .nvpx-map__filters-toggle:focus-visible {
  color: #050505 !important;
  background: #fff !important;
  border-color: #fff !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native-host {
  padding: 8px !important;
  overflow: visible !important;
  background: #050505 !important;
  border: 1px solid #30333a !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native,
html[data-nvpm-passive-detail] .nvpx-map__native > .container,
html[data-nvpm-passive-detail] .nvpx-map__native .page-space,
html[data-nvpm-passive-detail] .nvpx-map__native .MapAndLayers {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native .MapAndLayers {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  overflow: visible !important;
  background: #050505 !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl[hidden],
html[data-nvpm-passive-detail] .nvpx-map__native.nvpx-map-filters-collapsed #_detailsLayersMapControl {
  display: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl {
  position: relative !important;
  inset: auto !important;
  order: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 4px !important;
  padding: 24px !important;
  overflow: visible !important;
  color: #111318 !important;
  background: #f4f5f7 !important;
  border: 1px solid #d9dde3 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
  transform: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl .tab-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr) !important;
  gap: 24px 34px !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl :is(.tab-pan, .details-schools) {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl h4.title {
  margin: 0 0 14px !important;
  color: #111318 !important;
  font: 600 22px/1.2 "Playfair Display", Georgia, serif !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl label.checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 32px !important;
  margin: 0 !important;
  color: #30343a !important;
  cursor: pointer !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl label.checkbox input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl .span-che {
  position: relative !important;
  display: inline-block !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid #9ba0a8 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl label.checkbox input:checked + .span-che {
  background: #111318 !important;
  border-color: #111318 !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl label.checkbox input:checked + .span-che::after {
  content: "" !important;
  position: absolute !important;
  left: 5px !important;
  top: 2px !important;
  width: 5px !important;
  height: 9px !important;
  border: solid #fff !important;
  border-width: 0 2px 2px 0 !important;
  transform: rotate(45deg) !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl .classText {
  display: inline !important;
  margin: 0 !important;
  color: #30343a !important;
  font: 500 14px/1.35 "Poppins", Arial, sans-serif !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native .loadMapMask,
html[data-nvpm-passive-detail] .nvpx-map__native a.loadMapMask {
  position: relative !important;
  inset: auto !important;
  order: 1 !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: #17191d !important;
  border: 0 !important;
  box-sizing: border-box !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native .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;
  box-shadow: none !important;
}
html[data-nvpm-passive-detail] .nvpx-map__native .mapContainerMask,
html[data-nvpm-passive-detail] .nvpx-map__native .detailsMapContainer {
  position: relative !important;
  inset: auto !important;
  order: 2 !important;
  width: 100% !important;
  min-height: 430px !important;
  max-height: 430px !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #e9edf2 !important;
}

/* Keep one dynamic native courtesy/legal ending, then immediately release the
   PropertyMinder master footer. The custom courtesy copy remains hidden. */
html[data-nvpm-passive-detail] .nvpx-courtesy {
  display: none !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 {
  margin: 0 !important;
  padding: 0 0 20px !important;
  background: #f2f4f6 !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.row, .presented_by) {
  padding-top: 24px !important;
  padding-bottom: 22px !important;
}
html[data-nvpm-passive-detail] #footer-content > :is(.disclaimer_mls, .disclaimer.info_deemed) {
  padding-top: 18px !important;
  padding-bottom: 16px !important;
}
html[data-nvpm-passive-detail] #nv-footer,
html[data-nvpm-passive-detail] footer#nv-footer,
html[data-nvpm-passive-detail] .site-footer {
  margin-top: 0 !important;
  padding-bottom: calc(var(--nvpx-fixed-cta-height, 76px) + 24px) !important;
}

@media (max-width: 900px) {
  html[data-nvpm-passive-detail] .nvpx-gallery {
    width: 100% !important;
    padding: 8px 8px 0 !important;
  }
  html[data-nvpm-passive-detail] .nvpx-gallery__stage {
    width: 100% !important;
    gap: 4px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-details__grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__header {
    flex-direction: row !important;
    align-items: center !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__filters-toggle {
    width: auto !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    font-size: 11px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__native-host {
    padding: 5px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl {
    padding: 18px 16px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl .tab-content {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__native #_detailsLayersMapControl ul {
    gap: 9px 14px !important;
  }
  html[data-nvpm-passive-detail] .nvpx-map__native .mapContainerMask,
  html[data-nvpm-passive-detail] .nvpx-map__native .detailsMapContainer {
    min-height: 360px !important;
    max-height: 360px !important;
  }
  html[data-nvpm-passive-detail] .nvpm-property-native-shell .disclaimer.presented_by {
    padding: 20px !important;
  }
  html[data-nvpm-passive-detail] #footer-content {
    padding-bottom: 14px !important;
  }
  html[data-nvpm-passive-detail] #nv-footer,
  html[data-nvpm-passive-detail] footer#nv-footer,
  html[data-nvpm-passive-detail] .site-footer {
    padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
  }
}
