:root {
  --lianor-screen-image-inset: 20%;
  --lianor-screen-image-size: 60%;
  --lianor-screen-frame-radius: 10px;
  --lianor-screen-frame-line: rgba(239, 207, 133, 0.22);
  --lianor-screen-frame-shadow: 0 22px 82px rgba(0, 0, 0, 0.58);
}

body,
.arrival-shell,
.foundation-shell--cinematic,
.gp-cinema,
.secret-room-frame,
.world-shell-frame {
  background-color: #000;
}

.arrival-hero,
.foundation-cinematic-hero,
.conquest-final-hero,
.secret-room-hero,
.scene-stage {
  background: #000 !important;
}

.arrival-hero__image,
.foundation-cinematic-hero__image,
.conquest-final-hero__image,
.secret-room-hero__image,
.scene-stage-canonical-image,
.gp-stage-image {
  inset: auto !important;
  top: var(--lianor-screen-image-inset) !important;
  left: var(--lianor-screen-image-inset) !important;
  right: auto !important;
  bottom: auto !important;
  width: var(--lianor-screen-image-size) !important;
  height: var(--lianor-screen-image-size) !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  border: 1px solid var(--lianor-screen-frame-line);
  border-radius: var(--lianor-screen-frame-radius);
  background: #000;
  box-shadow: var(--lianor-screen-frame-shadow);
}

.arrival-veil,
.arrival-thread,
.foundation-cinematic-hero__veil,
.conquest-final-hero__veil,
.secret-room-hero::before {
  inset: auto !important;
  top: var(--lianor-screen-image-inset) !important;
  left: var(--lianor-screen-image-inset) !important;
  right: auto !important;
  bottom: auto !important;
  width: var(--lianor-screen-image-size) !important;
  height: var(--lianor-screen-image-size) !important;
  border-radius: var(--lianor-screen-frame-radius);
}

.scene-panel--knowledge .scene-stage,
.scene-panel--academy .scene-stage,
.world-body--knowledge .scene-panel--knowledge .scene-stage,
.world-body--academy .scene-panel--academy .scene-stage {
  background: #000 !important;
}

.gp-stage-image {
  position: fixed;
  z-index: -5;
  transform: none !important;
}

.gp-shadow-field {
  inset: auto !important;
  top: var(--lianor-screen-image-inset) !important;
  left: var(--lianor-screen-image-inset) !important;
  right: auto !important;
  bottom: auto !important;
  width: var(--lianor-screen-image-size) !important;
  height: var(--lianor-screen-image-size) !important;
  border-radius: var(--lianor-screen-frame-radius);
}

.arrival-hero__copy,
.foundation-cinematic-hero__copy,
.conquest-final-hero__copy,
.secret-room-hero > :not(.secret-room-hero__image),
.scene-copy {
  text-shadow: 0 18px 58px rgba(0, 0, 0, 0.92);
}

@media (max-width: 720px) {
  :root {
    --lianor-screen-image-inset: 20%;
    --lianor-screen-image-size: 60%;
  }

  .arrival-hero__image,
  .foundation-cinematic-hero__image,
  .conquest-final-hero__image,
  .secret-room-hero__image,
  .scene-stage-canonical-image,
  .gp-stage-image {
    width: var(--lianor-screen-image-size) !important;
    height: var(--lianor-screen-image-size) !important;
  }

  .arrival-hero,
  .foundation-cinematic-hero,
  .conquest-final-hero,
  .secret-room-hero {
    min-height: 76svh;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gp-stage-image,
  .arrival-hero__image,
  .foundation-cinematic-hero__image,
  .conquest-final-hero__image,
  .secret-room-hero__image,
  .scene-stage-canonical-image {
    transition: none !important;
    animation: none !important;
  }
}
