/* TWA — busca persistente: renderização crítica, leve e totalmente isolada. */
.twa-search-status{
  position:fixed;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}

@media (min-width:769px){
  body .google_map_prop_list_sidebar #adv-search-1{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }

  #upp-twa-ba-filter-btn,
  #upp-twa-ba-blur-overlay,
  .upp-twa-ba-mobile-filter-btn,
  #adv-search-1 .upp-twa-ba-panel-header,
  #adv-search-1 .upp-twa-ba-search-btn{
    display:none!important;
  }
}

@media (max-width:768px){
  body .google_map_prop_list_sidebar #adv-search-1{
    position:fixed!important;
    left:50%!important;
    top:50%!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,-50%) scale(.98)!important;
  }

  body.upp-twa-ba-panel-active{
    --twa-search-gold:#c7a968;
    --twa-search-ink:#102238;
    --twa-search-white:rgba(255,255,255,.98);
    --twa-search-muted:rgba(255,255,255,.76);
    --twa-search-surface:rgba(255,255,255,.12);
    --twa-search-border:rgba(255,255,255,.18);
  }

  body.upp-twa-ba-no-scroll{
    overflow:hidden!important;
  }

  #upp-twa-ba-filter-btn{
    display:none!important;
  }

  #upp-twa-ba-blur-overlay{
    display:block;
    position:fixed;
    inset:0;
    z-index:2147483644;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    background:rgba(4,13,22,.62);
    -webkit-backdrop-filter:blur(4px);
    backdrop-filter:blur(4px);
    transition:opacity .2s ease,visibility .2s ease;
  }

  #upp-twa-ba-blur-overlay.upp-twa-ba-overlay-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized{
    position:fixed!important;
    z-index:2147483647!important;
    top:50%!important;
    left:50%!important;
    display:block!important;
    box-sizing:border-box!important;
    width:calc(100vw - 36px)!important;
    max-width:620px!important;
    min-height:0!important;
    height:auto!important;
    max-height:calc(100dvh - 36px)!important;
    margin:0!important;
    padding:18px 16px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:0!important;
    border-radius:32px!important;
    background:linear-gradient(145deg,rgba(27,42,58,.46),rgba(7,19,32,.36))!important;
    -webkit-backdrop-filter:blur(48px) saturate(190%) brightness(1.08)!important;
    backdrop-filter:blur(48px) saturate(190%) brightness(1.08)!important;
    box-shadow:0 24px 72px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.1)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,-50%) scale(.98)!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
    contain:layout paint;
    overscroll-behavior:contain;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized.upp-twa-ba-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,-50%) scale(1)!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-panel-header{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:38px!important;
    margin:0 0 10px!important;
    padding:0 2px!important;
    border:0!important;
    text-align:left!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-panel-title{
    display:block!important;
    flex:1 1 auto!important;
    margin:0 auto 0 0!important;
    padding:0!important;
    color:var(--twa-search-white)!important;
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif!important;
    font-size:19px!important;
    font-weight:300!important;
    line-height:1.1!important;
    letter-spacing:-.018em!important;
    text-align:left!important;
    text-shadow:none!important;
    transform:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-close-btn{
    display:grid!important;
    place-items:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    color:var(--twa-search-white)!important;
    font:300 28px/1 Arial,sans-serif!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    row-gap:6px!important;
    margin:0!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search>[class*="col-"],
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search>.form-group,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .col-md-3{
    float:none!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    flex:0 0 auto!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search>[class*="col-"]>.form-group,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search>[class*="col-"]>.dropdown,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search>[class*="col-"]>.bootstrap-select,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search .wpestate_build_dropdown_adv_new,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search .wpestate_search_component{
    margin-top:0!important;
    margin-bottom:0!important;
    border-radius:20px!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized input[type="text"],
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized input[type="search"],
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .form-control:not([type="range"]),
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized button.filter_menu_trigger,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bootstrap-select>.dropdown-toggle,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpestate-beds-baths-popup-component>button,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpestate_pricev2_component_adv_search_wrapper>button{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:40px!important;
    height:40px!important;
    margin:0!important;
    padding:7px 14px!important;
    border:1px solid var(--twa-search-border)!important;
    border-radius:20px!important;
    background:var(--twa-search-surface)!important;
    color:var(--twa-search-white)!important;
    -webkit-text-fill-color:currentColor!important;
    font-size:14px!important;
    font-weight:500!important;
    line-height:1.15!important;
    text-align:left!important;
    text-shadow:none!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized :is(
    #adv_actions,
    #adv_categ,
    #county-state,
    #property_area,
    .wpestate-beds-baths-popup-component>button,
    .wpestate_pricev2_component_adv_search_wrapper>button,
    [class*="price"][class*="component"]>button
  ){
    border:1px solid var(--twa-search-border)!important;
    border-radius:20px!important;
    background:var(--twa-search-surface)!important;
    color:var(--twa-search-white)!important;
    -webkit-text-fill-color:currentColor!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized input::placeholder{
    color:var(--twa-search-muted)!important;
    opacity:1!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bootstrap-select,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpestate-beds-baths-popup-component,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpestate_pricev2_component_adv_search_wrapper,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized [class*="beds"][class*="component"],
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized [class*="price"][class*="component"]{
    width:100%!important;
    margin:0!important;
    border-radius:20px!important;
    background:transparent!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized :is(
    .wpestate-beds-baths-popup-component,
    .wpestate_pricev2_component_adv_search_wrapper,
    [class*="beds"][class*="component"],
    [class*="price"][class*="component"]
  )>button{
    border:1px solid var(--twa-search-border)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.12)!important;
    background-image:none!important;
    color:var(--twa-search-white)!important;
    -webkit-text-fill-color:currentColor!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .filter_menu_trigger,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-toggle,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized [role="combobox"],
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized select,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized input:not([type="hidden"]):not([type="range"]){
    border-radius:20px!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]),
  body.upp-twa-ba-panel-active .pac-container,
  body.upp-twa-ba-panel-active .ui-autocomplete{
    box-sizing:border-box!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:1px solid rgba(16,34,56,.1)!important;
    border-radius:20px!important;
    background:#fff!important;
    color:#425466!important;
    box-shadow:0 14px 34px rgba(0,0,0,.16)!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bootstrap-select>.dropdown-menu,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bootstrap-select>.dropdown-menu>.inner,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bootstrap-select>.dropdown-menu>.inner>ul.dropdown-menu{
    max-height:min(44dvh,320px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]){
    padding:6px!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]) .dropdown-item{
    margin:2px 0!important;
    padding:9px 12px!important;
    border-radius:12px!important;
    color:#425466!important;
    background:#fff!important;
    text-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]) .dropdown-item:hover,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]) .dropdown-item.active,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .dropdown-menu:not(.twa-native-search-popup):not(.wpestate-beds-baths-popup-wrapper):not(.wpestate-beds-baths-popoup-wrapper):not(.wpestate-price-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-component-popup-wrapper):not([class*="price"][class*="popup"]):not([class*="price"][class*="popoup"]) .dropdown-item.selected{
    background:rgba(199,169,104,.12)!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup .twa-room-choice-group{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:0!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    border-radius:999px!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup .twa-room-choice-group>*{
    min-width:0!important;
    margin:0!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup input.twa-price-entry{
    box-sizing:border-box!important;
    min-height:38px!important;
    padding:7px 10px!important;
    border:1px solid rgba(199,169,104,.82)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#111!important;
    -webkit-text-fill-color:#111!important;
    box-shadow:none!important;
    outline:0!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup input.twa-price-entry:focus{
    border-color:#c7a968!important;
    box-shadow:0 0 0 2px rgba(199,169,104,.16)!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup .twa-popup-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup .twa-popup-action{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:36px!important;
    margin:0!important;
    padding:7px 12px!important;
    border:1px solid #c7a968!important;
    border-radius:999px!important;
    background:#c7a968!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:none!important;
    white-space:nowrap!important;
    width:auto!important;
    min-width:0!important;
    float:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bs-searchbox,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .bs-actionsbox{
    display:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .label_radius,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .label_radius *{
    color:var(--twa-search-white)!important;
    font-size:14px!important;
    font-weight:400!important;
    text-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized #wpestate_slider_radius{
    --twa-search-progress:0%;
    height:6px!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(to right,var(--twa-search-gold) 0,var(--twa-search-gold) var(--twa-search-progress),#fff var(--twa-search-progress),#fff 100%)!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized #wpestate_slider_radius>.ui-slider-range{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized #wpestate_slider_radius>.ui-slider-handle{
    top:50%!important;
    width:18px!important;
    height:18px!important;
    margin-top:-9px!important;
    margin-left:-9px!important;
    border:3px solid #fff!important;
    border-radius:50%!important;
    background:var(--twa-search-gold)!important;
    box-shadow:0 3px 10px rgba(84,58,18,.22)!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized :is(#advanced_submit_1,button[type="submit"],input[type="submit"],.advanced_submit):not(.upp-twa-ba-search-btn){
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-search-btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-height:44px!important;
    margin:6px 0 0!important;
    padding:9px 16px!important;
    border:0!important;
    border-radius:999px!important;
    background:rgba(211,177,105,.86)!important;
    color:#fff!important;
    font-family:inherit!important;
    font-size:15px!important;
    font-weight:400!important;
    line-height:1!important;
    text-shadow:none!important;
    box-shadow:0 9px 24px rgba(105,73,24,.22),inset 0 1px 0 rgba(255,255,255,.38)!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-search-btn svg,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-search-btn svg *{
    width:18px!important;
    height:18px!important;
    fill:none!important;
    stroke:#fff!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .upp-twa-ba-search-btn span{
    font-weight:400!important;
    letter-spacing:-.01em!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized>form,
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized .wpresidence_note_half_search{
    margin-bottom:0!important;
    padding-bottom:0!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper{
    position:fixed!important;
    z-index:2147483638!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;
    left:50%!important;
    right:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    box-sizing:border-box!important;
    width:max-content!important;
    max-width:calc(100% - 20px)!important;
    min-height:0!important;
    margin:0!important;
    padding:5px!important;
    border:1px solid rgba(199,169,104,.2)!important;
    border-radius:14px!important;
    background:rgba(5,12,18,.84)!important;
    -webkit-backdrop-filter:blur(20px) saturate(145%)!important;
    backdrop-filter:blur(20px) saturate(145%)!important;
    box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
    transform:translateX(-50%)!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-width:0!important;
    min-height:38px!important;
    margin:0!important;
    padding:8px 12px!important;
    flex:0 0 auto!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.045)!important;
    color:rgba(255,255,255,.88)!important;
    font-family:Arial,"Helvetica Neue",sans-serif!important;
    font-size:11.5px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:-.005em!important;
    text-align:center!important;
    white-space:nowrap!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
    text-shadow:none!important;
    cursor:pointer!important;
    transition:color .18s ease,border-color .18s ease,background-color .18s ease,transform .18s ease!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings:hover,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map:hover,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn:hover{
    color:#fff!important;
    border-color:rgba(199,169,104,.42)!important;
    background:rgba(199,169,104,.09)!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings:active,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map:active,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn:active{
    transform:translateY(1px) scale(.985)!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings:focus-visible,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map:focus-visible,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn:focus-visible{
    outline:2px solid rgba(222,194,132,.9)!important;
    outline-offset:2px!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn svg,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn svg *{
    width:17px!important;
    height:17px!important;
    fill:none!important;
    stroke:currentColor!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .twa-controller-native-icon{
    display:none!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .twa-controller-icon{
    display:block!important;
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    flex:0 0 17px!important;
    overflow:visible!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.65!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    opacity:.94;
    transform-origin:50% 50%;
    transition:opacity .18s ease,transform .18s ease;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .twa-controller-icon-dot{
    fill:currentColor!important;
    stroke:none!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .upp-twa-ba-mobile-filter-inner{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    font-family:Arial,"Helvetica Neue",sans-serif!important;
    font-weight:600!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings :is(span,b,strong),
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map :is(span,b,strong),
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn :is(span,b,strong){
    font-family:Arial,"Helvetica Neue",sans-serif!important;
    font-weight:600!important;
    letter-spacing:-.005em!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper [data-twa-controller-icon="map"] .twa-controller-pin{
    stroke:currentColor!important;
  }

  @keyframes twa-controller-sequence{
    0%,28%,100%{opacity:.72;transform:translateY(0) scale(1);filter:none}
    7%{opacity:1;transform:translateY(-1px) scale(1.09);filter:none}
    14%{opacity:.92;transform:translateY(0) scale(1.025);filter:none}
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="filter"]>.upp-twa-ba-mobile-filter-btn,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="map"]>.half_mobile_toggle_map,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="listings"]>.half_mobile_toggle_listings,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.twa-controller-active{
    color:#fff!important;
    background:rgba(199,169,104,.11)!important;
    border-color:rgba(199,169,104,.72)!important;
    box-shadow:inset 0 0 0 1px rgba(199,169,104,.08)!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>:not(.half_mobile_toggle_listings):not(.half_mobile_toggle_map):not(.upp-twa-ba-mobile-filter-btn){
    display:none!important;
  }

  body.upp-twa-ba-panel-active .pac-container,
  body.upp-twa-ba-panel-active .ui-autocomplete{
    z-index:2147483646!important;
  }
}

@media (max-width:380px){
  body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized{
    width:calc(100vw - 24px)!important;
    padding:18px 16px!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn{
    gap:5px!important;
    padding-inline:10px!important;
    font-size:11px!important;
  }
}

/* One view control: it always offers the destination, never repeats the active view. */
@media (max-width:768px){
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings{
    display:none!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map.twa-controller-active{
    border-color:rgba(199,169,104,.42)!important;
    background:rgba(10,22,34,.3)!important;
  }
}

/* Controles clássicos: superfícies independentes, ícones originais e sem a
   caixa escura que agrupava os botões. */
@media (max-width:768px){
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper{
    gap:6px!important;
    width:calc(100% - 20px)!important;
    max-width:480px!important;
    padding:6px 8px!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_listings,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.half_mobile_toggle_map,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn{
    gap:6px!important;
    min-height:44px!important;
    padding:9px 7px!important;
    flex:1 1 0!important;
    border:1px solid transparent!important;
    border-radius:999px!important;
    background:rgba(10,22,34,.22)!important;
    color:#fff!important;
    font-size:12.5px!important;
    -webkit-backdrop-filter:blur(22px) saturate(175%)!important;
    backdrop-filter:blur(22px) saturate(175%)!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn svg,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.upp-twa-ba-mobile-filter-btn svg *,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .twa-controller-icon{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    flex:0 0 22px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.7!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper .twa-controller-icon{
    opacity:.96!important;
    animation:twa-controller-sequence 6s cubic-bezier(.22,.8,.3,1) infinite!important;
    animation-delay:calc(var(--twa-icon-sequence,0) * 2s)!important;
  }

  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="filter"]>.upp-twa-ba-mobile-filter-btn,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="map"]>.half_mobile_toggle_map,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper[data-upp-twa-ba-active-tab="listings"]>.half_mobile_toggle_listings,
  body.upp-twa-ba-panel-active .half_map_controllers_wrapper>.twa-controller-active{
    background:rgba(10,22,34,.22)!important;
    border-color:rgba(199,169,104,.72)!important;
    box-shadow:none!important;
  }
}

/* Popups de quartos/banheiros e preço: mesma linguagem do desktop, compacta no mobile. */
@media (max-width:768px){
  body.upp-twa-ba-panel-active .dropdown-menu.twa-native-search-popup.twa-beds-popup,
  body.upp-twa-ba-panel-active .dropdown-menu.twa-native-search-popup.twa-price-popup{
    box-sizing:border-box!important;
    width:min(365px,calc(100vw - 12px))!important;
    min-width:min(365px,calc(100vw - 12px))!important;
    max-width:calc(100vw - 12px)!important;
    max-height:min(360px,calc(100vh - 24px))!important;
    margin:0!important;
    padding:24px!important;
    overflow:auto!important;
    border:1px solid #e2e5e8!important;
    border-radius:4px!important;
    background:#fff!important;
    color:#26333d!important;
    box-shadow:0 12px 30px rgba(16,34,56,.18)!important;
    text-shadow:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* WP Residence publica "popoup" nessas classes. Os seletores exatos abaixo
     garantem o layout ainda no primeiro frame em que o menu é aberto. */
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper){
    box-sizing:border-box!important;
    width:min(330px,calc(100vw - 36px))!important;
    min-width:min(330px,calc(100vw - 36px))!important;
    max-width:calc(100vw - 36px)!important;
    height:auto!important;
    max-height:calc(100dvh - 36px)!important;
    padding:14px!important;
    overflow:auto!important;
    border:1px solid #e2e5e8!important;
    border-radius:18px!important;
    background:#fff!important;
    color:#26333d!important;
    box-shadow:0 12px 26px rgba(16,34,56,.16)!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3{
    margin:0 0 5px!important;
    color:#202a32!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.3!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3:nth-of-type(2){margin-top:8px!important}

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3+div{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    width:100%!important;
    margin:0 0 8px!important;
    overflow:hidden!important;
    border:1px solid #e0e4e7!important;
    border-radius:999px!important;
    background:#fff!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3+div>[data-value]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    min-width:0!important;
    min-height:32px!important;
    margin:0!important;
    padding:6px 2px!important;
    border:0!important;
    border-right:1px solid #e0e4e7!important;
    border-radius:0!important;
    background:#fff!important;
    color:#496477!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1!important;
    box-shadow:none!important;
    transition:background-color .18s ease,color .18s ease,transform .18s ease!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3+div>[data-value]:last-child{border-right:0!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3+div>[data-value]:is(.active,.selected,.wp_estate_component_item_selected){background:#c7a968!important;color:#fff!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>h3+div>[data-value]:active{transform:scale(.96)!important}

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper:not(.wpestate-price-popoup-wrapper)>div:has(>.wpestate-beds-baths-popoup-reset){
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:100%!important;
    margin:0!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper{
    box-sizing:border-box!important;
    width:min(330px,calc(100vw - 36px))!important;
    min-width:min(330px,calc(100vw - 36px))!important;
    max-width:calc(100vw - 36px)!important;
    height:auto!important;
    max-height:calc(100dvh - 36px)!important;
    padding:14px!important;
    overflow:auto!important;
    border:1px solid #e2e5e8!important;
    border-radius:18px!important;
    background:#fff!important;
    color:#26333d!important;
    box-shadow:0 12px 26px rgba(16,34,56,.16)!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>h3{margin:0 0 7px!important;color:#202a32!important;font-size:13px!important;font-weight:500!important;line-height:1.3!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>.adv_search_slider{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper .wpestate_pricev2_component_adv_search_wrapper{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;width:100%!important;margin:0 0 8px!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper .wpestate_pricev2_component_adv_search_wrapper>input.twa-price-entry{box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:36px!important;margin:0!important;padding:7px 12px!important;border:1px solid #e0e4e7!important;border-radius:999px!important;background:#fff!important;color:#496477!important;font-size:12px!important;line-height:20px!important;box-shadow:none!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>.adv_search_slider>p{display:flex!important;align-items:center!important;gap:4px!important;margin:0 0 8px!important;color:#496477!important;font-size:13px!important;line-height:1.3!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>.adv_search_slider>p :is(label,span){margin:0!important;font-size:13px!important;font-weight:400!important;line-height:1.3!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>.adv_search_slider>p span{color:#b88c35!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper #slider_price{box-sizing:border-box!important;width:100%!important;height:6px!important;margin:0 0 10px!important;border:1px solid rgba(199,169,104,.42)!important;border-radius:999px!important;background:#fff!important;box-shadow:none!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper #slider_price>.ui-slider-range{height:100%!important;border:0!important;border-radius:999px!important;background:#c7a968!important;box-shadow:none!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper>.twa-popup-action,
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper .twa-popup-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:auto!important;min-width:0!important;min-height:32px!important;margin:0 5px 0 0!important;padding:6px 11px!important;border:0!important;border-radius:999px!important;background:#c7a968!important;color:#fff!important;font-size:12px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;float:none!important;transition:transform .18s ease,background-color .18s ease!important}
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-beds-baths-popoup-wrapper .twa-popup-action:active{transform:scale(.97)!important}

  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup :is(h1,h2,h3,h4,label,p,strong,span){
    color:#26333d!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.25!important;
    text-shadow:none!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    width:100%!important;
    margin:5px 0 12px!important;
    overflow:hidden!important;
    border:1px solid #e0e4e7!important;
    border-radius:999px!important;
    background:#fff!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group>*{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    min-height:34px!important;
    margin:0!important;
    padding:6px 3px!important;
    border:0!important;
    border-right:1px solid #e0e4e7!important;
    border-radius:0!important;
    background:#fff!important;
    color:#496477!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1!important;
    box-shadow:none!important;
  }

  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group>*:last-child{border-right:0!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group>:is(.active,.selected,.current,.wp_estate_component_item_selected,[aria-pressed="true"],[aria-selected="true"]){background:#c7a968!important;color:#fff!important}

  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup input.twa-price-entry{
    display:inline-block!important;
    width:calc(50% - 4px)!important;
    min-height:38px!important;
    margin:0 4px 12px 0!important;
    padding:8px 14px!important;
    border:1px solid #e0e4e7!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#496477!important;
    font-size:13px!important;
    line-height:20px!important;
    box-shadow:none!important;
  }
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup input.twa-price-entry:nth-of-type(even){margin-right:0!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup :is(.wpestate_price_slider,.wpestate-price-slider,.ui-slider){margin:8px 0 14px!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup .ui-slider{height:5px!important;border:1px solid rgba(199,169,104,.42)!important;border-radius:999px!important;background:#fff!important;box-shadow:none!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup .ui-slider .ui-slider-range{height:100%!important;border:0!important;border-radius:999px!important;background:#c7a968!important;box-shadow:none!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup .ui-slider .ui-slider-handle{top:50%!important;width:18px!important;height:18px!important;margin-top:-9px!important;border:1px solid #dfe3e6!important;border-radius:50%!important;background:#fff!important;box-shadow:none!important}

  body.upp-twa-ba-panel-active .twa-native-search-popup :is(.twa-popup-actions,.wpestate-price-actions,.wpestate-beds-baths-actions){display:flex!important;align-items:center!important;gap:6px!important;margin-top:0!important}
  body.upp-twa-ba-panel-active .twa-native-search-popup .twa-popup-action{min-height:34px!important;padding:7px 12px!important;border:0!important;border-radius:999px!important;background:#c7a968!important;color:#fff!important;font-size:12px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important}
}

@media (prefers-reduced-motion:reduce){
  #adv-search-1.upp-twa-ba-panel-initialized,
  #upp-twa-ba-blur-overlay{
    transition:none!important;
    animation:none!important;
  }

  .half_map_controllers_wrapper .twa-controller-icon{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
  }
}

/* O filtro é um modal: durante a abertura ele fica acima de qualquer versão
   do cabeçalho do WP Residence, inclusive cabeçalhos sticky e transparentes. */
body.upp-twa-ba-panel-active :is(
  .master_header,
  .header_wrapper,
  .header_media,
  .wpestate_header_wrapper,
  .wpestate_header,
  .mobile_header,
  .mobile-header,
  .header_mobile,
  .header-type4,
  #header_wrapper,
  #header_container,
  #wpadminbar
){
  z-index:2147483643!important;
}
body.upp-twa-ba-panel-active #upp-twa-ba-blur-overlay{z-index:2147483644!important}
body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized{z-index:2147483647!important;isolation:isolate!important}

/* Quartos e Banheiros usam a mesma régua, mesmo quando o tema muda a marcação
   interna de um dos grupos. Os separadores são desenhados na própria opção. */
body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group{isolation:isolate!important}
body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group>*{position:relative!important;border-right:0!important}
body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-room-choice-group>*:not(:last-child)::after{
  position:absolute!important;z-index:3!important;top:0!important;right:0!important;bottom:0!important;width:1px!important;background:#e0e4e7!important;content:""!important;pointer-events:none!important;
}

/* O conector textual branco do tema é substituído por um traço dourado. */
body.upp-twa-ba-panel-active .twa-price-connector{display:inline!important;margin:0 2px!important;color:#b88c35!important;font:400 13px/1.3 Georgia,serif!important;text-shadow:none!important}

/* O dropdown nativo não pode ser cortado pelo scroll do formulário quando
   está aberto. A liberação é temporária e acionada somente pelo JavaScript. */
body.upp-twa-ba-panel-active #adv-search-1.upp-twa-ba-panel-initialized.twa-native-popup-open{overflow:visible!important;contain:layout!important}

/* No celular o preço é aplicado em tempo real pelo slider: os dois botões
   auxiliares não são necessários e ficam exclusivos do seletor de quartos. */
@media(max-width:767px){
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup :is(.twa-popup-actions,.wpestate-price-actions,.wpestate-beds-baths-actions),
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-price-popup .twa-popup-action,
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popoup-wrapper .twa-price-mobile-action,
  body.upp-twa-ba-panel-active #adv-search-1 .wpestate-price-popup-wrapper .twa-price-mobile-action{display:none!important}
}

/* Blindagem final do DOM nativo: Quartos e Banheiros recebem exatamente a
   mesma régua, mesmo quando o WP Residence usa classes diferentes nos itens. */
@media(max-width:768px){
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>h3+div{
    display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;width:100%!important;min-width:0!important;margin:0 0 8px!important;overflow:hidden!important;border:1px solid #e0e4e7!important;border-radius:999px!important;background:#fff!important;
  }
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>h3+div>*{
    position:relative!important;display:flex!important;box-sizing:border-box!important;min-width:0!important;min-height:34px!important;margin:0!important;padding:6px 2px!important;border:0!important;border-radius:0!important;align-items:center!important;justify-content:center!important;background:#fff!important;color:#496477!important;font:400 12px/1 Arial,sans-serif!important;box-shadow:none!important;
  }
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>h3+div>*:not(:last-child)::after{
    position:absolute!important;z-index:3!important;top:0!important;right:0!important;bottom:0!important;width:1px!important;background:#e0e4e7!important;content:""!important;pointer-events:none!important;
  }
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>h3+div>*:is(.active,.selected,.current,.wp_estate_component_item_selected,[aria-pressed="true"],[aria-selected="true"]){background:#c7a968!important;color:#fff!important}
}

/* Card do preço mais alto no mobile, sem aumentar a largura lateral. */
@media(max-width:768px){
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-price-popoup-wrapper,.wpestate-price-popup-wrapper){
    box-sizing:border-box!important;width:min(330px,calc(100vw - 36px))!important;min-width:min(330px,calc(100vw - 36px))!important;max-width:calc(100vw - 36px)!important;padding:28px 14px 68px!important;border-radius:22px!important;
  }
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-price-popoup-wrapper,.wpestate-price-popup-wrapper) .wpestate_pricev2_component_adv_search_wrapper>input.twa-price-entry{
    min-height:40px!important;padding:9px 14px!important;
  }
}

/* 21.10.81.147 — mapa limpo: remove somente tela cheia e as setas de
   navegação entre marcadores. Zoom, localização e cards permanecem ativos. */
html body #gmap_wrapper #gmap-control>#gmap-full,
html body #gmap_wrapper #gmap-control>#gmap-prev,
html body #gmap_wrapper #gmap-control>#gmap-next{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  min-width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  pointer-events:none!important;
}

/* Ações de quartos/banheiros mais finas; não afeta o seletor de preços. */
@media(max-width:768px){
  body.upp-twa-ba-panel-active #adv-search-1 :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper) .twa-popup-action,
  body.upp-twa-ba-panel-active .twa-native-search-popup.twa-beds-popup .twa-popup-action{
    min-height:28px!important;
    padding:3px 9px!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1!important;
  }
}

/* 21.10.81.137 — paginação Half Map centralizada, arredondada e translúcida. */
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination{
  display:flex!important;
  box-sizing:border-box!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  min-height:46px!important;
  margin:24px auto 92px!important;
  padding:5px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  overflow-x:auto!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  scrollbar-width:none!important;
  list-style:none!important;
}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination::-webkit-scrollbar{display:none!important}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li{display:flex!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li:empty{display:none!important}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a{
  display:grid!important;
  box-sizing:border-box!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(154,123,79,.12)!important;
  border-radius:999px!important;
  place-items:center!important;
  background:rgba(255,255,255,.34)!important;
  color:#4d4a43!important;
  font:400 12px/1 Georgia,"Times New Roman",serif!important;
  font-variant-numeric:tabular-nums!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:background-color .22s ease,border-color .22s ease,color .22s ease,transform .22s ease!important;
}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a:hover,
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a:focus-visible{
  border-color:rgba(154,123,79,.42)!important;
  outline:0!important;
  background:rgba(199,169,104,.2)!important;
  color:#725522!important;
  transform:translateY(-1px)!important;
}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li.active>a,
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a[aria-current="page"]{
  border-color:rgba(183,146,73,.5)!important;
  background:rgba(199,169,104,.76)!important;
  color:#fff!important;
  box-shadow:0 6px 14px rgba(154,123,79,.2)!important;
}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a:active{transform:translateY(0) scale(.96)!important}
body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a :is(i,svg){margin:0!important;font-size:12px!important;line-height:1!important}
.twa-half-map-pagination-dock{display:none!important}
body.twa-half-map-pagination-loading .twa-half-map-pagination{pointer-events:none!important;opacity:.64!important}
body.twa-half-map-pagination-loading .twa-half-map-pagination-dock:after{
  position:absolute!important;
  top:-5px!important;
  left:50%!important;
  width:28px!important;
  height:2px!important;
  border-radius:999px!important;
  background:#c7a968!important;
  content:""!important;
  transform:translateX(-50%)!important;
  animation:twa-half-map-pagination-progress .9s ease-in-out infinite alternate!important;
}
@keyframes twa-half-map-pagination-progress{from{opacity:.35;transform:translateX(-50%) scaleX(.45)}to{opacity:1;transform:translateX(-50%) scaleX(1)}}
@media(max-width:767px){
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination{min-height:44px!important;margin:20px auto 94px!important;padding:5px!important}
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;font-size:11px!important}
  body.twa-half-map-map-active .twa-half-map-pagination-dock{
    position:fixed!important;
    z-index:2147483637!important;
    right:auto!important;
    bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;
    left:50%!important;
    display:block!important;
    width:max-content!important;
    max-width:calc(100vw - 28px)!important;
    margin:0!important;
    padding:0!important;
    transform:translateX(-50%)!important;
  }
  body.twa-half-map-map-active .twa-half-map-pagination-dock .twa-half-map-pagination{max-width:calc(100vw - 28px)!important;margin:0!important}
}
@media(prefers-reduced-motion:reduce){body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a{transition:none!important}body.twa-half-map-pagination-loading .twa-half-map-pagination-dock:after{animation:none!important}}

/* 21.10.81.142 — paginação no local original, sem tocar no grid dos cards. */
body.twa-half-map-ready #google_map_prop_list_sidebar .twa-half-map-pagination{
  position:relative!important;
  right:auto!important;
  left:50%!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  margin-right:0!important;
  margin-left:0!important;
  clear:both!important;
  float:none!important;
  transform:translateX(-50%)!important;
}
body.twa-half-map-ready .twa-half-map-pagination-dock{display:none!important}

/* 21.10.81.178 — não deixa um CTA de corretor legado ocupar uma linha vazia
   acima do calendário na página do imóvel, mesmo se os ajustes opcionais
   de agendamento estiverem desativados. */
body.single-estate_property .wpestate_schedule_tour_wrapper.wpestate_contact_form_parent
:is(.twa-corretor-premium-v6,.twa-corretor-premium-v5,.twa-whatsapp-corretor-v4,.twa-talk-realtor-now){
  display:none!important;
  position:absolute!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* 21.10.81.177 — paginação móvel mais presente, sem cartão ou sombras ao redor. */
@media(max-width:767px){
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination{
    min-height:42px!important;
    margin:22px auto 94px!important;
    padding:0!important;
    gap:5px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    font-size:13px!important;
    box-shadow:none!important;
  }
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li.active>a,
  body:is(.half_map_body,.wpresidence_half_map_body_class) .twa-half-map-pagination>li>a[aria-current="page"]{
    box-shadow:none!important;
  }
}

/* 21.10.81.146 — Quartos e Banheiros com geometria idêntica.
   O WP Residence aplica largura/float e uma classe de seleção diferente em
   Banheiros. Esta camada neutraliza esses estilos sem alterar a interação. */
@media(max-width:768px){
  body.upp-twa-ba-panel-active #adv-search-1
  :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>.twa-room-choice-group{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-auto-flow:column!important;
    gap:0!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1
  :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>.twa-room-choice-group>
  :is(.wp_estate_beds_component_item,.wp_estate_baths_component_item){
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    float:none!important;
    flex:none!important;
    grid-column:auto!important;
    box-sizing:border-box!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:34px!important;
    margin:0!important;
    padding:6px 2px!important;
    border:0!important;
    border-radius:0!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    background-image:none!important;
    color:#496477!important;
    box-shadow:none!important;
    transform:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1
  :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>.twa-room-choice-group>
  :is(.wp_estate_beds_component_item,.wp_estate_baths_component_item)::before{
    display:none!important;
    content:none!important;
  }

  body.upp-twa-ba-panel-active #adv-search-1
  :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>.twa-room-choice-group>
  :is(.wp_estate_beds_component_item_selected,.wp_estate_baths_component_item_selected),
  body.upp-twa-ba-panel-active #adv-search-1
  :is(.wpestate-beds-baths-popoup-wrapper,.wpestate-beds-baths-popup-wrapper):not(.wpestate-price-popoup-wrapper):not(.wpestate-price-popup-wrapper)>.twa-room-choice-group>
  :is(.wp_estate_beds_component_item,.wp_estate_baths_component_item):is(.active,.selected,.current,.wp_estate_component_item_selected,[aria-pressed="true"],[aria-selected="true"]){
    background:#c7a968!important;
    background-image:none!important;
    color:#fff!important;
  }
}

/* 21.10.81.151 — superfície quente da busca no Half Map desktop. */
@media(min-width:769px){
  body #google_map_prop_list_sidebar #adv-search-1.adv-search-1.halfsearch.twa-search-enhanced{
    background:#f5f1e9!important;
    background-color:#f5f1e9!important;
  }
}

/* O formulário nativo do tema nasce antes da camada TWA. Ele permanece
   invisível até ser aprimorado, evitando qualquer flash da busca antiga. */
body :is(#adv-search-1,.adv-search-1,.advanced_search_wrapper):not(.twa-search-enhanced),
body .search_wrapper>:is(#adv-search-1,.adv-search-1):not(.twa-search-enhanced){
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Durante uma busca, o WP Residence pode inserir a lista completa antes da
   resposta filtrada. A camada de espera preserva o espaço e libera somente o
   resultado final, sem salto visual ou cards incorretos. */
body.twa-search-results-loading #listing_ajax_container{
  position:relative!important;
  min-height:clamp(220px,42vh,420px)!important;
}
body.twa-search-results-loading #listing_ajax_container>*{
  opacity:0!important;
  pointer-events:none!important;
}
body.twa-search-results-loading #listing_ajax_container::after{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  min-height:inherit!important;
  place-items:center!important;
  background:rgba(245,241,233,.84)!important;
  color:#8d6d37!important;
  content:'Atualizando imóveis'!important;
  font:600 12px/1.2 Georgia,"Times New Roman",serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  -webkit-backdrop-filter:blur(3px)!important;
  backdrop-filter:blur(3px)!important;
}

/* Durante a troca, nenhuma contagem antiga é exibida. O feedback é somente
   visual e ocupa a própria área dos cards, sem deslocar o mapa ou a paginação. */
body.twa-search-results-loading :is(#results,#results_no,.results_no,.property_list_count,.listing-results-count){
  visibility:hidden!important;
  pointer-events:none!important;
}
body.twa-search-results-loading #google_map_prop_list_sidebar>.single-content{
  visibility:hidden!important;
  pointer-events:none!important;
}
/* Em alguns breakpoints o WP Residence move o título para a coluna do mapa.
   A cobertura das duas colunas impede a contagem global de reaparecer antes
   de o AJAX concluir o filtro. */
body.twa-search-results-loading .wpresidence_property_list_half_map_core :is(#google_map_prop_list_sidebar,#google_map_prop_list_wrapper,.google_map_prop_list) .single-content,
body.twa-search-results-loading .wpresidence_property_list_half_map_core .single-content{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.twa-search-stale-summary{
  visibility:hidden!important;
  pointer-events:none!important;
}
body.twa-search-results-loading #listing_loader,
body.twa-search-results-loading #listing_ajax_container::after{
  display:none!important;
  content:none!important;
}
body #listing_ajax_container>.twa-search-results-preloader{
  display:none!important;
}
body.twa-search-results-loading #listing_ajax_container>.twa-search-results-preloader{
  position:absolute!important;
  z-index:4!important;
  inset:0!important;
  display:grid!important;
  min-height:inherit!important;
  place-items:center!important;
  background:rgba(245,241,233,.84)!important;
  opacity:1!important;
  pointer-events:none!important;
  -webkit-backdrop-filter:blur(3px)!important;
  backdrop-filter:blur(3px)!important;
}
/* O resultado usa a mesma assinatura TWA da transição entre páginas. O
   pseudo-elemento sobrevive à troca do HTML da lista e não cria nós órfãos. */
body.twa-search-results-loading #listing_ajax_container::before,
body.twa-search-results-loading #listing_ajax_container::after{
  position:absolute!important;
  z-index:4!important;
  left:50%!important;
  top:50%!important;
  display:block!important;
  pointer-events:none!important;
}
body.twa-search-results-loading #listing_ajax_container::before{
  content:'TWA'!important;
  color:#c7a968!important;
  font:700 13px/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:.32em!important;
  text-indent:.32em!important;
  transform:translate(-50%,-20px)!important;
}
body.twa-search-results-loading #listing_ajax_container::after{
  width:108px!important;
  height:2px!important;
  overflow:hidden!important;
  content:''!important;
  background:linear-gradient(90deg,rgba(199,169,104,.18) 0 29%,#f8df91 40%,#c7a968 50%,#f8df91 60%,rgba(199,169,104,.18) 71% 100%)!important;
  background-size:240% 100%!important;
  transform:translate(-50%,13px)!important;
  animation:twa-search-loader-sweep .88s cubic-bezier(.55,.06,.28,.95) infinite!important;
}
@keyframes twa-search-loader-sweep{to{background-position:240% 0}}
@media(prefers-reduced-motion:reduce){
  body.twa-search-results-loading #listing_ajax_container::after{animation:none!important;background-position:50% 0!important}
}
.twa-search-request-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:16px 18px;border:1px solid #d8c59e;border-radius:14px;background:#faf6ed;color:#493c27;font:400 14px/1.5 Georgia,serif}
.twa-search-request-notice p{margin:0}
.twa-search-request-notice button{flex-shrink:0;padding:9px 14px;border:1px solid #b3975d;border-radius:999px;background:transparent;color:#614c25;cursor:pointer;font:inherit}
.twa-search-request-notice button:hover,.twa-search-request-notice button:focus-visible{background:#eadcbc;outline:2px solid #b3975d;outline-offset:2px}
.twa-search-empty{padding:20px;color:#493c27;font:400 15px/1.5 Georgia,serif}
@media(max-width:767px){.twa-search-request-notice{align-items:flex-start;flex-direction:column;margin:12px 8px;font-size:13px}}

/* Search loading must never create a pseudo-element inside the results grid.
   WP Residence can inherit its column dimensions into that element, producing
   a false vertical loader after an empty result. Keep the previous list muted
   until the real response replaces it instead. */
body.twa-search-results-loading #listing_ajax_container{min-height:0!important}
body.twa-search-results-loading #listing_ajax_container>*{opacity:.42!important;pointer-events:none!important;transition:opacity .14s ease!important}
body.twa-search-results-loading #listing_ajax_container::before,
body.twa-search-results-loading #listing_ajax_container::after,
body.twa-search-results-loading #listing_ajax_container>.twa-search-results-preloader{display:none!important;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;content:none!important;animation:none!important;background:none!important}
body:not(.twa-search-results-loading) #listing_ajax_container>*{opacity:1!important;pointer-events:auto!important}
