:root {
  --gold: #c9a84c;
  --gold-light: #e0c47a;
}

body {
  background-image: url('bg.jpeg');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  min-height: 100vh;
  overflow-x: hidden;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.spinner {
  width: 14px;
  height: 14px;
  border: 2px solid rgba(10,8,5,0.25);
  border-top-color: #0a0805;
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
}

@keyframes slideUp {
  from { opacity: 0; transform: translateY(16px) scale(0.98); }
  to   { opacity: 1; transform: translateY(0)    scale(1);    }
}

.modal-enter {
  animation: slideUp 0.28s ease-out forwards;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.fade-in {
  animation: fadeIn 0.6s ease-out forwards;
}

/* Hide scrollbar but allow scrolling */
.carousel-track {
  scrollbar-width: none;
}
.carousel-track::-webkit-scrollbar {
  display: none;
}

#modal.hidden, #error-message.hidden, #products-section.hidden {
  display: none;
}

#modal:not(.hidden) {
  display: flex;
}
