/* Harbor & Vine — supplementary styles (Tailwind handles most UI) */

:root {
  scroll-behavior: smooth;
}

.hero-parallax-bg {
  will-change: transform;
  transition: transform 0.1s linear;
}

.glass-nav {
  backdrop-filter: saturate(140%) blur(12px);
  -webkit-backdrop-filter: saturate(140%) blur(12px);
}

.gallery-item {
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}

.gallery-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 48px rgba(15, 30, 60, 0.18);
}

.btn-shine {
  position: relative;
  overflow: hidden;
}

.btn-shine::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.35) 45%,
    transparent 60%
  );
  transform: translateX(-100%);
  transition: transform 0.6s ease;
}

.btn-shine:hover::after {
  transform: translateX(100%);
}

/* Cart drawer */
#cart-drawer {
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  transform: translateX(100%);
}

#cart-drawer.open {
  transform: translateX(0);
}

#cart-overlay {
  transition: opacity 0.3s ease, visibility 0.3s;
}

.cart-line-enter {
  animation: cartFade 0.35s ease forwards;
}

@keyframes cartFade {
  from {
    opacity: 0;
    transform: translateX(12px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
