.txtfx-wrap {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    margin-top: 4rem;
}

.txtfx {
    position: absolute;
    inset: 0;
}

.txtfx-frame {
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
  font-size: clamp(36px, 10vw, 80px);
  font-weight: 700;
  color: #444;
  text-shadow: 0 0 1px #ccc;
  opacity: 0;
  animation: txtfxFade 6s linear infinite;
  padding: 0 1rem;
  box-sizing: border-box;
}


.txtfx-frame.f1 {
    animation-delay: 0s;
}

.txtfx-frame.f2 {
    animation-delay: 2s;
}

.txtfx-frame.f3 {
    animation-delay: 4s;
}

@keyframes txtfxFade {
  0% {
    opacity: 0;
    transform: translateY(-50%) scale(1.2);
    text-shadow: 0 0 24px #ccc;
  }
  10%, 30% {
    opacity: 1;
    transform: translateY(-50%) scale(1);
    text-shadow: 0 0 2px #ccc;
  }
  40% {
    opacity: 0;
    transform: translateY(-50%) scale(0.6); /* 🔑 */
    text-shadow: 0 0 32px #ccc;
  }
  100% {
    opacity: 0;
  }
}
