@keyframes czFadeUp {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes czFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes czSlideLeft {
  from { opacity: 0; transform: translateX(-36px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes czSlideRight {
  from { opacity: 0; transform: translateX(36px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes czFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}
@keyframes czGlow {
  0%, 100% { box-shadow: 0 0 24px rgba(124, 58, 237, .35); }
  50% { box-shadow: 0 0 52px rgba(245, 158, 11, .45); }
}
@keyframes czMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.cz-up { animation: czFadeUp .8s ease both; }
.cz-in { animation: czFadeIn 1s ease both; }
.cz-left { animation: czSlideLeft .9s ease both; }
.cz-right { animation: czSlideRight .9s ease both; }
.cz-float { animation: czFloat 5s ease-in-out infinite; }
.cz-glow { animation: czGlow 4s ease-in-out infinite; }
.cz-delay-1 { animation-delay: .15s; }
.cz-delay-2 { animation-delay: .3s; }
.cz-delay-3 { animation-delay: .45s; }
.cz-delay-4 { animation-delay: .6s; }

.cz-marquee { animation: czMarquee 26s linear infinite; }

.cz-gradient-text {
  background-image: linear-gradient(100deg, #4c1d95, #7c3aed 45%, #f59e0b);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.cz-mesh {
  background-image:
    radial-gradient(circle at 12% 18%, rgba(124, 58, 237, .30), transparent 42%),
    radial-gradient(circle at 88% 12%, rgba(245, 158, 11, .22), transparent 40%),
    radial-gradient(circle at 70% 88%, rgba(76, 29, 149, .28), transparent 46%);
}

.cz-grid-lines {
  background-image:
    linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 44px 44px;
}

.cz-card-hover { transition: transform .35s ease, box-shadow .35s ease; }
.cz-card-hover:hover { transform: translateY(-8px); box-shadow: 0 24px 48px -20px rgba(76, 29, 149, .45); }

.cz-img-zoom { transition: transform .6s ease; }
.cz-group:hover .cz-img-zoom { transform: scale(1.08); }

.cz-tick { transition: background-color .3s ease, color .3s ease; }

.cz-scroll-x::-webkit-scrollbar { height: 6px; }
.cz-scroll-x::-webkit-scrollbar-thumb { background: rgba(124, 58, 237, .5); border-radius: 999px; }

[x-cloak] { display: none !important; }
