.cloud-container {
  position: absolute;
  width: 25cqw;
  height: 25cqw;
  z-index: 4;
  opacity: 1;
  pointer-events: none;
  transform-origin: center center;
}

.cloud-container.interactive {
  pointer-events: auto;
  cursor: pointer;
}

.cloud-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  animation: cloud-idle 6s ease-in-out infinite;
}

.cloud-container.dissolving {
  pointer-events: none;
  animation: cloud-dissolve 1.2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@keyframes cloud-idle {
  0%, 100% {
    transform: translateY(0) scale(1) rotate(0deg);
  }
  50% {
    transform: translateY(-1cqh) scale(1.03) rotate(2deg);
  }
}

@keyframes cloud-dissolve {
  0% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(var(--translate-x, 0), var(--translate-y, 0)) scale(0.6);
  }
}
