/* Preloader luxe — écran clair, logo centré, fondu 1,2 s */

#hb-preloader {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #faf8f4;
  transition:
    opacity 1.2s cubic-bezier(0.22, 1, 0.36, 1),
    visibility 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

#hb-preloader img {
  width: clamp(128px, 32vw, 220px);
  height: auto;
  max-height: 40vh;
  object-fit: contain;
  opacity: 1;
  transform: scale(1);
  transition: opacity 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

#hb-preloader.is-done {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#hb-preloader.is-done img {
  opacity: 0;
  transform: scale(0.98);
}

body.hb-is-preloading {
  overflow: hidden;
}

body.hb-luxe .pre-hero-zone {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  #hb-preloader,
  #hb-preloader img {
    transition-duration: 0.2s;
  }
}
