html,
body {
  height: 100%;
}

body {
  background: linear-gradient(135deg, #000000 0%, #555555 90%);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1;
}

.header {
  background-color:rgba(16, 39, 61, 0.53);
  color: white;
  padding: 20px 40px;
}

.card-icon {
  font-size: 2rem;
  color: #003366;
}

/* .card:hover {
            transform: scale(1.02);
            transition: 0.3s;
            cursor: pointer;
        } */

.btn-hover-shadow:hover,
.btn-hover-shadow:focus {
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.3) !important;
  transition: box-shadow 0.2s;
}

/* -------------- */

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: linear-gradient(135deg, #3a1c71 0%, #5f2c82 50%, #0f2027 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  transition: opacity 0.7s;
}

.preloader-content {
  text-align: center;
  color: #fff;
  animation: fadeIn 1.5s;
}

.preloader-content .logo {
  width: 120px;
  margin-bottom: 20px;
  filter: drop-shadow(0 0 12px #ffffff99);
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.fade-out {
  animation: fadeOut 0.5s forwards;
}
@keyframes fadeOut {
  to {
    opacity: 0;
    filter: blur(2px);
  }
}
