/* Premium Splash Screen styles */
#splash-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: linear-gradient(135deg, #FCF8F5 0%, #F5EDE4 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), visibility 0.8s;
  font-family: 'Playfair Display', 'Georgia', serif;
}

#splash-screen.fade-out {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.splash-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.splash-logo-wrapper {
  position: relative;
  margin-bottom: 24px;
  width: 120px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.splash-logo {
  width: 100px;
  height: 100px;
  object-fit: contain;
  z-index: 2;
  animation: logoPulse 2.5s infinite ease-in-out;
}

/* Glow effect around logo */
.splash-logo-glow {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 120px;
  height: 120px;
  background: radial-gradient(circle, rgba(138, 108, 88, 0.15) 0%, rgba(138, 108, 88, 0) 70%);
  border-radius: 50%;
  z-index: 1;
  animation: glowPulse 2.5s infinite ease-in-out;
}

.splash-title {
  font-size: 28px;
  font-weight: 700;
  color: #8A6C58; /* Luxury Bronze */
  letter-spacing: 4px;
  margin-bottom: 12px;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeInUp 1s forwards cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
}

.splash-subtitle {
  font-size: 11px;
  color: #7A7A7A;
  letter-spacing: 3px;
  margin-bottom: 40px;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeInUp 1s forwards cubic-bezier(0.25, 1, 0.5, 1) 0.6s;
}

.splash-loader-bar {
  width: 200px;
  height: 3px;
  background-color: rgba(138, 108, 88, 0.15);
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}

.splash-loader-progress {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 0%;
  background-color: #8A6C58;
  border-radius: 4px;
  animation: loadProgress 8s cubic-bezier(0.1, 0.8, 0.1, 1) forwards;
}

@keyframes logoPulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}

@keyframes glowPulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(0.9);
    opacity: 0.5;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 1;
  }
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes loadProgress {
  0% {
    width: 0%;
  }
  20% {
    width: 30%;
  }
  50% {
    width: 60%;
  }
  80% {
    width: 85%;
  }
  100% {
    width: 95%;
  }
}
