/* Older Elementor image/text rows: keep both columns stretched to the full row height. */
.page-id-9 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1096 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1210 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1287 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1341 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1505 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1525 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-1707 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container,
.page-id-2276 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container {
    align-items: stretch !important;
}

.page-id-9 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1096 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1210 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1287 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1341 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1505 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1525 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-1707 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column,
.page-id-2276 .elementor-section-stretched.elementor-section-height-min-height > .elementor-container > .elementor-column {
    align-self: stretch !important;
}

/* Facilities needs the existing image crops explicitly retained as cover/centre. */
.page-id-1210 .elementor-element-4f3b3dcc,
.page-id-1210 .elementor-element-9c4d3e2,
.page-id-1210 .elementor-element-317513b0,
.page-id-1210 .elementor-element-3a4006b3 {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

/* Facilities hero film: replaces the old 'Our Facilities' image banner when a video URL is present. */
.mihi-facilities-inline-video {
    position: relative;
    width: 100%;
    height: clamp(300px, 36vw, 500px);
    overflow: hidden;
    background: #000;
}

.mihi-facilities-inline-video-frame {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.mihi-facilities-inline-video-frame iframe,
.mihi-facilities-inline-video-frame video {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100vw;
    min-width: 100%;
    height: 74.6667vw;
    min-height: 100%;
    border: 0;
    transform: translate(-50%, -50%);
    object-fit: cover;
    pointer-events: none;
}

.mihi-facilities-inline-video-frame video {
    width: 100%;
    height: 100%;
}

@media (max-width: 1024px) {
    .mihi-facilities-inline-video {
        height: clamp(260px, 48vw, 420px);
    }
}

@media (max-width: 767px) {
    .mihi-facilities-inline-video {
        height: clamp(220px, 58vw, 320px);
    }
}
