:root {
  --font-vazir: 'Vazirmatn', sans-serif;
}
body {
  font-family: var(--font-vazir);
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
}
/* Animations */
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-20px); }
  100% { transform: translateY(0px); }
}
.animate-float {
  animation: float 6s ease-in-out infinite;
}
/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #3B82F644;
  border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
  background: #3B82F688;
}
/* Glassmorphism helpers */
.glass {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}
/* RTL Specific Overrides for Tailwind if needed */
[dir="rtl"] .ml-auto {
  margin-right: auto;
  margin-left: 0;
}
/* Transitions */
.transition-colors {
  transition-property: background-color, border-color, color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}
/* Section Reveal Effects */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease-out;
}
.reveal.active {
  opacity: 1;
  transform: translateY(0);
}