body.splash {
  margin: 0;
  padding: 0;
  height: 100vh;
  background-color: #111;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: sans-serif;
}

.splash-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  /* Removed gap */
}

.logo {
  width: 80vw;
  max-width: 800px;
  height: auto;
  object-fit: contain;      /* keeps aspect ratio */
  display: block;
  margin-bottom: 20px; /* Tighter spacing under logo */
}

.enter-btn {
  margin-top: 0; /* remove default spacing */
  padding: 12px 28px; /* slightly tighter padding */
  background-color: white;
  color: black;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.2rem;
  border-radius: 5px;
  transition: background-color 0.3s ease;
  display: inline-block;

  animation: pulse 2.5s infinite ease-in-out;
}

.enter-btn:hover {
  background-color: #eee;
  animation-play-state: paused; /* stop pulsing when hovered */
  transform: scale(1.05);
}

.payment-instructions {
  margin-top: 10px;
  font-size: 0.95rem;
  color: #555;
  line-height: 1.6;
}

.payment-instructions strong {
  color: #000;
}

.payment-instructions a {
  color: black;
  font-weight: bold;
  text-decoration: underline;
}


@keyframes pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 10px 10px rgba(255, 255, 255, 0.3);
    transform: scale(1.03);
  }
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
