/* FXCHS V2.95 – film stills, balanced reels and stable 360 controls. */
/* Genuine film stills. Before media consent the backing remains a gradient. */
body.fxv2 .fxv295-film-thumb{position:relative;display:block;overflow:hidden;isolation:isolate;}
body.fxv2 .fxv295-film-thumb .fxv290-card-gradient{position:absolute;inset:0;width:100%;height:100%;}
body.fxv2 .fxv295-external-thumb{opacity:0;display:block;pointer-events:none;
  transition:opacity .23s ease-out;}
body.fxv2 .fxv295-external-thumb.is-loaded{opacity:1;}
body.fxv2 .fxv295-external-thumb[hidden]{display:none!important;}
body.fxv2 .fxv295-film-thumb .fxv295-external-thumb{position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;object-position:center center;}
body.fxv2 .fxv295-film-card .fxv2-card-media::before{content:'';position:absolute;
  z-index:2;top:50%;left:50%;width:36px;height:36px;transform:translate(-50%,-50%);
  border-radius:50%;background:#101a1acc;outline:1px solid #fff9;pointer-events:none;}
body.fxv2 .fxv295-film-card .fxv2-card-media::after{content:'';position:absolute;
  z-index:3;top:50%;left:50%;transform:translate(-32%,-50%);
  border-top:6px solid transparent;border-bottom:6px solid transparent;
  border-left:10px solid white;pointer-events:none;opacity:1!important;background:none!important;}
/* Panorama thumbnails are genuine YouTube stills and never replace the scene. */
body.fxv2 .fxv2-video-orb .fxv295-external-thumb{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;z-index:1;}
body.fxv2 .fxv257-room-teaser .fxv295-room-thumb{position:relative;display:block;
  width:100%;height:clamp(75px,11vw,170px);object-fit:cover;margin-top:calc(-1 * clamp(75px,11vw,170px));
  border-radius:12px;}
/* The Reel is a supporting portrait window, not the dominant page element. */
body.fxv2 .fxv2-world .fxv2-pano-hotspots>.fxv2-reel-cluster,
body.fxv2 .fxv2-world .fxv2-reel-cluster{
  width:clamp(122px,13vw,174px)!important;
  max-width:min(37vw,174px)!important;
  aspect-ratio:3/4!important;
}
body.fxv2 .fxv2-world .fxv2-pano-hotspots .fxv2-reel-cluster .fxv2-reel-orb{
  width:100%!important;height:100%!important;aspect-ratio:3/4!important;
  flex:0 0 100%!important;border-radius:22% 29% 20% 28%!important;
}
body.fxv2 .fxv2-reel-orb .fxv2-video-orb-caption strong{font-size:clamp(10px,1vw,13px)!important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
body.fxv2 .fxv2-video-dialog.is-reel{width:min(90vw,304px)!important;max-width:304px!important;}
body.fxv2 .fxv2-video-dialog.is-reel .fxv2-video-dialog-stage{aspect-ratio:9/16!important;}
@media(max-width:670px){
 body.fxv2 .fxv2-world .fxv2-pano-hotspots>.fxv2-reel-cluster,
 body.fxv2 .fxv2-world .fxv2-reel-cluster{width:min(32vw,132px)!important;max-width:32vw!important;}
}
/* Avoid an opacity transition competing with each 360 camera frame;
   camera-frame opacity remains continuous and therefore does not blink. */
body.fxv2 .fxv2-world .fxv2-pano-hotspots>[data-v2-hotspot]{transition:none!important;
  backface-visibility:hidden;}
body.fxv2 .fxv2-world .fxv2-pano-hotspots .fxv2-video-orb-image,
body.fxv2 .fxv2-world .fxv2-pano-hotspots .fxv2-video-orb-caption{animation:none!important;}
@media(prefers-reduced-motion:reduce){body.fxv2 .fxv295-external-thumb{transition:none!important;}}
