/* Behind the copy, above the photographic plate. This layer cannot intercept a tap. */
.hero > .air-volume,
.scene-cover > .air-volume,
.yard-film > .air-volume {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
    user-select: none;
}
.yard-film > .air-volume { z-index: 2; }
.hero > .air-volume {
    z-index: -1;
}
.scene-cover {
    isolation: isolate;
}
.scene-cover > .air-volume {
    z-index: 1;
}
.scene-cover .scene-heading {
    position: relative;
    z-index: 2;
}

.yard-film::before {z-index:3}
.scene-cover[data-section="41"]::before,.scene-cover[data-section="49"]::before {z-index:2}

/* The links and type stay fixed; only the registered machine or glazing moves. */
.nav-bays a > .bay-photo {position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none;isolation:isolate}
.nav-bays .bay-photo > img,.nav-bays a:hover .bay-photo > img {
    z-index:0;inset:0;display:block;width:100%;height:100%;object-fit:cover;
    animation:none;transition:none;transform:none;
}
.nav-bays .bay-photo > .scene-art {object-position:50% 42%}
.nav-bays .bay-photo > .air-volume {position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}
.nav-bays .bay-photo .fan-disc {z-index:1}
.nav-bays .bay-photo .fan-disc img {z-index:0;animation:none;transition:none;transform-origin:center}
.nav-bays .bay-photo.fan-plate {--fan-focus-x:.63;--fan-focus-y:.33}
.nav-bays .bay-photo > .fan-photo {object-position:calc(var(--fan-focus-x)*100%) calc(var(--fan-focus-y)*100%)}
.nav-bays a:focus-visible {outline:2px solid var(--ice,#b9f5de);outline-offset:-3px}

/* A cropped view of the full optical plane: the lamp, reflection and roof
   masks are measured against the source, even in the shallow footer frame. */
body .site-window.photo-yard {--window-height:clamp(260px,29vw,485px);min-height:var(--window-height)}
body .site-window.photo-yard .yard-film {
    inset:auto;left:50%;top:16%;z-index:-2;margin:0;align-self:auto;
    width:max(100%,calc(var(--window-height) * 1672 / 941));height:auto;
    aspect-ratio:1672/941;transform:translate(-50%,-16%);
}
body .site-window .yard-film img {display:block;width:100%;height:100%;object-fit:fill}
@media(max-width:830px){body .site-window.photo-yard {--window-height:230px}}
