/* ========== Open Bible — SpaceX-style entrance (1.6s) + restrained verse focus ========== */

.miga-bible-stage {
  position: relative;
  width: min(820px, 96vw);
  margin: 0 auto 1.25rem;
  overflow: visible;
}

.miga-bible-real {
  position: relative;
  width: 100%;
  aspect-ratio: 1536 / 1024;
}

/* Intro: void + horizontal light line */
.miga-bible-intro {
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
}

.miga-bible-intro__void {
  position: absolute;
  inset: -2%;
  background: #050505;
  animation: migaBibleVoidOut 1.45s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.miga-bible-intro__line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 1px;
  transform: translate(-50%, -50%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 252, 245, 0.15) 18%,
    rgba(255, 252, 245, 0.95) 50%,
    rgba(255, 252, 245, 0.15) 82%,
    transparent 100%
  );
  box-shadow: 0 0 6px rgba(255, 248, 235, 0.35);
  opacity: 0;
  animation: migaBibleLineExpand 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.miga-bible-real__open {
  position: absolute;
  inset: 0;
  z-index: 2;
  opacity: 0;
  transform: scale(0.968);
  animation: migaBibleOpenReveal 1.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.miga-bible-photo-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 100%;
  border-radius: 3px;
  overflow: hidden;
  background: transparent;
  filter: drop-shadow(0 18px 40px rgba(0, 0, 0, 0.45));
  transform-origin: center 42%;
}

.miga-bible-photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

/* Restrained post-reveal focus toward John 1:1 highlight */
.miga-hero--bible-done .miga-bible-photo-wrap {
  animation: migaBibleVerseFocus 2.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.miga-hero--bible-done .miga-bible-photo {
  animation: migaBibleVersePan 2.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes migaBibleLineExpand {
  0% {
    width: 0;
    opacity: 0;
  }
  12% {
    opacity: 1;
  }
  100% {
    width: min(74%, 540px);
    opacity: 0.9;
  }
}

@keyframes migaBibleVoidOut {
  0%,
  38% {
    opacity: 1;
  }
  72%,
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes migaBibleOpenReveal {
  0%,
  32% {
    opacity: 0;
    transform: scale(0.962);
    filter: blur(3px);
  }
  58% {
    opacity: 0.55;
    transform: scale(0.985);
    filter: blur(0.5px);
  }
  88%,
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}

@keyframes migaBibleVerseFocus {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.035);
  }
}

@keyframes migaBibleVersePan {
  from {
    object-position: center center;
  }
  to {
    object-position: 50% 40%;
  }
}

/* Hero content after Bible is readable */
.miga-hero-content--after-bible .miga-hero-headline,
.miga-hero-content--after-bible .miga-hero-sub,
.miga-hero-content--after-bible .miga-hero-cta {
  opacity: 0;
  animation: migaHeroContentIn 0.55s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.miga-hero-content--after-bible .miga-hero-headline {
  animation-delay: 1.45s;
}

.miga-hero-content--after-bible .miga-hero-sub {
  animation-delay: 1.55s;
}

.miga-hero-content--after-bible .miga-hero-cta {
  animation-delay: 1.65s;
}

@keyframes migaHeroContentIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 639px) {
  .miga-bible-stage {
    width: min(calc(100% - 0.75rem), 820px);
    max-width: 100%;
    margin-bottom: 1rem;
  }
}

@media (min-width: 640px) {
  .miga-bible-stage {
    width: min(820px, 92vw);
    margin-bottom: 1.75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .miga-bible-intro,
  .miga-bible-real__open,
  .miga-hero--bible-done .miga-bible-photo-wrap,
  .miga-hero--bible-done .miga-bible-photo,
  .miga-hero-content--after-bible .miga-hero-headline,
  .miga-hero-content--after-bible .miga-hero-sub,
  .miga-hero-content--after-bible .miga-hero-cta {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    filter: none !important;
  }

  .miga-bible-intro {
    display: none;
  }
}
