/* ============================================================
   LA'S PERFECT 10'S INTERNAL PAGE LAYOUT STABILITY
   Loaded only outside the front page. It prevents horizontal
   overflow and keeps content/sidebar grids responsive without
   changing the established homepage layout.
============================================================ */
html,
body:not(.home) {
  max-width: 100%;
  overflow-x: clip;
}

body:not(.home),
body:not(.home) *,
body:not(.home) *::before,
body:not(.home) *::after {
  box-sizing: border-box;
}

body:not(.home) .site,
body:not(.home) .site-content,
body:not(.home) .content-area,
body:not(.home) main,
body:not(.home) .main-content,
body:not(.home) .wx-page,
body:not(.home) .wx-standard-grid,
body:not(.home) .wx-standard-left,
body:not(.home) .main-left,
body:not(.home) .main-right,
body:not(.home) .content-main,
body:not(.home) .content-sidebar {
  min-width: 0;
  max-width: 100%;
}

body:not(.home) img,
body:not(.home) video,
body:not(.home) iframe,
body:not(.home) svg {
  max-width: 100%;
}

body:not(.home) img,
body:not(.home) video {
  height: auto;
}

body:not(.home) input,
body:not(.home) select,
body:not(.home) textarea,
body:not(.home) button {
  max-width: 100%;
}

body:not(.home) table {
  max-width: 100%;
}

body:not(.home) .table-responsive,
body:not(.home) .responsive-table,
body:not(.home) .ds-table-wrap,
body:not(.home) .ep-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Keep long contact values inside their cards instead of widening columns. */
body:not(.home) a[href^="tel:"],
body:not(.home) a[href^="mailto:"],
body:not(.home) .lp10-contact-number,
body:not(.home) .laex-contact-details a {
  overflow-wrap: anywhere;
  word-break: normal;
}

/* Header wordmark must stay inside the fixed logo column. */
body:not(.home) .site-header.premium-header .header-logo,
body:not(.home) .site-header.premium-header .site-logo-link {
  min-width: 0;
}

body:not(.home) .site-header.premium-header .lp10-wordmark {
  width: auto;
  max-width: 100%;
  overflow: hidden;
  text-overflow: clip;
}

/* Protect the final content from the non-location floating call control. */
body:not(.home) .site-footer {
  position: relative;
  z-index: 1;
}

@media (min-width: 992px) {
  body:not(.home) .wx-standard-grid,
  body:not(.home) .home-grid,
  body:not(.home) .city-content-grid,
  body:not(.home) .directory-layout {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  }
}

@media (max-width: 991px) {
  body:not(.home) .wx-standard-grid,
  body:not(.home) .home-grid,
  body:not(.home) .city-content-grid,
  body:not(.home) .directory-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body:not(.home) .main-right,
  body:not(.home) .content-sidebar,
  body:not(.home) aside {
    position: static;
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  body:not(.home) {
    padding-bottom: 82px;
  }

  body:not(.home) .site-header.premium-header .lp10-wordmark {
    font-size: 20px !important;
    letter-spacing: -.045em !important;
  }

  body:not(.home) .wx-page-hero,
  body:not(.home) .wx-listing-block,
  body:not(.home) .listing-block,
  body:not(.home) .content-card,
  body:not(.home) .profile-card {
    max-width: 100%;
  }
}
