@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{--ink:#0d2239;--ink2:#334b63;--muted:#6f7f8f;--line:#e5e9ed;--soft:#f5f7f8;--green:#16a36f;--green-dark:#0b7d54;--white:#fff;--shadow:0 8px 30px rgba(15,39,66,.08);--radius:18px;--header-h:74px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff}
*{box-sizing:border-box}html,body,#reh-v2-app{margin:0;min-height:100%;height:100%}body{font-size:14px;background:white}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.top-nav{height:var(--header-h);display:grid;grid-template-columns:minmax(210px,1fr) auto auto minmax(210px,1fr);align-items:center;gap:26px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);position:relative;z-index:30}.brand-logo{width:190px;max-height:42px;object-fit:contain;object-position:left center}.market-nav,.transaction-nav{display:flex;height:100%;align-items:center;gap:4px}.market-nav button,.transaction-nav button{height:100%;border:0;background:transparent;padding:0 13px;color:var(--muted);font-weight:600;position:relative}.market-nav button.active,.transaction-nav button.active{color:var(--ink)}.market-nav button.active:after,.transaction-nav button.active:after{content:"";height:3px;border-radius:3px;background:var(--green);position:absolute;left:12px;right:12px;bottom:0}.account-pill{justify-self:end;border:1px solid var(--line);background:#fff;border-radius:999px;display:flex;align-items:center;gap:9px;padding:6px 11px 6px 7px;box-shadow:0 2px 10px rgba(13,34,57,.04)}.account-avatar{width:31px;height:31px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:700}.discovery-page{min-height:calc(100vh - var(--header-h));display:flex;flex-direction:column}.search-section{padding:14px 24px 0;background:#fff;z-index:20}.search-bar{max-width:1220px;margin:0 auto;min-height:62px;border:1px solid var(--line);border-radius:999px;box-shadow:0 4px 22px rgba(13,34,57,.07);display:flex;align-items:stretch;background:#fff;padding:5px}.search-cell{display:flex;flex-direction:column;justify-content:center;padding:4px 18px;min-width:145px;border-right:1px solid var(--line)}.search-location{flex:1;min-width:260px}.cell-label{font-size:11px;font-weight:700;letter-spacing:.03em;margin-bottom:3px}.search-cell input,.search-cell select{border:0;background:transparent;outline:none;min-width:0;color:var(--ink2)}.more-filter-btn,.voice-btn,.search-submit{border:0;background:transparent}.more-filter-btn{padding:0 15px;font-weight:600;white-space:nowrap}.voice-btn{width:44px;border-radius:50%;font-size:18px;opacity:.45;cursor:not-allowed}.search-submit{align-self:center;width:46px;height:46px;border-radius:50%;background:var(--green);color:#fff;font-size:27px;line-height:1}.search-submit:hover{background:var(--green-dark)}.more-filter-panel{max-width:1080px;margin:9px auto 0;padding:15px 18px;border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.more-filter-panel label{font-size:12px;font-weight:600;color:var(--muted);display:flex;flex-direction:column;gap:5px}.more-filter-panel input,.more-filter-panel select{border:1px solid var(--line);border-radius:10px;padding:9px;background:white}.more-filter-panel button{border:0;background:var(--ink);color:#fff;border-radius:10px;font-weight:700}.category-shell{padding:12px 24px 10px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;min-width:0;background:#fff;z-index:15}.category-mode{display:flex;border:1px solid var(--line);border-radius:12px;padding:3px;flex:0 0 auto}.category-mode button{border:0;background:transparent;border-radius:9px;padding:8px 12px;font-weight:700;color:var(--muted)}.category-mode button.active{background:var(--ink);color:#fff}.category-mode button.reset{color:#9b4b42}.selected-category-rail,.category-scroll{display:flex;align-items:center;gap:8px;min-width:0}.selected-category-rail{flex:0 0 auto}.category-scroll{overflow:auto;scrollbar-width:none;flex:1}.category-scroll::-webkit-scrollbar{display:none}.category-chip{height:42px;flex:0 0 auto;display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0 12px;white-space:nowrap;font-size:12px;font-weight:600}.category-chip:hover{border-color:#b4bec7}.category-chip.selected{border-color:var(--green);background:#f1fbf7}.category-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--soft);font-weight:800}.drag-handle{cursor:grab;color:#8795a2;letter-spacing:-4px}.priority-number{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-size:10px}.drag-ghost{opacity:.35}.result-toolbar{min-height:56px;display:flex;align-items:center;justify-content:space-between;padding:8px 24px;border-bottom:1px solid var(--line);background:#fff;gap:16px}.result-toolbar>div:first-child{display:flex;align-items:baseline;gap:9px}.result-sub{font-size:11px;color:var(--muted);text-transform:capitalize}.toolbar-actions{display:flex;gap:9px;align-items:center}.toolbar-actions select,.soft-btn{height:36px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:0 11px}.soft-btn:disabled{opacity:.55;cursor:not-allowed}.mobile-view-switch{display:none}.workspace{display:grid;grid-template-columns:minmax(460px,48%) 1fr;flex:1;min-height:0;height:calc(100vh - 268px)}.list-pane{min-width:0;overflow:auto;border-right:1px solid var(--line);background:white}.map-pane{min-width:0;position:relative;background:#e9eff2}.property-list{padding:18px}.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}.property-card{min-width:0;border-radius:var(--radius);background:#fff;overflow:hidden;cursor:pointer;transition:.18s ease;border:1px solid transparent}.property-card:hover,.property-card.selected{transform:translateY(-1px);box-shadow:var(--shadow);border-color:#d9e1e6}.property-card.selected{outline:2px solid rgba(22,163,111,.35)}.card-media{height:clamp(210px,19vw,310px);position:relative;background:#edf1f3;overflow:hidden;border-radius:var(--radius)}.card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.property-card:hover .card-media img{transform:scale(1.015)}.media-empty{height:100%;display:grid;place-items:center;color:var(--muted)}.heart{position:absolute;top:12px;right:12px;border:0;background:rgba(13,34,57,.78);color:#fff;width:35px;height:35px;border-radius:50%;font-size:22px;opacity:.8}.media-arrow{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:rgba(255,255,255,.9);border-radius:50%;font-size:24px;display:none}.property-card:hover .media-arrow{display:block}.media-arrow.left{left:10px}.media-arrow.right{right:10px}.media-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:4px}.media-dots span{width:5px;height:5px;background:rgba(255,255,255,.6);border-radius:50%}.media-dots span.active{background:#fff;width:7px;height:7px}.match-badge{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.94);padding:7px 10px;border-radius:999px;font-size:10px;font-weight:800}.card-copy{padding:12px 4px 10px}.price-row{display:flex;justify-content:space-between;align-items:center}.price-row strong{font-size:19px}.map-pin{border:0;background:transparent;font-size:20px;color:var(--muted)}.card-copy h3{font-size:13px;margin:4px 0 7px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spec-row{margin:0;display:flex;gap:9px;flex-wrap:wrap;color:var(--muted);font-size:11px}.agent-row{margin:7px 0 0;font-size:10px;color:#87939f}.map-wrap,.map-canvas{height:100%;width:100%;position:relative}.map-error{position:absolute;inset:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:20px;background:#fff;box-shadow:var(--shadow);gap:8px}.map-reset-area{position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:5;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-weight:700;box-shadow:var(--shadow)}.mobile-map-preview{display:none}.status-banner{margin:8px 24px;padding:10px 14px;border-radius:10px}.status-banner.error{background:#fff0ee;color:#8c3129}.empty-state{min-height:420px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px;color:var(--muted)}.empty-state h2{color:var(--ink);margin:7px}.empty-icon{font-size:36px}.empty-state button{border:0;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px}.skeleton-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.property-skeleton{height:330px;border-radius:18px;background:linear-gradient(90deg,#eff2f3 25%,#f7f8f8 37%,#eff2f3 63%);background-size:400% 100%;animation:sk 1.4s infinite}@keyframes sk{0%{background-position:100% 0}100%{background-position:0 0}}
.property-detail-shell{max-width:1180px;margin:0 auto;padding:28px}.property-back{display:inline-block;margin-bottom:20px;color:var(--ink);text-decoration:none}.property-detail-hero{height:min(65vh,650px);border-radius:24px;overflow:hidden;background:#eee}.property-detail-hero img{width:100%;height:100%;object-fit:cover}.property-detail-copy{padding:26px 4px}.property-detail-copy h1{font-size:34px;margin:4px 0}.property-detail-price{font-size:26px;font-weight:800}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--green);font-weight:800}.muted{color:var(--muted)}
@media (max-width:1180px){.top-nav{grid-template-columns:190px 1fr auto;padding:0 18px}.transaction-nav{display:none}.account-name{display:none}.workspace{grid-template-columns:52% 48%}.property-grid{grid-template-columns:1fr}.card-media{height:300px}.search-cell:nth-of-type(3){display:none}.category-chip{height:40px}.more-filter-panel{grid-template-columns:repeat(3,1fr)}}
@media (max-width:800px){:root{--header-h:62px}.top-nav{height:62px;display:flex;gap:10px;padding:0 13px}.brand-logo{width:145px}.market-nav{margin-left:auto}.market-nav button{padding:0 7px;font-size:11px}.account-pill{padding:5px}.account-avatar{width:29px;height:29px}.search-section{padding:10px 12px 0}.search-bar{border-radius:16px;display:grid;grid-template-columns:1fr 44px 44px;padding:6px;min-height:58px}.search-location{grid-column:1;border:0;padding:3px 10px;min-width:0}.search-cell:not(.search-location),.more-filter-btn{display:none}.voice-btn,.search-submit{width:40px;height:40px;align-self:center}.search-submit{font-size:22px}.more-filter-panel{grid-template-columns:1fr 1fr;margin:8px 0}.category-shell{padding:9px 12px;flex-wrap:wrap;gap:8px}.category-mode{width:100%;justify-content:center}.category-mode button{flex:1;padding:7px}.selected-category-rail{width:100%;overflow:auto}.category-scroll{width:100%;order:3}.category-chip{height:37px;font-size:11px}.result-toolbar{padding:7px 12px;min-height:51px}.toolbar-actions{display:none}.mobile-view-switch{display:flex;border:1px solid var(--line);border-radius:999px;padding:2px}.mobile-view-switch button{border:0;background:transparent;border-radius:999px;padding:7px 13px;font-weight:700}.mobile-view-switch button.active{background:var(--ink);color:white}.workspace{height:calc(100vh - 270px);display:block;position:relative}.list-pane,.map-pane{height:100%;border:0}.workspace.mobile-list .map-pane{display:none}.workspace.mobile-map .list-pane{display:none}.property-list{padding:12px}.property-grid{grid-template-columns:1fr;gap:18px}.card-media{height:clamp(250px,68vw,390px)}.property-card:hover{transform:none}.media-arrow{display:block}.map-pane{position:absolute;inset:0}.mobile-map-preview{position:absolute;display:flex;align-items:center;gap:10px;left:10px;right:10px;bottom:12px;background:#fff;border-radius:16px;padding:9px;box-shadow:0 10px 35px rgba(13,34,57,.22);z-index:7}.mobile-map-preview img{width:78px;height:58px;object-fit:cover;border-radius:10px}.mobile-map-preview div{min-width:0;display:flex;flex-direction:column;flex:1}.mobile-map-preview strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-map-preview span{font-size:13px;font-weight:800}.mobile-map-preview button{border:0;background:var(--ink);color:#fff;border-radius:10px;padding:8px;font-size:10px}.map-reset-area{top:9px}.result-sub{display:none}.property-detail-shell{padding:14px}.property-detail-hero{height:52vh;border-radius:17px}.property-detail-copy h1{font-size:24px}}
/* REH V2 — floating map treatment */
@media (min-width:801px){
  .map-pane{
    margin:14px 16px 16px 12px;
    border-radius:22px;
    overflow:hidden;
    background:#e9eff2;
    box-shadow:0 2px 12px rgba(13,34,57,.08);
  }
  .map-wrap,.map-canvas{
    border-radius:inherit;
    overflow:hidden;
  }
  .list-pane{
    border-right:0;
  }
}

@media (max-width:800px){
  .workspace.mobile-map{
    background:#fff;
  }
  .workspace.mobile-map .map-pane{
    inset:10px 10px 12px;
    margin:0;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 2px 12px rgba(13,34,57,.08);
  }
  .workspace.mobile-map .map-wrap,
  .workspace.mobile-map .map-canvas{
    border-radius:inherit;
    overflow:hidden;
  }
}

/* Future/browser fullscreen treatment */
.map-pane:fullscreen,
.map-wrap:fullscreen{
  background:#fff;
  padding:14px;
}
.map-pane:fullscreen .map-wrap,
.map-wrap:fullscreen .map-canvas{
  border-radius:22px;
  overflow:hidden;
}
/* REH V2 — lock discovery/map to browser height */
@media (min-width:801px){
  .app-shell{
    height:100vh;
    min-height:0;
    overflow:hidden;
  }
  .discovery-page{
    height:calc(100vh - var(--header-h));
    min-height:0;
    overflow:hidden;
  }
  .workspace{
    height:auto;
    flex:1 1 auto;
    min-height:0;
    overflow:hidden;
  }
  .list-pane,
  .map-pane{
    min-height:0;
  }
}
/* REH V2 — Airbnb-style right-edge scrolling */
@media (min-width:801px){
  .workspace{
    overflow-y:auto !important;
    overflow-x:hidden;
    grid-template-rows:100%;
    align-items:start;
    scrollbar-gutter:stable;
  }

  .list-pane{
    overflow:visible !important;
    height:auto;
    min-height:100%;
  }

  .map-pane{
    position:sticky;
    top:14px;
    align-self:start;
    height:calc(100% - 30px);
    min-height:0;
  }
}
/* REH V2 — compact desktop discovery header */
@media (min-width:801px){
  :root{
    --header-h:64px;
  }

  .top-nav{
    height:64px;
    padding:0 24px;
    gap:20px;
  }

  .brand-logo{
    width:170px;
    max-height:36px;
  }

  .market-nav button,
  .transaction-nav button{
    padding:0 11px;
  }

  .search-section{
    padding:8px 22px 4px;
  }

  .search-bar{
    min-height:52px;
    height:52px;
    padding:4px;
    box-shadow:0 3px 16px rgba(13,34,57,.06);
  }

  .search-cell{
    padding:2px 16px;
  }

  .search-submit{
    width:42px;
    height:42px;
    font-size:23px;
  }

  .category-shell{
    padding:6px 20px 7px;
    gap:9px;
  }

  .category-mode{
    padding:2px;
  }

  .category-mode button{
    padding:6px 11px;
  }

  .category-chip{
    height:36px;
    padding:0 11px;
    font-size:11px;
  }

  .category-icon{
    width:23px;
    height:23px;
  }

  .result-toolbar{
    min-height:44px;
    height:44px;
    padding:4px 20px;
  }

  .toolbar-actions select,
  .soft-btn{
    height:34px;
  }
}

/* REH_V2_AIRBNB_UI_V2_BEGIN */

/* ---------- shared ---------- */
body{background:#fff}
.card-media{aspect-ratio:4/3!important;height:auto!important}
.card-media img{width:100%;height:100%;object-fit:cover}

.category-icon.material-symbols-rounded{
  font-family:"Material Symbols Rounded";
  font-weight:400;
  font-style:normal;
  font-size:24px;
  line-height:1;
  letter-spacing:normal;
  text-transform:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  word-wrap:normal;
  direction:ltr;
  -webkit-font-feature-settings:"liga";
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"liga";
}

/* ---------- desktop ---------- */
@media (min-width:1101px){
  :root{--header-h:58px}

  .app-shell{height:100vh!important;min-height:0!important;overflow:hidden!important}
  .discovery-page{
    height:calc(100vh - 58px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  /* top row: logo, market pills, transaction pills, account */
  .top-nav{
    height:58px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 22px!important;
    gap:8px!important;
    border-bottom:1px solid #e7eaed!important;
    background:#fff!important;
  }
  .brand-wrap{
    flex:0 0 auto!important;
    margin:0 26px 0 0!important;
  }
  .brand-logo{
    width:174px!important;
    max-height:34px!important;
    display:block;
  }
  .market-nav,.transaction-nav{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    height:auto!important;
    margin:0!important;
  }
  .transaction-nav{margin-left:2px!important}
  .market-nav button,.transaction-nav button{
    height:34px!important;
    padding:0 15px!important;
    border:1px solid #dbe1e6!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#16273a!important;
    font-size:12px!important;
    font-weight:600!important;
    box-shadow:none!important;
  }
  .market-nav button.active,.transaction-nav button.active{
    background:#102a47!important;
    color:#fff!important;
    border-color:#102a47!important;
  }
  .market-nav button:after,.transaction-nav button:after{display:none!important}
  .account-menu,.account-pill{margin-left:auto!important}
  .account-pill{
    min-height:38px!important;
    padding:4px 12px 4px 5px!important;
    box-shadow:none!important;
    border-color:#dbe1e6!important;
  }

  /* unified search pill */
  .search-section{
    padding:9px 24px 7px!important;
    background:#fff!important;
  }
  .search-bar{
    width:min(1260px,calc(100vw - 170px))!important;
    max-width:none!important;
    height:50px!important;
    min-height:50px!important;
    margin:0 auto!important;
    padding:4px 5px!important;
    border:1px solid #dee3e7!important;
    border-radius:999px!important;
    box-shadow:0 4px 18px rgba(15,39,66,.09)!important;
    background:#fff!important;
  }
  .search-cell{
    min-width:140px!important;
    padding:3px 16px!important;
    border-right:1px solid #e7eaed!important;
  }
  .search-location{
    min-width:360px!important;
    flex:1!important;
  }
  .cell-label{
    font-size:9px!important;
    line-height:1.1!important;
    margin-bottom:2px!important;
  }
  .search-cell input,.search-cell select{
    font-size:12px!important;
  }
  .more-filter-btn{
    padding:0 14px!important;
    font-size:12px!important;
  }
  .voice-btn{
    width:32px!important;
    font-size:15px!important;
  }
  .search-submit{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    margin:auto 0!important;
    font-size:22px!important;
  }

  /* feature rail - REH Sort / Filter / Reset in first position */
  .category-shell{
    min-height:66px!important;
    height:66px!important;
    padding:4px 14px 5px!important;
    gap:6px!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    border-bottom:1px solid #e7eaed!important;
    background:#fff!important;
  }
  .category-mode{
    flex:0 0 auto!important;
    width:142px!important;
    height:38px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
    align-self:center!important;
    margin:0 9px 0 0!important;
    padding:3px!important;
    border:1px solid #dbe1e6!important;
    border-radius:13px!important;
    background:#fff!important;
  }
  .category-mode button{
    min-width:0!important;
    height:30px!important;
    padding:0 5px!important;
    font-size:10px!important;
    border-radius:9px!important;
  }
  .selected-category-rail,.category-scroll{
    height:58px!important;
    gap:2px!important;
    align-items:stretch!important;
  }
  .selected-category-rail{flex:0 0 auto!important}
  .category-scroll{
    flex:1 1 auto!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
  }
  .category-scroll::-webkit-scrollbar{display:none!important}

  .category-chip{
    position:relative!important;
    flex:0 0 auto!important;
    width:78px!important;
    min-width:78px!important;
    height:58px!important;
    padding:4px 4px 3px!important;
    border:0!important;
    border-radius:11px!important;
    background:transparent!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    color:#17283b!important;
    font-size:9px!important;
    font-weight:600!important;
    line-height:1.05!important;
    text-align:center!important;
  }
  .category-chip:hover{background:#f5f7f8!important}
  .category-chip.selected{
    background:#f0faf5!important;
    box-shadow:inset 0 -2px 0 #16a36f!important;
  }
  .category-icon{
    width:auto!important;
    height:25px!important;
    border-radius:0!important;
    background:transparent!important;
    color:#102a47!important;
    font-size:24px!important;
  }
  .category-chip span:last-child:not(.priority-number){
    max-width:74px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .drag-handle{display:none!important}
  .priority-number{
    position:absolute!important;
    top:2px!important;
    right:4px!important;
    width:16px!important;
    height:16px!important;
    font-size:8px!important;
  }

  /* results row */
  .result-toolbar{
    min-height:46px!important;
    height:46px!important;
    padding:5px 18px!important;
    border-bottom:1px solid #edf0f2!important;
    background:#fff!important;
  }
  .result-toolbar>div:first-child{
    display:flex!important;
    align-items:baseline!important;
    gap:8px!important;
  }
  .result-toolbar strong{font-size:15px!important}
  .result-sub{font-size:10px!important}
  .toolbar-actions{gap:8px!important}
  .toolbar-actions select,.soft-btn{
    height:34px!important;
    border-radius:999px!important;
    padding:0 14px!important;
    background:#fff!important;
  }

  /* list + floating map, right edge owns scroll */
  .workspace{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:minmax(560px,48%) 1fr!important;
    align-items:start!important;
    gap:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    scrollbar-gutter:stable!important;
    background:#fff!important;
  }
  .list-pane{
    min-width:0!important;
    min-height:100%!important;
    height:auto!important;
    overflow:visible!important;
    border:0!important;
    background:#fff!important;
  }
  .property-list{padding:14px 10px 28px 16px!important}
  .property-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px 14px!important;
  }
  .property-card{
    border:0!important;
    border-radius:16px!important;
    box-shadow:none!important;
    overflow:visible!important;
    background:#fff!important;
  }
  .property-card:hover{transform:none!important;box-shadow:none!important}
  .card-media{
    width:100%!important;
    aspect-ratio:4/3!important;
    height:auto!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  .card-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .card-copy{padding:8px 2px 5px!important}
  .price-row strong{font-size:16px!important}
  .card-copy h3{
    margin:3px 0 5px!important;
    font-size:11px!important;
  }
  .spec-row{font-size:10px!important;gap:7px!important}
  .agent-row{font-size:9px!important;margin-top:5px!important}

  .map-pane{
    position:sticky!important;
    top:14px!important;
    align-self:start!important;
    height:calc(100% - 28px)!important;
    min-height:420px!important;
    margin:14px 16px 14px 10px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:#e8eef2!important;
    box-shadow:0 2px 12px rgba(13,34,57,.07)!important;
  }
  .map-wrap,.map-canvas{
    width:100%!important;
    height:100%!important;
    border-radius:inherit!important;
    overflow:hidden!important;
  }
}

/* ---------- tablet ---------- */
@media (min-width:801px) and (max-width:1100px){
  :root{--header-h:60px}
  .top-nav{
    height:60px!important;
    display:flex!important;
    padding:0 14px!important;
    gap:6px!important;
  }
  .brand-logo{width:155px!important}
  .market-nav{margin-left:12px!important}
  .market-nav button,.transaction-nav button{
    height:32px!important;
    padding:0 10px!important;
    border:1px solid #dbe1e6!important;
    border-radius:999px!important;
    background:#fff!important;
    font-size:10px!important;
  }
  .market-nav button.active,.transaction-nav button.active{
    background:#102a47!important;color:#fff!important;border-color:#102a47!important
  }
  .market-nav button:after,.transaction-nav button:after{display:none!important}
  .account-name{display:none!important}
  .account-menu,.account-pill{margin-left:auto!important}

  .search-section{padding:8px 14px 6px!important}
  .search-bar{
    max-width:none!important;
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
  }
  .search-location{min-width:250px!important}
  .search-cell{min-width:110px!important;padding:3px 10px!important}
  .more-filter-btn{padding:0 10px!important}

  .category-shell{
    height:64px!important;
    min-height:64px!important;
    padding:4px 10px!important;
    flex-wrap:nowrap!important;
  }
  .category-mode{flex:0 0 auto!important;width:132px!important}
  .category-scroll,.selected-category-rail{
    flex:1 1 auto!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
  }
  .category-chip{
    width:70px!important;min-width:70px!important;height:56px!important;
    border:0!important;background:transparent!important;flex-direction:column!important;
    gap:3px!important;padding:3px!important;font-size:8.5px!important
  }
  .category-icon{background:transparent!important;width:auto!important;height:24px!important}
  .drag-handle{display:none!important}

  .result-toolbar{min-height:44px!important;padding:5px 12px!important}
  .mobile-view-switch{display:flex!important}

  .workspace{
    height:calc(100vh - 216px)!important;
    display:block!important;
    position:relative!important;
    overflow:hidden!important;
  }
  .workspace.mobile-list .map-pane{display:none!important}
  .workspace.mobile-map .list-pane{display:none!important}
  .list-pane,.map-pane{height:100%!important}
  .list-pane{overflow-y:auto!important}
  .property-list{padding:12px 14px 70px!important}
  .property-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 14px!important}
  .card-media{aspect-ratio:4/3!important;height:auto!important}
  .workspace.mobile-map .map-pane{
    display:block!important;position:absolute!important;inset:10px 10px 12px!important;
    margin:0!important;border-radius:20px!important;overflow:hidden!important
  }
}

/* ---------- mobile ---------- */
@media (max-width:800px){
  :root{--header-h:56px}
  .top-nav{
    height:56px!important;
    display:flex!important;
    padding:0 10px!important;
    gap:8px!important;
    border-bottom:1px solid #edf0f2!important;
  }
  .brand-logo{width:142px!important}
  .market-nav,.transaction-nav{display:none!important}
  .account-menu{margin-left:auto!important}
  .account-name{display:none!important}

  .search-section{padding:7px 9px 5px!important}
  .search-bar{
    height:46px!important;min-height:46px!important;
    display:grid!important;grid-template-columns:1fr 40px 40px!important;
    border-radius:999px!important;padding:3px!important
  }
  .search-location{grid-column:1!important;padding:2px 10px!important}
  .search-cell:not(.search-location),.more-filter-btn{display:none!important}
  .voice-btn,.search-submit{width:38px!important;height:38px!important}

  .category-shell{
    min-height:60px!important;height:60px!important;padding:3px 7px!important;
    gap:4px!important;flex-wrap:nowrap!important
  }
  .category-mode{
    flex:0 0 auto!important;width:126px!important;height:36px!important;
    display:grid!important;grid-template-columns:1fr 1fr 1fr!important;padding:2px!important
  }
  .category-mode button{height:30px!important;padding:0 4px!important;font-size:9px!important}
  .selected-category-rail{flex:0 0 auto!important;width:auto!important;overflow-x:auto!important}
  .category-scroll{
    flex:1 1 auto!important;width:auto!important;order:initial!important;
    overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important
  }
  .category-scroll::-webkit-scrollbar{display:none!important}
  .category-chip{
    width:62px!important;min-width:62px!important;height:54px!important;
    border:0!important;background:transparent!important;display:flex!important;
    flex-direction:column!important;justify-content:center!important;align-items:center!important;
    gap:2px!important;padding:2px!important;font-size:8px!important
  }
  .category-icon{background:transparent!important;width:auto!important;height:23px!important;font-size:22px!important}
  .drag-handle,.priority-number{display:none!important}

  .result-toolbar{min-height:46px!important;padding:5px 9px!important}
  .result-toolbar strong{font-size:13px!important}
  .mobile-view-switch{display:flex!important}

  .workspace{height:calc(100vh - 213px)!important;display:block!important;position:relative!important}
  .workspace.mobile-list .map-pane{display:none!important}
  .workspace.mobile-map .list-pane{display:none!important}
  .list-pane,.map-pane{height:100%!important}
  .list-pane{overflow-y:auto!important}
  .property-list{padding:9px 9px 72px!important}
  .property-grid{grid-template-columns:1fr!important;gap:18px!important}
  .card-media{width:100%!important;aspect-ratio:4/3!important;height:auto!important;border-radius:16px!important}
  .workspace.mobile-map .map-pane{
    display:block!important;position:absolute!important;inset:8px 8px 10px!important;
    margin:0!important;border-radius:20px!important;overflow:hidden!important
  }
}
/* REH_V2_AIRBNB_UI_V2_END */

/* REH_V2_UI_V3_BEGIN */

/* Search: clean segmented Airbnb-style pill */
@media (min-width:801px){
  .search-section{padding:8px 20px 7px!important}
  .search-bar{
    width:min(1080px,calc(100vw - 180px))!important;
    max-width:none!important;height:50px!important;min-height:50px!important;
    padding:4px!important;border:1px solid #e1e5e8!important;border-radius:999px!important;
    box-shadow:0 4px 18px rgba(15,39,66,.09)!important;background:#fff!important;overflow:visible!important
  }
  .search-cell{
    height:42px!important;min-width:126px!important;padding:4px 15px!important;
    border:0!important;border-right:1px solid #e7eaed!important;background:transparent!important
  }
  .search-location{min-width:340px!important;flex:1!important}
  .cell-label{font-size:9px!important;line-height:1!important;margin:0 0 3px!important;color:#102a47!important}
  .search-cell input,.search-cell select{
    width:100%!important;border:0!important;outline:0!important;box-shadow:none!important;
    border-radius:0!important;background-color:transparent!important;font-size:12px!important;
    line-height:18px!important;padding:0!important
  }
  .search-cell select{
    appearance:none!important;-webkit-appearance:none!important;padding-right:22px!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5' fill='none' stroke='%23102a47' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    background-repeat:no-repeat!important;background-position:right center!important
  }
  .search-location input{font-size:13px!important}
  .voice-btn{display:none!important}
  .more-filter-btn{
    width:42px!important;height:42px!important;min-width:42px!important;margin:0 4px!important;
    padding:0!important;border:0!important;border-radius:50%!important;display:grid!important;
    place-items:center!important;background:#fff!important;color:#102a47!important;font-size:0!important
  }
  .more-filter-btn:hover{background:#f4f6f7!important}
  .more-filter-btn .material-symbols-rounded{font-size:22px!important}
  .search-submit{
    width:42px!important;height:42px!important;min-width:42px!important;margin:0!important;
    border-radius:50%!important;font-size:21px!important
  }
}

/* Category rail + arrows */
.category-shell{position:relative!important}
.category-scroll-arrow{
  flex:0 0 auto;width:34px;height:34px;border:1px solid #dfe4e8;border-radius:50%;
  background:#fff;color:#102a47;display:grid;place-items:center;padding:0;
  box-shadow:0 2px 8px rgba(13,34,57,.08);z-index:5
}
.category-scroll-arrow .material-symbols-rounded{font-size:20px}
.category-scroll-arrow:disabled{opacity:.3;cursor:default;box-shadow:none}
@media (max-width:800px){
  .category-scroll-arrow{width:30px;height:30px}
  .category-scroll-arrow.left{display:none}
}
.category-icon.material-symbols-rounded{
  font-family:"Material Symbols Rounded"!important;font-weight:400!important;font-style:normal!important;
  font-size:24px!important;line-height:1!important;letter-spacing:normal!important;text-transform:none!important;
  white-space:nowrap!important;word-wrap:normal!important;direction:ltr!important;
  -webkit-font-feature-settings:"liga"!important;-webkit-font-smoothing:antialiased!important;font-feature-settings:"liga"!important
}

/* Listing image controls */
.media-arrow{
  width:36px!important;height:36px!important;padding:0!important;border-radius:50%!important;
  align-items:center!important;justify-content:center!important;line-height:1!important;font-size:23px!important
}
.property-card:hover .media-arrow{display:flex!important}
@media (max-width:800px){.media-arrow{display:flex!important}}

/* Map controls */
.map-pane .esri-ui-top-left{left:auto!important;right:14px!important;top:58px!important}
.map-pane .esri-zoom{
  overflow:hidden!important;border-radius:18px!important;
  box-shadow:0 3px 14px rgba(13,34,57,.16)!important
}
.map-pane .esri-widget--button{
  width:42px!important;height:42px!important;background:#fff!important;color:#111!important;border:0!important
}
.map-pane .esri-widget--button:hover{background:#f6f6f6!important}
.map-reset-area{
  top:14px!important;padding:10px 16px!important;border:1px solid #e0e4e7!important;
  border-radius:999px!important;background:#fff!important;
  box-shadow:0 3px 14px rgba(13,34,57,.13)!important;font-size:12px!important
}
.reh-map-fullscreen{
  position:absolute;top:14px;right:14px;z-index:12;width:42px;height:42px;display:grid;place-items:center;
  border:0;border-radius:50%;background:#fff;color:#111;box-shadow:0 3px 14px rgba(13,34,57,.16)
}
.reh-map-fullscreen:hover{background:#f6f6f6}
.reh-map-fullscreen .material-symbols-rounded{font-size:21px}

/* 4:3 media remains authoritative */
.card-media{aspect-ratio:4/3!important;height:auto!important}
.card-media img{width:100%!important;height:100%!important;object-fit:cover!important}

/* REH_V2_UI_V3_END */


/* REH_MAP_REFINEMENT_V1 */
.reh-map-v1{isolation:isolate;background:#e8eee6;font-family:Arial,sans-serif;color:#18334b}
.reh-map-v1 .reh-pins{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2}
.reh-map-v1 button{font-family:inherit;cursor:pointer;touch-action:manipulation}
.reh-map-v1 button:focus-visible,.reh-map-v1 a:focus-visible{outline:3px solid #1981e6;outline-offset:3px}
.reh-map-v1 .reh-price-pin{pointer-events:auto;position:absolute;transform:translate(-50%,calc(-100% - 7px));height:32px;padding:0 12px;border:1px solid #c9d2db;border-radius:18px;background:#fff;color:#18334b;font-size:12px;font-weight:700;line-height:30px;white-space:nowrap;box-shadow:0 2px 5px #142f4930}
.reh-map-v1 .reh-price-pin:after{content:'';position:absolute;left:calc(50% - 4px);bottom:-5px;width:8px;height:8px;transform:rotate(45deg);background:inherit;border-right:1px solid #c9d2db;border-bottom:1px solid #c9d2db}
.reh-map-v1 .reh-price-pin.is-selected,.reh-map-v1 .reh-price-pin.is-hovered,.reh-map-v1 .reh-price-pin:hover{background:#18334b;color:#fff;border-color:#18334b;z-index:5;box-shadow:0 3px 10px #142f4955}
.reh-map-v1 .reh-map-controls{position:absolute;right:16px;top:16px;z-index:6;display:grid;gap:12px}
.reh-map-v1 .reh-map-controls button{display:grid;place-items:center;width:42px;height:42px;padding:0;background:white;border:0;border-radius:12px;color:#263d50;font-size:25px;line-height:1;box-shadow:0 2px 8px #18334b26}
.reh-map-v1 .reh-map-controls button:hover{background:#eff4f8}
.reh-map-v1 .reh-map-zoom{border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #18334b26}
.reh-map-v1 .reh-map-zoom button{border-radius:0;box-shadow:none}.reh-map-v1 .reh-map-zoom button+button{border-top:1px solid #e5e9ed}
.reh-map-v1 .reh-map-layers{position:absolute;left:16px;top:16px;display:flex;padding:3px;border-radius:12px;background:#fff;box-shadow:0 2px 8px #18334b26;z-index:6}
.reh-map-v1 .reh-map-layers button{border:0;background:#fff;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:700}
.reh-map-v1 .reh-map-layers button[aria-pressed=true]{background:#18334b;color:white}
.reh-map-v1 .reh-map-notice{position:absolute;bottom:26px;right:12px;padding:6px 10px;border-radius:8px;background:#ffffffeb;font-size:11px;pointer-events:none;z-index:3}
.reh-map-v1 .reh-map-card{position:absolute;left:16px;bottom:48px;width:280px;max-width:calc(100% - 32px);max-height:calc(100% - 110px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 8px 30px #132e4940;z-index:7;border:1px solid #dce3e8}
.reh-map-v1 .reh-map-card[hidden]{display:none!important}
.reh-map-v1 .reh-card-photo{aspect-ratio:4/3;position:relative;background:#eef2f4;display:grid;place-items:center;overflow:hidden;font-size:13px}
.reh-map-v1 .reh-card-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.reh-map-v1 .reh-card-photo button{position:absolute;display:grid;place-items:center;border:0;border-radius:50%;width:32px;height:32px;padding:0;background:#fffffff2;color:#18334b;font-size:24px;line-height:1;box-shadow:0 2px 5px #0002}
.reh-map-v1 .reh-card-close{top:10px;right:10px}.reh-map-v1 .reh-photo-prev{left:10px;top:calc(50% - 16px)}.reh-map-v1 .reh-photo-next{right:10px;top:calc(50% - 16px)}
.reh-map-v1 .reh-photo-count{position:absolute;right:10px;bottom:10px;background:#18334bd9;color:#fff;border-radius:6px;padding:4px 7px;font-size:11px}
.reh-map-v1 .reh-card-copy{padding:14px 16px}.reh-map-v1 .reh-card-price{font-size:21px;font-weight:750}.reh-map-v1 .reh-card-copy h3{font-size:14px;line-height:1.4;margin:6px 0}.reh-map-v1 .reh-card-spec{font-size:12px;color:#516475;margin:6px 0}.reh-map-v1 .reh-card-agent{font-size:11px;color:#677b8d;margin:7px 0}
.reh-map-v1 .reh-card-link{display:block;margin-top:12px;padding:10px;text-align:center;background:#18334b;color:white;border-radius:9px;text-decoration:none;font-size:13px;font-weight:700}
.reh-map-v1 .reh-card-nearby{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:12px}.reh-map-v1 .reh-card-nearby button{border:1px solid #dbe2e8;background:#fff;border-radius:8px;width:32px;height:32px;font-size:22px}
.map-wrap:has(.reh-map-v1)>.reh-map-fullscreen,.map-wrap:has(.reh-map-v1)>.mobile-map-preview,.map-wrap:has(.reh-map-v1)>.map-reset-area{display:none!important}
.reh-map-v1.reh-map-expanded{width:100vw!important;height:100dvh!important;border-radius:0!important}.reh-map-v1.reh-map-expanded{position:fixed!important;inset:0!important;z-index:9999!important}
@media(max-width:600px){.reh-map-v1 .reh-map-card{left:10px;bottom:40px;width:260px;max-height:calc(100% - 100px)}.reh-map-v1 .reh-map-controls{right:10px;top:12px}.reh-map-v1 .reh-map-layers{left:10px;top:12px}.reh-map-v1 .reh-map-notice{font-size:10px}.reh-map-v1 .reh-card-copy{padding:10px 13px}}

/* REH refinement V2 — shared source/staging theme and interaction styles */
:root{--reh-surface:#fff;--reh-page:#fff;--reh-soft:#f4f7fa;--reh-ink:#102a47;--reh-muted:#607489;--reh-border:#dbe3eb;--reh-accent:#102a47;--reh-on-accent:#fff;--reh-selected:#effaf5;--reh-shadow:0 3px 14px #102a471a}
:root[data-reh-theme=dark]{--reh-surface:#1c2837;--reh-page:#111c29;--reh-soft:#253446;--reh-ink:#edf3fa;--reh-muted:#acbed0;--reh-border:#3c4d60;--reh-accent:#d8e9fa;--reh-on-accent:#102a47;--reh-selected:#163e36;--reh-shadow:0 3px 16px #0005;--ink:#edf3fa;--ink2:#c7d6e6;--muted:#acbed0;--line:#3c4d60;--soft:#253446;--white:#1c2837}
body,.app-shell,.discovery-page,.list-pane,.property-list{background:var(--reh-page)!important;color:var(--reh-ink)}
.top-nav,.search-section,.category-shell,.result-toolbar,.search-bar,.more-filter-panel,.account-panel,.property-card{background:var(--reh-surface)!important;color:var(--reh-ink)!important;border-color:var(--reh-border)!important}
.top-nav{display:flex!important;gap:12px!important}.brand-wrap{margin-right:auto}.account-menu{margin-left:0}.top-nav>.account-pill{margin-left:0!important}
.reh-theme-toggle{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:8px;border:1px solid var(--reh-border);border-radius:50%;background:var(--reh-surface);color:var(--reh-ink);cursor:pointer}
.reh-theme-toggle:hover{background:var(--reh-soft)}.reh-theme-toggle svg{width:20px;height:20px}.reh-theme-toggle .reh-sun{display:none}[data-reh-theme=dark] .reh-theme-toggle .reh-moon{display:none}[data-reh-theme=dark] .reh-theme-toggle .reh-sun{display:block}
[data-reh-theme=dark] .brand-logo{filter:brightness(0) invert(1)}
.market-nav button,.transaction-nav button,.account-pill,.toolbar-actions select,.soft-btn,.category-mode button,.mobile-view-switch button{background:var(--reh-surface)!important;color:var(--reh-ink)!important;border-color:var(--reh-border)!important}
.market-nav button.active,.transaction-nav button.active,.category-mode button.active,.mobile-view-switch button.active{background:var(--reh-accent)!important;color:var(--reh-on-accent)!important}
.search-cell{border-color:var(--reh-border)!important}.search-cell input,.search-cell select{color:var(--reh-ink)!important;background:transparent!important}.search-cell input::placeholder{color:var(--reh-muted)}select option{background:var(--reh-surface);color:var(--reh-ink)}
.more-filter-panel input,.more-filter-panel select,.account-panel input{background:var(--reh-soft)!important;color:var(--reh-ink)!important;border-color:var(--reh-border)!important}
.more-filter-panel button,.account-login-submit,.empty-state button{background:var(--reh-accent)!important;color:var(--reh-on-accent)!important}
.search-bar .search-submit{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;flex:0 0 44px!important;align-self:center!important;padding:0!important;margin:0 3px!important;border:0!important;border-radius:50%!important;background:var(--reh-accent)!important;color:var(--reh-on-accent)!important;box-shadow:none!important;line-height:0!important;font-size:0!important}
.search-bar .search-submit svg{width:21px;height:21px;display:block}.search-bar .search-submit:hover{opacity:.86}
.search-bar .more-filter-btn{display:grid!important;place-items:center!important;align-self:center!important;width:42px!important;height:42px!important;min-width:42px!important;padding:10px!important;border:1px solid transparent!important;border-radius:50%!important;background:var(--reh-surface)!important;color:var(--reh-ink)!important;font-size:0!important;line-height:0!important;position:relative}
.search-bar .more-filter-btn svg{display:block;width:21px;height:21px}.search-bar .more-filter-btn:hover{background:var(--reh-soft)!important}.search-bar .more-filter-btn.active{background:var(--reh-selected)!important;border-color:#16a36f!important;color:var(--reh-ink)!important;box-shadow:0 0 0 2px #16a36f20!important;--reh-surface:var(--reh-selected)}
.search-bar .more-filter-btn.active:after{content:'';position:absolute;right:1px;top:1px;width:7px;height:7px;background:#16a36f;border:2px solid var(--reh-surface);border-radius:50%}
.category-chip{background:var(--reh-surface)!important;color:var(--reh-ink)!important}.category-chip.selected{background:var(--reh-selected)!important;border-color:#16a36f!important;cursor:grab;user-select:none}.category-chip.selected:active{cursor:grabbing}.category-chip .drag-handle{display:none!important}
.category-chip .category-icon{width:28px!important;height:28px!important;min-height:28px!important;display:grid!important;place-items:center!important;border-radius:0!important;background:transparent!important;font-size:0!important;color:inherit!important;line-height:1!important}.category-icon svg{display:block;width:27px;height:27px;fill:currentColor}.selected-category-rail{max-width:48%;overflow-x:auto;scrollbar-width:thin}.selected-category-rail:empty{display:none}.category-mode{border-color:var(--reh-border)!important}.category-mode .reset{color:var(--reh-muted)!important}.category-chip.drag-ghost{opacity:.3!important}
.category-scroll-prev,.category-scroll-next,.category-arrow{background:var(--reh-surface)!important;color:var(--reh-ink)!important;border-color:var(--reh-border)!important}.category-scroll-prev svg,.category-scroll-next svg,.category-arrow svg{width:20px;height:20px}
button:focus-visible,a:focus-visible{outline:3px solid #429de9!important;outline-offset:3px}.search-cell:focus-within{box-shadow:inset 0 -2px #429de9}
.result-sub,.spec-row,.agent-row{color:var(--reh-muted)!important}.match-badge{color:#102a47!important}.account-avatar,.account-panel-avatar{background:var(--reh-accent)!important;color:var(--reh-on-accent)!important}
.reh-map-v1{background:var(--reh-soft);color:var(--reh-ink)}
.reh-map-v1 .reh-map-controls button,.reh-map-v1 .reh-map-layers,.reh-map-v1 .reh-map-layers button,.reh-map-v1 .reh-map-card,.reh-map-v1 .reh-card-nearby button{background:var(--reh-surface);color:var(--reh-ink);border-color:var(--reh-border)}
.reh-map-v1 .reh-map-controls button:hover,.reh-map-v1 .reh-map-layers button:hover{background:var(--reh-soft)}.reh-map-v1 .reh-map-layers button[aria-pressed=true],.reh-map-v1 .reh-card-link{background:var(--reh-accent);color:var(--reh-on-accent)}
.reh-map-v1 .reh-card-spec,.reh-map-v1 .reh-card-agent{color:var(--reh-muted)}.reh-map-v1 .reh-map-notice{background:var(--reh-surface);color:var(--reh-muted)}.reh-map-v1 .reh-price-pin{background:var(--reh-surface);color:var(--reh-ink);border-color:var(--reh-border)}.reh-map-v1 .reh-price-pin:after{border-color:var(--reh-border)}.reh-map-v1 .reh-price-pin:is(.is-selected,.is-hovered,:hover){background:var(--reh-accent);color:var(--reh-on-accent);border-color:var(--reh-accent)}
.reh-map-v1 .esri-attribution{background:var(--reh-surface)!important;color:var(--reh-muted)!important;font-size:10px!important;line-height:16px!important;padding:1px 6px!important;box-shadow:none!important}.reh-map-v1 .esri-attribution a{color:inherit!important}
.reh-map-v1.reh-map-expanded{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;border-radius:0!important;z-index:9999!important}
@media(max-width:800px){.top-nav{height:auto!important;min-height:62px;flex-wrap:wrap;gap:8px!important;padding:10px 12px!important}.brand-wrap{flex:1}.brand-logo{width:145px}.market-nav{order:5;height:34px!important;margin:0!important}.transaction-nav{display:flex!important;order:6;height:34px!important}.market-nav button,.transaction-nav button{padding:0 10px!important}.reh-theme-toggle{width:34px;height:34px;flex-basis:34px;padding:6px}.search-bar{grid-template-columns:minmax(0,1fr) 44px 48px!important}.search-bar .voice-btn{display:none!important}.search-bar .search-submit{margin:0!important}.selected-category-rail{max-width:100%;width:100%}.category-mode{width:100%}.more-filter-panel{grid-template-columns:1fr 1fr}.reh-map-v1 .reh-map-notice{max-width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.category-scroll-arrow{background:var(--reh-surface)!important;color:var(--reh-ink)!important;border-color:var(--reh-border)!important}.category-scroll-arrow svg{width:20px;height:20px}
[data-reh-theme=dark] .card-media,[data-reh-theme=dark] .reh-card-photo{background:var(--reh-soft)!important;color:var(--reh-muted)!important}
@media(max-width:800px){.market-nav{display:flex!important}.market-nav button,.transaction-nav button{height:32px!important;min-height:32px!important;border-radius:999px!important;font-size:11px!important}.market-nav button:after,.transaction-nav button:after{display:none!important}.category-shell{flex-wrap:wrap!important;height:auto!important;gap:5px!important;padding:7px 9px!important}.category-mode{width:100%!important;flex-basis:100%!important}.selected-category-rail{width:100%!important;max-width:100%!important}.selected-category-rail .priority-number{display:grid!important;width:16px!important;height:16px!important}.category-scroll{min-width:0!important}.category-scroll-arrow{flex:0 0 28px}.top-nav .account-menu{margin-left:0!important}}
.cell-label,.price-row strong,.card-copy h3{color:var(--reh-ink)!important}.category-mode{background:var(--reh-surface)!important}.workspace,.map-pane{background:var(--reh-page)!important}
@media(max-width:800px){.category-shell{display:grid!important;grid-template-columns:minmax(0,1fr) 30px!important}.category-mode,.selected-category-rail{grid-column:1/-1!important;margin:0!important}.category-scroll{grid-column:1!important;width:100%!important}.category-scroll-arrow.right{grid-column:2!important}}

/* REH V3 — neutral charcoal, readable controls, shared media gallery */
:root[data-reh-theme=dark]{--reh-surface:#242424;--reh-page:#181818;--reh-soft:#303030;--reh-ink:#f2f2f2;--reh-muted:#b5b5b5;--reh-border:#474747;--reh-accent:#eeeeee;--reh-on-accent:#202020;--reh-selected:#263c32;--reh-shadow:0 3px 16px #0006;--ink:#f2f2f2;--ink2:#d4d4d4;--muted:#b5b5b5;--line:#474747;--soft:#303030;--white:#242424}
[data-reh-theme=dark] .top-nav,[data-reh-theme=dark] .search-bar,[data-reh-theme=dark] .category-mode,[data-reh-theme=dark] .more-filter-panel,[data-reh-theme=dark] .property-card,[data-reh-theme=dark] .result-toolbar{box-shadow:none!important;border-color:var(--reh-border)!important}
[data-reh-theme=dark] .category-chip:hover{background:#353535!important;color:#fff!important}[data-reh-theme=dark] .category-chip.selected:hover{background:#304b3c!important}
[data-reh-theme=dark] .heart{background:#292929dd!important;color:#fff!important}[data-reh-theme=dark] .property-card.selected{outline-color:#629378!important}
[data-reh-theme=dark] .reh-card-photo button,[data-reh-theme=dark] .media-arrow{background:#303030ee!important;color:#fff!important}
.card-media .reh-card-gallery-launch{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;justify-content:center;min-height:32px;padding:7px 10px;border:1px solid #ffffff50;border-radius:9px;background:#1d1d1dd9;color:#fff;font-size:11px;font-weight:600;cursor:pointer;z-index:3;box-shadow:0 2px 7px #0003}
.card-media .reh-video-cover{width:100%;height:100%;display:grid;place-content:center;gap:8px;background:var(--reh-soft);color:var(--reh-ink);text-align:center;border:0;cursor:pointer}.reh-video-cover svg{width:48px;height:48px;justify-self:center;fill:currentColor}
.card-media>img{cursor:zoom-in}.card-copy h3 a{color:inherit;text-decoration:none}.card-copy h3 a:hover{text-decoration:underline}
.reh-map-v1 .esri-attribution{left:10px!important;right:auto!important;bottom:8px!important;width:fit-content!important;max-width:calc(100% - 20px)!important;padding:3px 7px!important;border:1px solid var(--reh-border)!important;border-radius:7px!important;box-shadow:none!important;background:var(--reh-surface)!important;color:var(--reh-muted)!important;font-size:11px!important;line-height:16px!important;gap:7px!important}
.reh-map-v1 .esri-attribution__sources{white-space:normal!important;max-width:none!important}.reh-map-v1 .esri-attribution__powered-by{white-space:nowrap!important}.reh-map-v1 .reh-map-notice{bottom:45px;max-width:calc(100% - 24px)}
.property-page,.property-detail-shell{background:var(--reh-page)!important;color:var(--reh-ink)!important}.property-page-header{max-width:1180px;margin:auto;padding:18px 28px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--reh-border)}.property-page-header .reh-theme-toggle{margin-left:auto}.property-page-header a{color:var(--reh-ink);text-decoration:none;font-weight:700}
.property-detail-shell{max-width:1180px;margin:auto;padding:28px}.property-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.property-media-grid button{position:relative;aspect-ratio:4/3;border:1px solid var(--reh-border);border-radius:14px;background:var(--reh-soft);color:var(--reh-ink);padding:0;overflow:hidden;cursor:zoom-in}.property-media-grid img{width:100%;height:100%;object-fit:cover}.property-media-grid button span{position:absolute;bottom:8px;right:8px;padding:5px 8px;border-radius:6px;background:#222d;color:#fff;font-size:11px}.property-detail-hero{position:relative;display:block;width:100%;padding:0;border:1px solid var(--reh-border);background:var(--reh-soft);color:var(--reh-ink);cursor:zoom-in}.property-detail-hero .gallery-caption{position:absolute;bottom:16px;right:16px;border-radius:9px;background:#222e;color:#fff;padding:10px 14px;font-size:13px}.property-description{white-space:pre-wrap;line-height:1.75;max-width:800px}.property-detail-section{padding:20px 0;border-top:1px solid var(--reh-border)}
.reh-gallery{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:0;border:0;background:#151515;color:#eee;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;z-index:20000;overscroll-behavior:contain;font-family:system-ui,sans-serif}.reh-gallery:not([open]){display:none}.reh-gallery::backdrop{background:#151515}.reh-gallery-head{display:flex;align-items:center;gap:20px;min-height:64px;padding:10px 24px;border-bottom:1px solid #444}.reh-gallery-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.reh-gallery button{font:inherit;cursor:pointer;color:inherit}.reh-gallery-head>button{background:#303030;border:1px solid #555;border-radius:50%;width:42px;height:42px;font-size:29px;line-height:1;flex-shrink:0}.reh-gallery-property-link{color:#ddd;font-size:13px;text-decoration:none}.reh-gallery-stage{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;min-height:0;align-items:stretch;padding:18px 12px;gap:10px}.reh-gallery-content{display:grid;place-items:center;min-height:0;min-width:0;overflow:hidden}.reh-gallery-content>img,.reh-gallery-content>video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.reh-gallery-content>iframe{width:100%;height:100%;border:0;max-height:100%}.reh-gallery-stage>button{align-self:center;border:1px solid #555;border-radius:50%;width:46px;height:46px;background:#303030;font-size:36px;padding:0;justify-self:center}.reh-gallery-stage>button:disabled{opacity:.35;cursor:default}.reh-gallery-status{text-align:center;color:#bbb;margin:4px 0 12px;font-size:12px}.reh-gallery-thumbs{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:4px 20px 18px;scrollbar-width:thin}.reh-gallery-thumbs button{position:relative;flex:0 0 92px;height:68px;border:2px solid transparent;border-radius:8px;padding:0;background:#303030;overflow:hidden;font-size:12px}.reh-gallery-thumbs button[aria-current=true]{border-color:#fff}.reh-gallery-thumbs img{width:100%;height:100%;object-fit:cover}.reh-gallery-number{position:absolute;bottom:3px;right:3px;background:#222d;padding:2px 4px;border-radius:3px;font-size:10px}
@media(max-width:600px){.reh-gallery-head{padding:8px 12px;gap:10px}.reh-gallery-title{font-size:12px}.reh-gallery-property-link{display:none}.reh-gallery-stage{grid-template-columns:32px minmax(0,1fr) 32px;gap:2px;padding:8px 2px}.reh-gallery-stage>button{width:30px;height:38px;border-radius:8px;font-size:30px}.reh-gallery-thumbs{padding:4px 10px 14px}.reh-gallery-thumbs button{flex-basis:74px;height:55px}.property-page-header{padding:14px}.property-detail-shell{padding:14px}.property-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reh-map-v1 .esri-attribution{font-size:10px!important;line-height:14px!important}.reh-map-v1 .reh-map-notice{bottom:60px}}

/* REH approved desktop design V4 */
#reh-v2-app .search-bar{display:flex!important}
#reh-v2-app .category-shell{height:auto!important;overflow:visible!important}
#reh-v2-app .category-mode{width:auto!important;min-width:180px!important;overflow:visible!important}
#reh-v2-app .category-chip span:last-child:not(.priority-number){max-width:none!important;overflow:visible!important;font-size:10px!important}
#reh-v2-app .category-chip{width:116px!important;flex-shrink:0!important}
#reh-v2-app .card-media{aspect-ratio:16/10!important}
#reh-v2-app .more-filter-btn.active:after{display:none!important}
#reh-v2-app{font-family:Arial,Helvetica,sans-serif;font-size:14px}
#reh-v2-app .top-nav{display:flex!important;height:68px!important;gap:24px!important;padding:0 24px!important}
#reh-v2-app .top-nav>.account-pill,#reh-v2-app .top-nav>.account-menu{order:-2;margin:0!important;flex-shrink:0}
#reh-v2-app .brand-wrap{order:-1;flex:0 0 auto!important;margin:0!important}
#reh-v2-app .brand-logo{width:205px!important;max-height:40px!important}
#reh-v2-app .reh-theme-toggle{margin-left:auto!important;flex-shrink:0}
#reh-v2-app .account-pill{height:44px;font-size:14px!important;padding:5px 12px 5px 6px!important;gap:10px!important}
#reh-v2-app .account-panel{left:0;right:auto}
#reh-v2-app .market-nav,#reh-v2-app .transaction-nav{gap:6px!important;margin:0!important}
#reh-v2-app .market-nav button,#reh-v2-app .transaction-nav button{font-size:13px!important;height:40px!important;padding:0 17px!important}
#reh-v2-app .search-section{padding:14px 24px 6px!important}
#reh-v2-app .search-bar{max-width:1320px!important;min-height:64px!important;border-radius:18px!important;padding:5px!important;gap:6px!important}
#reh-v2-app .search-cell{min-width:120px!important;padding:4px 16px!important}
#reh-v2-app .search-location{min-width:230px!important;flex:1!important}
#reh-v2-app .cell-label{font-size:11px!important;line-height:1.4!important}
#reh-v2-app .search-cell input,#reh-v2-app .search-cell select{font-size:14px!important;line-height:1.6!important;width:100%}
#reh-v2-app .search-submit,#reh-v2-app .more-filter-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:auto!important;min-width:112px!important;height:50px!important;align-self:center;border-radius:14px!important;font-size:14px!important;font-weight:700!important;padding:0 16px!important;position:relative}
#reh-v2-app .search-submit svg,#reh-v2-app .more-filter-btn svg{width:22px!important;height:22px!important;flex-shrink:0}
#reh-v2-app .more-filter-btn{border:1px solid var(--reh-border)!important}
#reh-v2-app .more-filter-btn.active{box-shadow:inset 0 0 0 1px #16a36f!important}
.reh-filter-count{display:grid;place-items:center;background:#0b9f70;color:white;width:20px;height:20px;border-radius:50%;font-size:11px;position:absolute;right:4px;top:-4px}
#reh-v2-app .voice-btn{display:none!important}
#reh-v2-app .category-shell{padding:10px 24px!important;gap:12px!important;min-height:86px!important}
#reh-v2-app .category-mode button{font-size:12px!important;min-height:36px;padding:8px 12px!important}
#reh-v2-app .category-chip{position:relative;min-width:106px!important;height:66px!important;padding:8px 14px 6px 23px!important;border-radius:12px!important;font-size:11px!important;gap:5px!important}
#reh-v2-app .category-icon,#reh-v2-app .category-icon svg{width:27px!important;height:27px!important}
#reh-v2-app .category-chip.selected .drag-handle{display:block!important;position:absolute;left:6px;top:24px;letter-spacing:-3px;font-size:16px;color:var(--reh-muted);opacity:.65}
#reh-v2-app .priority-number{width:18px!important;height:18px!important;font-size:10px!important}
#reh-v2-app .result-toolbar{min-height:54px!important;padding:8px 24px!important}
#reh-v2-app .result-toolbar strong{font-size:17px!important}
#reh-v2-app .result-sub{font-size:12px!important}
#reh-v2-app .toolbar-actions select,#reh-v2-app .soft-btn{font-size:13px!important;height:38px!important;padding:0 15px!important;border-radius:12px!important}
#reh-v2-app .workspace{grid-template-columns:minmax(0,49%) minmax(0,51%)!important}
#reh-v2-app .property-list{padding:14px!important}
#reh-v2-app .property-grid{gap:18px 16px!important}
#reh-v2-app .property-card{border:1px solid var(--reh-border)!important;border-radius:16px!important;box-shadow:0 2px 9px #00000006}
#reh-v2-app .card-media{height:auto!important;aspect-ratio:16/10;border-radius:14px!important}
#reh-v2-app .card-copy{padding:10px 12px 13px!important}
#reh-v2-app .price-row strong{font-size:17px!important;line-height:1.4!important}
#reh-v2-app .card-copy h3{font-size:13px!important;line-height:1.5!important;white-space:normal!important;margin:3px 0 8px!important;min-height:20px}
#reh-v2-app .spec-row{font-size:12px!important;gap:12px!important;line-height:1.6!important}
#reh-v2-app .agent-row{font-size:11px!important;line-height:1.5!important;margin-top:9px!important;color:var(--reh-muted)!important}
#reh-v2-app .heart{width:38px!important;height:38px!important}
#reh-v2-app .match-badge{font-size:11px!important;padding:8px 12px!important}
#reh-v2-app .reh-card-gallery-launch{font-size:11px!important;padding:7px 10px!important;border-radius:9px!important}
.reh-video-badge{position:absolute;bottom:12px;left:12px;background:#18232dde;color:white;border:0;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:700}
.reh-map-v1 .reh-map-card{border-radius:14px;box-shadow:0 8px 28px #0003}
.reh-map-v1 .reh-price-pin{font-size:13px;height:34px;line-height:32px;padding:0 13px;box-shadow:0 2px 6px #0002}
.reh-map-v1 .reh-map-controls button{border-radius:12px;width:42px;height:42px}
.reh-map-v1 .reh-map-layers{border-radius:13px;padding:4px}
.reh-map-v1 .reh-map-layers button{font-size:13px;padding:9px 13px;border-radius:9px}
[data-reh-theme=dark] #reh-v2-app .property-card{box-shadow:none}
@media(max-width:1100px){
 #reh-v2-app .top-nav{gap:12px!important;padding:0 16px!important}
 #reh-v2-app .brand-logo{width:170px!important}
 #reh-v2-app .market-nav button,#reh-v2-app .transaction-nav button{padding:0 10px!important}
 #reh-v2-app .search-cell{min-width:90px!important;padding:4px 10px!important}
 #reh-v2-app .search-location{min-width:160px!important}
 #reh-v2-app .category-shell{padding:10px 16px!important}
}
@media(max-width:760px){
 #reh-v2-app .top-nav{height:auto!important;min-height:100px;flex-wrap:wrap!important;gap:8px!important;padding:10px 12px!important}
 #reh-v2-app .account-name{display:none}
 #reh-v2-app .brand-logo{width:160px!important}
 #reh-v2-app .market-nav{order:2;flex:1!important}
 #reh-v2-app .transaction-nav{order:3}
 #reh-v2-app .search-section{padding:8px 12px!important}
 #reh-v2-app .search-bar{flex-wrap:wrap!important;border-radius:16px!important}
 #reh-v2-app .search-location{min-width:100%!important;border:0!important}
 #reh-v2-app .search-cell:not(.search-location){display:none!important}
 #reh-v2-app .more-filter-btn,#reh-v2-app .search-submit{flex:1;height:42px!important}
 #reh-v2-app .category-shell{padding:8px 12px!important;flex-wrap:wrap!important}
 #reh-v2-app .category-mode{width:100%}
 #reh-v2-app .category-chip{min-width:96px!important}
 #reh-v2-app .workspace{display:block!important}
 #reh-v2-app .property-grid{grid-template-columns:1fr!important}
 #reh-v2-app .result-toolbar{padding:8px 12px!important}
}

/* V5 functional surfaces; neutral colors inherit the approved desktop themes. */
#reh-v2-app .selected-category-rail{height:auto!important;min-height:74px!important;align-items:center!important;overflow-x:auto!important;overflow-y:hidden!important;padding-block:4px!important}
#reh-v2-app .category-mode{height:auto!important;min-height:44px!important;overflow:visible!important;align-self:center!important;padding:4px!important}
#reh-v2-app .category-mode button{min-height:36px!important}
#reh-v2-app .search-bar,#reh-v2-app .search-section{overflow:visible!important}
#reh-v2-app .search-section{position:relative;z-index:40}
#reh-v2-app .reh-location-field{position:relative;min-width:0}
#reh-v2-app .reh-location-entry{display:flex;align-items:center;min-width:0}
#reh-v2-app .reh-location-entry input{width:100%;min-width:0}
#reh-v2-app .reh-location-entry button{background:none;border:0;color:inherit;font-size:20px;padding:0 8px;min-width:30px}
.reh-location-dropdown,.reh-location-error{position:absolute;left:0;right:0;top:calc(100% + 14px);z-index:80;background:var(--reh-surface,#fff);color:var(--reh-ink,#102a47);border:1px solid var(--reh-border,#d9e1e8);border-radius:14px;box-shadow:0 12px 32px #0002;padding:8px;margin:0}
.reh-location-dropdown ul{padding:0;margin:0;list-style:none;max-height:300px;overflow:auto}
.reh-location-dropdown li{padding:13px 12px;border-radius:8px;cursor:pointer;line-height:1.45;font-size:14px}
.reh-location-dropdown li:hover,.reh-location-dropdown li.active{background:var(--reh-soft,#eef3f5)}
.reh-location-dropdown p{padding:8px;font-size:13px;margin:0}
.reh-location-error{font-size:12px;top:100%;color:#b33}
#reh-v2-app .heart.active{color:#fff!important;background:#b32948!important}
#reh-v2-app .reh-voice-button{display:flex!important;align-items:center;justify-content:center;background:transparent;border:1px solid var(--reh-border,#d9e1e8);color:inherit;border-radius:12px;min-width:42px;min-height:48px;padding:10px}
.reh-voice-button svg{width:20px;height:20px}
.reh-account-workspace,.reh-voice-dialog{color:var(--reh-ink,#102a47);background:var(--reh-surface,#fff);border:1px solid var(--reh-border,#d9e1e8);border-radius:24px;box-shadow:0 24px 90px #0004;width:min(920px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;overflow:auto}
.reh-account-workspace::backdrop,.reh-voice-dialog::backdrop{background:#0008;backdrop-filter:blur(4px)}
.reh-account-inner{padding:32px}.reh-account-inner>header,.reh-voice-dialog header{display:flex;justify-content:space-between;align-items:center;gap:16px}
.reh-account-workspace h1{font-size:28px;margin:6px 0 20px}.reh-account-workspace h2{font-size:22px}.reh-account-workspace p,.reh-voice-dialog p{line-height:1.6}
.reh-account-workspace button,.reh-voice-dialog button{cursor:pointer;color:inherit;background:transparent;border:1px solid var(--reh-border,#d9e1e8);border-radius:10px;padding:10px 16px;font:inherit;min-height:42px}
.reh-account-workspace button:disabled,.reh-voice-dialog button:disabled{opacity:.55;cursor:wait}
.reh-account-workspace a{color:inherit}.reh-account-workspace input,.reh-account-workspace select{color:inherit;background:transparent;border:1px solid var(--reh-border,#d9e1e8);border-radius:10px;padding:12px;font:inherit;min-width:0}
.reh-account-workspace label{display:grid;gap:8px}.reh-login,.reh-prefs{display:grid;gap:20px;max-width:500px}.reh-login h2,.reh-login p{margin:0}
.reh-account-workspace .reh-primary,.reh-voice-dialog .reh-primary,.reh-account-tabs button.active{background:var(--reh-ink,#102a47);color:var(--reh-surface,#fff);border-color:transparent}
.reh-account-tabs{display:flex;gap:8px;margin:4px 0 28px;overflow-x:auto}.reh-account-tabs button{white-space:nowrap}
.reh-account-workspace .reh-check{display:flex;align-items:center;gap:12px}.reh-check input{width:20px;height:20px;flex:none}
.reh-account-stats{display:flex;gap:16px;margin:24px 0}.reh-account-stats button{flex:1;display:grid;gap:8px;text-align:left;padding:24px}.reh-account-stats strong{font-size:28px}
.reh-save-search{display:flex;gap:10px;margin-bottom:24px}.reh-save-search input{flex:1}.reh-saved-search{display:flex;align-items:center;gap:12px;border-top:1px solid var(--reh-border,#d9e1e8);padding:18px 0}.reh-saved-search>div{flex:1;min-width:0;overflow-wrap:anywhere}.reh-saved-search p{font-size:13px;margin:6px 0}
.reh-favourite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.reh-favourite-grid article{border:1px solid var(--reh-border,#d9e1e8);border-radius:16px;overflow:hidden;padding-bottom:16px}.reh-favourite-grid a{display:grid;gap:12px;text-decoration:none}.reh-favourite-grid img{width:100%;aspect-ratio:16/10;object-fit:cover}.reh-favourite-grid strong,.reh-favourite-grid span{padding:0 16px}.reh-favourite-grid button{margin:16px 16px 0}
.reh-pagination{display:flex;gap:18px;align-items:center;justify-content:center;margin-top:24px}.reh-functional-error{color:#b32948;background:#b3294810;border-radius:8px;padding:12px}.reh-voice-dialog{width:min(520px,calc(100vw - 32px));padding:28px}.reh-muted{font-size:13px;opacity:.8}
:root[data-reh-theme="dark"] .reh-functional-error{color:#ff9dac}:root[data-reh-theme="dark"] .reh-location-dropdown li:hover,:root[data-reh-theme="dark"] .reh-location-dropdown li.active{background:#383838}
@media(max-width:640px){.reh-account-inner{padding:20px}.reh-account-workspace{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:16px}.reh-favourite-grid{grid-template-columns:1fr}.reh-account-tabs{gap:6px}.reh-account-tabs button{padding:8px}.reh-save-search,.reh-saved-search{flex-wrap:wrap}.reh-saved-search>div{flex-basis:100%}#reh-v2-app .reh-voice-button{min-height:42px}.reh-location-dropdown{min-width:min(320px,calc(100vw - 48px))}}

/* Selected suburb outline status, above map credits. */
.reh-suburb-boundary-status{position:absolute;bottom:48px;left:12px;z-index:8;max-width:calc(100% - 90px);display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:9px;background:var(--reh-surface,#fff);color:var(--reh-ink,#102a47);box-shadow:0 2px 9px #0002;font:12px/1.4 system-ui,sans-serif;pointer-events:auto}
.reh-suburb-boundary-status[hidden]{display:none}.reh-suburb-boundary-status button{border:0;background:transparent;color:inherit;font-size:20px;line-height:1;padding:2px 5px;cursor:pointer}

/* REH account V6: header order and responsive account workspace */
#reh-v2-app .top-nav>.brand-wrap{order:0!important}
#reh-v2-app .top-nav>.market-nav{order:1!important}
#reh-v2-app .top-nav>.transaction-nav{order:2!important}
#reh-v2-app .top-nav>.reh-theme-toggle{order:3!important;margin-left:0!important}
#reh-v2-app .top-nav>.account-pill{order:4!important;margin-left:auto!important;max-width:220px}
#reh-v2-app .account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reh-account-v6{width:min(1040px,calc(100vw - 48px));max-height:calc(100dvh - 48px);border-radius:22px;font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}
.reh-account-v6.reh-account-signin{width:min(460px,calc(100vw - 32px))}
.reh-account-v6::backdrop{background:#10182066;backdrop-filter:blur(2px)}
.reh-account-v6 .reh-account-inner{padding:28px}
.reh-account-v6 .reh-account-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.reh-account-v6 h1{font-size:26px;letter-spacing:-.5px;margin:3px 0 0}
.reh-account-v6 h2{font-size:22px;line-height:1.3;margin:0 0 12px;letter-spacing:-.3px}
.reh-account-v6 h3{font-size:15px;margin:0 0 8px}
.reh-account-v6 small{font-size:12px}
.reh-account-v6 .reh-close{padding:0;width:40px;min-height:40px;flex:none;font-size:22px;border-radius:50%}
.reh-account-v6 .reh-account-muted{opacity:.7;margin:0 0 22px}
.reh-account-v6 .reh-login{max-width:none;gap:18px}
.reh-account-v6 input:not([type=checkbox]),.reh-account-v6 select{width:100%;box-sizing:border-box;min-height:46px;background:var(--reh-surface);color:var(--reh-ink)}
.reh-account-v6 button{font-weight:600;transition:background .15s}
.reh-account-v6 button:hover:not(:disabled):not(.reh-primary):not(.active){background:var(--reh-soft)}
.reh-account-v6 :focus-visible{outline:2px solid #10a57a;outline-offset:3px}
.reh-account-v6 .reh-password-field{display:flex;align-items:center;border:1px solid var(--reh-border);border-radius:10px;overflow:hidden}
.reh-account-v6 .reh-password-field input{border:0;flex:1;width:0}
.reh-account-v6 .reh-password-field button{border:0;background:transparent;padding:8px 12px}
.reh-account-v6 .reh-account-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;min-height:440px}
.reh-account-v6 .reh-account-sidebar{border-right:1px solid var(--reh-border);padding-right:20px;display:flex;flex-direction:column;gap:20px}
.reh-account-v6 .reh-account-identity{display:flex;align-items:center;gap:10px;min-width:0}
.reh-account-v6 .reh-account-identity>div{min-width:0;overflow-wrap:anywhere}
.reh-account-v6 .account-avatar{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:var(--reh-ink);color:var(--reh-surface)}
.reh-account-v6 .reh-account-identity small{display:block;opacity:.65}
.reh-account-v6 .reh-account-tabs{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;border:0}
.reh-account-v6 .reh-account-tabs button{display:flex;align-items:center;justify-content:space-between;text-align:left;border:0;padding:12px;white-space:nowrap}
.reh-account-v6 .reh-account-tabs span{font-size:12px;margin-left:8px;opacity:.7}
.reh-account-v6 .reh-signout{margin-top:auto}
.reh-account-v6 .reh-account-content{min-width:0}
.reh-account-v6 .reh-account-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.reh-account-v6 .reh-account-stats button{text-align:left;padding:18px;display:grid;gap:10px;background:var(--reh-soft)}
.reh-account-v6 .reh-account-stats strong{font-size:30px}
.reh-account-v6 .reh-account-box{padding:18px;border:1px solid var(--reh-border);border-radius:14px;margin:18px 0}
.reh-account-v6 .reh-account-box p{margin:6px 0 14px;overflow-wrap:anywhere}
.reh-account-v6 .reh-account-box>small{display:block;opacity:.7;margin-top:12px}
.reh-account-v6 .reh-prefs{max-width:none;gap:20px}
.reh-account-v6 .reh-check{align-items:flex-start}
.reh-account-v6 .reh-check small{display:block;opacity:.65;margin-top:4px}
.reh-account-v6 .reh-check input{margin:2px 0;accent-color:#10a57a}
.reh-account-v6 .reh-pref-save{display:flex;align-items:center;gap:14px}
.reh-account-v6 .reh-account-success{border-radius:10px;padding:12px 16px;background:var(--reh-soft);border-left:3px solid #10a57a}
.reh-account-v6 .reh-save-search{display:flex;gap:10px;align-items:center}
.reh-account-v6 .reh-save-search input{flex:1;min-width:0}.reh-account-v6 .reh-save-search button{flex:none}
.reh-account-v6 .reh-saved-search{display:flex;flex-wrap:wrap;gap:14px;align-items:center;border:1px solid var(--reh-border);border-radius:14px;padding:18px;margin:12px 0}
.reh-account-v6 .reh-saved-search>div:first-child{flex:1;min-width:160px;overflow-wrap:anywhere}
.reh-account-v6 .reh-saved-search p{font-size:13px;opacity:.7;margin:6px 0 0}
.reh-account-v6 .reh-row-actions{display:flex;gap:8px}
.reh-account-v6 .reh-delete-confirm{flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-top:12px;border-top:1px solid var(--reh-border)}
.reh-account-v6 .reh-account-empty{padding:36px 18px;text-align:center;border:1px dashed var(--reh-border);border-radius:14px;margin:20px 0}
.reh-account-v6 .reh-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.reh-account-v6 .reh-section-title h2{margin:0}
.reh-account-v6 .reh-favourite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.reh-account-v6 .reh-favourite-grid article{overflow:hidden;border:1px solid var(--reh-border);border-radius:14px;padding:0}
.reh-account-v6 .reh-favourite-grid a{display:block;text-decoration:none}
.reh-account-v6 .reh-favourite-grid img,.reh-account-v6 .reh-no-photo{width:100%;height:150px;object-fit:cover;background:var(--reh-soft);border-radius:0}
.reh-account-v6 .reh-no-photo{display:grid;place-items:center;opacity:.65}
.reh-account-v6 .reh-favourite-copy{padding:14px}
.reh-account-v6 .reh-favourite-copy p{font-size:13px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}
.reh-account-v6 .reh-favourite-copy span{font-size:12px;opacity:.7}
.reh-account-v6 .reh-favourite-grid article>button{margin:0 14px 14px;font-size:12px}
@media(max-width:800px){#reh-v2-app .top-nav{flex-wrap:wrap!important;height:auto!important;gap:8px!important;padding:10px 12px!important}#reh-v2-app .top-nav>.brand-wrap{flex:1 1 45%!important}#reh-v2-app .top-nav>.brand-wrap .brand-logo{width:170px!important}#reh-v2-app .top-nav>.account-pill{order:0!important;max-width:150px}#reh-v2-app .top-nav>.market-nav{margin-left:0!important}#reh-v2-app .top-nav>.market-nav button,#reh-v2-app .top-nav>.transaction-nav button{padding:0 9px!important;font-size:12px!important}#reh-v2-app .top-nav>.reh-theme-toggle{width:34px;flex-basis:34px}}
@media(max-width:700px){.reh-account-v6{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:16px}.reh-account-v6 .reh-account-inner{padding:20px}.reh-account-v6 .reh-account-layout{display:block;min-height:0}.reh-account-v6 .reh-account-sidebar{padding:0 0 18px;border-right:0;border-bottom:1px solid var(--reh-border);margin-bottom:22px;gap:14px}.reh-account-v6 .reh-account-tabs{flex-direction:row;flex-wrap:wrap;gap:4px}.reh-account-v6 .reh-account-tabs button{font-size:12px;padding:9px}.reh-account-v6 .reh-signout{align-self:flex-start}.reh-account-v6 .reh-account-stats{gap:10px}.reh-account-v6 .reh-account-stats button{padding:14px;font-size:12px}.reh-account-v6 .reh-favourite-grid{grid-template-columns:1fr}.reh-account-v6 .reh-save-search{flex-direction:column;align-items:stretch}.reh-account-v6 .reh-section-title h2{font-size:19px}}

/* REH_MOBILE_V7_START */
@media(max-width:800px){
 html,body{height:auto!important;min-height:100%;overflow:visible!important}
 #reh-v2-app{height:auto!important;min-height:100dvh;width:100%;min-width:0}
 #reh-v2-app .app-shell,#reh-v2-app .discovery-page{height:auto!important;min-height:0!important;overflow:visible!important;width:100%;min-width:0}
 #reh-v2-app .top-nav{display:grid!important;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr) 36px!important;grid-template-rows:44px 44px;gap:8px 6px!important;height:auto!important;min-height:0!important;padding:10px 12px!important;position:relative!important;align-items:center}
 #reh-v2-app .top-nav>.brand-wrap{grid-column:1/3;grid-row:1;order:0!important;min-width:0;width:min(170px,calc(100vw - 110px));justify-self:start}
 #reh-v2-app .top-nav>.brand-wrap .brand-logo{width:min(170px,100%)!important;max-height:34px!important}
 #reh-v2-app .top-nav>.account-pill{grid-column:2/4;grid-row:1;order:0!important;justify-self:end;margin:0!important;max-width:78px;height:44px;min-width:64px}
 #reh-v2-app .top-nav .account-name{display:none!important}
 #reh-v2-app .top-nav>.market-nav{grid-column:1;grid-row:2;order:0!important}
 #reh-v2-app .top-nav>.transaction-nav{grid-column:2;grid-row:2;order:0!important}
 #reh-v2-app .top-nav>.market-nav,#reh-v2-app .top-nav>.transaction-nav{display:flex!important;gap:2px!important;margin:0!important;min-width:0;height:44px!important;justify-content:space-between}
 #reh-v2-app .top-nav>.market-nav button,#reh-v2-app .top-nav>.transaction-nav button{height:44px!important;min-height:44px!important;padding:0 5px!important;font-size:11px!important;flex:1;white-space:nowrap;min-width:0}
 #reh-v2-app .top-nav>.reh-theme-toggle{grid-column:3;grid-row:2;order:0!important;margin:0!important;width:36px;height:44px;border-radius:12px;padding:7px}
 #reh-v2-app .search-section{padding:10px 12px!important;flex:none;position:relative;z-index:40}
 #reh-v2-app .search-bar{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:auto auto auto;gap:8px;height:auto!important;min-height:0!important;padding:10px!important;width:100%;max-width:none;align-items:stretch;border-radius:18px!important}
 #reh-v2-app .search-bar>.search-location{grid-column:1/-1!important;grid-row:1;min-width:0!important;width:100%!important;min-height:54px;padding:4px 2px!important;border:0!important}
 #reh-v2-app .search-bar>label.search-cell{display:flex!important;grid-column:span 2!important;grid-row:2;min-width:0!important;width:auto!important;padding:8px!important;border:1px solid var(--reh-border)!important;border-radius:10px;min-height:58px;overflow:hidden}
 #reh-v2-app .search-bar .cell-label{font-size:10px!important;line-height:1.3;white-space:nowrap}
 #reh-v2-app .search-bar input,#reh-v2-app .search-bar select{font-size:16px!important;max-width:100%;width:100%;min-width:0}
 #reh-v2-app .search-bar select{font-size:13px!important;min-height:30px;padding:0!important}
 #reh-v2-app .search-bar>.more-filter-btn{grid-row:3;grid-column:1/4!important}
 #reh-v2-app .search-bar>.reh-voice-button{grid-row:3;grid-column:4!important}
 #reh-v2-app .search-bar>.search-submit{grid-row:3;grid-column:5/7!important}
 #reh-v2-app .search-bar>.more-filter-btn,#reh-v2-app .search-bar>.reh-voice-button,#reh-v2-app .search-bar>.search-submit{display:flex!important;align-items:center;justify-content:center;gap:6px;position:static!important;transform:none!important;margin:0!important;min-width:0!important;width:100%!important;height:44px!important;min-height:44px!important;padding:6px!important;border-radius:11px!important;font-size:13px!important;align-self:stretch}
 #reh-v2-app .search-bar>.search-submit svg,#reh-v2-app .search-bar>.more-filter-btn svg{width:18px!important;height:18px!important;flex:none}
 #reh-v2-app .reh-location-dropdown{top:100%;left:-4px;right:-4px;min-width:0!important;max-width:none}
 #reh-v2-app .reh-location-dropdown ul{max-height:min(300px,45dvh)}
 #reh-v2-app .more-filter-panel{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;margin:10px 0 0!important;padding:12px!important;gap:10px;max-height:none!important}
 #reh-v2-app .more-filter-panel label{min-width:0}
 #reh-v2-app .more-filter-panel input,#reh-v2-app .more-filter-panel select{width:100%;min-width:0;font-size:16px;min-height:44px}
 #reh-v2-app .more-filter-panel>button{grid-column:1/-1;min-height:44px}
 #reh-v2-app .category-shell{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;height:auto!important;min-height:0!important;width:100%;padding:8px 12px 10px!important;overflow:hidden;flex:none}
 #reh-v2-app .category-mode{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%!important;min-height:48px!important;height:auto!important;padding:3px!important;flex:none!important;align-self:stretch!important}
 #reh-v2-app .category-mode button{height:40px!important;min-height:40px!important;font-size:12px!important;padding:4px 8px!important}
 #reh-v2-app .selected-category-rail,#reh-v2-app .category-scroll{display:flex!important;flex-direction:row!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 auto!important;min-height:0!important;height:auto!important;overflow-x:auto!important;overflow-y:hidden!important;gap:6px!important;padding:3px 0!important;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 #reh-v2-app .selected-category-rail:empty{display:none!important}
 #reh-v2-app .category-scroll-arrow{display:none!important}
 #reh-v2-app .category-chip{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px;height:66px!important;min-height:66px;padding:7px 3px!important;gap:4px!important;border-radius:12px!important;font-size:9px!important;line-height:1.2;white-space:normal;text-align:center;position:relative}
 #reh-v2-app .category-chip.selected{background:var(--reh-soft)!important;box-shadow:inset 0 -2px #10a57a}
 #reh-v2-app .category-icon{width:26px!important;height:26px!important;flex:none}
 #reh-v2-app .category-icon svg{width:25px;height:25px}
 #reh-v2-app .selected-category-rail .drag-handle{display:block!important;position:absolute;left:4px;top:7px;font-size:10px}
 #reh-v2-app .selected-category-rail .priority-number{right:3px;top:3px;width:15px!important;height:15px!important;font-size:9px}
 #reh-v2-app .result-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;padding:10px 12px!important;min-height:0!important;height:auto!important;position:relative;flex:none}
 #reh-v2-app .result-toolbar>div:first-child{min-width:0;grid-column:1;grid-row:1}
 #reh-v2-app .result-toolbar strong{font-size:14px!important}
 #reh-v2-app .result-sub{display:none!important}
 #reh-v2-app .mobile-view-switch{display:flex!important;grid-column:2;grid-row:1;gap:3px;min-height:44px;align-items:center}
 #reh-v2-app .mobile-view-switch button{min-height:38px;padding:7px 13px}
 #reh-v2-app .toolbar-actions{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);grid-column:1/-1;grid-row:2;gap:6px;width:100%;min-width:0}
 #reh-v2-app .toolbar-actions select,#reh-v2-app .toolbar-actions button{display:block!important;min-width:0!important;width:100%;height:44px!important;padding:5px!important;font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #reh-v2-app .workspace{display:block!important;position:relative!important;height:auto!important;min-height:0!important;flex:none!important;overflow:visible!important;grid-template-rows:none!important}
 #reh-v2-app .workspace.mobile-list .list-pane{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;border:0!important}
 #reh-v2-app .workspace.mobile-list .map-pane,#reh-v2-app .workspace.mobile-map .list-pane{display:none!important}
 #reh-v2-app .property-list{padding:4px 12px max(24px,env(safe-area-inset-bottom))!important}
 #reh-v2-app .property-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
 #reh-v2-app .property-card{width:100%;min-width:0;transform:none!important;border-radius:16px!important}
 #reh-v2-app .card-media{height:auto!important;aspect-ratio:4/3!important;width:100%!important;border-radius:15px 15px 0 0!important}
 #reh-v2-app .card-media img{width:100%!important;height:100%!important;object-fit:cover;transform:none!important}
 #reh-v2-app .card-copy{padding:14px!important}
 #reh-v2-app .card-copy h3{white-space:normal!important;overflow-wrap:anywhere;font-size:14px!important;line-height:1.5}
 #reh-v2-app .price-row strong{font-size:19px!important}
 #reh-v2-app .spec-row{font-size:12px!important;gap:10px}
 #reh-v2-app .agent-row{font-size:12px!important;line-height:1.5}
 #reh-v2-app .media-arrow{display:grid!important;place-items:center;width:40px;height:40px;z-index:2}
 #reh-v2-app .media-dots{max-width:44%;overflow:hidden;bottom:12px!important}
 #reh-v2-app .reh-card-gallery-launch{max-width:60%;font-size:10px;bottom:30px;right:8px;min-height:32px}
 #reh-v2-app .reh-video-badge{bottom:30px;left:8px;min-height:32px}
 #reh-v2-app .media-dots{bottom:10px!important;max-width:70%}
 #reh-v2-app .heart{width:44px;height:44px}
 #reh-v2-app .map-pin{min-width:44px;min-height:44px}
 #reh-v2-app .workspace.mobile-map .map-pane{display:block!important;position:relative!important;inset:auto!important;width:calc(100% - 24px)!important;margin:0 12px 16px!important;height:70vh!important;height:70dvh!important;min-height:380px!important;overflow:hidden!important;border-radius:16px!important}
 #reh-v2-app .map-wrap,#reh-v2-app .map-canvas{height:100%;min-height:0}
 #reh-v2-app .reh-map-v1 .reh-map-card{width:min(280px,calc(100% - 20px));max-height:calc(100% - 110px);overflow:auto}
 #reh-v2-app .reh-map-expanded{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:1000!important;border-radius:0!important}
 #reh-v2-app .status-banner{margin:8px 12px;overflow-wrap:anywhere}
 .reh-gallery-thumbs{padding-bottom:max(12px,env(safe-area-inset-bottom))}
}
@media(min-width:600px) and (max-width:800px){
 #reh-v2-app .property-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #reh-v2-app .top-nav>.market-nav button,#reh-v2-app .top-nav>.transaction-nav button{font-size:13px!important}
}
/* REH_MOBILE_V7_END */

/* REH_UI_V8_START */
/* Keep the badge in the button's flex layout, independent of screen size. */
#reh-v2-app .more-filter-btn{position:relative!important;overflow:visible!important}
#reh-v2-app .more-filter-btn .reh-filter-count{position:static!important;inset:auto!important;display:inline-grid!important;place-items:center;flex:0 0 20px;width:20px;height:20px;margin:0!important;transform:none!important;line-height:1;font-size:11px}
/* Full-window media: overlay controls, no thumbnail strip or side gutters. */
.reh-gallery{display:block!important;background:#101010}
.reh-gallery .reh-gallery-thumbs{display:none!important}
.reh-gallery .reh-gallery-head{position:absolute;inset:0 0 auto;z-index:4;border:0;background:linear-gradient(#000b,transparent);padding:12px 16px;min-height:64px;pointer-events:none}
.reh-gallery .reh-gallery-head>*{pointer-events:auto}
.reh-gallery .reh-gallery-title{text-shadow:0 1px 5px #000;font-size:13px}
.reh-gallery .reh-gallery-head>button{background:#15151566;border:1px solid #ffffff55;backdrop-filter:blur(8px)}
.reh-gallery .reh-gallery-stage{position:absolute;inset:0;display:block!important;padding:0!important;margin:0!important;gap:0!important;width:100%;height:100%;min-height:0}
.reh-gallery .reh-gallery-content{width:100%;height:100%;display:grid;place-items:center}
.reh-gallery .reh-gallery-content>img{width:100%;height:100%;object-fit:contain;max-width:none;max-height:none}
.reh-gallery .reh-gallery-content>video,.reh-gallery .reh-gallery-content>iframe{width:100%;height:calc(100% - 116px);align-self:center;object-fit:contain}
.reh-gallery .reh-gallery-stage>button{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:52px;border-radius:14px;border:1px solid #ffffff55;background:#1115;backdrop-filter:blur(6px);box-shadow:0 2px 12px #0002;color:#fff;font-size:34px;display:grid;place-items:center;padding:0;line-height:1}
.reh-gallery .reh-gallery-prev{left:12px}.reh-gallery .reh-gallery-next{right:12px}
.reh-gallery .reh-gallery-stage>button:hover{background:#1119}
.reh-gallery .reh-gallery-stage>button:disabled{display:none}
.reh-gallery .reh-gallery-status{position:absolute;z-index:3;bottom:max(14px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);margin:0;padding:7px 12px;border-radius:999px;background:#1119;color:#fff;font-size:12px;pointer-events:none;white-space:nowrap}
/* One compact property preview, with the property link and group navigation visible. */
#reh-v2-app .reh-map-v1 .reh-map-card{display:grid;grid-template-columns:112px minmax(0,1fr);width:360px;max-width:calc(100% - 24px);left:12px;bottom:64px;max-height:calc(100% - 128px);padding:0;overflow:auto;border-radius:18px;border:1px solid var(--reh-border);background:var(--reh-surface);color:var(--reh-ink);box-shadow:0 12px 34px #0003;scrollbar-width:thin}
#reh-v2-app .reh-map-v1 .reh-card-photo{position:relative;width:112px;height:100%;min-height:180px;background:var(--reh-soft);border-radius:0;overflow:hidden;display:grid;place-items:center}
#reh-v2-app .reh-map-v1 .reh-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#reh-v2-app .reh-map-v1 .reh-card-close{top:7px;right:7px;width:30px;height:30px;background:#1119;color:white;border:1px solid #fff6;z-index:3}
#reh-v2-app .reh-map-v1 .reh-photo-prev,#reh-v2-app .reh-map-v1 .reh-photo-next{width:28px;height:34px;border-radius:9px;background:#1117;color:white;border:1px solid #fff5;font-size:22px}
#reh-v2-app .reh-map-v1 .reh-photo-prev{left:5px}#reh-v2-app .reh-map-v1 .reh-photo-next{right:5px}
#reh-v2-app .reh-map-v1 .reh-photo-count{bottom:9px;right:8px;left:auto;background:#1119;color:#fff;font-size:10px;border-radius:20px;padding:4px 7px}
#reh-v2-app .reh-map-v1 .reh-card-copy{padding:14px;min-width:0;display:flex;flex-direction:column;gap:7px}
#reh-v2-app .reh-map-v1 .reh-card-price{font-size:19px;line-height:1.15;margin:0}
#reh-v2-app .reh-map-v1 .reh-card-copy h3{font-size:12px;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
#reh-v2-app .reh-map-v1 .reh-card-spec{font-size:11px;line-height:1.5;margin:0}
#reh-v2-app .reh-map-v1 .reh-card-agent{font-size:10px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.7}
#reh-v2-app .reh-map-v1 .reh-card-link{display:flex;align-items:center;justify-content:center;min-height:38px;border-radius:10px;margin:3px 0 0;padding:7px 9px;font-size:12px;text-decoration:none;background:var(--reh-ink);color:var(--reh-surface)}
#reh-v2-app .reh-map-v1 .reh-card-nearby{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:0;padding:6px 0 0;border-top:1px solid var(--reh-border);font-size:10px}
#reh-v2-app .reh-map-v1 .reh-card-nearby button{width:32px;height:32px;min-height:32px;border:1px solid var(--reh-border);border-radius:9px;font-size:20px}
@media(max-width:800px){
 #reh-v2-app .category-shell{display:grid!important;grid-template-columns:minmax(0,42%) minmax(0,1fr)!important;gap:8px 6px!important;align-items:center!important}
 #reh-v2-app .category-mode{grid-column:1/-1!important;grid-row:1!important}
 #reh-v2-app .selected-category-rail{grid-column:1!important;grid-row:2!important;width:100%!important;max-width:100%!important}
 #reh-v2-app .category-scroll{grid-column:2!important;grid-row:2!important;width:100%!important}
 #reh-v2-app .category-shell:has(.selected-category-rail:empty) .category-scroll{grid-column:1/-1!important}
 #reh-v2-app .category-scroll-arrow{display:none!important}
 #reh-v2-app .category-chip .priority-number{position:absolute!important;top:3px!important;right:3px!important;bottom:auto!important;left:auto!important;margin:0!important}
 #reh-v2-app .reh-map-v1 .reh-map-card{grid-template-columns:96px minmax(0,1fr);left:10px;bottom:64px;max-width:calc(100% - 20px);width:360px;max-height:calc(100% - 124px)}
 #reh-v2-app .reh-map-v1 .reh-card-photo{width:96px;min-height:180px}
 #reh-v2-app .reh-map-v1 .reh-card-copy{padding:12px;gap:6px}
 #reh-v2-app .reh-map-v1 .reh-card-price{font-size:18px}
 .reh-gallery .reh-gallery-prev{left:8px}.reh-gallery .reh-gallery-next{right:8px}
 .reh-gallery .reh-gallery-stage>button{width:38px;height:46px}
 .reh-gallery .reh-gallery-head{padding:8px 12px}
}
/* REH_UI_V8_END */
/* REH_UI_V9_START */
#reh-v2-app .category-unified-rail{display:contents}
#reh-v2-app .reh-map-v1 .reh-map-card{width:400px;grid-template-columns:44% minmax(0,1fr)}
#reh-v2-app .reh-map-v1 .reh-card-photo{width:100%;min-height:180px}
#reh-v2-app .reh-map-v1 .reh-card-copy{padding:10px;gap:5px}
#reh-v2-app .reh-map-v1 .reh-card-price{font-size:16px;line-height:1.25}
#reh-v2-app .reh-map-v1 .reh-card-copy h3{font-size:11px;line-height:1.4}
#reh-v2-app .reh-map-v1 .reh-card-spec{font-size:10px}
#reh-v2-app .reh-map-v1 .reh-card-link{font-size:11px;padding:6px;min-height:36px}
#reh-v2-app .reh-map-v1 .reh-card-nearby{font-size:9px;gap:2px}
.reh-gallery .reh-gallery-head>button,.reh-gallery .reh-gallery-stage>button{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;flex-shrink:0;box-sizing:border-box}
.reh-gallery button .reh-gallery-control-icon{display:block;width:24px;height:24px;flex:0 0 24px;margin:0;pointer-events:none}
.property-page-header .reh-property-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:10px;background:var(--reh-ink);color:var(--reh-surface);border:1px solid var(--reh-ink);white-space:nowrap;font-size:13px;line-height:1.2;box-sizing:border-box}
.reh-property-back svg{width:18px;height:18px;flex-shrink:0}
.property-page-header .reh-property-back:hover{opacity:.85}
.property-page-header .reh-property-back:focus-visible{outline:3px solid #10a678;outline-offset:3px}
@media(max-width:800px){
 #reh-v2-app .category-shell{grid-template-columns:minmax(0,1fr)!important}
 #reh-v2-app .category-unified-rail{display:flex;grid-column:1/-1;grid-row:2;align-items:stretch;gap:6px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:3px 0 6px;scrollbar-width:thin;overscroll-behavior-x:contain}
 #reh-v2-app .category-unified-rail .selected-category-rail,#reh-v2-app .category-unified-rail .category-scroll{display:flex!important;flex:0 0 auto!important;width:max-content!important;max-width:none!important;overflow:visible!important;gap:6px!important;margin:0!important;padding:0!important;align-items:stretch!important}
 #reh-v2-app .category-unified-rail .selected-category-rail:empty{display:none!important}
 #reh-v2-app .category-unified-rail .category-chip{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:68px;box-sizing:border-box}
 #reh-v2-app .reh-map-v1 .reh-map-card{grid-template-columns:44% minmax(0,1fr)}
 #reh-v2-app .reh-map-v1 .reh-card-photo{width:100%}
 #reh-v2-app .reh-map-v1 .reh-card-price{font-size:16px}
}
@media(max-width:420px){
 .property-page-header{flex-wrap:wrap;gap:10px}
 .property-page-header>a:first-child{flex:1}
 .property-page-header .reh-theme-toggle{order:1}
 .property-page-header .reh-property-back{order:2;flex:0 0 100%}
}
/* REH_UI_V9_END */
/* REH_MAP_HEART_V1_START */
#reh-v2-app .reh-map-v1 .reh-map-favourite{position:absolute;left:7px;top:7px;z-index:4;width:36px;height:36px}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart{position:static;display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;margin:0;padding:0;border:1px solid #ffffff88;border-radius:50%;background:#172126b8;color:#fff;font-family:Arial,sans-serif;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 2px 8px #0003}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart.active{background:#fff;color:#d83558;border-color:#fff}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart:disabled{opacity:.6;cursor:wait}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart:focus-visible{outline:3px solid #10b981;outline-offset:2px}
/* REH_MAP_HEART_V1_END */
/* REH_GALLERY_HEART_V1_START */
.reh-gallery .reh-gallery-head{gap:10px}
.reh-gallery .reh-gallery-title{flex:1;min-width:0}
.reh-gallery .reh-gallery-head>.reh-gallery-heart{width:44px;height:44px;flex:0 0 44px;border-radius:50%;color:#fff;background:#15151588;border:1px solid #ffffff55}
.reh-gallery .reh-gallery-heart svg{display:block;width:22px;height:22px}
.reh-gallery .reh-gallery-head>.reh-gallery-heart.active{color:#ff7795;background:#151515bb}
.reh-gallery .reh-gallery-heart:disabled{opacity:.5;cursor:wait}
.reh-gallery .reh-gallery-favourite-message{position:absolute;z-index:5;top:76px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:10px 16px;background:#333;color:#fff;border-radius:10px;font-size:13px}
/* REH_GALLERY_HEART_V1_END */
/* REH_MOBILE_COMPACT_V1_START */
@media(max-width:800px){
 #reh-v2-app .top-nav{grid-template-rows:36px 40px!important;gap:4px 6px!important;padding:6px 12px!important;background:var(--reh-surface)!important;border-bottom:1px solid var(--reh-border)!important}
 #reh-v2-app .top-nav>.account-pill{height:36px;min-height:36px;padding:3px 8px}
 #reh-v2-app .top-nav .account-avatar{width:28px;height:28px;font-size:13px}
 #reh-v2-app .top-nav>.market-nav,#reh-v2-app .top-nav>.transaction-nav{height:40px!important}
 #reh-v2-app .top-nav>.market-nav button,#reh-v2-app .top-nav>.transaction-nav button{height:40px!important;min-height:40px!important}
 #reh-v2-app .top-nav>.reh-theme-toggle{height:40px;min-height:40px}
 #reh-v2-app .search-section{padding:8px 12px!important;background:#f1f3f5!important;border-bottom:1px solid var(--reh-border)}
 #reh-v2-app .search-bar{padding:6px!important;gap:4px 6px!important;border-radius:14px!important;background:var(--reh-surface)!important;box-shadow:0 2px 6px #00000006!important}
 #reh-v2-app .search-bar>.search-location{min-height:42px!important;padding:0 6px!important}
 #reh-v2-app .search-bar>label.search-cell{min-height:44px!important;padding:3px 6px!important;border-radius:7px!important;background:var(--reh-surface)}
 #reh-v2-app .search-bar .cell-label{font-size:9px!important;line-height:1.2}
 #reh-v2-app .search-bar select{min-height:25px!important;font-size:12px!important;line-height:1.2}
 #reh-v2-app .search-bar>.more-filter-btn,#reh-v2-app .search-bar>.reh-voice-button,#reh-v2-app .search-bar>.search-submit{height:40px!important;min-height:40px!important;padding:4px!important;border-radius:8px!important;font-size:12px!important}
 #reh-v2-app .category-shell{padding:6px 12px!important;gap:4px!important;background:#f5faf8!important;border-bottom:1px solid #dce9e3!important}
 #reh-v2-app .category-mode{min-height:34px!important;height:34px!important;padding:2px!important;border:0!important;border-radius:9px!important;background:#e7f0eb!important}
 #reh-v2-app .category-mode button{height:30px!important;min-height:30px!important;padding:3px 8px!important;font-size:11px!important;border-radius:7px!important}
 #reh-v2-app .category-unified-rail{padding:2px 0!important;scrollbar-width:none}
 #reh-v2-app .category-unified-rail::-webkit-scrollbar{display:none}
 #reh-v2-app .category-unified-rail .category-chip{height:56px!important;min-height:56px!important;padding:5px 3px!important;gap:2px!important}
 #reh-v2-app .category-icon{width:23px!important;height:23px!important}
 #reh-v2-app .category-icon svg{width:23px!important;height:23px!important}
 #reh-v2-app .result-toolbar{padding:7px 12px!important;gap:5px!important}
 #reh-v2-app .toolbar-actions select,#reh-v2-app .toolbar-actions button{height:40px!important}
 html[data-reh-theme="dark"] #reh-v2-app .top-nav{background:#202020!important}
 html[data-reh-theme="dark"] #reh-v2-app .search-section{background:#171717!important}
 html[data-reh-theme="dark"] #reh-v2-app .category-shell{background:#252927!important;border-bottom-color:#39433e!important}
 html[data-reh-theme="dark"] #reh-v2-app .category-mode{background:#323934!important}
}
/* REH_MOBILE_COMPACT_V1_END */


/* REH_SMART_SEARCH_V1 */
.reh-smart-dialog{--ss-bg:#fff;--ss-panel:#f3f7f5;--ss-text:#102a47;--ss-muted:#566577;--ss-line:#dbe2e8;--ss-active:#102a47;--ss-on:#fff;box-sizing:border-box;width:min(840px,calc(100vw - 40px));max-width:none;height:min(850px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--ss-line);border-radius:24px;color:var(--ss-text);background:var(--ss-bg);box-shadow:0 24px 100px #0004;overflow:hidden;margin:auto}
:root[data-reh-theme="dark"] .reh-smart-dialog{--ss-bg:#222;--ss-panel:#2b2d2c;--ss-text:#f2f2f2;--ss-muted:#c0c3c2;--ss-line:#484b49;--ss-active:#eee;--ss-on:#202020;color-scheme:dark}
.reh-smart-dialog::backdrop{background:#11182088;backdrop-filter:blur(5px)}
.reh-smart-dialog *{box-sizing:border-box}.reh-smart-shell{height:100%;display:flex;flex-direction:column;min-height:0}.reh-smart-header,.reh-smart-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;flex:none;background:var(--ss-bg)}.reh-smart-header{border-bottom:1px solid var(--ss-line)}.reh-smart-header small{font-size:10px;letter-spacing:1.4px;color:var(--ss-muted)}.reh-smart-header h2{font-size:25px;line-height:1.2;margin:6px 0 0}.reh-smart-body{padding:24px 28px;overflow:auto;overscroll-behavior:contain;flex:1;min-height:0}.reh-smart-body section+section{border-top:1px solid var(--ss-line);margin-top:26px;padding-top:24px}.reh-smart-body h3{margin:0 0 10px;font-size:18px}.reh-smart-body p{font-size:13px;line-height:1.55;margin:8px 0 14px;color:var(--ss-muted)}.reh-smart-intent{background:var(--ss-panel);border-radius:16px;padding:20px}.reh-smart-dialog input:not([type="checkbox"]),.reh-smart-dialog select,.reh-smart-dialog textarea{width:100%;min-width:0;border:1px solid var(--ss-line);border-radius:10px;min-height:44px;background:var(--ss-bg);color:var(--ss-text);padding:10px 12px;font:inherit;font-size:14px}.reh-smart-dialog textarea{resize:vertical;min-height:90px}.reh-smart-dialog button{border:1px solid var(--ss-line);border-radius:10px;background:var(--ss-bg);color:var(--ss-text);min-height:44px;padding:10px 15px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.reh-smart-dialog button:disabled{opacity:.5;cursor:default}.reh-smart-dialog :focus-visible{outline:3px solid #33a984;outline-offset:2px}.reh-smart-dialog button.reh-smart-primary{background:var(--ss-active);color:var(--ss-on);border-color:var(--ss-active)}.reh-smart-dialog .reh-smart-close{padding:0;display:grid;place-items:center;width:44px;flex:none}.reh-smart-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.reh-smart-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}.reh-smart-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.reh-smart-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.reh-smart-dialog fieldset{border:0;padding:0;margin:20px 0 0}.reh-smart-dialog legend{font-size:13px;margin-bottom:10px}.reh-smart-chips{display:flex;flex-wrap:wrap;gap:8px}.reh-smart-chips button[aria-pressed="true"]{background:var(--ss-active);color:var(--ss-on)}.reh-smart-feature-list{max-height:310px;overflow:auto;border:1px solid var(--ss-line);border-radius:12px;margin-top:12px}.reh-smart-feature-list label{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px;padding:6px 12px;border-bottom:1px solid var(--ss-line);font-size:13px}.reh-smart-feature-list label:last-child{border:0}.reh-smart-feature-list select{width:125px;flex:none}.reh-smart-check{display:flex;gap:10px;align-items:center;min-height:44px;font-size:14px}.reh-smart-check input{width:19px;height:19px;accent-color:#178262}.reh-smart-footer{border-top:1px solid var(--ss-line);padding-bottom:max(16px,env(safe-area-inset-bottom))}.reh-smart-footer .reh-smart-primary{min-width:160px}.reh-smart-error{color:#b12929!important;padding:12px;background:#fff0f0;border-radius:10px}.reh-smart-note{font-size:12px!important}.reh-smart-proposal{margin-top:16px;border-top:1px solid var(--ss-line);padding-top:14px}.reh-smart-proposal h4{margin:0 0 10px}.reh-smart-proposal dl{display:grid;grid-template-columns:1fr 2fr;gap:7px;font-size:13px}.reh-smart-proposal dt{font-weight:600}.reh-smart-proposal dd{margin:0;overflow-wrap:anywhere}.reh-smart-voice{border-top:1px solid var(--ss-line);margin-top:16px;padding-top:10px}.reh-smart-audio{width:100%;height:36px;margin-top:12px}.reh-smart-recorded{display:flex;align-items:center;gap:12px;font-size:12px}.reh-smart-captions{max-height:100px;overflow:auto}.reh-advanced-trigger{white-space:nowrap!important;position:relative!important}.reh-advanced-trigger .reh-filter-count{position:static!important;transform:none!important;display:inline-flex!important;align-items:center;justify-content:center;flex:none;min-width:20px;height:20px;margin-left:4px;font-size:11px}.reh-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:801px){.search-bar{max-width:1240px!important}.search-bar .reh-advanced-trigger{min-width:170px!important;padding-inline:12px!important}}
@media(max-width:800px){.search-bar .reh-advanced-trigger{font-size:11px!important;padding:5px 8px!important;gap:4px!important}.search-bar .reh-advanced-trigger>svg{width:16px!important;flex:none}.search-bar .reh-advanced-trigger>span:not(.reh-filter-count){display:inline!important}.reh-smart-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.reh-smart-header{padding:16px}.reh-smart-header h2{font-size:22px}.reh-smart-body{padding:16px}.reh-smart-intent{padding:16px}.reh-smart-grid{gap:12px}.reh-smart-dialog input:not([type="checkbox"]),.reh-smart-dialog select,.reh-smart-dialog textarea{font-size:16px}.reh-smart-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.reh-smart-header small{font-size:9px}.reh-smart-footer .reh-smart-primary{min-width:140px}.reh-smart-feature-list select{width:120px}}
@media(prefers-reduced-motion:reduce){.reh-smart-dialog *{scroll-behavior:auto!important}}
@media(max-width:800px){#reh-v2-app .search-bar>.reh-advanced-trigger{font-size:11px!important;gap:4px!important}#reh-v2-app .search-bar>.reh-advanced-trigger>svg{width:16px!important}#reh-v2-app .search-bar>.reh-advanced-trigger>span:not(.reh-filter-count){white-space:normal;line-height:1.15;min-width:0}}

/* REH_CATEGORY_IMAGE_ACTIVE_V1_START */
#reh-v2-app .category-chip.selected.image-active{
  border-color:#20a878!important;
  box-shadow:inset 0 -3px 0 #20a878!important;
}
#reh-v2-app .category-chip.selected.image-active .category-icon{
  color:#20a878!important;
}
html[data-reh-theme="dark"] #reh-v2-app .category-chip.selected.image-active{
  border-color:#29c58e!important;
  box-shadow:inset 0 -3px 0 #29c58e!important;
}
html[data-reh-theme="dark"] #reh-v2-app .category-chip.selected.image-active .category-icon{
  color:#29c58e!important;
}
/* REH_CATEGORY_IMAGE_ACTIVE_V1_END */

/* REH_BRAND_FAVICON_V1 */
img.brand-logo,
.reh-pd-brand img,
.pa-native-logo img{
  content:url('/brand/reh-logo.png?v=brand-1')!important;
  filter:none!important;
}
html[data-reh-theme="dark"] img.brand-logo,
html[data-reh-theme="dark"] .reh-pd-brand img,
html[data-reh-theme="dark"] .pa-native-logo img{
  content:url('/brand/reh-logo-dark.png?v=brand-1')!important;
  filter:none!important;
}
html[data-theme="dark"] img.brand-logo,
html[data-theme="dark"] .reh-pd-brand img,
html[data-theme="dark"] .pa-native-logo img{
  content:url('/brand/reh-logo-dark.png?v=brand-1')!important;
  filter:none!important;
}
/* REH_BRAND_FAVICON_V1_END */

/* REH_FINAL_UI_REFINEMENT_V1_START */
#reh-v2-app .category-chip{position:relative!important;box-sizing:border-box!important}
#reh-v2-app .category-count{
  position:absolute!important;top:3px!important;right:3px!important;
  display:grid!important;place-items:center!important;
  min-width:18px!important;height:18px!important;padding:0 4px!important;
  border-radius:999px!important;background:var(--reh-ink)!important;color:var(--reh-surface)!important;
  font-size:9px!important;font-weight:800!important;line-height:1!important;
}
#reh-v2-app .category-chip.selected .category-count{background:#20a878!important;color:#fff!important}
#reh-v2-app .category-chip.selected.image-active{
  border:2px solid #20a878!important;
  box-shadow:0 0 0 2px rgba(32,168,120,.20)!important;
}
html[data-reh-theme="dark"] #reh-v2-app .category-chip.selected.image-active{
  border-color:#29c58e!important;box-shadow:0 0 0 2px rgba(41,197,142,.22)!important;
}
#reh-v2-app .property-card .heart,#reh-v2-app .property-card .reh-card-share{
  display:grid!important;place-items:center!important;
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  top:10px!important;margin:0!important;padding:0!important;
  border:1px solid rgba(255,255,255,.28)!important;border-radius:50%!important;
  background:rgba(26,35,44,.74)!important;color:#fff!important;opacity:1!important;
  box-shadow:0 3px 12px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;
}
#reh-v2-app .property-card .heart{right:10px!important;font-size:23px!important}
#reh-v2-app .property-card .reh-card-share{right:54px!important}
#reh-v2-app .property-card .heart:hover,#reh-v2-app .property-card .reh-card-share:hover{background:rgba(26,35,44,.92)!important}
#reh-v2-app .property-card .heart.active{background:#fff!important;color:#d83558!important;border-color:#fff!important}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart,#reh-v2-app .reh-map-v1 .reh-map-share{
  width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  border:1px solid #ffffff88!important;border-radius:50%!important;background:#172126b8!important;color:#fff!important;
  box-shadow:0 2px 8px #0003!important;
}
#reh-v2-app .reh-map-v1 .reh-map-favourite .heart.active{background:#fff!important;color:#d83558!important;border-color:#fff!important}
@media(max-width:800px){#reh-v2-app .category-count{top:2px!important;right:2px!important;min-width:16px!important;height:16px!important;font-size:8px!important}}
/* REH_FINAL_UI_REFINEMENT_V1_END */

/* REH_CARD_VIDEO_AUTOPLAY_V1 */
#reh-v2-app .card-media .reh-card-inline-video,
#reh-v2-app .card-media .reh-card-video-frame,
#reh-v2-app .card-media .reh-card-video-poster{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  border:0!important;
  background:#111!important;
  object-fit:cover!important;
}
#reh-v2-app .card-media .reh-card-inline-video,
#reh-v2-app .card-media .reh-card-video-frame{
  pointer-events:none!important;
}
#reh-v2-app .card-media .reh-card-video-poster{
  pointer-events:none!important;
}
#reh-v2-app .card-media .reh-video-badge{
  z-index:5!important;
  letter-spacing:.02em;
  backdrop-filter:blur(8px);
}
#reh-v2-app .card-media .reh-card-gallery-launch,
#reh-v2-app .card-media .reh-card-share,
#reh-v2-app .card-media .reh-favourite-button,
#reh-v2-app .card-media .media-arrow,
#reh-v2-app .card-media .media-dots,
#reh-v2-app .card-media .match-badge{
  z-index:6!important;
}

/* REH ArcGIS map focus ring override */
#reh-v2-app .reh-map-v1 .esri-view{
  --esri-view-outline:none!important;
  --esri-view-outline-color:transparent!important;
  --esri-view-outline-offset:0!important;
}

#reh-v2-app .reh-map-v1 .esri-view:focus,
#reh-v2-app .reh-map-v1 .esri-view:focus-visible,
#reh-v2-app .reh-map-v1 .esri-view:focus-within{
  outline:none!important;
  box-shadow:none!important;
}

/* REH ArcGIS map focus ring hard override */
#reh-v2-app .reh-map-v1 .esri-view,
#reh-v2-app .reh-map-v1 .esri-view-root,
#reh-v2-app .reh-map-v1 .esri-view-surface,
#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline{
  --esri-view-outline:none!important;
  --esri-view-outline-color:transparent!important;
  --esri-view-outline-offset:0!important;
  outline:none!important;
  box-shadow:none!important;
  border:none!important;
}

#reh-v2-app .reh-map-v1 .esri-view:focus,
#reh-v2-app .reh-map-v1 .esri-view:focus-visible,
#reh-v2-app .reh-map-v1 .esri-view:focus-within,
#reh-v2-app .reh-map-v1 .esri-view-root:focus,
#reh-v2-app .reh-map-v1 .esri-view-root:focus-visible,
#reh-v2-app .reh-map-v1 .esri-view-root:focus-within,
#reh-v2-app .reh-map-v1 .esri-view-surface:focus,
#reh-v2-app .reh-map-v1 .esri-view-surface:focus-visible,
#reh-v2-app .reh-map-v1 .esri-view-surface:focus-within,
#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline:focus,
#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline:focus-visible,
#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline:focus-within{
  outline:none!important;
  box-shadow:none!important;
  border:none!important;
}

#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline::before,
#reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline::after{
  content:none!important;
  display:none!important;
}

/* REH_ESRI_ATTRIBUTION_MINIMAL_V1 */
#reh-v2-app .reh-map-v1 .esri-attribution{
  background:rgba(20,25,23,.34)!important;
  color:rgba(255,255,255,.62)!important;
  border:0!important;
  border-radius:4px!important;
  box-shadow:none!important;
  padding:0 4px!important;
  font-size:8px!important;
  line-height:13px!important;
  min-height:13px!important;
  opacity:.55!important;
  transform:scale(.82);
  transform-origin:left bottom;
}
#reh-v2-app .reh-map-v1 .esri-attribution:hover,
#reh-v2-app .reh-map-v1 .esri-attribution:focus-within{
  opacity:1!important;
}
#reh-v2-app .reh-map-v1 .esri-attribution a{
  color:inherit!important;
}

/* Hide empty map notice */
#reh-v2-app .reh-map-v1 .reh-map-notice:empty{
  display:none!important;
}

/* REH_MAP_SPACING_FINAL_V1 */
@media (min-width:801px){
  #reh-v2-app .map-pane{
    margin:12px!important;
    height:calc(100% - 24px)!important;
    top:12px!important;
  }
}

#reh-v2-app .reh-map-v1 .esri-ui-bottom-left{
  left:3px!important;
  bottom:2px!important;
}

#reh-v2-app .reh-map-v1 .esri-attribution{
  left:0!important;
  bottom:0!important;
  margin:0!important;
  padding:0 3px!important;
  font-size:7px!important;
  line-height:10px!important;
  min-height:10px!important;
  opacity:.42!important;
  transform:scale(.78)!important;
  transform-origin:left bottom!important;
}

/* AGENT_MAP_MATCH_REH_FINAL_V1 */
@media (min-width:801px){
  :root{
    --header-h:68px!important;
  }

  #reh-v2-app .discovery-page{
    height:calc(100vh - 68px)!important;
    min-height:0!important;
  }

  #reh-v2-app .map-pane{
    position:sticky!important;
    top:0!important;
    margin:0!important;
    padding:12px!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    align-self:stretch!important;
    background:var(--reh-page)!important;
    box-shadow:none!important;
    border-radius:0!important;
    overflow:hidden!important;
  }

  #reh-v2-app .map-pane .map-wrap,
  #reh-v2-app .map-pane .map-canvas{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
  }

  #reh-v2-app .map-pane .map-wrap{
    border-radius:22px!important;
    overflow:hidden!important;
  }
}

/* Keep ArcGIS attribution at the true map bottom */
#reh-v2-app .reh-map-v1 .esri-ui{
  bottom:0!important;
}

#reh-v2-app .reh-map-v1 .esri-ui-inner-container{
  bottom:0!important;
}

#reh-v2-app .reh-map-v1 .esri-ui-bottom-left{
  left:3px!important;
  bottom:2px!important;
  margin:0!important;
}

#reh-v2-app .reh-map-v1 .esri-attribution{
  position:relative!important;
  display:flex!important;
  visibility:visible!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  padding:0 3px!important;
  min-height:9px!important;
  font-size:7px!important;
  line-height:9px!important;
  opacity:.48!important;
  transform:none!important;
  background:rgba(20,25,23,.25)!important;
  border:0!important;
  box-shadow:none!important;
}

/* AGENT_MAP_FULLSCREEN_FINAL_V2 */
.reh-map-v1.reh-map-expanded{
  position:fixed!important;
  inset:12px!important;
  width:auto!important;
  height:auto!important;
  border-radius:22px!important;
  overflow:hidden!important;
  z-index:9999!important;
  box-shadow:0 8px 36px #0007!important;
}

/* Expanded map is moved outside #reh-v2-app, so repeat required rules here */
.reh-map-v1.reh-map-expanded .esri-ui{
  bottom:0!important;
}

.reh-map-v1.reh-map-expanded .esri-ui-inner-container{
  bottom:0!important;
}

.reh-map-v1.reh-map-expanded .esri-ui-bottom-left{
  left:3px!important;
  bottom:2px!important;
  margin:0!important;
}

.reh-map-v1.reh-map-expanded .esri-attribution{
  position:relative!important;
  display:flex!important;
  visibility:visible!important;
  margin:0!important;
  padding:0 3px!important;
  min-height:9px!important;
  font-size:7px!important;
  line-height:9px!important;
  opacity:.48!important;
  transform:none!important;
  background:rgba(20,25,23,.25)!important;
  border:0!important;
  box-shadow:none!important;
}

.reh-map-v1.reh-map-expanded .reh-map-notice:empty{
  display:none!important;
}

/* REH_FULLSCREEN_ESRI_FOCUS_RING_OFF_V1 */
.reh-map-v1.reh-map-expanded .esri-view,
.reh-map-v1.reh-map-expanded .esri-view-root,
.reh-map-v1.reh-map-expanded .esri-view-surface,
.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline{
  --esri-view-outline:none!important;
  --esri-view-outline-color:transparent!important;
  --esri-view-outline-offset:0!important;
  outline:none!important;
  border:none!important;
  box-shadow:none!important;
}

.reh-map-v1.reh-map-expanded .esri-view:focus,
.reh-map-v1.reh-map-expanded .esri-view:focus-visible,
.reh-map-v1.reh-map-expanded .esri-view:focus-within,
.reh-map-v1.reh-map-expanded .esri-view-root:focus,
.reh-map-v1.reh-map-expanded .esri-view-root:focus-visible,
.reh-map-v1.reh-map-expanded .esri-view-root:focus-within,
.reh-map-v1.reh-map-expanded .esri-view-surface:focus,
.reh-map-v1.reh-map-expanded .esri-view-surface:focus-visible,
.reh-map-v1.reh-map-expanded .esri-view-surface:focus-within,
.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline:focus,
.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline:focus-visible,
.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline:focus-within{
  outline:none!important;
  border:none!important;
  box-shadow:none!important;
}

.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline::before,
.reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline::after{
  content:none!important;
  display:none!important;
}

/* AGENT_MAP_TOOLS_UI_V1 */
.reh-map-v1 .reh-map-controls{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:10px!important;
}

.reh-map-v1 .reh-map-controls button{
  background:rgba(30,33,32,.94)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 3px 12px rgba(0,0,0,.22)!important;
  margin:0!important;
}

.reh-map-v1 .reh-map-full-toggle{
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
}

.reh-map-v1 .reh-map-zoom{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
}

.reh-map-v1 .reh-map-zoom button{
  width:46px!important;
  height:42px!important;
  border-radius:0!important;
  border:0!important;
  box-shadow:none!important;
}

.reh-map-v1 .reh-map-zoom button+button{
  border-top:1px solid rgba(255,255,255,.14)!important;
}

.reh-map-v1 .reh-map-controls button:hover{
  background:rgba(48,52,50,.98)!important;
}

/* AGENT_MOBILE_MAP_LAYOUT_V3 */
@media(max-width:800px){
  #reh-v2-app .workspace.mobile-map{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  #reh-v2-app .workspace.mobile-map .list-pane{
    display:none!important;
  }

  #reh-v2-app .workspace.mobile-map .map-pane{
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:calc(100% - 24px)!important;
    height:68dvh!important;
    min-height:360px!important;
    max-height:720px!important;
    margin:0 12px 12px!important;
    padding:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }

  #reh-v2-app .workspace.mobile-map .map-wrap,
  #reh-v2-app .workspace.mobile-map .map-canvas,
  #reh-v2-app .workspace.mobile-map .reh-map-v1{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
}

/* AGENT_MOBILE_MAP_CONTROLS_V3 */
@media(max-width:800px){

  #reh-v2-app .reh-map-v1 .reh-map-layers{
    left:10px!important;
    top:10px!important;
    right:auto!important;
    padding:3px!important;
    border-radius:12px!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-layers button{
    height:40px!important;
    min-height:40px!important;
    padding:0 11px!important;
    font-size:11px!important;
    border-radius:9px!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-controls{
    position:absolute!important;
    right:10px!important;
    top:10px!important;
    left:auto!important;
    bottom:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-full-toggle{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:13px!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-zoom{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    overflow:hidden!important;
    border-radius:13px!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-zoom button{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:0!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-zoom button+button{
    border-top:1px solid rgba(255,255,255,.14)!important;
  }

  #reh-v2-app .reh-map-v1 .reh-map-notice:empty{
    display:none!important;
  }

  #reh-v2-app .reh-map-v1 .esri-ui{
    bottom:0!important;
  }

  #reh-v2-app .reh-map-v1 .esri-ui-inner-container{
    bottom:0!important;
  }

  #reh-v2-app .reh-map-v1 .esri-ui-bottom-left{
    left:3px!important;
    bottom:2px!important;
  }

  #reh-v2-app .reh-map-v1 .esri-attribution{
    font-size:7px!important;
    line-height:9px!important;
    min-height:9px!important;
    padding:0 3px!important;
    opacity:.42!important;
  }
}

/* AGENT_MOBILE_MAP_FULLSCREEN_V3 */
@media(max-width:800px){
  .reh-map-v1.reh-map-expanded{
    position:fixed!important;
    top:max(8px,env(safe-area-inset-top))!important;
    right:max(8px,env(safe-area-inset-right))!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    left:max(8px,env(safe-area-inset-left))!important;
    width:auto!important;
    height:auto!important;
    border-radius:16px!important;
    overflow:hidden!important;
    z-index:9999!important;
  }

  .reh-map-v1.reh-map-expanded .reh-map-controls{
    right:10px!important;
    top:10px!important;
    gap:8px!important;
  }

  .reh-map-v1.reh-map-expanded .reh-map-full-toggle,
  .reh-map-v1.reh-map-expanded .reh-map-zoom button{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }

  .reh-map-v1.reh-map-expanded .reh-map-layers{
    left:10px!important;
    top:10px!important;
    right:auto!important;
  }

  .reh-map-v1.reh-map-expanded .esri-ui,
  .reh-map-v1.reh-map-expanded .esri-ui-inner-container{
    bottom:0!important;
  }

  .reh-map-v1.reh-map-expanded .esri-ui-bottom-left{
    left:3px!important;
    bottom:2px!important;
  }
}

/* AGENT_MOBILE_MAP_LANDSCAPE_FOCUS_V3 */
@media(max-width:800px) and (orientation:landscape){
  #reh-v2-app .workspace.mobile-map .map-pane{
    height:calc(100dvh - 24px)!important;
    min-height:280px!important;
    max-height:none!important;
  }
}

@media(max-width:800px){
  #reh-v2-app .reh-map-v1 .esri-view,
  #reh-v2-app .reh-map-v1 .esri-view-root,
  #reh-v2-app .reh-map-v1 .esri-view-surface,
  #reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline,
  .reh-map-v1.reh-map-expanded .esri-view,
  .reh-map-v1.reh-map-expanded .esri-view-root,
  .reh-map-v1.reh-map-expanded .esri-view-surface,
  .reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline{
    outline:none!important;
    border:none!important;
    box-shadow:none!important;
  }

  #reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline::before,
  #reh-v2-app .reh-map-v1 .esri-view-surface--inset-outline::after,
  .reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline::before,
  .reh-map-v1.reh-map-expanded .esri-view-surface--inset-outline::after{
    content:none!important;
    display:none!important;
  }
}
