html { scroll-behavior: smooth; }               /* Smooth scroll */
body { background-color: #F5F2EA; }

/* Hidden scrollbar for the reviews carousel (still scrollable/swipeable) */
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.no-scrollbar::-webkit-scrollbar { display: none; }

/* Hover zoom for product images */
.zoom-wrap { overflow: hidden; }
.zoom-wrap img, .zoom-wrap .art { transition: transform .55s cubic-bezier(.2,.8,.2,1); }
.zoom-wrap:hover img, .zoom-wrap:hover .art { transform: scale(1.08); }

/* Soft polka-dot background */
.dotty {
  background-image: radial-gradient(#7C918A 1.2px, transparent 1.2px);
  background-size: 22px 22px;
}

/* Rise-up effect when scrolled into view */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }

/* Gentle sway for the hero heart */
@keyframes floaty { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-10px) } }
.floaty { animation: floaty 4s ease-in-out infinite; }

/* Hide default spinner */
.spinner { border-top-color: transparent; }
