/* index3: animate imagery only. All text remains stationary. */
.pop-hero-photo img {
  opacity: .45;
  transform: scale(1.08);
}

.effects-ready .pop-hero-photo img {
  animation: hero-photo-in 1.5s cubic-bezier(.16, 1, .3, 1) forwards;
}

.mascot-entrance {
  opacity: 0;
  transform: translateX(42px) scale(.95);
}

.effects-ready .mascot-entrance {
  animation: mascot-photo-in 1s cubic-bezier(.16, 1, .3, 1) .25s forwards;
}

.mascot-cluster {
  position: relative;
  z-index: 2;
  width: min(560px, 100%);
  min-height: 470px;
  margin-inline: auto;
}

.mascot-stage .mascot-cluster img {
  position: absolute;
  width: auto;
  margin: 0;
  filter: drop-shadow(0 18px 14px rgba(0,0,0,.28));
}

.mascot-boy {
  left: 5%;
  bottom: 22px;
  height: 62%;
}

.mascot-girl {
  right: 2%;
  bottom: 18px;
  height: 68%;
}

.mascot-car {
  left: 1%;
  bottom: 0;
  height: 25%;
  transform: rotate(-4deg);
}

.mascot-bike {
  right: 12%;
  bottom: 0;
  height: 27%;
  transform: rotate(5deg);
}

.mascot-shadow {
  position: absolute;
  left: 10%;
  right: 6%;
  bottom: 2px;
  height: 34px;
  background: rgba(0,0,0,.22);
  border-radius: 50%;
  filter: blur(14px);
}

.pop-service-card:hover {
  transform: none;
}

[data-reveal] .service-photo,
[data-reveal] .kaitorys-photo,
[data-reveal] .kaitorys-mascots {
  opacity: 0;
  transform: scale(.94);
  transition: opacity .8s ease, transform 1s cubic-bezier(.16, 1, .3, 1);
}

[data-reveal].is-visible .service-photo,
[data-reveal].is-visible .kaitorys-photo,
[data-reveal].is-visible .kaitorys-mascots {
  opacity: 1;
  transform: scale(1);
}

[data-reveal].is-visible [data-reveal-item]:nth-child(2) .service-photo { transition-delay: .12s; }
[data-reveal].is-visible [data-reveal-item]:nth-child(3) .service-photo { transition-delay: .24s; }
[data-reveal].is-visible .kaitorys-mascots { transition-delay: .2s; }

.kaitorys-visual .mascot-side-boy {
  width: 30%;
  right: 18%;
  bottom: 0;
}

.kaitorys-visual .mascot-side-girl {
  width: 31%;
  right: -5%;
  bottom: 4px;
  transition-delay: .34s;
}

.pop-contact-inner > img {
  width: 250px;
  right: -20px;
}

@keyframes hero-photo-in {
  from { opacity: .45; transform: scale(1.08); }
  to { opacity: 1; transform: scale(1); }
}

@keyframes mascot-photo-in {
  0% { opacity: 0; transform: translateX(42px) scale(.95); }
  75% { opacity: 1; transform: translateX(-4px) scale(1.01); }
  100% { opacity: 1; transform: translateX(0) scale(1); }
}

@media (max-width: 760px) {
  .mascot-cluster {
    min-height: 260px;
  }

  .mascot-boy {
    left: 0;
    height: 62%;
  }

  .mascot-girl {
    right: 0;
    height: 67%;
  }

  .mascot-car,
  .mascot-bike {
    display: none;
  }

  .mascot-shadow {
    left: 8%;
    right: 8%;
  }

  .kaitorys-visual .mascot-side-boy {
    width: 32%;
    right: 21%;
  }

  .kaitorys-visual .mascot-side-girl {
    width: 33%;
    right: -6%;
  }

  .pop-contact-inner > img {
    width: 190px;
    right: 50%;
  }
}
