/* Move the whole photographic frame; its crop and layout dimensions stay fixed. */
.photo-float{transform:translate3d(0,var(--photo-drift,0px),0)}
.photo-float .photo-trigger{box-shadow:0 10px 24px -12px #0009;transition:filter .3s ease,box-shadow .4s ease,translate .45s cubic-bezier(.2,.7,.25,1)}
.photo-awaiting .photo-trigger{opacity:0}
.photo-awaiting:focus-within .photo-trigger{opacity:1}
@media(hover:hover) and (pointer:fine){.photo-float .photo-trigger:hover{translate:0 -2px;box-shadow:0 16px 28px -12px #000b}}
.roll-media .roll-departing{position:absolute;inset:0;pointer-events:none;z-index:1}
.roll-media #roll-image{position:relative;z-index:2;transform-origin:50% 50%}
.roll-media .roll-loading{z-index:3}
.roll-media[data-swipe="both"]{touch-action:pinch-zoom}
.roll-thumb{transition:opacity .25s ease,translate .4s cubic-bezier(.2,.7,.25,1)}
.roll-thumb[aria-pressed="true"],.roll-thumb:hover,.roll-thumb:focus-visible{translate:0 -2px}
@media(prefers-reduced-motion:reduce){.photo-float{transform:none!important}.photo-awaiting .photo-trigger{opacity:1}.photo-float .photo-trigger,.roll-thumb{transition:none;translate:none!important}.roll-media .roll-departing{display:none}}
