#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5) !important; 
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  pointer-events: none;
  transition: opacity 0.5s ease;
}

.spinner {
  width: 50px;
  height: 50px;
  border: 5px solid rgba(150, 150, 150, 0.2); 
  border-top: 5px solid #2271b1; 
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

/* Logo */
.preloader-logo-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.preloader-logo {
    max-width: 200px;
    height: auto;
    display: block;
}

.bounce-animation {
    animation: bounce 1.2s infinite cubic-bezier(0.28, 0.84, 0.42, 1);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(-35px); }
    60% { transform: translateY(-15px); }
}