/* Optional 2–3 photo collage, only within each FLOOR's POINT 01–03.
   Every child photo has its own border-radius; never round the entire composite. */
.facility-floor-points .ybc-point-collage {
  position: relative;
  isolation: isolate;
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  overflow: visible;
}

.facility-floor-points .ybc-point-collage-photo {
  position: absolute;
  overflow: hidden;
  border-radius: 28px;
  background: #f2f0eb;
}

.facility-floor-points .ybc-point-collage-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

/* A: large portrait on left + upper-right + overlapping lower-right. */
.facility-floor-points .ybc-point-collage-photo--left-tall {
  left: 0%; top: 0%; width: 51%; height: 100%;
}
.facility-floor-points .ybc-point-collage-photo--right-top {
  left: 55%; top: 0%; width: 34%; height: 64%;
}
.facility-floor-points .ybc-point-collage-photo--right-bottom {
  left: 61%; top: 55%; width: 39%; height: 45%;
}

/* B: wide main photo + overlapping lower-right photo. */
.facility-floor-points .ybc-point-collage-photo--wide-main {
  left: 0%; top: 0%; width: 96%; height: 75%;
}
.facility-floor-points .ybc-point-collage-photo--front-bottom-right {
  left: 49%; top: 57%; width: 51%; height: 43%;
}

/* Additional positions, selectable per photo in WordPress. */
.facility-floor-points .ybc-point-collage-photo--left-bottom {
  left: 0%; top: 57%; width: 43%; height: 43%;
}
.facility-floor-points .ybc-point-collage-photo--center-right {
  left: 41%; top: 16%; width: 52%; height: 67%;
}

@media (max-width: 767px) {
  .facility-floor-points .ybc-point-collage {
    aspect-ratio: 6 / 5;
  }
  .facility-floor-points .ybc-point-collage-photo {
    border-radius: 22px;
  }
  .facility-floor-points .ybc-point-collage-photo--left-tall {
    left: 0%; top: 0%; width: 53%; height: 100%;
  }
  .facility-floor-points .ybc-point-collage-photo--right-top {
    left: 56%; top: 0%; width: 43%; height: 62%;
  }
  .facility-floor-points .ybc-point-collage-photo--right-bottom {
    left: 54%; top: 56%; width: 46%; height: 44%;
  }
  .facility-floor-points .ybc-point-collage-photo--wide-main {
    left: 0%; top: 0%; width: 100%; height: 73%;
  }
  .facility-floor-points .ybc-point-collage-photo--front-bottom-right {
    left: 45%; top: 55%; width: 55%; height: 45%;
  }
  .facility-floor-points .ybc-point-collage-photo--left-bottom {
    left: 0%; top: 58%; width: 48%; height: 42%;
  }
  .facility-floor-points .ybc-point-collage-photo--center-right {
    left: 38%; top: 17%; width: 62%; height: 65%;
  }
}

/* The optional editor's non-destructive image cropping (does not change media files). */
.facility-floor-points .ybc-point-collage-photo img {
  transform: translate(var(--ybc-crop-x, 0%), var(--ybc-crop-y, 0%)) scale(var(--ybc-crop-zoom, 1));
  transform-origin: center;
  max-width: none;
  max-height: none;
}
