.cupid-link {
  display: none !important;
}

.couple-photo,
.scratch-layer {
  clip-path: ellipse(49% 49.5% at 50% 50%);
  -webkit-clip-path: ellipse(49% 49.5% at 50% 50%);
}

.scratch-label {
  opacity: 1;
  transition: opacity 420ms ease, transform 420ms ease;
}

.scratch-layer.is-scratching .scratch-label,
.scratch-layer.is-revealed .scratch-label {
  opacity: 0;
  transform: translate(-50%, calc(-50% + 8px));
}

.frost-glitter-burst {
  position: absolute;
  inset: 14% 16% 16%;
  z-index: 14;
  overflow: visible;
  pointer-events: none;
}

.frost-glitter-burst span {
  --spark-size: 5px;
  --spark-delay: 0ms;
  --spark-x: 0px;
  --spark-y: -34px;
  position: absolute;
  left: var(--left);
  top: var(--top);
  width: var(--spark-size);
  height: var(--spark-size);
  border-radius: 50%;
  background: radial-gradient(circle, #fff 0 18%, #fff5c8 22% 42%, rgba(223, 186, 104, 0.9) 46% 62%, transparent 68%);
  box-shadow: 0 0 8px rgba(255, 239, 181, 0.95), 0 0 18px rgba(206, 165, 80, 0.65);
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.1) rotate(0deg);
  animation: frost-sparkle 1.9s cubic-bezier(.16, .78, .2, 1) var(--spark-delay) forwards;
}

.frost-glitter-burst span::before,
.frost-glitter-burst span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: rgba(255, 250, 224, 0.95);
  transform: translate(-50%, -50%);
}

.frost-glitter-burst span::before {
  width: 1px;
  height: calc(var(--spark-size) * 3.2);
}

.frost-glitter-burst span::after {
  width: calc(var(--spark-size) * 3.2);
  height: 1px;
}

@keyframes frost-sparkle {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.1) rotate(0deg);
  }
  18% {
    opacity: 1;
  }
  52% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.55) rotate(120deg);
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--spark-x)), calc(-50% + var(--spark-y))) scale(0.15) rotate(260deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .frost-glitter-burst span {
    animation-duration: 0.01ms !important;
  }
}
