:root {
  --finale-ground:#151515;
  --finale-grid:#2E2E2E;
}

.finale-wall-layer {
  position:fixed;
  z-index:50;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  opacity:0;
  transition:none;
}

.finale-wall-layer.is-active { opacity:var(--finale-layer-opacity,0); }

main[data-phase="finale"] .data-lens { display:none!important; }

.finale-global-stage {
  position:absolute;
  width:3840px;
  height:1080px;
  left:0;
  top:0;
  overflow:hidden;
  background:transparent;
}

.finale-platform-message {
  position:absolute;
  z-index:2;
  left:50%;
  top:568px;
  width:1600px;
  transform:translateX(-50%);
  text-align:center;
  color:#FFFFFF;
  font-family:"Source Sans Pro",Arial,sans-serif;
  opacity:var(--finale-message-opacity,0);
}

.finale-platform-title {
  font-size:38px;
  line-height:46px;
  font-weight:600;
}

.finale-platform-statement {
  margin-top:4px;
  color:#E6E3F3;
  font-size:20px;
  line-height:24px;
  font-weight:400;
}

.finale-grid {
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(var(--finale-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--finale-grid) 1px,transparent 1px);
  background-size:42px 42px;
  opacity:var(--finale-grid-opacity,0);
}

.finale-panorama {
  position:absolute;
  top:0;
  width:1920px;
  height:540px;
  object-fit:cover;
  background:var(--finale-ground);
  opacity:0;
  filter:blur(var(--finale-morph-blur,12px)) saturate(.92) contrast(1.04);
  transform:scale(var(--finale-morph-scale,1.035));
  will-change:opacity,clip-path,filter,transform;
}

.finale-panorama-ai {
  left:0;
  object-position:center center;
  opacity:var(--finale-ai-opacity,0);
  clip-path:inset(0 0 0 var(--finale-morph-inset,100%));
  transform-origin:right center;
}

.finale-panorama-human {
  left:1920px;
  object-position:center 28%;
  opacity:var(--finale-human-opacity,0);
  clip-path:inset(0 var(--finale-morph-inset,100%) 0 0);
  transform-origin:left center;
}

body[data-finale-region="upper-left"] .finale-panorama-ai,
body[data-finale-region="upper-right"] .finale-panorama-human {
  clip-path:none;
  transform-origin:center center;
}

body.finale-morphing video {
  opacity:var(--finale-outgoing-opacity,1)!important;
  filter:blur(var(--finale-outgoing-blur,0px));
  transform:scale(var(--finale-outgoing-scale,1));
  transition:none!important;
}

main[data-phase="finale"] #focusCanvas,
main[data-phase="finale"] .root-lockup,
main[data-phase="finale"] .broker-status,
main[data-phase="finale"] .powered-by,
main[data-phase="finale"] .keynote,
main[data-phase="finale"] .empty-state {
  opacity:var(--finale-ui-opacity,0)!important;
  transition:none!important;
}

@media (prefers-reduced-motion:reduce) {
  .finale-wall-layer,
  body.finale-morphing video,
  main[data-phase="finale"] #focusCanvas { transition:none!important; }
}
