
/* v39 — Loader restaurado ao estilo v36, com limpeza pontual */

/* Mantém o estilo premium original */
.preloader-v39 {
  position: fixed !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  min-height: 100vh !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-align: center !important;
  background:
    radial-gradient(circle at 50% 42%, rgba(199,161,89,.18), transparent 28%),
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(135deg, #061f38 0%, #082847 48%, #0d345e 100%) !important;
}

/* Remove a moldura externa e a linha horizontal extra que atravessava o loader */
.preloader-v39::before,
.preloader-v39::after {
  display: none !important;
  content: none !important;
}

/* Conjunto central exactamente no centro */
.preloader-v39 .loader-shell {
  position: relative !important;
  width: 310px !important;
  min-height: 310px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 auto !important;
  isolation: isolate !important;
  transform: none !important;
}

/* Mantém a órbita original */
.preloader-v39 .loader-orbit {
  position: absolute !important;
  inset: 12px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(199,161,89,.22) !important;
  animation: loaderOrbitSpin 4.8s linear infinite !important;
}

.preloader-v39 .loader-orbit::before {
  content: "" !important;
  position: absolute !important;
  inset: 22px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}

.preloader-v39 .loader-orbit span:first-child,
.preloader-v39 .loader-orbit span:nth-child(2) {
  position: absolute !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: var(--gold) !important;
  box-shadow: 0 0 0 7px rgba(199,161,89,.13), 0 0 24px rgba(199,161,89,.55) !important;
}

.preloader-v39 .loader-orbit span:first-child {
  top: -4px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

.preloader-v39 .loader-orbit span:nth-child(2) {
  bottom: 18px !important;
  right: 22px !important;
  opacity: .55 !important;
}

/* Logo sem quadrado/moldura, mantendo a presença visual */
.preloader-v39 .loader-mark {
  position: relative !important;
  z-index: 2 !important;
  width: 214px !important;
  min-height: 126px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  margin: 0 auto !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  animation: loaderMarkIn 1.05s cubic-bezier(.16,1,.3,1) both, loaderMarkFloat 2.6s ease-in-out 1.05s infinite !important;
}

.preloader-v39 .loader-mark::before,
.preloader-v39 .loader-mark::after {
  display: none !important;
  content: none !important;
}

.preloader-v39 .loader-mark img {
  width: auto !important;
  height: auto !important;
  max-width: 178px !important;
  max-height: 116px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,.22)) !important;
}

/* Texto centralizado */
.preloader-v39 .loader-caption {
  position: absolute !important;
  left: 50% !important;
  bottom: 34px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: max-content !important;
  max-width: 92vw !important;
  transform: translateX(-50%) !important;
  color: rgba(255,255,255,.76) !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  text-align: center !important;
}

.preloader-v39 .loader-caption i {
  width: 4px !important;
  height: 4px !important;
  flex: 0 0 4px !important;
  border-radius: 50% !important;
  background: var(--gold) !important;
  opacity: .8 !important;
}

/* Linha única por baixo do texto */
.preloader-v39 .loader-line {
  position: absolute !important;
  left: 50% !important;
  bottom: 12px !important;
  z-index: 3 !important;
  width: 220px !important;
  height: 2px !important;
  overflow: hidden !important;
  transform: translateX(-50%) !important;
  background: rgba(255,255,255,.12) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.preloader-v39 .loader-line span {
  display: block !important;
  width: 42% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, var(--gold), #fff, var(--gold), transparent) !important;
  animation: loaderLineMove 1.35s cubic-bezier(.65,0,.35,1) infinite !important;
}

/* Garante que nenhuma linha criada pelas versões anteriores aparece */
.preloader-v39 .loader-progress,
.preloader-v39 .loading-line,
.preloader-v39 .progress-line {
  display: none !important;
}

/* Responsivo */
@media (max-width: 560px) {
  .preloader-v39 .loader-shell {
    width: 286px !important;
    min-height: 286px !important;
  }

  .preloader-v39 .loader-mark {
    width: 196px !important;
    min-height: 116px !important;
  }

  .preloader-v39 .loader-mark img {
    max-width: 160px !important;
  }

  .preloader-v39 .loader-caption {
    font-size: 9px !important;
    gap: 8px !important;
  }

  .preloader-v39 .loader-line {
    width: 196px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .preloader-v39 .loader-orbit,
  .preloader-v39 .loader-mark,
  .preloader-v39 .loader-line span {
    animation: none !important;
  }
}
