/* Homepage correction layer - loaded after the main stylesheet */
@keyframes lidorSoftListingHalo {
  0%, 100% { box-shadow: 0 0 0 4px rgba(255,255,255,.96), 0 0 0 13px rgba(98, 223, 200, .22), 0 28px 74px rgba(12, 29, 42, .18); }
  50% { box-shadow: 0 0 0 5px rgba(255,255,255,1), 0 0 0 18px rgba(98, 223, 200, .30), 0 32px 86px rgba(12, 29, 42, .20); }
}

/* Fix 7: popup CTA, cleaner dates, virtual-tour chips and mobile hero phone flow. */
body #listings-container.container .listing-entry-date {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #24536b !important;
  font-size: .92rem !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

body #listings-container.container .listing-entry-date i {
  color: #1d6fa4 !important;
}

body #listings-container.container .info-row:has(.listing-entry-date) {
  margin: 2px 0 0 !important;
  min-height: 0 !important;
  display: flex !important;
  justify-content: center !important;
}

body #listings-container.container .virtual-tour-card-meta {
  gap: 7px !important;
  background: transparent !important;
  box-shadow: none !important;
}

body #listings-container.container .virtual-tour-card-meta .virtual-tour-unit-meta,
body #listings-container.container .details-box {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  gap: 6px !important;
}

body #listings-container.container .virtual-tour-unit-meta span,
body #listings-container.container .details-box span {
  margin: 0 !important;
  background: rgba(239, 249, 255, .96) !important;
  border: 1px solid rgba(29, 111, 164, .18) !important;
  box-shadow: 0 8px 22px rgba(29, 111, 164, .08) !important;
}

body #listings-container.container .virtual-tour-unit-meta span + span::before,
body #listings-container.container .details-box span + span::before {
  display: none !important;
  content: none !important;
}

@media (max-width: 760px) {
  body .hero-section > .hero-phone {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: min(332px, calc(100% - 28px)) !important;
    max-width: calc(100% - 28px) !important;
    margin: 14px auto 0 !important;
    z-index: 6 !important;
  }
}

/* Fix 13: explicit listing actions and cleaner media badges. */
#listings-container .card[data-detail-url] {
  cursor: default !important;
}

body #listings-container.container .details-box {
  border-radius: 12px !important;
  padding: 8px 11px !important;
  min-width: 118px !important;
  gap: 5px !important;
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: 0 12px 28px rgba(13, 43, 65, .18) !important;
}

body #listings-container.container .details-box span {
  min-height: 23px !important;
  padding: 2px 4px !important;
  border-radius: 7px !important;
  font-size: .86rem !important;
  line-height: 1.25 !important;
}

.listing-card-actions-row {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 14px auto 18px !important;
  width: 100% !important;
}

.listing-detail-link,
body #listings-container.container .show-on-map-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  border-radius: 14px !important;
  padding: 10px 16px !important;
  font-size: .92rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.listing-detail-link {
  color: #082033 !important;
  border: 1px solid rgba(226, 173, 53, .45) !important;
  background: linear-gradient(135deg, #fff3bc, #e2ad35) !important;
  box-shadow: 0 16px 34px rgba(226, 173, 53, .22) !important;
}

body #listings-container.container .show-on-map-btn {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  color: #0a6f8b !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-inline: 6px !important;
}

body #listings-container.container .show-on-map-btn:hover,
body #listings-container.container .show-on-map-btn:focus-visible {
  color: #ef4b23 !important;
  background: transparent !important;
  transform: none !important;
}

@media (max-width: 760px) {
  body #listings-container.container .details-box {
    min-width: 112px !important;
    border-radius: 12px !important;
    padding: 7px 10px !important;
  }

  body #listings-container.container .details-box span {
    font-size: .8rem !important;
  }

  .listing-card-actions-row {
    gap: 8px !important;
    margin: 12px auto 16px !important;
  }

  .listing-detail-link,
  body #listings-container.container .show-on-map-btn {
    min-height: 38px !important;
    font-size: .84rem !important;
    padding: 8px 12px !important;
  }
}

/* Fix 9: mobile phone CTA is an overlay on the hero media, not part of page flow. */
@media (max-width: 760px) {
  body .hero-section {
    position: relative !important;
  }

  body .hero-section > .hero-phone {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: 46px !important;
    transform: translateX(-50%) !important;
    width: min(332px, calc(100% - 36px)) !important;
    max-width: calc(100% - 36px) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 18 !important;
  }
}

.leaflet-popup,
.leaflet-popup-content-wrapper,
.leaflet-popup-content,
.listing-map-popup,
.listing-map-popup-link {
  pointer-events: auto !important;
}

.listing-map-popup-link {
  position: relative !important;
  z-index: 5 !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Fix 8: mobile map touch stability and responsive price badges. */
@media (min-width: 1024px) {
  body #listings-container.container[data-columns="4"] .price-banner,
  body #listings-container.container[data-columns="5"] .price-banner,
  body #listings-container.container[data-columns="4"] .virtual-tour-carousel .price-banner,
  body #listings-container.container[data-columns="5"] .virtual-tour-carousel .price-banner {
    position: absolute !important;
    top: 12px !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    min-width: 86px !important;
    max-width: calc(100% - 28px) !important;
    width: auto !important;
    padding: 7px 12px !important;
    border-radius: 15px !important;
    font-size: clamp(.98rem, 1.08vw, 1.22rem) !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    z-index: 12 !important;
  }
}

@media (max-width: 760px) {
  body .hero-section > .hero-phone {
    margin: 6px auto 18px !important;
    transform: translateY(-8px) !important;
  }
}

@keyframes lidorHomeTicker {
  from { transform: translateX(0); }
  to { transform: translateX(48%); }
}

body .home-articles-head a {
  border-radius: 10px !important;
}

body .home-side-info-row {
  width: min(1220px, calc(100% - 32px)) !important;
  margin: 22px auto 26px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
  direction: rtl !important;
  clear: both !important;
}

body .home-side-info-row .home-articles-section,
body .home-side-info-row .cinema-feature-section {
  position: static !important;
  float: none !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  overflow: visible !important;
  z-index: auto !important;
}

body .home-side-info-row .home-articles-section {
  order: 1 !important;
}

body .home-side-info-row .cinema-feature-section {
  order: 2 !important;
  display: grid !important;
  grid-template-columns: minmax(160px, .84fr) minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  direction: rtl !important;
}

body .home-side-info-row .home-articles-grid {
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

body .home-side-info-row .home-articles-grid article {
  min-height: 0 !important;
  padding: 12px 14px !important;
}

body .home-side-info-row .home-articles-grid article p {
  margin: 6px 0 8px !important;
  font-size: .86rem !important;
  line-height: 1.45 !important;
}

body .home-side-info-row .cinema-video-card video {
  height: 190px !important;
  min-height: 190px !important;
  object-fit: cover !important;
}

body .show-on-map-btn {
  border-radius: 16px !important;
  min-width: 176px !important;
  min-height: 44px !important;
  background: linear-gradient(135deg, #c6fff0, #89f1d8 54%, #56dbc5) !important;
  color: #07343b !important;
}

body #listings-container.container .card.listing-map-focus,
body #listings-container.container .listing-map-focus {
  animation: lidorSoftListingHalo 1.5s ease-in-out 2 !important;
  border-color: rgba(98, 223, 200, .55) !important;
  box-shadow: 0 0 0 4px rgba(255,255,255,.96), 0 0 0 13px rgba(98, 223, 200, .22), 0 28px 74px rgba(12, 29, 42, .18) !important;
}

body #listings-container.container .image-carousel .details-box {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 18px !important;
  transform: translateX(-50%) !important;
  max-width: calc(100% - 34px) !important;
  width: max-content !important;
  min-width: 0 !important;
  z-index: 4 !important;
}

body #listings-container.container .details-box span {
  white-space: nowrap !important;
}

body #listings-container.container .virtual-tour-card-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body #listings-container.container .virtual-tour-card-meta .virtual-tour-unit-meta {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: inline-flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}

body #listings-container.container .info-row,
body #listings-container.container .features-row {
  max-width: 100% !important;
  overflow: visible !important;
}

body #listings-container.container .info-item,
body #listings-container.container .feature {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  text-align: center !important;
}

@media (min-width: 900px) {
  body .search-form .date-filter {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 124px !important;
    gap: 8px !important;
    align-items: center !important;
    padding-inline: 12px !important;
  }

  body .search-form .date-filter input[type="date"] {
    width: 124px !important;
    min-width: 0 !important;
    max-width: 124px !important;
    min-height: 36px !important;
    padding: 0 7px !important;
    direction: ltr !important;
    text-align: center !important;
    border-radius: 13px !important;
    background: #ffffff !important;
    border: 1px solid rgba(45, 130, 158, .20) !important;
    font-size: .84rem !important;
  }

  body .search-form .date-filter span {
    text-align: right !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body .home-seo-links {
    clear: both !important;
    width: 100vw !important;
    max-width: none !important;
    margin: 30px calc(50% - 50vw) 0 !important;
    padding: 8px 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: linear-gradient(90deg, #eefaff, #ffffff, #eefaff) !important;
    border-block: 1px solid rgba(71, 145, 174, .14) !important;
  }

  body .home-seo-links summary,
  body .home-seo-links h2 {
    display: none !important;
  }

  body .home-seo-links > div {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    gap: 10px !important;
    padding-inline: 24px !important;
    animation: lidorHomeTicker 30s linear infinite !important;
  }

  body .home-seo-links:hover > div {
    animation-play-state: paused !important;
  }

  body .home-seo-links a {
    min-height: 30px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
    font-size: .84rem !important;
    font-weight: 850 !important;
  }
}

@media (min-width: 1024px) {
  body .hero-section {
    position: relative !important;
  }

  body .hero-section .hero-content {
    position: static !important;
  }

  body .hero-phone {
    position: absolute !important;
    left: clamp(30px, 4vw, 82px) !important;
    right: auto !important;
    top: auto !important;
    bottom: clamp(54px, 10vh, 118px) !important;
    z-index: 5 !important;
    transform: rotate(-7deg) !important;
    margin: 0 !important;
    pointer-events: auto !important;
  }

  body .hero-phone a {
    min-width: 220px !important;
    min-height: 72px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, rgba(8, 29, 42, .96), rgba(15, 54, 66, .94)) !important;
    color: #f7d979 !important;
    border: 2px solid rgba(247, 217, 121, .62) !important;
    font-size: clamp(24px, 1.6vw, 31px) !important;
    padding: 22px 20px 10px !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.30) !important;
    box-shadow: 0 20px 50px rgba(4, 20, 32, .34), inset 0 1px 0 rgba(255,255,255,.12) !important;
  }

  body .hero-phone a::before {
    content: "";
    color: #ffffff !important;
    top: 9px !important;
    right: 19px !important;
    font-size: .76rem !important;
  }

  body .hero-phone a::after {
    border-color: rgba(247, 217, 121, .42) !important;
  }
}

@media (min-width: 1320px) {
  body .home-articles-section,
  body .cinema-feature-section {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: auto !important;
    width: 270px !important;
    max-height: none !important;
    overflow: visible !important;
    margin-top: 18px !important;
    margin-bottom: 18px !important;
  }

  body .home-articles-section {
    float: right !important;
    margin-right: 18px !important;
    margin-left: 18px !important;
  }

  body .cinema-feature-section {
    float: none !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
  }
}

@media (min-width: 1024px) {
  body #listings-container.container[data-columns="5"] .card-details {
    padding-inline: 12px !important;
    gap: 9px !important;
  }

  body #listings-container.container[data-columns="5"] .title {
    font-size: clamp(1rem, 1.05vw, 1.16rem) !important;
    line-height: 1.26 !important;
  }

  body #listings-container.container[data-columns="5"] .info-row,
  body #listings-container.container[data-columns="5"] .features-row {
    gap: 6px !important;
  }

  body #listings-container.container[data-columns="5"] .info-item,
  body #listings-container.container[data-columns="5"] .feature {
    font-size: .78rem !important;
    padding: 6px 9px !important;
    line-height: 1.2 !important;
  }

  body #listings-container.container[data-columns="5"] .show-on-map-btn {
    min-width: 136px !important;
    min-height: 38px !important;
    font-size: .8rem !important;
    padding-inline: 12px !important;
  }

  body #listings-container.container[data-columns="5"] .virtual-tour-card-label,
  body #listings-container.container[data-columns="5"] .virtual-tour-unit-meta span,
  body #listings-container.container[data-columns="5"] .details-box span {
    font-size: .78rem !important;
    padding-inline: 9px !important;
  }
}

@media (max-width: 980px) {
  body .home-side-info-row {
    grid-template-columns: 1fr !important;
    width: min(760px, calc(100% - 20px)) !important;
  }

  body .home-side-info-row .cinema-feature-section {
    grid-template-columns: 1fr !important;
  }

  body .home-side-info-row .cinema-video-card video {
    height: 210px !important;
  }
}

@media (max-width: 760px) {
  body #listings-container.container .image-carousel .details-box {
    left: 50% !important;
    max-width: calc(100% - 22px) !important;
  }

  body #listings-container.container .virtual-tour-card-meta .virtual-tour-unit-meta {
    max-width: calc(100% - 12px) !important;
  }

  body .show-on-map-btn {
    border-radius: 15px !important;
    min-width: 160px !important;
  }
}

/* Final homepage map/layout correction layer - keep this block last. */
@media (min-width: 1024px) {
  body .hero-section {
    position: relative !important;
    overflow: hidden !important;
  }

  body .hero-section .hero-content {
    position: static !important;
    width: min(760px, 50vw) !important;
    margin-inline-start: auto !important;
  }

  body .hero-phone {
    position: absolute !important;
    left: clamp(42px, 5.2vw, 112px) !important;
    right: auto !important;
    top: auto !important;
    bottom: clamp(48px, 9vh, 104px) !important;
    z-index: 4 !important;
    transform: rotate(-8deg) !important;
    margin: 0 !important;
  }

  body .hero-phone a {
    min-width: 228px !important;
    min-height: 70px !important;
    width: auto !important;
    padding: 20px 22px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, rgba(7, 23, 34, .96) 0%, rgba(15, 57, 70, .90) 48%, rgba(246, 216, 125, .96) 49%, rgba(251, 231, 155, .96) 100%) !important;
    color: #092133 !important;
    border: 2px solid rgba(247, 217, 121, .58) !important;
    font-size: clamp(24px, 1.7vw, 32px) !important;
    font-weight: 1000 !important;
    text-shadow: none !important;
    box-shadow: 0 24px 58px rgba(6, 21, 31, .34), 0 0 0 1px rgba(255,255,255,.18) inset !important;
  }

  body .hero-phone a::before {
    content: "" !important;
    display: none !important;
  }

  body .hero-phone a::after {
    border-color: rgba(247, 217, 121, .48) !important;
  }
}

body .home-side-info-row {
  width: min(1220px, calc(100% - 32px)) !important;
  margin: 22px auto 26px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
  clear: both !important;
  direction: rtl !important;
}

body .home-side-info-row .home-articles-section,
body .home-side-info-row .cinema-feature-section {
  position: static !important;
  float: none !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  z-index: auto !important;
  box-sizing: border-box !important;
}

body .home-side-info-row .home-articles-section {
  order: 1 !important;
  padding: 18px !important;
}

body .home-side-info-row .cinema-feature-section {
  order: 2 !important;
  display: grid !important;
  grid-template-columns: minmax(170px, .82fr) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 18px !important;
}

body .home-side-info-row .home-articles-grid {
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

body .home-side-info-row .home-articles-grid article {
  min-height: 0 !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
}

body .home-side-info-row .home-articles-grid article p {
  margin: 6px 0 8px !important;
  font-size: .86rem !important;
  line-height: 1.45 !important;
}

body .home-side-info-row .home-articles-grid article h3 {
  font-size: .98rem !important;
  line-height: 1.25 !important;
}

body .home-side-info-row .cinema-feature-copy h2 {
  font-size: clamp(1.2rem, 1.75vw, 1.75rem) !important;
  line-height: 1.2 !important;
}

body .home-side-info-row .cinema-feature-copy p {
  font-size: .92rem !important;
  line-height: 1.55 !important;
}

body .home-side-info-row .cinema-video-card video {
  height: 210px !important;
  min-height: 210px !important;
  object-fit: cover !important;
}

@media (min-width: 1320px) {
  body .home-side-info-row .home-articles-section,
  body .home-side-info-row .cinema-feature-section {
    position: static !important;
    float: none !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin: 0 !important;
  }
}

@media (max-width: 980px) {
  body .home-side-info-row {
    grid-template-columns: 1fr !important;
    width: min(760px, calc(100% - 20px)) !important;
  }

  body .home-side-info-row .cinema-feature-section {
    grid-template-columns: 1fr !important;
  }
}

@media (min-width: 1024px) {
  body #listings-container.container[data-columns="5"] {
    gap: 18px !important;
  }

  body #listings-container.container[data-columns="5"] .card {
    min-width: 0 !important;
  }

  body #listings-container.container[data-columns="5"] .card-details {
    padding: 14px 10px 16px !important;
    gap: 9px !important;
    overflow: hidden !important;
  }

  body #listings-container.container[data-columns="5"] .title {
    font-size: clamp(.98rem, 1.05vw, 1.14rem) !important;
    line-height: 1.26 !important;
    padding-inline: 4px !important;
    overflow-wrap: anywhere !important;
  }

  body #listings-container.container[data-columns="5"] .info-row,
  body #listings-container.container[data-columns="5"] .features-row {
    gap: 6px !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body #listings-container.container[data-columns="5"] .info-item,
  body #listings-container.container[data-columns="5"] .feature {
    flex: 0 1 auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: .76rem !important;
    line-height: 1.2 !important;
    padding: 6px 8px !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }

  body #listings-container.container[data-columns="5"] .info-item i,
  body #listings-container.container[data-columns="5"] .feature i {
    flex: 0 0 auto !important;
  }

  body #listings-container.container[data-columns="5"] .show-on-map-btn {
    min-width: 132px !important;
    min-height: 38px !important;
    border-radius: 13px !important;
    font-size: .78rem !important;
    padding: 8px 12px !important;
  }

  body #listings-container.container[data-columns="5"] .image-carousel .details-box {
    left: 50% !important;
    right: auto !important;
    bottom: 12px !important;
    max-width: calc(100% - 20px) !important;
  }

  body #listings-container.container[data-columns="5"] .details-box span,
  body #listings-container.container[data-columns="5"] .virtual-tour-card-label,
  body #listings-container.container[data-columns="5"] .virtual-tour-unit-meta span {
    font-size: .74rem !important;
    line-height: 1.18 !important;
    padding: 6px 8px !important;
    white-space: normal !important;
  }

  body #listings-container.container[data-columns="5"] .virtual-tour-card-meta {
    justify-content: center !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body #listings-container.container[data-columns="5"] .virtual-tour-unit-meta {
    justify-content: center !important;
    max-width: 100% !important;
  }
}

/* Hero phone final premium placement - must stay last. */
@media (min-width: 1024px) {
  body .hero-section > .hero-phone {
    position: absolute !important;
    left: clamp(70px, 8vw, 165px) !important;
    right: auto !important;
    top: 50% !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    z-index: 8 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 14px 18px 14px 16px !important;
    border-radius: 999px !important;
    transform: translateY(-50%) rotate(-5deg) !important;
    background:
      linear-gradient(135deg, rgba(9, 29, 42, .94), rgba(19, 70, 82, .84)),
      radial-gradient(circle at 18% 20%, rgba(104, 238, 226, .32), transparent 34%) !important;
    border: 1px solid rgba(105, 242, 229, .55) !important;
    box-shadow:
      0 26px 74px rgba(0, 18, 30, .46),
      0 0 0 7px rgba(105, 242, 229, .08),
      inset 0 1px 0 rgba(255,255,255,.16) !important;
    isolation: isolate !important;
  }

  body .hero-section > .hero-phone::before {
    content: "שיחה מהירה" !important;
    position: absolute !important;
    top: -15px !important;
    right: 28px !important;
    height: 27px !important;
    padding: 0 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffe789, #d7a83c) !important;
    color: #071724 !important;
    font-size: .82rem !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 10px 24px rgba(215, 168, 60, .28) !important;
    z-index: 2 !important;
  }

  body .hero-section > .hero-phone::after {
    content: "" !important;
    position: absolute !important;
    inset: 7px !important;
    border-radius: inherit !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    pointer-events: none !important;
  }

  body .hero-section > .hero-phone > i {
    width: 54px !important;
    height: 54px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 54px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #67f5e6, #42b8ff) !important;
    color: #071724 !important;
    font-size: 1.35rem !important;
    box-shadow: 0 14px 30px rgba(66, 184, 255, .28) !important;
  }

  body .hero-section > .hero-phone a {
    min-width: 0 !important;
    min-height: 0 !important;
    width: auto !important;
    height: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff6cd !important;
    font-size: clamp(34px, 2.55vw, 52px) !important;
    line-height: .95 !important;
    font-weight: 1000 !important;
    font-family: "Heebo", Arial, sans-serif !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.24), 0 0 22px rgba(255, 231, 137, .24) !important;
    letter-spacing: 0 !important;
    direction: ltr !important;
  }

  body .hero-section > .hero-phone a::before,
  body .hero-section > .hero-phone a::after {
    display: none !important;
    content: "" !important;
  }
}

@media (min-width: 1024px) and (max-width: 1360px) {
  body .hero-section > .hero-phone {
    left: clamp(34px, 4.2vw, 70px) !important;
    transform: translateY(-48%) rotate(-5deg) scale(.92) !important;
  }
}

/* Fix 6: tighter listing cards, stable mobile prices and mobile phone CTA. */
body #listings-container.container .listing-card-title-line {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px 12px !important;
  text-align: center !important;
  max-width: 100% !important;
}

body #listings-container.container .listing-title-text,
body #listings-container.container .listing-title-size {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

body #listings-container.container .listing-title-text {
  color: #102235 !important;
}

body #listings-container.container .listing-title-text i,
body #listings-container.container .listing-title-size i {
  color: #1d6fa4 !important;
  flex: 0 0 auto !important;
}

body #listings-container.container .listing-title-size {
  color: #35586d !important;
  font-size: .88em !important;
  font-weight: 850 !important;
}

body #listings-container.container .listing-title-size::before {
  content: "" !important;
  width: 1px !important;
  height: 18px !important;
  margin-inline-end: 3px !important;
  background: linear-gradient(to bottom, transparent, rgba(29,111,164,.42), transparent) !important;
}

body #listings-container.container .info-row:empty {
  display: none !important;
}

body #listings-container.container .info-row {
  min-height: 0 !important;
  margin: 0 !important;
}

body #listings-container.container .features-row {
  margin-top: 4px !important;
}

@media (max-width: 760px) {
  body #listings-container.container .card {
    width: min(100%, 392px) !important;
  }

  body #listings-container.container .listing-card-title-line {
    gap: 6px 9px !important;
    padding-inline: 8px !important;
  }

  body #listings-container.container .listing-title-text {
    flex-basis: 100% !important;
    font-size: clamp(1.08rem, 5vw, 1.45rem) !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }

  body #listings-container.container .listing-title-size {
    font-size: .9rem !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: #f3fbff !important;
    border: 1px solid rgba(29, 111, 164, .14) !important;
  }

  body #listings-container.container .listing-title-size::before {
    display: none !important;
  }

  body #listings-container.container .price-banner,
  body #listings-container.container .virtual-tour-carousel .price-banner {
    position: absolute !important;
    top: 14px !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    min-width: 112px !important;
    max-width: calc(100% - 112px) !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 18px !important;
    border-radius: 18px !important;
    z-index: 9 !important;
    background: rgba(16, 34, 53, .92) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    box-shadow: 0 14px 34px rgba(16,34,53,.24) !important;
  }

  body #listings-container.container .details-box,
  body #listings-container.container .virtual-tour-unit-meta {
    left: 50% !important;
    right: auto !important;
    bottom: 13px !important;
    transform: translateX(-50%) !important;
    max-width: calc(100% - 34px) !important;
  }

  body .hero-section > .hero-phone {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: 82px !important;
    width: min(332px, calc(100vw - 44px)) !important;
    max-width: calc(100vw - 44px) !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateX(-50%) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    z-index: 12 !important;
    display: flex !important;
    justify-content: center !important;
  }

  body .hero-section > .hero-phone > i {
    display: none !important;
  }

  body .hero-section > .hero-phone a {
    position: relative !important;
    width: 100% !important;
    max-width: 332px !important;
    min-height: 62px !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-items: center !important;
    column-gap: 10px !important;
    padding: 8px 14px !important;
    border-radius: 20px !important;
    font-size: 0 !important;
    color: transparent !important;
    background: linear-gradient(135deg, #0d2234 0%, #183a49 58%, #0b1926 100%) !important;
    border: 1px solid rgba(255, 226, 139, .58) !important;
    box-shadow: 0 18px 36px rgba(10,28,43,.26), inset 0 1px 0 rgba(255,255,255,.18) !important;
    overflow: hidden !important;
  }

  body .hero-section > .hero-phone a::before {
    content: "\f095" !important;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    color: #0d2234 !important;
    background: linear-gradient(135deg, #fff5bf, #e2af3d) !important;
    font-size: 17px !important;
    box-shadow: 0 8px 20px rgba(226,175,61,.25) !important;
  }

  body .hero-section > .hero-phone a::after {
    content: "שיחה מהירה עם המשרד\A 054-7744192" !important;
    white-space: pre-line !important;
    display: block !important;
    color: #fff6d3 !important;
    font-family: "Heebo", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.18 !important;
    font-weight: 950 !important;
    text-align: center !important;
    letter-spacing: 0 !important;
  }
}

/* Fix 7 final overrides: keep these last. */
body #listings-container.container .listing-entry-date {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #24536b !important;
  font-size: .92rem !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

body #listings-container.container .listing-entry-date i {
  color: #1d6fa4 !important;
}

body #listings-container.container .info-row:has(.listing-entry-date) {
  margin: 2px 0 0 !important;
  min-height: 0 !important;
  display: flex !important;
  justify-content: center !important;
}

body #listings-container.container .virtual-tour-card-meta {
  gap: 7px !important;
  background: transparent !important;
  box-shadow: none !important;
}

body #listings-container.container .virtual-tour-card-meta .virtual-tour-unit-meta,
body #listings-container.container .details-box {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  gap: 6px !important;
}

body #listings-container.container .virtual-tour-unit-meta span,
body #listings-container.container .details-box span {
  margin: 0 !important;
  background: rgba(239, 249, 255, .96) !important;
  border: 1px solid rgba(29, 111, 164, .18) !important;
  box-shadow: 0 8px 22px rgba(29, 111, 164, .08) !important;
}

body #listings-container.container .virtual-tour-unit-meta span + span::before,
body #listings-container.container .details-box span + span::before {
  display: none !important;
  content: none !important;
}

@media (max-width: 760px) {
  body .hero-section > .hero-phone {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: min(332px, calc(100% - 28px)) !important;
    max-width: calc(100% - 28px) !important;
    margin: 14px auto 0 !important;
    z-index: 6 !important;
  }
}

/* Fix 9 final override: mobile phone CTA overlays the hero media. */
@media (max-width: 760px) {
  body .hero-section {
    position: relative !important;
  }

  body .hero-section > .hero-phone {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: 18px !important;
    transform: translateX(-50%) !important;
    width: min(332px, calc(100% - 36px)) !important;
    max-width: calc(100% - 36px) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 18 !important;
  }
}
/* Early listing prefetch: keep the loader invisible while the next row is prepared. */
.listings-prefetch-sentinel {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 1px;
  pointer-events: none;
}

.listings-load-more-wrap {
  grid-column: 1 / -1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 8px 0 30px;
}

.listings-load-more-button {
  border: 0;
  border-radius: 18px;
  padding: 14px 34px;
  min-width: 190px;
  color: #0f2738;
  font-weight: 900;
  cursor: pointer;
  background: linear-gradient(135deg, #a7f8df 0%, #65e4c7 52%, #37cbb9 100%);
  box-shadow: 0 18px 38px rgba(48, 211, 184, .22);
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.listings-load-more-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 46px rgba(48, 211, 184, .3);
}

.listings-load-more-button[hidden] {
  display: none !important;
}

.listings-load-more-button.is-loading {
  opacity: .72;
  pointer-events: none;
}

.listing-card-warmed {
  animation: listingWarmIn .34s ease both;
}

@keyframes listingWarmIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Fix 14: clean media, floor/rooms below title, and viewport-safe lightbox. */
body #listings-container.container .image-carousel .details-box {
  display: none !important;
}

.listing-unit-meta-line {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 8px auto 12px !important;
  color: #17334a !important;
}

.listing-unit-meta-line span,
body #listings-container.container .virtual-tour-unit-meta span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 30px !important;
  padding: 6px 12px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(29, 111, 164, .18) !important;
  background: rgba(245, 251, 255, .96) !important;
  box-shadow: 0 10px 24px rgba(29, 111, 164, .08) !important;
  font-size: .88rem !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

body.lightbox-open {
  overflow: hidden !important;
}

.image-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(12px, 2.2vw, 28px) !important;
  background: rgba(3, 8, 13, .82) !important;
  backdrop-filter: blur(8px) !important;
  overflow: hidden !important;
}

.image-lightbox-content {
  position: relative !important;
  width: min(96vw, 1280px) !important;
  height: min(90vh, 880px) !important;
  max-width: 96vw !important;
  max-height: 90vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.lightbox-stage {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.lightbox-stage img.zoomable,
.lightbox-stage video.zoomable {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  border-radius: 18px !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .58) !important;
  transform-origin: center center !important;
}

.image-lightbox-close,
.virtual-tour-close {
  position: fixed !important;
  top: max(16px, env(safe-area-inset-top)) !important;
  right: max(16px, env(safe-area-inset-right)) !important;
  left: auto !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  aspect-ratio: 1 / 1 !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, .52) !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .96) !important;
  color: #071625 !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .28) !important;
  font-size: 32px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-align: center !important;
  cursor: pointer !important;
  z-index: 1000001 !important;
}

.lightbox-prev,
.lightbox-next {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 52px !important;
  height: 64px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .92) !important;
  color: #061423 !important;
  border: 0 !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28) !important;
  z-index: 1000000 !important;
}

.lightbox-prev {
  left: max(16px, env(safe-area-inset-left)) !important;
}

.lightbox-next {
  right: max(16px, env(safe-area-inset-right)) !important;
}

.lightbox-counter {
  position: absolute !important;
  left: 50% !important;
  bottom: 16px !important;
  transform: translateX(-50%) !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, .58) !important;
  color: #fff !important;
  font-weight: 900 !important;
  z-index: 1000000 !important;
}

@media (max-width: 760px) {
  .image-lightbox {
    padding: 10px !important;
  }

  .image-lightbox-content {
    width: 100vw !important;
    height: 86vh !important;
    max-width: 100vw !important;
    max-height: 86vh !important;
  }

  .lightbox-stage img.zoomable,
  .lightbox-stage video.zoomable {
    border-radius: 12px !important;
  }

  .image-lightbox-close,
  .virtual-tour-close {
    top: max(12px, env(safe-area-inset-top)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 29px !important;
  }

  .lightbox-prev,
  .lightbox-next {
    width: 44px !important;
    height: 58px !important;
    border-radius: 14px !important;
  }
}

/* Fix 15: keep regular photos and virtual tours at the same visual height. */
body #listings-container.container .image-carousel,
body #listings-container.container .image-carousel.virtual-tour-carousel {
  --listing-media-height: var(--virtual-tour-height, 520px);
  height: var(--listing-media-height) !important;
  min-height: var(--listing-media-height) !important;
  flex: 0 0 var(--listing-media-height) !important;
}

body #listings-container.container .image-carousel .slide,
body #listings-container.container .image-carousel img,
body #listings-container.container .image-carousel video,
body #listings-container.container .virtual-tour-frame {
  width: 100% !important;
  height: 100% !important;
}

@media (max-width: 980px) {
  body #listings-container.container .image-carousel,
  body #listings-container.container .image-carousel.virtual-tour-carousel {
    --listing-media-height: 430px;
  }
}

@media (max-width: 760px) {
  body #listings-container.container .image-carousel,
  body #listings-container.container .image-carousel.virtual-tour-carousel {
    --listing-media-height: 340px;
  }
}
