/* ==========================================================
   RESTAURAÇÃO DA NARRATIVA — PRIORIDADE FINAL
========================================================== */

.genesis-scene-01{
  position:absolute;
  inset:0;
  overflow:hidden;
}

.genesis-scene-01 .scene01-narrative{
  position:absolute;
  left:50%;
  top:68%;

  width:min(
    1180px,
    calc(100vw - 72px)
  );

  min-height:180px;

  transform:
    translate(-50%,-50%);

  text-align:center;
  pointer-events:none;
  z-index:120;
}

.genesis-scene-01 .scene01-line{
  position:absolute;
  left:0;
  top:50%;
  width:100%;
  margin:0;

  opacity:0;

  transform:
    translateY(44px)
    scale(.985);

  color:
    rgba(244,249,255,.98);

  font-size:
    clamp(38px,4.3vw,66px);

  font-weight:300;
  line-height:1.22;
  letter-spacing:.025em;

  filter:
    blur(10px)
    brightness(1.35);

  text-shadow:
    0 0 22px rgba(255,255,255,.12),
    0 0 64px rgba(82,185,255,.18);

  transition:
  opacity 1.37s ease,
  transform 1.63s
    cubic-bezier(.22,1,.36,1),
  filter 1.50s ease;

}

.genesis-scene-01
.scene01-line.is-current{
  opacity:1;

  transform:
    translateY(-50%)
    scale(1);

  filter:
    blur(0)
    brightness(1);
}

.genesis-scene-01
.scene01-line.is-past{
  opacity:0;

  transform:
    translateY(-115px)
    scale(.97);

  filter:
    blur(8px)
    brightness(.72);
}

.genesis-scene-01
.scene01-line-final{
  color:#ffffff;

  font-size:
    clamp(42px,4.8vw,72px);

  font-weight:300;
  letter-spacing:.04em;
}

.genesis-scene-01.is-leaving{
  animation:
    scene01NarrativeExit
    .75s
    ease
    forwards;
}

@keyframes scene01NarrativeExit{
  from{
    opacity:1;
  }

  to{
    opacity:0;
  }
}