/* Center only the homepage hero search beneath the banner. */
body.home .main-search-container.main-search-simple-slider
  .simple-slider-search-form
  .container.main-search-inner {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.home form.listeo-form-search_on_home_page {
  box-sizing: border-box !important;
  width: 1000px !important;
  max-width: calc(100% - 40px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Remove Listeo's listing-type tabs above the homepage search. */
body.home .simple-slider-form-tabs {
  display: none !important;
}

/* Force phones and tablets to keep the desktop canvas and desktop columns. */
@media (max-width: 1199px) {
  html {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body {
    width: 1200px !important;
    min-width: 1200px !important;
    zoom: calc(100vw / 1200px);
  }

  #wrapper {
    width: 1200px !important;
    min-width: 1200px !important;
  }

  .container {
    width: 1170px !important;
    max-width: 1170px !important;
  }

  .mmenu-trigger {
    display: none !important;
  }

  #navigation,
  #navigation ul#responsive {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #header .left-side {
    width: auto !important;
  }

  #header .right-side {
    display: block !important;
    width: auto !important;
  }

  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12 {
    float: left !important;
  }

  .col-md-12 { width: 100% !important; }
  .col-md-11 { width: 91.6667% !important; }
  .col-md-10 { width: 83.3333% !important; }
  .col-md-9 { width: 75% !important; }
  .col-md-8 { width: 66.6667% !important; }
  .col-md-7 { width: 58.3333% !important; }
  .col-md-6 { width: 50% !important; }
  .col-md-5 { width: 41.6667% !important; }
  .col-md-4 { width: 33.3333% !important; }
  .col-md-3 { width: 25% !important; }
  .col-md-2 { width: 16.6667% !important; }
  .col-md-1 { width: 8.33333% !important; }

  .elementor-section .elementor-container {
    flex-wrap: nowrap !important;
  }

  .elementor-column.elementor-col-100 { width: 100% !important; }
  .elementor-column.elementor-col-50 { width: 50% !important; }
  .elementor-column.elementor-col-33 { width: 33.3333% !important; }
  .elementor-column.elementor-col-25 { width: 25% !important; }
  .elementor-column.elementor-col-20 { width: 20% !important; }

  /* Restore the hero and its search wrapper to desktop positioning on phones. */
  body.home .main-search-container.main-search-simple-slider {
    height: 600px !important;
    margin-bottom: 160px !important;
  }

  body.home .main-search-simple-slider .container.msps-container {
    position: absolute !important;
    display: block !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.home .main-search-container.main-search-simple-slider
    .simple-slider-search-form {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    margin: 0 auto !important;
    transform: translateY(74px) !important;
  }

  body.home .main-search-container.main-search-simple-slider
    .simple-slider-search-form
    .container.main-search-inner {
    position: relative !important;
    top: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.home form.listeo-form-search_on_home_page {
    width: 1000px !important;
    max-width: 1000px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Keep Listeo's phone rules from stacking or widening the desktop search row. */
  body.home .simple-slider-search-form .main-search-input {
    display: flex !important;
    width: 100% !important;
    height: 74px !important;
    max-height: 74px !important;
    margin: 0 !important;
    padding: 12px !important;
    overflow: visible !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 0 10px 10px !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15) !important;
  }

  body.home .simple-slider-search-form .main-search-input-item {
    box-sizing: border-box !important;
    display: block !important;
    flex: 1 1 0% !important;
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    margin: 3px 0 0 !important;
    padding: 0 15px !important;
    border: 0 !important;
    border-right: 1px solid #e9e9e9 !important;
    background: transparent !important;
  }

  body.home .simple-slider-search-form .main-search-input-item:last-of-type {
    border-right: 0 !important;
    padding: 0 15px !important;
  }

  body.home .simple-slider-search-form input.keyword_search,
  body.home .simple-slider-search-form #autocomplete-container input {
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    background: #fff !important;
  }

  body.home .simple-slider-search-form input.keyword_search {
    padding: 0 !important;
  }

  body.home .simple-slider-search-form #autocomplete-container input {
    padding: 0 15px !important;
  }

  body.home .simple-slider-search-form .bootstrap-select.btn-group > button {
    width: 100% !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    background: #fff !important;
  }

  body.home .simple-slider-search-form .panel-dropdown {
    float: none !important;
    margin: 0 !important;
  }

  body.home .simple-slider-search-form .panel-dropdown > a {
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  body.home .simple-slider-search-form .main-search-input > button.button {
    display: block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    height: 50px !important;
    margin: 0 1px 0 0 !important;
    padding: 0 40px !important;
    border: 0 !important;
    border-radius: 50px !important;
  }
}

/* Keep the compact listing grid at three columns on desktop. */
@media (min-width: 1200px) {
  .row:has(> .col-lg-4.col-md-6 > .listing-item-container.compact) {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
  }

  .row:has(> .col-lg-4.col-md-6 > .listing-item-container.compact)
    > .col-lg-4.col-md-6 {
    float: none !important;
    width: 33.333333% !important;
    max-width: 33.333333% !important;
    flex: 0 0 33.333333% !important;
  }

  .row:has(> .col-lg-4.col-md-6 > .listing-item-container.compact)
    > .col-lg-4.col-md-6
    > .listing-item-container.compact {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Desktop-only layout retained on every screen; phone hero search aligned: 2026-09-24 */


/* Add Listing: only Classified is offered as a listing type. */
body.page-id-180 [data-type="service"],
body.page-id-180 [data-type="rental"],
body.page-id-180 [data-type="event"],
body.page-id-180 [data-listing-type="service"],
body.page-id-180 [data-listing-type="rental"],
body.page-id-180 [data-listing-type="event"],
body.page-id-180 label:has(input[name="_listing_type"][value="service"]),
body.page-id-180 label:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 label:has(input[name="_listing_type"][value="event"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="service"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="event"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="service"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="event"]) {
  display: none !important;
}






/* Add Listing: show only Professional Listing while preserving the original icon. */
body.page-id-180 [data-type="classified"] *,
body.page-id-180 [data-type="classifieds"] *,
body.page-id-180 [data-listing-type="classified"] *,
body.page-id-180 [data-listing-type="classifieds"] *,
body.page-id-180 label:has(input[name="_listing_type"][value="classified"]) *,
body.page-id-180 label:has(input[name="_listing_type"][value="classifieds"]) *,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classified"]) *,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classifieds"]) *,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classified"]) *,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classifieds"]) * {
  font-size: 0 !important;
  color: transparent !important;
}

body.page-id-180 [data-type="classified"] i,
body.page-id-180 [data-type="classifieds"] i,
body.page-id-180 [data-listing-type="classified"] i,
body.page-id-180 [data-listing-type="classifieds"] i,
body.page-id-180 label:has(input[name="_listing_type"][value="classified"]) i,
body.page-id-180 label:has(input[name="_listing_type"][value="classifieds"]) i,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classified"]) i,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classifieds"]) i,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classified"]) i,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classifieds"]) i {
  font-size: 24px !important;
  color: #e91eaa !important;
}

body.page-id-180 [data-type="classified"] svg,
body.page-id-180 [data-type="classifieds"] svg,
body.page-id-180 [data-listing-type="classified"] svg,
body.page-id-180 [data-listing-type="classifieds"] svg,
body.page-id-180 label:has(input[name="_listing_type"][value="classified"]) svg,
body.page-id-180 label:has(input[name="_listing_type"][value="classifieds"]) svg,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classified"]) svg,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classifieds"]) svg,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classified"]) svg,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classifieds"]) svg {
  width: 24px !important;
  height: 24px !important;
  color: #e91eaa !important;
  fill: currentColor !important;
}

body.page-id-180 [data-type="classified"]::after,
body.page-id-180 [data-type="classifieds"]::after,
body.page-id-180 [data-listing-type="classified"]::after,
body.page-id-180 [data-listing-type="classifieds"]::after,
body.page-id-180 label:has(input[name="_listing_type"][value="classified"])::after,
body.page-id-180 label:has(input[name="_listing_type"][value="classifieds"])::after,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classified"])::after,
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="classifieds"])::after,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classified"])::after,
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="classifieds"])::after {
  content: "Professional Listing" !important;
  display: block !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: #333 !important;
}


/* Enforce Classified as the only visible listing type on Add Listing. */
body.page-id-180 [data-type="service"],
body.page-id-180 [data-type="rental"],
body.page-id-180 [data-type="event"],
body.page-id-180 [data-listing-type="service"],
body.page-id-180 [data-listing-type="rental"],
body.page-id-180 [data-listing-type="event"],
body.page-id-180 label:has(input[name="_listing_type"][value="service"]),
body.page-id-180 label:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 label:has(input[name="_listing_type"][value="event"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="service"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 .listing-type:has(input[name="_listing_type"][value="event"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="service"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="rental"]),
body.page-id-180 .listing-type-box:has(input[name="_listing_type"][value="event"]) {
  display: none !important;
}


/* Remove only stray unselected owned-package rows (do not affect registration role radios). */
body.page-id-180 .package-option:has(input[type="radio"]:not(:checked)),
body.page-id-180 .user-package:has(input[type="radio"]:not(:checked)),
body.page-id-180 .owned-package:has(input[type="radio"]:not(:checked)) {
  display: none !important;
}


/* Hide floating shopping-cart launcher only; checkout flow remains intact. */
.xoo-wsc-basket {
  display: none !important;
}


/* Single listings: use clickable directions links instead of embedded map. */
.single-listing #listing-location,
.single-listing #singleListingMap-container {
  display: none !important;
}

.single-listing .listing-address {
  cursor: pointer;
}


/* Remove broken Location tab; address remains the directions control. */
.single-listing #listing-nav .listing-nav li:has(a[href="#listing-location"]),
.single-listing .listing-nav-container .listing-nav li:has(a[href="#listing-location"]),
.single-listing .listing-nav li:has(a[href="#listing-location"]) {
  display: none !important;
}


/* Location section: no embedded Leaflet map; keep Get Directions button. */
#singleListingMap-container,
#singleListingMap,
.leaflet-container,
#listing-location .leaflet-container,
#listing-location .map-container,
#listing-location .map {
  display: none !important;
}











/* Exact-text normalizer icon: same icon for every category/feature label. */
.single-listing .mba-exact-icon-item {
  position: relative !important;
  padding-left: 21px !important;
}
.single-listing .mba-exact-icon-item > .mba-exact-check {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 3px !important;
  background: #ef2bbf !important;
  color: #fff !important;
  font: 700 10px/14px Arial, sans-serif !important;
  text-align: center !important;
  box-sizing: border-box !important;
  display: block !important;
}
.single-listing .mba-exact-icon-item > i,
.single-listing .mba-exact-icon-item > svg,
.single-listing .mba-exact-icon-item > [class*="icon"] {
  display: none !important;
}


/* Restore Bootstrap desktop column offsets inside the site's forced desktop-on-mobile canvas. */
@media (max-width: 1199px) {
  .col-md-offset-1  { margin-left: 8.333333% !important; }
  .col-md-offset-2  { margin-left: 16.666667% !important; }
  .col-md-offset-3  { margin-left: 25% !important; }
  .col-md-offset-4  { margin-left: 33.333333% !important; }
  .col-md-offset-5  { margin-left: 41.666667% !important; }
  .col-md-offset-6  { margin-left: 50% !important; }
  .col-md-offset-7  { margin-left: 58.333333% !important; }
  .col-md-offset-8  { margin-left: 66.666667% !important; }
  .col-md-offset-9  { margin-left: 75% !important; }
  .col-md-offset-10 { margin-left: 83.333333% !important; }
  .col-md-offset-11 { margin-left: 91.666667% !important; }
}


/* Official site: widen anonymous centered auth column to Add Listing width. */
body:not(.logged-in):not(.page-id-180) .col-md-4.col-md-offset-4 {
  width: 66.666667% !important;
  max-width: 66.666667% !important;
  margin-left: 16.666667% !important;
}


/* Live login pages: keep footer at bottom on short pages. */
body:has(.sign-in-form.style-1) #wrapper {
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
}

body:has(.sign-in-form.style-1) #footer,
body:has(.sign-in-form.style-1) footer {
  margin-top: auto !important;
}

/* Give the login area the remaining vertical space so the footer cannot float upward. */
body:has(.sign-in-form.style-1) .container:has(.sign-in-form.style-1) {
  flex: 1 0 auto !important;
}


/* Live login pages: add breathing room below header. */
body:has(.sign-in-form.style-1) .container:has(.sign-in-form.style-1) {
  padding-top: 56px !important;
  box-sizing: border-box !important;
}


/* Add Listing login: hide the List Your Services title/breadcrumb bar until logged in. */
body.page-id-180:not(.logged-in):has(.sign-in-form.style-1) #titlebar {
  display: none !important;
}


/* Single listings: hide only the Facebook share button above Stay Connected.
   Keep owner/profile socials and all other share buttons. */
.single-listing a[href*="facebook.com/sharer"],
.single-listing a[href*="facebook.com/share"] {
  display: none !important;
}


/* Added By box: restore every social profile link Listeo outputs. */
.single-listing ul.listing-details-sidebar.social-profiles,
.single-listing ul.listing-details-sidebar.social-profiles li,
.single-listing ul.listing-details-sidebar.social-profiles li a {
  display: revert !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* My Beauty App: every Listing Feature uses the same pink checkmark,
   even when the Listeo feature icon field is left blank. */
.single-listing .listing-features li:has(a[href*="/listing-feature/"]) {
  position: relative !important;
  padding-left: 21px !important;
}

.single-listing .listing-features li:has(a[href*="/listing-feature/"])::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 3px !important;
  background: #ef2bbf !important;
  color: #fff !important;
  font: 700 10px/14px Arial, sans-serif !important;
  text-align: center !important;
  box-sizing: border-box !important;
  display: block !important;
}

.single-listing .listing-features li:has(a[href*="/listing-feature/"]) > i,
.single-listing .listing-features li:has(a[href*="/listing-feature/"]) > svg,
.single-listing .listing-features li:has(a[href*="/listing-feature/"]) > [class*="icon"] {
  display: none !important;
}


/* MBA Listings archive full width */
/* Widen the real Listings archive without using 100vw/negative margins,
   which can clip Listeo's header and off-canvas controls. */
body.post-type-archive-listing .container {
  width: calc(100% - 48px) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Keep the archive content using the widened container normally. */
body.post-type-archive-listing #listeo_core-search-form,
body.post-type-archive-listing .row.margin-bottom-25,
body.post-type-archive-listing #listeo-listings-container,
body.post-type-archive-listing .pagination-container {
  position: static !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* Use a practical full-width card grid rather than squeezing 8–10 tiny cards across. */
body.post-type-archive-listing #listeo-listings-container.new-grid-layout-nl {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

@media (max-width: 1199px) {
  body.post-type-archive-listing .container {
    width: calc(100% - 32px) !important;
  }
}

@media (max-width: 900px) {
  body.post-type-archive-listing #listeo-listings-container.new-grid-layout-nl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* MBA Listings: show more of stylist photos */
/* Give beauty-work photos more room and avoid aggressive cropping. */
body.post-type-archive-listing .new-grid-layout-nl .listing-image-container-nl {
  height: 340px !important;
  min-height: 340px !important;
  background: #f7f7f7 !important;
}

body.post-type-archive-listing .new-grid-layout-nl .slider-image-nl {
  object-fit: contain !important;
  object-position: center center !important;
  background: #f7f7f7 !important;
}

/* Logged-in/legacy compact card layout can render a different card template. */
body.post-type-archive-listing .listing-item {
  height: 340px !important;
  background: #f7f7f7 !important;
}

body.post-type-archive-listing .listing-item img,
body.post-type-archive-listing img.listing-thumbnail {
  object-fit: contain !important;
  object-position: center center !important;
  background: #f7f7f7 !important;
}

@media (max-width: 1199px) {
  body.post-type-archive-listing .new-grid-layout-nl .listing-image-container-nl,
  body.post-type-archive-listing .listing-item {
    height: 300px !important;
    min-height: 300px !important;
  }
}


/* MBA Listings archive: restore true mobile layout */
@media (max-width: 1024px) {
  /* Undo the site's older forced-desktop-on-mobile canvas only for Listings. */
  html:has(body.post-type-archive-listing) {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.post-type-archive-listing {
    width: 100% !important;
    min-width: 0 !important;
    zoom: 1 !important;
    overflow-x: hidden !important;
  }

  body.post-type-archive-listing #wrapper {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.post-type-archive-listing .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Restore Listeo's real mobile header/menu behavior. */
  body.post-type-archive-listing .mmenu-trigger {
    display: inline-block !important;
  }

  body.post-type-archive-listing #navigation ul#responsive {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  body.post-type-archive-listing #header .left-side,
  body.post-type-archive-listing #header .right-side,
  body.post-type-archive-listing .left-side,
  body.post-type-archive-listing .right-side {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Undo forced Bootstrap desktop columns on the archive. */
  body.post-type-archive-listing .col-md-1,
  body.post-type-archive-listing .col-md-2,
  body.post-type-archive-listing .col-md-3,
  body.post-type-archive-listing .col-md-4,
  body.post-type-archive-listing .col-md-5,
  body.post-type-archive-listing .col-md-6,
  body.post-type-archive-listing .col-md-7,
  body.post-type-archive-listing .col-md-8,
  body.post-type-archive-listing .col-md-9,
  body.post-type-archive-listing .col-md-10,
  body.post-type-archive-listing .col-md-11,
  body.post-type-archive-listing .col-md-12 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
  }

  /* Make search controls comfortable at phone width. */
  body.post-type-archive-listing #listeo_core-search-form,
  body.post-type-archive-listing #listeo_core-search-form .main-search-input {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.post-type-archive-listing #listeo_core-search-form .main-search-input {
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.post-type-archive-listing #listeo_core-search-form .main-search-input-item {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border-right: 0 !important;
  }

  body.post-type-archive-listing #listeo_core-search-form .main-search-input > button.button {
    width: 100% !important;
    margin: 0 !important;
  }

  /* Filters can wrap naturally instead of staying in a desktop row. */
  body.post-type-archive-listing .fullwidth-filters {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
  }

  body.post-type-archive-listing .fullwidth-filters .panel-dropdown,
  body.post-type-archive-listing .fullwidth-filters .sort-by {
    float: none !important;
    margin: 0 !important;
  }
}

@media (max-width: 767px) {
  /* One large card per row so the work is easy to evaluate on a phone. */
  body.post-type-archive-listing #listeo-listings-container.new-grid-layout-nl {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body.post-type-archive-listing #listeo-listings-container[data-style="compact"] > .col-lg-4.col-md-6 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  body.post-type-archive-listing .new-grid-layout-nl .listing-image-container-nl,
  body.post-type-archive-listing .listing-item {
    height: 360px !important;
    min-height: 360px !important;
  }

  body.post-type-archive-listing #titlebar {
    margin-bottom: 22px !important;
  }
}

/* MBA performance: reserve logo space before image decode to reduce header layout shift. */
#logo img {
  width: 39px !important;
  height: 39px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
}

/* MBA performance: keep the homepage listings carousel in its final horizontal geometry before Slick initializes.
   This prevents the raw carousel items from stacking vertically and then collapsing into one row after JS loads. */
body.home .fullgrid-slick-carousel:not(.slick-initialized) {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow: hidden !important;
  align-items: stretch !important;
}

body.home .fullgrid-slick-carousel:not(.slick-initialized) > .fw-carousel-item {
  flex: 0 0 calc(50% - 10px) !important;
  width: calc(50% - 10px) !important;
  min-width: 0 !important;
}

@media (max-width: 767px) {
  body.home .fullgrid-slick-carousel:not(.slick-initialized) > .fw-carousel-item {
    flex-basis: calc(100% - 20px) !important;
    width: calc(100% - 20px) !important;
  }
}

/* MBA performance: reserve the homepage category control's final height before Bootstrap Select enhances it. */
body.home .main-search-input-item.select-taxonomy,
body.home .main-search-input-item.select-taxonomy > div,
body.home .main-search-input-item.select-taxonomy .bootstrap-select {
  min-height: 44px !important;
}

body.home .main-search-input-item.select-taxonomy select.selectpicker {
  width: 100% !important;
  height: 44px !important;
}

body.home .main-search-input-item.select-taxonomy .bootstrap-select,
body.home .main-search-input-item.select-taxonomy .bootstrap-select > button {
  width: 100% !important;
  height: 44px !important;
}

/* MBA performance: reserve the homepage hero text and search row geometry before fonts/widgets finish initializing. */
body.home .main-search-container.main-search-simple-slider > .msps-container > .main-search-inner:first-child h1 {
  min-height: 58px !important;
  line-height: 1.2 !important;
}

body.home .main-search-container.main-search-simple-slider > .msps-container > .main-search-inner:first-child h4 {
  min-height: 28px !important;
  line-height: 1.4 !important;
}

body.home .main-search-container.main-search-simple-slider .simple-slider-search-form,
body.home .main-search-container.main-search-simple-slider .simple-slider-search-form .main-search-input {
  min-height: 74px !important;
}


