/* KJH HOME MAP 1.0.1 — hard replacement, scoped only to detected KLL section */
.kjh-home-map-101-section {
  position: relative !important;
  overflow: hidden !important;
}

.kjh-home-map-101-oldmap {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.kjh-home-map-101-overlay {
  position: absolute !important;
  z-index: 8 !important;
  right: 2.8% !important;
  top: 5.5% !important;
  width: 51.5% !important;
  height: 79% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
}

.kjh-home-map-101-overlay img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  max-width: none !important;
  max-height: none !important;
  filter: none !important;
  opacity: 1 !important;
}

/* ensure old solitary pin / label cannot sit above the premium map */
.kjh-home-map-101-hide-pin {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 980px) {
  .kjh-home-map-101-overlay {
    right: 1.5% !important;
    top: 16% !important;
    width: 52% !important;
    height: 63% !important;
  }
}

@media (max-width: 767px) {
  .kjh-home-map-101-section {
    padding-bottom: 36px !important;
  }
  .kjh-home-map-101-overlay {
    position: relative !important;
    inset: auto !important;
    width: calc(100% - 28px) !important;
    height: auto !important;
    aspect-ratio: 1.125 / 1 !important;
    margin: 26px auto 4px !important;
  }
  .kjh-home-map-101-overlay img {
    height: auto !important;
    aspect-ratio: 1.125 / 1 !important;
  }

  .kjh-nearby-showcase__mobile {
    padding: 42px 18px 30px !important;
  }
  .kjh-nearby-showcase__title {
    max-width: 100% !important;
    font-size: clamp(43px, 12vw, 55px) !important;
    line-height: .88 !important;
  }
  .kjh-nearby-showcase__lead {
    margin: 20px 0 18px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
  .kjh-nearby-showcase__mobile-map {
    height: auto !important;
    aspect-ratio: 872 / 780 !important;
    margin: 14px -18px 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }
  .kjh-nearby-showcase__mobile-map img.kjh-home-map-101-mobile-image {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    filter: none !important;
  }
  .kjh-nearby-showcase__cards { gap: 10px !important; }
  .kjh-nearby-showcase__card {
    min-height: 78px !important;
    border-radius: 10px !important;
  }
}

/* v1.0.2: mapa nie wychodzi poza ekran telefonu. Desktop bez zmian. */
@media (max-width: 767px) {
  .kjh-home-map-101-section,
  .kjh-home-map-101-overlay,
  .kjh-home-map-101-overlay img {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .kjh-home-map-101-section {
    width: 100% !important;
    overflow: hidden !important;
  }
  .kjh-home-map-101-overlay {
    width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}
