/* Basic buttons */
.btn1 {
  display: inline-block;
  padding: 0.5rem 1.25rem;
  font-weight: 600;
  border-radius: 0.375rem;
  text-align: center;
  background-color: #61A6FA;
  color: #fff;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.btn1:hover { background-color: rgba(97, 166, 250, 0.9); }

.btn2 {
  display: inline-block;
  padding: 0.5rem 1.25rem;
  font-weight: 600;
  border-radius: 0.375rem;
  text-align: center;
  background-color: #fff;
  color: #61A6FA;
  border: 1px solid #61A6FA;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.btn2:hover { background-color: #2b6dbf; color: #fff; }

/* Solid green button */
.btn-success {
  display: inline-block;
  padding: 0.5rem 1.25rem;
  font-weight: 600;
  border-radius: 0.375rem;
  text-align: center;
  background-color: #51bf8b;
  color: #fff;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.btn-success:hover { background-color: #157347; }

/* Unified feature card */
.feature-card {
  background-color: #ffffff;
  border-radius: 0.5rem; /* rounded-lg */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1),
              0 1px 2px rgba(0, 0, 0, 0.06);
  padding: 1.5rem; /* p-6 */
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.feature-card:hover {
  transform: translateY(-0.25rem);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
              0 4px 6px -4px rgba(0, 0, 0, 0.1);
}
.feature-card:active { transform: scale(0.95); }

/* Animations */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes slideInDown {
  from { opacity: 0; transform: translateY(-100px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
.animate-fadeInUp { animation: fadeInUp 1s ease-out forwards; }
.animate-slideInDown { animation: slideInDown 1s ease-out forwards; }
.animate-fadeIn { animation: fadeIn 1s ease-out forwards; }
.opacity-0 { opacity: 0; }
