/* Minh Tâm Bảo — premium global preloader */
#preloader {
  background:
    radial-gradient(circle at 50% 38%, rgba(194,156,91,.18), transparent 32%),
    linear-gradient(180deg, #fbf7ef 0%, #f3ecdf 52%, #ece2d2 100%) !important;
  color:#17392f !important;
}

#preloader::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.18), rgba(255,255,255,0)),
    radial-gradient(circle at 15% 20%, rgba(255,255,255,.7), transparent 24%),
    radial-gradient(circle at 84% 76%, rgba(23,57,47,.05), transparent 28%);
}

#preloader .preloader-logo,
#preloader .spinner-border,
#preloader .preloader-text {
  position:relative;
  z-index:1;
}

#preloader .preloader-logo {
  margin-bottom:22px !important;
  animation:mtbPreloaderFloat 2.4s ease-in-out infinite !important;
}

#preloader .preloader-logo img {
  width:auto !important;
  max-width:min(220px, 42vw) !important;
  max-height:150px !important;
  filter:none !important;
  object-fit:contain;
  drop-shadow:none;
}

#preloader .spinner-border {
  width:42px !important;
  height:42px !important;
  border-width:3px !important;
  color:#17392f !important;
  border-right-color:#b99552 !important;
  box-shadow:0 0 0 8px rgba(185,149,82,.08);
  animation:spinner-border .8s linear infinite !important;
}

#preloader .preloader-text {
  margin-top:18px !important;
  color:#17392f !important;
  font-size:.95rem !important;
  font-weight:700 !important;
  letter-spacing:.04em;
  animation:none !important;
}

#preloader .preloader-text::after {
  content:"";
  display:block;
  width:44px;
  height:1px;
  margin:14px auto 0;
  background:linear-gradient(90deg, transparent, #b99552, transparent);
}

@keyframes mtbPreloaderFloat {
  0%,100% { transform:translateY(0); opacity:.94; }
  50% { transform:translateY(-5px); opacity:1; }
}

@media (max-width:575.98px) {
  #preloader .preloader-logo img {
    max-width:170px !important;
    max-height:120px !important;
  }
  #preloader .preloader-text {
    font-size:.86rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #preloader .preloader-logo,
  #preloader .spinner-border {
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
  }
}
