/* REH_DISCOVERY_RESPONSIVE_V1 — discovery only; native controls and handlers retained. */
@media (max-width:1180px) {
  html, body { height:auto!important; min-height:100%; overflow:visible!important; }
  body:has(#reh-old-lightbox), body:has(dialog[open]) { overflow:hidden!important; }
  #reh-v2-app { width:100%; min-width:0; height:auto!important; min-height:100dvh; }
  #reh-v2-app .app-shell, #reh-v2-app .discovery-page {
    width:100%; min-width:0; height:auto!important; min-height:0!important; overflow:visible!important;
  }
  #reh-v2-app .top-nav {
    display:grid!important; grid-template-columns:repeat(12,minmax(0,1fr))!important;
    grid-template-rows:44px 44px!important; grid-auto-rows:44px;
    align-items:center!important; gap:4px!important; padding:4px 12px!important;
    height:auto!important; min-height:0!important; position:relative!important;
    background:var(--reh-surface)!important; border-bottom:1px solid var(--reh-border)!important;
  }
  #reh-v2-app .top-nav > .brand-wrap {
    grid-column:1/8!important; grid-row:1!important; order:0!important;
    width:100%!important; min-width:0!important; margin:0!important; justify-self:start;
  }
  #reh-v2-app .top-nav > .brand-wrap .brand-logo {
    width:min(170px,100%)!important; max-width:100%!important; height:auto!important; max-height:34px!important;
  }
  #reh-v2-app .top-nav .reh-agent-brand { width:100%!important; min-width:0!important; }
  #reh-v2-app .top-nav .reh-agent-brand-logo { width:auto!important; max-width:100%!important; height:30px!important; }
  #reh-v2-app .top-nav .reh-agent-brand-context { display:none!important; }
  #reh-v2-app .top-nav > .account-pill {
    grid-column:10/13!important; grid-row:1!important; order:0!important; justify-self:end;
    margin:0!important; width:68px!important; max-width:100%!important; min-width:44px!important;
    height:44px!important; min-height:44px!important; padding:5px 7px!important;
  }
  #reh-v2-app .top-nav .account-name { display:none!important; }
  #reh-v2-app .top-nav .account-avatar { width:30px!important; height:30px!important; }
  #reh-v2-app .top-nav > .reh-theme-toggle {
    grid-column:8/10!important; grid-row:1!important; order:0!important; justify-self:end;
    width:44px!important; height:44px!important; min-height:44px!important; margin:0!important; padding:9px!important;
  }
  #reh-v2-app .top-nav > .market-nav, #reh-v2-app .top-nav > .transaction-nav {
    display:contents!important; margin:0!important;
  }
  #reh-v2-app .top-nav > .market-nav > button,
  #reh-v2-app .top-nav > .transaction-nav > button {
    display:flex!important; align-items:center!important; justify-content:center!important;
    width:100%!important; min-width:0!important; max-width:100%!important;
    height:44px!important; min-height:44px!important; margin:0!important; padding:0 4px!important;
    font-size:11px!important; line-height:1.2!important; white-space:nowrap!important; order:0!important;
  }
  #reh-v2-app .top-nav > .market-nav > button:nth-child(1) { grid-column:1/4; grid-row:2; }
  #reh-v2-app .top-nav > .market-nav > button:nth-child(2) { grid-column:4/7; grid-row:2; }
  #reh-v2-app .top-nav > .transaction-nav > button:nth-child(1) { grid-column:7/9; grid-row:2; }
  #reh-v2-app .top-nav > .transaction-nav > button:nth-child(2) { grid-column:9/11; grid-row:2; }
  #reh-v2-app .top-nav > .transaction-nav > button:nth-child(3) { grid-column:11/13; grid-row:2; }
  #reh-v2-app .top-nav > .transaction-nav > .ah-new-listing-nav {
    grid-column:7/10; grid-row:3; flex:none!important; border-radius:10px!important;
    gap:4px!important; padding:0 3px!important;
  }
  #reh-v2-app .top-nav > .transaction-nav > .ah-archived-listing-nav { grid-column:10/13; grid-row:3; }
  #reh-v2-app .top-nav .ah-new-listing-text { display:inline!important; font-size:11px!important; }
  #reh-v2-app .top-nav .ah-new-listing-plus { display:none!important; }
  #reh-v2-app .top-nav > .peq-nav-link,
  #reh-v2-app .top-nav > #reh-agent-host-link-v1,
  #reh-v2-app .top-nav > #ah-public-reh-link-v1 {
    display:flex!important; align-items:center!important; justify-content:center!important;
    height:44px!important; min-height:44px!important; min-width:0!important; width:100%!important;
    margin:0!important; padding:4px!important; font-size:11px!important; line-height:1.2!important;
    white-space:nowrap!important; border-radius:10px!important; order:0!important;
  }
  #reh-v2-app .top-nav > .peq-nav-link { grid-column:4/7!important; grid-row:3!important; }
  #reh-v2-app .top-nav > #ah-public-reh-link-v1 { grid-column:1/4!important; grid-row:3!important; }
  #reh-v2-app .top-nav > #reh-agent-host-link-v1 { grid-column:7/10!important; grid-row:3!important; }
  #reh-v2-app .top-nav .peq-count { flex:none; font-size:10px!important; min-width:17px!important; }

  #reh-v2-app .search-section { padding:4px 12px!important; flex:none!important; min-width:0; }
  #reh-v2-app .search-bar {
    display:grid!important; grid-template-columns:repeat(12,minmax(0,1fr))!important;
    grid-template-rows:auto auto!important; gap:4px!important; height:auto!important; min-height:0!important;
    padding:4px!important; width:100%!important; max-width:none!important; border-radius:14px!important;
    align-items:stretch!important; background:var(--reh-surface)!important;
  }
  #reh-v2-app .search-bar > .search-location {
    grid-column:1/8!important; grid-row:1!important; width:100%!important; min-width:0!important;
    min-height:44px!important; margin:0!important; padding:3px 6px!important; border:0!important;
  }
  #reh-v2-app .search-bar .cell-label { font-size:10px!important; line-height:1.2!important; margin:0 0 3px!important; }
  #reh-v2-app .search-bar .reh-location-entry { width:100%; min-width:0; }
  #reh-v2-app .search-bar input { width:100%!important; min-width:0!important; max-width:100%; font-size:16px!important; }
  #reh-v2-app .search-bar > label.search-cell {
    display:flex!important; width:100%!important; min-width:0!important; min-height:44px!important;
    margin:0!important; padding:3px 5px!important; border:1px solid var(--reh-border)!important; border-radius:8px!important;
    overflow:hidden!important; background:var(--reh-surface)!important;
  }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(1) { grid-column:1/4!important; grid-row:2!important; }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(2) { grid-column:4/7!important; grid-row:2!important; }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(3) { grid-column:7/10!important; grid-row:2!important; }
  #reh-v2-app .search-bar select { width:100%!important; min-width:0!important; min-height:28px!important; padding:0!important; font-size:13px!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!important; justify-content:center!important; align-self:stretch!important;
    width:100%!important; min-width:0!important; max-width:100%!important; height:auto!important; min-height:44px!important;
    position:relative!important; transform:none!important; margin:0!important; padding:4px!important;
    border-radius:9px!important; font-size:12px!important; line-height:1.2!important; gap:4px!important;
  }
  #reh-v2-app .search-bar > .more-filter-btn { grid-column:8/11!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .reh-voice-button { grid-column:11/13!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .search-submit { grid-column:10/13!important; grid-row:2!important; }
  #reh-v2-app .search-bar > .more-filter-btn > svg { display:none!important; }
  #reh-v2-app .search-bar > .more-filter-btn > span:not(.reh-filter-count) { display:inline!important; white-space:normal!important; }
  #reh-v2-app .search-bar > .search-submit svg { width:18px!important; height:18px!important; flex:none!important; }
  #reh-v2-app .search-bar > .reh-voice-button svg { width:20px!important; height:20px!important; }
  #reh-v2-app .search-bar .reh-filter-count { flex:0 0 18px!important; min-width:18px!important; width:18px!important; height:18px!important; font-size:10px!important; margin:0!important; }
  #reh-v2-app .reh-location-dropdown { left:0!important; right:0!important; min-width:min(300px,calc(100vw - 36px))!important; max-width:calc(100vw - 36px)!important; }

  #reh-v2-app .category-shell {
    display:grid!important; grid-template-columns:140px minmax(0,1fr)!important; grid-template-rows:auto!important;
    align-items:center!important; gap:8px!important; padding:4px 12px!important;
    width:100%!important; min-width:0!important; height:auto!important; min-height:0!important; flex:none!important;
  }
  #reh-v2-app .category-shell > .category-mode {
    display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-column:1!important; grid-row:1!important; width:140px!important; min-width:140px!important; max-width:140px!important; height:50px!important; min-height:50px!important;
    margin:0!important; padding:3px!important; gap:0!important; flex:none!important;
  }
  #reh-v2-app .category-mode button { height:44px!important; min-height:44px!important; min-width:44px!important; width:100%!important; padding:0 3px!important; font-size:11px!important; }
  #reh-v2-app .category-unified-rail {
    display:flex!important; grid-column:2!important; grid-row:1!important;
    width:100%!important; min-width:0!important; max-width:100%!important; min-height:0!important;
    align-items:center!important; gap:6px!important; padding:3px!important;
    overflow-x:auto!important; overflow-y:hidden!important; scrollbar-width:none; overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  #reh-v2-app .category-unified-rail::-webkit-scrollbar { display:none; }
  #reh-v2-app .category-unified-rail > .selected-category-rail,
  #reh-v2-app .category-unified-rail > .category-scroll {
    display:flex!important; width:auto!important; min-width:0!important; max-width:none!important;
    flex:0 0 auto!important; gap:6px!important; padding:0!important; height:auto!important; min-height:0!important;
    overflow:visible!important; margin:0!important;
  }
  #reh-v2-app .category-unified-rail > .selected-category-rail:empty { display:none!important; }
  #reh-v2-app .category-scroll-arrow { display:none!important; }
  #reh-v2-app .category-unified-rail .category-chip {
    width:80px!important; min-width:80px!important; max-width:80px!important; flex:0 0 80px!important;
    height:56px!important; min-height:56px!important; padding:2px 3px!important;
    flex-direction:column!important; gap:2px!important; font-size:10px!important; line-height:1.2!important;
    white-space:normal!important; border-radius:11px!important; text-align:center!important;
  }
  #reh-v2-app .category-unified-rail .category-icon { width:22px!important; height:22px!important; flex:none!important; }
  #reh-v2-app .category-unified-rail .category-icon svg { width:22px!important; height:22px!important; }

  #reh-v2-app .result-toolbar {
    display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; grid-template-rows:auto auto!important;
    height:auto!important; min-height:0!important; padding:4px 12px!important; gap:4px!important; flex:none!important;
  }
  #reh-v2-app .result-toolbar > div:first-child { grid-column:1!important; grid-row:1!important; min-width:0!important; }
  #reh-v2-app .result-toolbar strong { font-size:13px!important; }
  #reh-v2-app .result-sub { display:none!important; }
  #reh-v2-app .mobile-view-switch {
    display:flex!important; grid-column:2!important; grid-row:1!important; align-items:center!important;
    min-height:46px!important; gap:2px!important; padding:0!important; margin:0!important;
    border:1px solid var(--reh-border)!important; border-radius:12px!important; background:var(--reh-surface)!important;
  }
  #reh-v2-app .mobile-view-switch button {
    display:flex!important; align-items:center!important; justify-content:center!important;
    min-width:44px!important; height:44px!important; min-height:44px!important; padding:0 9px!important;
    border:0!important; border-radius:9px!important; background:transparent!important; color:var(--reh-ink)!important;
    font-size:12px!important; font-weight:650!important;
  }
  #reh-v2-app .mobile-view-switch button.active { background:var(--reh-ink)!important; color:var(--reh-surface)!important; }
  #reh-v2-app .toolbar-actions {
    display:grid!important; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr)!important;
    grid-column:1/-1!important; grid-row:2!important; width:100%!important; min-width:0!important; gap:4px!important;
  }
  #reh-v2-app .toolbar-actions select, #reh-v2-app .toolbar-actions button {
    display:block!important; width:100%!important; min-width:0!important; height:44px!important; min-height:44px!important;
    padding:0 5px!important; font-size:12px!important; white-space:nowrap!important;
  }

  #reh-v2-app .workspace { display:block!important; height:auto!important; min-height:0!important; flex:none!important; overflow:visible!important; grid-template-rows:none!important; position:relative!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 .workspace.mobile-map .map-pane {
    display:block!important; position:relative!important; inset:auto!important;
    width:calc(100% - 24px)!important; margin:6px 12px max(16px,env(safe-area-inset-bottom))!important;
    height:70vh!important; height:70dvh!important; min-height:260px!important; overflow:hidden!important;
    border-radius:16px!important;
  }
  #reh-v2-app .property-list { padding:6px 12px max(24px,env(safe-area-inset-bottom))!important; }
  #reh-v2-app .property-grid { grid-template-columns:minmax(0,1fr)!important; gap:16px!important; }
  #reh-v2-app .property-card { min-width:0; width:100%; transform:none!important; }
  #reh-v2-app .card-media { width:100%!important; height:auto!important; aspect-ratio:4/3!important; }
  #reh-v2-app .card-media img { width:100%!important; height:100%!important; object-fit:cover; transform:none!important; }
  #reh-v2-app .property-card .heart, #reh-v2-app .property-card .reh-card-share { width:44px!important; height:44px!important; min-width:44px!important; min-height:44px!important; top:8px!important; }
  #reh-v2-app .property-card .heart { right:8px!important; }
  #reh-v2-app .property-card .reh-card-share { right:56px!important; }
  #reh-v2-app .media-arrow { display:grid!important; place-items:center; width:44px!important; height:44px!important; }
  #reh-v2-app .card-media > .ah-card-tools {
    display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px!important;
    top:auto!important; bottom:8px!important; left:8px!important; right:8px!important; width:auto!important;
  }
  #reh-v2-app .card-media > .ah-card-tools .ah-card-tool {
    justify-content:center!important; min-width:0!important; width:100%!important;
    height:44px!important; min-height:44px!important; padding:4px!important; gap:3px!important; font-size:11px!important;
  }
  #reh-v2-app .card-media > .ah-card-tools .ah-card-tool span { display:inline!important; white-space:normal!important; line-height:1.2!important; }
  #reh-v2-app .card-media > .ah-card-tools .ah-card-tool svg { width:13px!important; height:13px!important; flex:none!important; }
  #reh-v2-app .card-media:has(> .ah-card-tools) { min-height:244px!important; }
  #reh-v2-app .card-media:has(> .ah-card-tools) .media-dots { bottom:96px!important; }
  #reh-v2-app .card-media:has(> .ah-card-tools) .reh-card-gallery-launch,
  #reh-v2-app .card-media:has(> .ah-card-tools) .reh-video-badge { bottom:56px!important; }
  #reh-v2-app .card-copy h3 { white-space:normal!important; overflow-wrap:anywhere; }
  #reh-v2-app .status-banner { margin-inline:12px!important; overflow-wrap:anywhere; }
  #reh-v2-app .top-nav button:focus-visible, #reh-v2-app .top-nav a:focus-visible,
  #reh-v2-app .search-bar button:focus-visible, #reh-v2-app .category-shell button:focus-visible,
  #reh-v2-app .result-toolbar button:focus-visible { outline:3px solid #20a878!important; outline-offset:1px; }
}
@media (min-width:520px) and (max-width:1180px) {
  #reh-v2-app .top-nav > .brand-wrap { grid-column:1/5!important; }
  #reh-v2-app .top-nav > .reh-theme-toggle { grid-column:9/11!important; }
  #reh-v2-app .top-nav > .account-pill { grid-column:11/13!important; }
  #reh-v2-app .top-nav > #ah-public-reh-link-v1 { grid-column:5/7!important; grid-row:1!important; }
  #reh-v2-app .top-nav > #reh-agent-host-link-v1 { grid-column:7/9!important; grid-row:1!important; }
  #reh-v2-app .top-nav > .peq-nav-link { grid-column:7/9!important; grid-row:1!important; }
  #reh-v2-app .top-nav:has(> #reh-agent-host-link-v1) > .peq-nav-link { grid-column:5/7!important; }
  #reh-v2-app .top-nav > .market-nav, #reh-v2-app .top-nav > .transaction-nav {
    display:flex!important; grid-row:2!important; height:44px!important; min-width:0!important; gap:4px!important; align-items:center!important;
  }
  #reh-v2-app .top-nav > .market-nav { grid-column:1/5!important; }
  #reh-v2-app .top-nav > .transaction-nav { grid-column:5/13!important; }
  #reh-v2-app .top-nav > .market-nav > button, #reh-v2-app .top-nav > .transaction-nav > button { flex:1 1 auto!important; width:auto!important; font-size:12px!important; }
  #reh-v2-app .top-nav > .transaction-nav > .ah-new-listing-nav { flex:1.5 1 auto!important; }
  #reh-v2-app .top-nav > .transaction-nav > .ah-archived-listing-nav { flex:1.2 1 auto!important; }
}
@media (min-width:600px) and (max-width:1180px) {
  #reh-v2-app .property-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (min-width:700px) and (max-width:1180px), (min-width:520px) and (max-width:1180px) and (max-height:500px) {
  #reh-v2-app .result-toolbar { grid-template-columns:minmax(85px,1fr) minmax(0,auto) auto!important; grid-template-rows:auto!important; gap:6px!important; }
  #reh-v2-app .toolbar-actions { grid-column:2!important; grid-row:1!important; width:min(390px,100%)!important; grid-template-columns:minmax(100px,1.25fr) minmax(80px,1fr) minmax(85px,1fr)!important; }
  #reh-v2-app .mobile-view-switch { grid-column:3!important; }
}
@media (min-width:900px) and (max-width:1180px), (min-width:520px) and (max-width:1180px) and (max-height:500px) {
  #reh-v2-app .search-bar { grid-template-columns:minmax(110px,1.8fr) minmax(64px,1fr) minmax(64px,1fr) minmax(44px,.65fr) minmax(88px,1.2fr) 44px 44px!important; grid-template-rows:auto!important; }
  #reh-v2-app .search-bar > .search-location { grid-column:1!important; grid-row:1!important; }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(1) { grid-column:2!important; grid-row:1!important; }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(2) { grid-column:3!important; grid-row:1!important; }
  #reh-v2-app .search-bar > label.search-cell:nth-of-type(3) { grid-column:4!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .more-filter-btn { grid-column:5!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .reh-voice-button { grid-column:6!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .search-submit { grid-column:7!important; grid-row:1!important; }
  #reh-v2-app .search-bar > .search-submit > span { display:none!important; }
}
