.footer-studio {
  grid-column: 3;
  justify-self: end;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.footer-studio img {
  width: clamp(96px, 9vw, 126px);
  height: auto;
  object-fit: contain;
}

/* Centre the OpenSea mark on the divider between the lantern and mint date. */
.reveal-vault-wrap > .reveal-vault-opensea {
  border: 0;
  display: grid;
  top: calc(100% - 170px);
  right: auto;
  bottom: auto;
  left: 50%;
  width: 42px;
  height: 42px;
  transform: translate(-50%, -50%);
}

.reveal-vault-wrap > .reveal-vault-opensea img {
  width: 85%;
  height: 85%;
}

/* Cycle the final word through luminous neon colours without moving it. */
.origin-hero-word {
  display: inline-block;
  position: relative;
  color: #c2f100;
  will-change: color, filter, text-shadow;
  animation: origin-hero-colour-glow 7s ease-in-out infinite;
}

@keyframes origin-hero-colour-glow {
  0%, 100% {
    color: #c2f100;
    filter: brightness(1.08) saturate(1.08);
    text-shadow: 0 0 0.08em rgba(194, 241, 0, .8), 0 0 0.26em rgba(194, 241, 0, .48);
  }
  20% {
    color: #42f5ff;
    filter: brightness(1.12) saturate(1.12);
    text-shadow: 0 0 0.08em rgba(66, 245, 255, .82), 0 0 0.28em rgba(66, 245, 255, .5);
  }
  40% {
    color: #9d63ff;
    filter: brightness(1.14) saturate(1.14);
    text-shadow: 0 0 0.08em rgba(157, 99, 255, .82), 0 0 0.3em rgba(157, 99, 255, .52);
  }
  60% {
    color: #ff4fa3;
    filter: brightness(1.12) saturate(1.12);
    text-shadow: 0 0 0.08em rgba(255, 79, 163, .82), 0 0 0.28em rgba(255, 79, 163, .5);
  }
  80% {
    color: #ffd84a;
    filter: brightness(1.1) saturate(1.1);
    text-shadow: 0 0 0.08em rgba(255, 216, 74, .82), 0 0 0.28em rgba(255, 216, 74, .48);
  }
}

@media (prefers-reduced-motion: reduce) {
  .origin-hero-word {
    animation: none;
    color: #c2f100;
    filter: none;
    text-shadow: 0 0 0.18em rgba(194, 241, 0, .4);
  }
}

@media (max-width: 900px) {
  .footer-studio {
    grid-column: 1;
    justify-self: center;
  }

  .footer-studio img {
    width: 112px;
  }

  .reveal-vault-wrap > .reveal-vault-opensea {
    top: calc(100% - 170px);
    left: 53%;
  }
}

@media (max-width: 580px) {
  .reveal-vault-wrap > .reveal-vault-opensea {
    top: calc(100% - 170px);
    left: 50%;
  }
}
