/* Google Fonts import is also handled in HTML, but defined here for CSS references */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@700;800;900&display=swap');

html {
  scroll-behavior: smooth;
  font-family: 'Inter', sans-serif;
}

/* Brand gradient background */
.brand-gradient {
  background: linear-gradient(135deg, #66e621 0%, #1fce6b 100%) !important;
}

/* Animations */
@keyframes marquee {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

.animate-marquee {
  display: flex;
  width: max-content;
  animation: marquee 25s linear infinite;
}

.animate-marquee:hover {
  animation-play-state: paused;
}

/* Fade-in Scroll Animation utility */
.reveal {
  position: relative;
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease-out;
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* Floating animation for phone cards */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-8px);
  }
}

.animate-float {
  animation: float 4s ease-in-out infinite;
}

.animate-float-delayed {
  animation: float 4s ease-in-out infinite;
  animation-delay: 2s;
}



/* Parallax phone container styles */
#phoneParallaxContainer {
  perspective: 1000px;
  transform-style: preserve-3d;
  transition: transform 0.25s ease-out;
}

.parallax-layer {
  transform-style: preserve-3d;
  backface-visibility: hidden;
}

.phone-layer {
  transform: translateZ(0px);
}

.badge-layer-1 {
  top: 15%;
  right: -25%;
  transform: translateZ(60px);
}

.badge-layer-2 {
  bottom: 18%;
  left: -25%;
  transform: translateZ(50px);
}

