body {
    font-family: 'Inter', sans-serif;
}
.gradient-bg {
    background: linear-gradient(135deg, #E8F5F3 0%, #F0F9F7 100%);
}
.gradient-primary {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
}
.gradient-accent {
    background: linear-gradient(135deg, #14B8A6 0%, #0D9488 100%);
}
.text-shadow {
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.1);
}

@keyframes fadeInUp {
  0% { opacity: 0; transform: translateY(12px) scale(0.98); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}
.animate-fadeInUp {
  animation: fadeInUp 500ms ease-out forwards;
}


/* --- Smooth scroll & target highlight --- */
@keyframes pulseGlow {
  0% { box-shadow: 0 0 0 0 rgba(16,185,129,0.45); }
  60% { box-shadow: 0 0 0 18px rgba(16,185,129,0.0); }
  100% { box-shadow: 0 0 0 0 rgba(16,185,129,0.0); }
}
.pulse-highlight {
  animation: pulseGlow 900ms ease-out 1;
}
.cta-press {
  transform: translateY(0);
  transition: transform 150ms ease, filter 200ms ease;
}
.cta-press:active {
  transform: translateY(1px) scale(0.99);
  filter: brightness(0.98);
}
