html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

/* The footer sits in normal flow, so the legacy sticky-footer reserves — body margin-bottom: 60px
   and html padding-bottom: 47px/91px, both sized for an absolutely-positioned footer that no longer
   exists — just left a dead band of whitespace below the footer. Zeroed so the footer ends the page
   cleanly. (html padding-bottom also overridden inside the same breakpoint core.css uses.) */
body {
  margin-bottom: 0 !important;
}
html {
  padding-bottom: 0 !important;
}
@media (min-width: 768px) {
  html {
    padding-bottom: 0 !important;
  }
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* White marketing-style toolbar (matches www.rescover.com). Loaded after core.css so these win. */
#navbar.navbar-white {
  background-color: #fff !important;
  min-height: 56px;
  align-items: center;
  /* Match the myRescover MLS navbar: Bootstrap's .shadow (soft downward shading onto the page) */
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
#navbar.navbar-white .navbar-logo {
  background-image: url('/images/logo-rescover.svg');
}
#navbar.navbar-white .navbar-nav {
  gap: 0.25rem;
}
#navbar.navbar-white .navbar-nav .nav-link {
  color: var(--rs-eclipse, #132844) !important;
  font-size: 0.95rem;
  font-weight: 600;
  padding: 0.6rem 1rem !important;
  display: flex;
  align-items: center;
  border-radius: 6px;
}
#navbar.navbar-white .navbar-nav .nav-link:hover,
#navbar.navbar-white .navbar-nav .nav-link:focus {
  color: var(--rs-lava, #F26E34) !important;
  background-color: rgba(19, 40, 68, 0.05);
}
#navbar.navbar-white .navbar-nav .nav-link .nav-icon {
  opacity: 0.85;
  margin-right: 0.45rem;
}
#navbar.navbar-white .navbar-nav .nav-link .nav-icon img.svg-white {
  filter: none;
}
/* L–XL (992–1399px): the now-expanded navbar gets tight on room, so step the nav font, padding,
   and gaps down a level. XXL+ keeps the roomier default above. */
@media (min-width: 992px) and (max-width: 1399.98px) {
  #navbar.navbar-white .navbar-nav .nav-link {
    font-size: 0.85rem;
    padding: 0.5rem 0.6rem !important;
  }
  #navbar.navbar-white .navbar-nav {
    gap: 0.1rem;
  }
  #navbar.navbar-white .navbar-nav .nav-link .nav-icon {
    margin-right: 0.3rem;
  }
}
#navbar.navbar-white .navbar-toggler {
  color: var(--rs-eclipse, #132844);
  border-color: rgba(0, 0, 0, 0.15);
}
#navbar.navbar-white .account .nav-link {
  color: var(--rs-eclipse, #132844) !important;
}
/* "You're on Rescover, not myRescover" banner — brand navy bar, lava CTA, shown to higher-tier
   users who landed on the consumer site. Replaces the old navbar "Return to myRescover" button. */
.myrescover-banner {
  background: #132844;
  color: #fff;
}
.myrescover-banner-icon {
  opacity: 0.85;
}
.myrescover-banner-text b {
  color: #fff;
}
.myrescover-banner-btn {
  background: #f26e34;
  color: #fff;
  border: 0;
  font-weight: 700;
}
.myrescover-banner-btn:hover,
.myrescover-banner-btn:focus {
  color: #fff;
  filter: brightness(1.05);
}
/* Bootstrap pins the dismiss button to the top-right corner; vertically center it instead. */
.myrescover-banner.alert-dismissible .btn-close {
  top: 50%;
  padding-top: 0;
  padding-bottom: 0;
  transform: translateY(-50%);
}

/* Free-trial CTA in the nav — brand navy gradient (matches the Find a Pro banner) */
#navbar.navbar-white .navbar-trial-btn {
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(19, 40, 68, 0.30);
}
#navbar.navbar-white .navbar-trial-btn:hover,
#navbar.navbar-white .navbar-trial-btn:focus {
  filter: brightness(1.06);
  box-shadow: 0 3px 10px rgba(19, 40, 68, 0.40);
}
/* Login CTA — green word, secondary to the trial button */
#navbar.navbar-white .navbar-login-btn:hover,
#navbar.navbar-white .navbar-login-btn:focus {
  background: #1A7F37 !important;
  color: #fff !important;
}

/* MLS search renders a fixed, full-height results/map container (#listingResults) that pulls the
   page out of normal flow, so the shared footer collapses to the top and hides behind the map.
   Scoped via :has() to the search page only (the PDP footer is unaffected): pin the footer to the
   bottom and shrink the map to leave room, so the breakpoint indicator + Google attribution stay visible. */
#app:has(#listingResults) #listingResults {
  height: auto !important;
  bottom: 34px !important;
}
#app:has(#listingResults) footer,
#app:has(.mls-page) footer {
  position: fixed !important;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1031;
  display: block !important;
  visibility: visible !important;
}
/* The search footer is pinned/fixed and should stay minimal so it barely eats into the map — the
   roomier py-3 we use on the in-flow PDP footer makes it twice as tall as it needs to be here.
   Compact it (scoped to the search page only) and keep the reserve above in sync. */
#app:has(#listingResults) footer .footer-bottom {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}
/* The footer-bottom is now a single nowrap flex row (breakpoint tag · copyright · links/version)
   that keeps a uniform height across all breakpoints, so the old per-breakpoint clearance/wrap
   fixes are no longer needed — the single fixed-footer reserve above covers every size. Keep all
   items on one line; nowrap them so the row never breaks. */
footer .footer-bottom .footer-breakpoint .list-inline-item,
footer .footer-bottom > ul .list-inline-item,
footer .footer-bottom .footer-copyright {
  white-space: nowrap;
}
/* On phones, shrink the text and tighten spacing so the whole row still fits on one line. */
@media (max-width: 575.98px) {
  footer .footer-bottom {
    column-gap: 0.35rem;
    font-size: 0.7rem;
  }
  footer .footer-bottom .list-inline-item {
    margin-right: 0.3rem;
  }
}