:root {
  --gradientStart: #1e40af;
  --gradientEnd: #1e3a8a;
}
.gradient-bg {
  background: linear-gradient(135deg, var(--tw-gradient-stops));
  --tw-gradient-stops: var(--gradientStart), var(--gradientEnd);
}
.card-hover {
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.card-hover:hover {
  transform: translateY(-8px) scale(1.01);
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.2);
}
.review-hover {
  transition: all 0.3s ease;
  background: linear-gradient(
    135deg,
    rgba(30, 64, 175, 0.08),
    rgba(30, 58, 138, 0.08)
  );
  backdrop-filter: blur(10px);
  border: 1px solid rgba(30, 64, 175, 0.2);
  border-radius: 1rem;
}
.review-hover:hover {
  transform: translateY(-4px) scale(1.01);
  background: linear-gradient(
    135deg,
    rgba(30, 64, 175, 0.15),
    rgba(30, 58, 138, 0.15)
  );
  border-color: rgba(30, 64, 175, 0.4);
  box-shadow: 0 8px 25px rgba(30, 64, 175, 0.25);
}
@media (max-width: 640px) {
  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .text-4xl {
    font-size: 1.875rem !important;
  }
  .text-3xl {
    font-size: 1.5rem !important;
  }
  .text-xl {
    font-size: 1.125rem !important;
  }
  .p-8 {
    padding: 1.5rem !important;
  }
  .gap-10 {
    gap: 1.5rem !important;
  }
  .gap-8 {
    gap: 1.5rem !important;
  }
  .text-sm {
    font-size: 0.875rem !important;
  }
}
@media (max-width: 768px) {
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
.tech-badge {
  background-color: rgba(30, 64, 175, 0.1);
  color: #1e40af;
  border: 1px solid rgba(30, 64, 175, 0.2);
}
.tech-badge:hover {
  background-color: rgba(30, 64, 175, 0.2);
}
