.elementor-84848 .elementor-element.elementor-element-mhtsrch{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-84848 .elementor-element.elementor-element-a24c001{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for shortcode, class: .elementor-element-f58bb4a *//* ==========================================================================
   MHT MASTER SHOWCASE IDX SEARCH — TEMPLATE 84909
   Single source of truth. Do not copy or override on individual pages.
   ========================================================================== */

/* 1. Component Scope and Variables
   Triple semantic scope is intentionally retained where legacy page CSS or
   late Showcase IDX rules otherwise win. No Elementor-generated IDs are used. */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot {
  --mht-search-black: #111111;
  --mht-search-ink: #171717;
  --mht-search-gold: #B08D46;
  --mht-search-gold-light: #C9A24E;
  --mht-search-white: #FFFFFF;
  --mht-search-warm: #FAF8F4;
  --mht-search-border: #D6D6D6;
  --mht-search-radius: 8px;
}

/* 2. Base Structure */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-widget-wrapper,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-searchform,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-searchform > div {
  width: 100%;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-basic {
  display: grid !important;
  grid-template-columns: 531px 104px 96px 96px 108px 160px !important;
  align-items: stretch !important;
  column-gap: 8.2px !important;
  row-gap: 12px !important;
  padding: 16px !important;
  overflow: visible !important;
  background: var(--mht-search-white) !important;
  border: 1px solid var(--mht-search-border) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-beds-and-baths {
  display: contents !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-locations-field-wrapper,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-beds-and-baths > div,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-search,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-primary {
  margin: 0 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-save-search-pill {
  display: none !important;
}

/* 3. Desktop Layout
   Explicit child widths are required at 1280px and above to defeat legacy city-page
   IDX rules while preserving the approved 531/104/96/96/108/160 tracks. */
@media (min-width: 1280px) {
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range {
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-beds-and-baths > div {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-search {
    width: 108px !important;
    min-width: 108px !important;
    max-width: 108px !important;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-primary {
    width: 160px !important;
    min-width: 160px !important;
    max-width: 160px !important;
  }
  /* A compact selected range needs slightly more breathing room than the
     default Price label. Transfer 16px from Location without changing the
     total row width, gaps, or CTA position. */
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-basic:has(.sidx-range.sidx-has-value) {
    grid-template-columns: 515px 120px 96px 96px 108px 160px !important;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-basic:has(.sidx-range.sidx-has-value) .sidx-range.sidx-has-value {
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
  }
}

/* 4. Tablet and Intermediate Layout
   The fixed desktop tracks require 1168px inside the white shell. Activate the
   deliberate equal-grid layout before the available component width drops
   below that requirement, rather than allowing the CTA to escape. */
@media (max-width: 1279px) {
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-basic {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: 6px !important;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-locations-field-wrapper,
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-primary {
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0;
    max-width: none;
  }
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range,
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-beds-and-baths > div,
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-search {
    grid-column: auto;
    width: 100% !important;
    min-width: 0;
    max-width: none;
  }
}

/* 5. Mobile Layout */
@media (max-width: 767px) {
  .elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-basic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 14px !important;
  }
}

/* 6. Search Input */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input {
  height: 48px !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-radius: var(--mht-search-radius) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input input {
  height: 46px !important;
  min-height: 46px !important;
  line-height: 46px !important;
  border: 0 !important;
  border-radius: 7px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input input:focus,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input:focus-within,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-suggestions-input:has(input:focus-visible) {
  border: 1px solid var(--mht-search-gold) !important;
  border-radius: var(--mht-search-radius) !important;
  outline: none !important;
  box-shadow: inset 0 0 0 1px var(--mht-search-gold) !important;
}

/* 7. Filter Controls */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot input,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-field,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-search {
  height: 48px !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 48px !important;
  text-align: left !important;
  color: var(--mht-search-black) !important;
  background: var(--mht-search-white) !important;
  border-color: var(--mht-search-border) !important;
  border-radius: var(--mht-search-radius) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-field {
  display: flex !important;
  align-items: center !important;
  padding-left: 9px !important;
  padding-right: 6px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range .sidx-field,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-beds-and-baths .sidx-field,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-toggle {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-black) !important;
  border: 1px solid var(--mht-search-gold) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range.sidx-has-value .sidx-field {
  padding-left: 10px !important;
  padding-right: 10px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: 100% !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 6px 0 9px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-toggle > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-streamlined-toggle .sidx-icon {
  line-height: 1 !important;
  margin: 0 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-primary {
  height: 48px !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 20px !important;
  color: #000000 !important;
  background: var(--mht-search-gold) !important;
  border-color: var(--mht-search-gold) !important;
  border-radius: var(--mht-search-radius) !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-collapse-button {
  display: flex !important;
  width: max-content;
  margin: 14px auto 0 !important;
  color: var(--mht-search-gold-light) !important;
  font-weight: 600;
}

/* 8. Price Dropdown */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range .sidx-floating-menu {
  width: 330px !important;
  min-width: 330px !important;
  max-width: calc(100vw - 24px) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range .sidx-range-inputs {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: stretch !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range .sidx-labeled-input,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-range .sidx-labeled-input input {
  width: 100% !important;
  min-width: 0 !important;
}

/* 9. Beds and Baths Dropdowns */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu {
  overflow: hidden !important;
  color: var(--mht-search-ink) !important;
  background: var(--mht-search-white) !important;
  border: 1px solid #D8D2C8 !important;
  border-radius: 10px !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .20) !important;
  font-family: Inter, sans-serif !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-field-dropdown {
  background: var(--mht-search-white) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-options-list {
  padding: 6px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option {
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  padding: 9px 12px !important;
  color: var(--mht-search-ink) !important;
  background: transparent !important;
  border-radius: 7px !important;
  font-family: Inter, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  transition: background-color 160ms ease, color 160ms ease !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option:hover,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option:focus,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option:focus-visible {
  color: var(--mht-search-black) !important;
  background: #F3EFE7 !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: -2px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option.sidx-selected,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-option[aria-selected="true"] {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-ink) !important;
  box-shadow: inset 3px 0 0 var(--mht-search-gold) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-range-inputs {
  gap: 8px !important;
  padding: 12px !important;
  background: var(--mht-search-warm) !important;
  border-bottom: 1px solid #E3DED4 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-labeled-input {
  overflow: hidden !important;
  min-width: 0 !important;
  background: var(--mht-search-white) !important;
  border: 1px solid #CFC7B8 !important;
  border-radius: var(--mht-search-radius) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-labeled-input:focus-within,
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-labeled-input.sidx-active {
  border-color: var(--mht-search-gold) !important;
  box-shadow: 0 0 0 2px rgba(176, 141, 70, .22) !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-labeled-input label {
  padding: 5px 7px 2px !important;
  color: #7A5F28 !important;
  background: transparent !important;
  font-family: Inter, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-labeled-input input {
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 7px 5px !important;
  color: var(--mht-search-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-input-dash {
  color: #8A8378 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu .sidx-use-exact {
  padding: 10px 12px 12px !important;
  color: #34312C !important;
  border-top: 1px solid #E8E3DA !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot .sidx-floating-menu input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin-right: 8px !important;
  accent-color: #8A6C2E !important;
}

/* 10. More Modal
   The modal is portaled under body, so the helper-owned body class is the
   narrowest stable scope available outside template 84909. */
body.mht-showcase-search-modal-open .ReactModal__Overlay {
  background: rgba(8, 8, 8, .76) !important;
  backdrop-filter: blur(2px);
}

body.mht-showcase-search-modal-open .ReactModal__Content {
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal {
  overflow: hidden !important;
  max-width: min(760px, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px) !important;
  color: var(--mht-search-ink) !important;
  background: #FBFAF7 !important;
  border: 1px solid var(--mht-search-gold) !important;
  border-radius: 14px !important;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .38) !important;
  font-family: Inter, sans-serif !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-modal-contents {
  padding: 26px 28px 20px !important;
  background: #FBFAF7 !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-modal-close {
  top: 10px !important;
  right: 10px !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--mht-search-ink) !important;
  background: #F1ECE3 !important;
  border: 1px solid #D8D2C8 !important;
  border-radius: 50% !important;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-modal-close:hover,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-modal-close:focus-visible {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-ink) !important;
  border-color: var(--mht-search-gold) !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: 2px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-modal__grid {
  gap: 28px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-title {
  margin-bottom: 8px !important;
  color: var(--mht-search-ink) !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-types-toggle {
  overflow: hidden !important;
  padding: 3px !important;
  background: #ECE7DE !important;
  border: 1px solid #D8D2C8 !important;
  border-radius: 9px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-types-toggle > div {
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #3B3833 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 6px !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  transition: background-color 160ms ease, color 160ms ease !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-types-toggle > div:hover,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-types-toggle > div:focus-visible {
  color: var(--mht-search-black) !important;
  background: #F8F5EF !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: -2px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-select-menu-content,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-suggestions-input,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-searchbox > div:first-child,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-increment-input input {
  color: var(--mht-search-ink) !important;
  background: var(--mht-search-white) !important;
  border: 1px solid #CFC7B8 !important;
  border-radius: var(--mht-search-radius) !important;
  box-shadow: none !important;
  font-family: Inter, sans-serif !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-select-menu-selection,
body.mht-showcase-search-modal-open .sidx-streamlined-modal input,
body.mht-showcase-search-modal-open .sidx-streamlined-modal label,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-standardized-field {
  color: #34312C !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin-right: 8px !important;
  accent-color: #8A6C2E !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-standardized-field label {
  min-height: 32px !important;
  display: flex !important;
  align-items: center !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-filter {
  margin-bottom: 18px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-add-keyword,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-done {
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 18px !important;
  color: var(--mht-search-black) !important;
  background: var(--mht-search-gold) !important;
  border: 1px solid var(--mht-search-gold) !important;
  border-radius: var(--mht-search-radius) !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  transition: background-color 160ms ease, color 160ms ease !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-add-keyword:hover,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-done:hover,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-add-keyword:focus-visible,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-done:focus-visible {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-ink) !important;
  border-color: var(--mht-search-ink) !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: 2px !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-increment-down,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-increment-up {
  color: var(--mht-search-ink) !important;
  background: #F1ECE3 !important;
  border: 1px solid #D8D2C8 !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-increment-down:hover,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-increment-up:hover {
  background: #E7DDCC !important;
  border-color: var(--mht-search-gold) !important;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-footer {
  margin-top: 4px !important;
  padding-top: 16px !important;
  border-top: 1px solid #DED8CE !important;
}

@media (max-width: 767px) {
  body.mht-showcase-search-modal-open .sidx-streamlined-modal {
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100vh - 20px) !important;
    border-radius: 12px !important;
  }
  body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-modal-contents {
    padding: 56px 18px 16px !important;
  }
  body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-streamlined-modal__grid {
    gap: 18px !important;
  }
}

/* 11. Focus and Keyboard States */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot.mht-home-search-pilot.mht-home-search-pilot :is(input, button, [tabindex="0"], [tabindex="1"]):focus-visible {
  outline: 3px solid var(--mht-search-gold) !important;
  outline-offset: 3px;
}

body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-floating-menu-anchor:focus-visible .sidx-select-menu-content,
body.mht-showcase-search-modal-open .sidx-streamlined-modal .sidx-suggestions-input:focus-within,
body.mht-showcase-search-modal-open .sidx-streamlined-modal input:focus-visible {
  border-color: var(--mht-search-gold) !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

/* Vendor's selected-tab and Done-button focus colors load late. The following
   two high-specificity groups are intentionally retained for visual parity. */
html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-search.sidx-streamlined-search .sidx-streamlined-types-toggle.sidx-streamlined-types-toggle > div.sidx-selected.sidx-selected,
html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-search.sidx-streamlined-search .sidx-streamlined-types-toggle.sidx-streamlined-types-toggle > div.sidx-selected.sidx-selected:hover,
html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-search.sidx-streamlined-search .sidx-streamlined-types-toggle.sidx-streamlined-types-toggle > div.sidx-selected.sidx-selected:focus,
html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-search.sidx-streamlined-search .sidx-streamlined-types-toggle.sidx-streamlined-types-toggle > div.sidx-selected.sidx-selected:focus-visible {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-ink) !important;
  background-color: var(--mht-search-ink) !important;
  box-shadow: inset 0 -2px 0 var(--mht-search-gold) !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: -2px !important;
}

html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-done.sidx-streamlined-done {
  color: var(--mht-search-black) !important;
  background: var(--mht-search-gold) !important;
  background-color: var(--mht-search-gold) !important;
  border-color: var(--mht-search-gold) !important;
  opacity: 1 !important;
}

html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-done.sidx-streamlined-done:hover,
html body.mht-showcase-search-modal-open .sidx-container.sidx-modal-container .sidx-modal.sidx-streamlined-modal .sidx-streamlined-done.sidx-streamlined-done:focus-visible {
  color: var(--mht-search-white) !important;
  background: var(--mht-search-ink) !important;
  background-color: var(--mht-search-ink) !important;
  border-color: var(--mht-search-ink) !important;
  outline: 2px solid var(--mht-search-gold) !important;
  outline-offset: 2px !important;
}

/* 12. Dropdown Positioning and Stacking
   The functional shell must remain visible so absolute vendor menus can escape
   the rounded white row without increasing its height. */
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot .sidx-basic {
  overflow: visible !important;
}

/* Keep the reusable search instance above later Hero siblings without creating
   a sitewide stacking rule. Open vendor menus receive one local layer above
   the component so city navigation and the Trust Bar cannot paint over them. */
.mht-master-showcase-search-instance:has(.mht-home-search-pilot),
.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot {
  position: relative;
  z-index: 20;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot .sidx-floating-menu-anchor:has(> .sidx-floating-menu) {
  z-index: 21 !important;
}

.elementor-84848 .elementor-element.elementor-element-f58bb4a.mht-home-search-pilot .sidx-floating-menu {
  z-index: 22 !important;
}

/* 13. Accessibility Helpers
   Keyboard and ARIA behavior is implemented in the adjacent scoped HTML helper.
   No generated CSS is used for semantic state. */

/* 14. Vendor-Specific Exceptions
   Required vendor contracts:
   .sidx-basic, .sidx-range, .sidx-beds-and-baths, .sidx-streamlined-search,
   .sidx-floating-menu, .sidx-streamlined-modal, ReactModal__Body--open.
   Retest after any Showcase IDX markup or class-name update. *//* End custom CSS */