/* =============================================
   PRELOADER
   ============================================= */

.preloader {
  position: fixed;
  inset: 0;
  z-index: var(--z-preloader);
  background: #1a1a1a;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.8s cubic-bezier(0.76, 0, 0.24, 1);
}

.preloader.is-hidden {
  transform: translateY(-100%);
  pointer-events: none;
}

.preloader__content {
  text-align: center;
  color: #f5f0eb;
}

.preloader__logo {
  margin-bottom: 2rem;
}

.preloader__svg {
  width: 60px;
  height: 60px;
  margin: 0 auto 1rem;
  color: #c9a96e;
}

.preloader__path {
  stroke-dasharray: 250;
  stroke-dashoffset: 250;
  animation: drawPreloader 1.5s ease-in-out forwards;
}

@keyframes drawPreloader {
  to {
    stroke-dashoffset: 0;
  }
}

.preloader__name {
  display: block;
  font-family: 'Playfair Display', serif;
  font-size: clamp(1rem, 3vw, 1.25rem);
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: #f5f0eb;
  opacity: 0;
  animation: fadeIn 0.5s ease 0.8s forwards;
}

.preloader__bar {
  width: 200px;
  height: 1px;
  background: rgba(245, 240, 235, 0.15);
  margin: 0 auto;
  overflow: hidden;
}

.preloader__bar-fill {
  height: 100%;
  width: 0%;
  background: #c9a96e;
  transition: width 0.3s ease;
}

.preloader__percent {
  display: block;
  margin-top: 0.75rem;
  font-family: 'Outfit', sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.2em;
  color: rgba(245, 240, 235, 0.5);
}
