/* VM HOME MOBILE SEARCH V4 CSS */
.vm-lt4-field{display:none}
.vm-lt4-sheet{display:none}

@media(max-width:1000px){
  .home-hero .hero-search-wrap{
    display:block!important;
    position:relative!important;
    left:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:calc(100% - 20px)!important;
    max-width:620px!important;
    margin:0 auto!important;
    z-index:30!important;
  }

  /* Safe fallback: old fields remain visible until JS finishes building V4. */
  .home-hero #desktop-search{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  .home-hero #desktop-search.vm-lt4-ready{
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    gap:5px!important;
  }

  .home-hero #desktop-search.vm-lt4-ready>.vm-lt4-original-hidden{
    display:none!important;
  }

  .home-hero #desktop-search.vm-lt4-ready>.vm-lt4-field{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:47px!important;
    height:47px!important;
    padding:0 13px!important;
    margin:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
    color:#17211e!important;
    border:0!important;
    border-radius:8px!important;
    overflow:hidden!important;
  }

  .home-hero #desktop-search.vm-lt4-ready>.vm-lt4-field>button{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    height:100%!important;
    gap:11px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    color:inherit!important;
    text-align:left!important;
    font:inherit!important;
    cursor:pointer!important;
  }

  .home-hero #desktop-search .vm-lt4-field svg{
    width:20px!important;
    height:20px!important;
    flex:0 0 20px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
  }

  .home-hero #desktop-search .vm-lt4-value{
    display:block!important;
    min-width:0!important;
    font-size:15px!important;
    line-height:1.15!important;
    color:#17211e!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .home-hero #desktop-search .vm-lt4-value.vm-muted{
    color:#757e7b!important;
  }

  .home-hero #desktop-search.vm-lt4-ready .search-submit{
    display:block!important;
    width:100%!important;
    min-height:47px!important;
    height:47px!important;
    margin:0!important;
    padding:0 16px!important;
    border:0!important;
    border-radius:8px!important;
    font-size:15px!important;
    font-weight:700!important;
    letter-spacing:.075em!important;
    text-transform:uppercase!important;
  }

  .home-hero #desktop-search.vm-lt4-ready>.vm-property-submit{
    display:contents!important;
  }
  .home-hero .search-note{display:none!important}

  .vm-lt4-sheet{
    position:fixed!important;
    inset:0!important;
    z-index:10080!important;
    display:none!important;
    padding:12px 10px!important;
    box-sizing:border-box!important;
    background:rgba(12,18,17,.56)!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
  }
  .vm-lt4-sheet.vm-open{display:block!important}

  .vm-lt4-card{
    width:min(100%,520px)!important;
    margin:0 auto!important;
    background:#fff!important;
    color:#17211e!important;
    border-radius:12px!important;
    box-shadow:0 22px 55px rgba(0,0,0,.24)!important;
    overflow:hidden!important;
  }

  .vm-lt4-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px 16px 12px!important;
    border-bottom:1px solid rgba(23,33,30,.09)!important;
  }
  .vm-lt4-title{font-size:18px!important;font-weight:650!important;line-height:1.2!important}
  .vm-lt4-subtitle{margin-top:3px!important;font-size:12px!important;color:#7a817f!important;line-height:1.35!important}
  .vm-lt4-close{
    border:0!important;background:transparent!important;color:#17211e!important;
    font-size:28px!important;line-height:1!important;padding:0!important;cursor:pointer!important;
  }
  .vm-lt4-body{padding:12px!important}

  .vm-lt4-search{
    width:100%!important;height:43px!important;box-sizing:border-box!important;
    border:1px solid rgba(23,33,30,.14)!important;border-radius:8px!important;
    padding:0 12px!important;font-size:15px!important;outline:none!important;
    background:#fff!important;color:#17211e!important;
  }
  .vm-lt4-breadcrumb{
    display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;
    margin:10px 0 6px!important;font-size:12px!important;color:#6f7774!important;
  }
  .vm-lt4-crumb{
    border:0!important;background:transparent!important;padding:0!important;
    color:#315f54!important;cursor:pointer!important;font-size:12px!important;
  }
  .vm-lt4-list{
    margin-top:8px!important;max-height:58vh!important;overflow:auto!important;
    border-top:1px solid rgba(23,33,30,.08)!important;
  }
  .vm-lt4-option{
    width:100%!important;min-height:45px!important;display:flex!important;align-items:center!important;
    justify-content:space-between!important;gap:14px!important;padding:9px 4px!important;
    border:0!important;border-bottom:1px solid rgba(23,33,30,.08)!important;
    background:#fff!important;color:#17211e!important;text-align:left!important;
    font-size:15px!important;cursor:pointer!important;
  }
  .vm-lt4-option.vm-all{font-weight:650!important;color:#315f54!important}
  .vm-lt4-loading{padding:18px 4px!important;font-size:14px!important;color:#7a817f!important}

  .vm-lt4-calendar-head{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:10px!important;margin-bottom:7px!important;
  }
  .vm-lt4-cal-nav{
    width:30px!important;height:30px!important;flex:0 0 30px!important;
    border:0!important;border-radius:7px!important;background:#f1f1ed!important;color:#17211e!important;
    font-size:19px!important;line-height:1!important;cursor:pointer!important;opacity:.48!important;
  }
  .vm-lt4-cal-month{flex:1 1 auto!important;text-align:center!important;font-size:16px!important;font-weight:650!important}
  .vm-lt4-swipe-hint{
    text-align:center!important;font-size:11px!important;line-height:1.3!important;
    color:#7b8380!important;padding:0 4px 8px!important;user-select:none!important;-webkit-user-select:none!important;
  }
  .vm-lt4-cal-grid{
    display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;
    touch-action:pan-y!important;-ms-touch-action:pan-y!important;overscroll-behavior:contain!important;
  }
  .vm-lt4-weekday{
    font-size:10px!important;color:#7b8380!important;text-align:center!important;
    padding:4px 0 6px!important;text-transform:uppercase!important;letter-spacing:.04em!important;
  }
  .vm-lt4-day,.vm-lt4-empty{height:38px!important}
  .vm-lt4-day{
    border:0!important;border-radius:7px!important;background:#fff!important;color:#17211e!important;
    font-size:14px!important;cursor:pointer!important;
  }
  .vm-lt4-day.vm-disabled{color:#c1c6c4!important;cursor:default!important}
  .vm-lt4-day.vm-range{background:#eef1ef!important;border-radius:0!important}
  .vm-lt4-day.vm-start,.vm-lt4-day.vm-end{background:#173d32!important;color:#fff!important;border-radius:7px!important}
  .vm-lt4-day.vm-today{box-shadow:inset 0 0 0 1px rgba(23,61,50,.28)!important}

  .vm-lt4-foot{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:10px!important;padding:10px 12px 14px!important;border-top:1px solid rgba(23,33,30,.09)!important;
  }
  .vm-lt4-secondary,.vm-lt4-primary{
    min-height:39px!important;border:0!important;border-radius:8px!important;
    padding:0 14px!important;font-size:14px!important;cursor:pointer!important;
  }
  .vm-lt4-secondary{background:#f1f1ed!important;color:#17211e!important}
  .vm-lt4-primary{background:#173d32!important;color:#fff!important;margin-left:auto!important}

  .vm-lt4-people{padding:2px 2px 4px!important}
  .vm-lt4-person-row{
    display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:16px!important;
    min-height:61px!important;border-bottom:1px solid rgba(23,33,30,.08)!important;
  }
  .vm-lt4-person-row:last-child{border-bottom:0!important}
  .vm-lt4-person-label strong{display:block!important;font-size:15px!important;font-weight:650!important}
  .vm-lt4-person-label span{display:block!important;margin-top:3px!important;font-size:12px!important;color:#7d8582!important}
  .vm-lt4-stepper{display:flex!important;align-items:center!important;gap:10px!important}
  .vm-lt4-stepper button{
    width:34px!important;height:34px!important;border:1px solid rgba(23,33,30,.16)!important;
    border-radius:50%!important;background:#fff!important;color:#17211e!important;
    font-size:21px!important;line-height:1!important;cursor:pointer!important;
  }
  .vm-lt4-stepper span{min-width:22px!important;text-align:center!important;font-size:15px!important}
}

/* VM HOME MOBILE PROPERTY ID RELOCATE V42 */
@media(max-width:1000px){
  /* Quick hero search: no Property ID. */
  .home-hero #desktop-search.vm-lt4-ready .vm-property-id-compact{
    display:none!important;
  }
  .home-hero #desktop-search.vm-lt4-ready #desktop-property-id{
    display:none!important;
  }

  /*
   * Detailed mobile search keeps its own Property ID field.
   * We do not force the whole mobile-search form open here;
   * this only preserves the field when that detailed panel/menu is opened.
   */
  #mobile-search .vm-property-id-field{
    grid-column:1/-1!important;
  }
}
