.font-alt {
    font-family: 'Montserrat Alternates', sans-serif;
  }
  .gradient-text {
    background: linear-gradient(to right, #4f46e5, #7c3aed);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }
  .gradient-bg {
    background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
  }
  .card-hover {
    transition: all 0.3s ease;
  }
  .card-hover:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 25px -5px rgba(124, 58, 237, 0.2), 0 10px 10px -5px rgba(79, 70, 229, 0.1);
  }
  .float-animation {
    animation: float 6s ease-in-out infinite;
  }
  @keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
    100% { transform: translateY(0px); }
  }
  .service-icon {
    transition: all 0.5s ease;
  }
  .service-card:hover .service-icon {
    transform: scale(1.2) rotate(10deg);
  }
  .glow {
    box-shadow: 0 0 15px rgba(124, 58, 237, 0.8);
    animation: pulse 2s infinite;
  }
  @keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(124, 58, 237, 0.7); }
    70% { box-shadow: 0 0 0 15px rgba(124, 58, 237, 0); }
    100% { box-shadow: 0 0 0 0 rgba(124, 58, 237, 0); }
  }
  .reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease;
  }
  .reveal.active {
    opacity: 1;
    transform: translateY(0);
  }
  .bounce-in {
    animation: bounceIn 1s;
  }
  @keyframes bounceIn {
    0% { transform: scale(0.3); opacity: 0; }
    50% { transform: scale(1.05); opacity: 1; }
    70% { transform: scale(0.9); }
    100% { transform: scale(1); }
  }
  .grid-bg {
    background-image: radial-gradient(rgba(124, 58, 237, 0.1) 1px, transparent 1px);
    background-size: 20px 20px;
    background-position: 0 0;
  }
  .font-alt {
    font-family: 'Montserrat Alternates', sans-serif;
  }

  .animate-blob {
    animation: blob 7s infinite;
  }

  .animation-delay-2000 {
    animation-delay: 2s;
  }

  .animation-delay-4000 {
    animation-delay: 4s;
  }

  @keyframes blob {
    0% {
      transform: translate(0px, 0px) scale(1);
    }
    33% {
      transform: translate(30px, -50px) scale(1.1);
    }
    66% {
      transform: translate(-20px, 20px) scale(0.9);
    }
    100% {
      transform: translate(0px, 0px) scale(1);
    }
  }

  .floating {
    animation: floating 6s ease-in-out infinite;
  }

  @keyframes floating {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
    100% { transform: translateY(0px); }
  }

  .pulse-glow {
    animation: pulse-glow 2s infinite;
  }

  @keyframes pulse-glow {
    0% { box-shadow: 0 0 0 0 rgba(124, 58, 237, 0.7); }
    70% { box-shadow: 0 0 0 15px rgba(124, 58, 237, 0); }
    100% { box-shadow: 0 0 0 0 rgba(124, 58, 237, 0); }
  }

  .grid-pattern {
    background-size: 30px 30px;
    background-image: 
      linear-gradient(to right, rgba(124, 58, 237, 0.05) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(124, 58, 237, 0.05) 1px, transparent 1px);
  }

  .text-gradient {
    background: linear-gradient(to right, #4f46e5, #7c3aed);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }