/* Garante que o overlay esteja escondido inicialmente */

.transition-overlay {
  display: none;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.95);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease;
}

.transition-overlay.active {
  display: flex;
  opacity: 1;
  pointer-events: all;
}

.hearts-container {
  position: relative;
  width: 100px;
  height: 100px;
}

.heart {
  position: absolute;
  width: 30px;
  height: 30px;
  background-color: #79B8D7;
  transform: rotate(45deg);
  animation: pulse 1.5s infinite ease-in-out;
}

.heart:before, .heart:after {
  content: "";
  width: 30px;
  height: 30px;
  background-color: inherit;
  border-radius: 50%;
  position: absolute;
}

.heart:before {
  top: -15px;
  left: 0;
}

.heart:after {
  top: 0;
  left: -15px;
}

.heart-1 {
  background-color: #8FB3D9 ; /* #79B8D7 #F8F4E9; #8FB3D9 */
  animation: orbit-1 3s linear infinite, pulse 1.5s infinite ease-in-out;
  top: 50%;
  left: 50%;
}

.heart-2 {
  background-color: #A7C7E7; /* #79B8D7*/
  animation: orbit-2 3s linear infinite, pulse 1.5s infinite ease-in-out 0.5s;
  top: 50%;
  left: 50%;
}

@keyframes orbit-1 {
  0% {
      transform: rotate(0deg) translateX(30px) rotate(0deg) rotate(45deg);
  }
  100% {
      transform: rotate(360deg) translateX(30px) rotate(-360deg) rotate(45deg);
  }
}

@keyframes orbit-2 {
  0% {
      transform: rotate(180deg) translateX(30px) rotate(-180deg) rotate(45deg);
  }
  100% {
      transform: rotate(540deg) translateX(30px) rotate(-540deg) rotate(45deg);
  }
}

@keyframes pulse {
  0%, 100% {
      transform: scale(1) rotate(45deg);
  }
  50% {
      transform: scale(1.2) rotate(45deg);
  }
}