/* Hero Section Animations */
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Enhanced Hero Section Styles */
.hero .animated-text {
  animation: fadeInLeft 1s ease;
}

.hero .animated-image {
  animation: fadeInRight 1s ease;
}

.hero .hero-tagline {
  margin: 1.5rem 0;
}

.hero .hero-tagline span {
  display: block;
  margin-bottom: 0.5rem;
  position: relative;
  padding-left: 1.5rem;
}

.hero .hero-tagline span::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--primary-blue);
  font-weight: bold;
}

.hero .btn-primary {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 50px;
  padding: 0.75rem 2rem;
  margin-bottom: 2rem; /* Add bottom margin to ensure space between button and image */
}

.hero .btn-primary:hover {
  transform: scale(1.05);
  box-shadow: 0 5px 15px rgba(0, 123, 255, 0.3);
}

.hero .hero-image {
  transition: transform 0.3s ease;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.hero .hero-image:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

/* Mobile Responsiveness Improvements */
@media (max-width: 767.98px) {
  .hero .btn-primary {
    margin-bottom: 3rem; /* Increase bottom margin on mobile */
    display: inline-block; /* Ensure button is properly centered */
  }
  
  .hero .animated-text {
    margin-bottom: 1.5rem; /* Add space below text section on mobile */
    text-align: center; /* Center text on mobile */
  }
  
  .hero .hero-tagline {
    margin-bottom: 2rem; /* Increase space below tagline on mobile */
  }
}
