* { font-family: 'Vazirmatn', sans-serif; }

body {
  margin: 0;
  background-color: #FAF6F0;
  color: #1F2A44;
}

.hero-bg {
  background:
    radial-gradient(circle at 85% 20%, rgba(201,162,39,0.12), transparent 45%),
    radial-gradient(circle at 15% 80%, rgba(216,195,176,0.35), transparent 50%),
    linear-gradient(135deg, #FAF6F0 0%, #F5EFE6 100%);
}

/* Skeleton shimmer */
.shimmer {
  background: linear-gradient(100deg, #EDE4D6 30%, #F5EFE6 50%, #EDE4D6 70%);
  background-size: 200% 100%;
  animation: shimmer 1.4s infinite;
}
@keyframes shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Reveal on load */
.reveal {
  opacity: 0;
  transform: translateY(18px);
  animation: reveal .7s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes reveal {
  to { opacity: 1; transform: translateY(0); }
}

/* Stagger the product cards */
.grid > .reveal:nth-child(1) { animation-delay: .02s; }
.grid > .reveal:nth-child(2) { animation-delay: .06s; }
.grid > .reveal:nth-child(3) { animation-delay: .10s; }
.grid > .reveal:nth-child(4) { animation-delay: .14s; }
.grid > .reveal:nth-child(5) { animation-delay: .18s; }
.grid > .reveal:nth-child(6) { animation-delay: .22s; }
.grid > .reveal:nth-child(n+7) { animation-delay: .26s; }

.fade-in { animation: fade .25s ease forwards; }
@keyframes fade { from { opacity: 0; } to { opacity: 1; } }

.pop-in { animation: pop .3s cubic-bezier(.2,.9,.3,1.2) forwards; }
@keyframes pop { from { opacity: 0; transform: scale(.94); } to { opacity: 1; transform: scale(1); } }

.toast-pop { animation: toast .3s cubic-bezier(.2,.9,.3,1.3) forwards; }
@keyframes toast { from { opacity: 0; transform: translate(-50%, 14px); } to { opacity: 1; transform: translate(-50%, 0); } }

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Softer scrollbars */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #C9A227; border-radius: 8px; }
::-webkit-scrollbar-track { background: #EDE4D6; }