html,
body {
  font-family: "Bebas Neue", sans-serif;
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

/* Vibrant gradient background with animation */
body {
  background: linear-gradient(-45deg, #6c00a2, #001152, #3a0ca3, #4361ee);
  background-size: 400% 400%;
  animation: gradientBG 15s ease infinite;
}

@keyframes gradientBG {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.background {
  display: none; /* Hide this since we're using the body background */
}

.logo-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  /* Responsive vertical positioning */
  margin-top: min(-5vh, -40px);
}

.logo {
  /* Responsive logo sizing */
  max-width: min(80vw, 500px);
  max-height: min(30vh, 220px);
  width: auto;
  height: auto;
}

.text-container {
  z-index: 10;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  justify-content: center;
  align-items: center;
  /* Responsive font size */
  font-size: min(15vw, 96px);
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  /* Responsive vertical positioning */
  padding-top: min(25vh, 150px);
  margin-top: min(-5vh, -40px);
  animation: textPulse 4s ease-in-out infinite;
}

/* Add a subtle pulsing effect to the text */
@keyframes textPulse {
  0% {
    opacity: 0.7;
  }
  50% {
    opacity: 0.9;
  }
  100% {
    opacity: 0.7;
  }
}

/* Media queries for different screen sizes */
@media (max-width: 768px) {
  .logo-container {
    margin-top: -20px;
  }
  
  .text-container {
    padding-top: 120px;
  }
}

@media (max-width: 480px) {
  .logo-container {
    margin-top: -10px;
  }
  
  .text-container {
    padding-top: 100px;
  }
}

/* For very small screens */
@media (max-width: 320px) {
  .logo {
    max-width: 90vw;
    max-height: 25vh;
  }
  
  .text-container {
    padding-top: 80px;
  }
}

/* For landscape orientation on mobile */
@media (max-height: 500px) and (orientation: landscape) {
  .logo-container {
    margin-top: 0;
  }
  
  .logo {
    max-height: 40vh;
  }
  
  .text-container {
    padding-top: 45vh;
    font-size: min(10vw, 72px);
  }
}
