
/* Smooth global transitions */
html {
  scroll-behavior: smooth;
}
/* Service cards hover elevation and subtle scale */
#services .card {
  transition: transform 0.32s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.32s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.32s ease;
  overflow: hidden;
  will-change: transform, box-shadow;
}
#services .card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14) !important;
}
/* Image zoom effect inside service cards */
#services .card .card-img-top,
#services .card img {
  transition: transform 0.45s ease-out;
  transform-origin: center center;
}
#services .card:hover .card-img-top,
#services .card:hover img {
  transform: scale(1.05);
}
/* Service card action button hover slide */
#services .card .btn {
  transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}
#services .card .btn:hover {
  transform: translateX(4px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}
/* Hero business card floating animation and hover depth */
.card.shadow-lg.rounded-4 {
  transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.card.shadow-lg.rounded-4:hover {
  transform: translateY(-6px) rotate(0.3deg);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2) !important;
}
/* Brand badges hover bounce & highlight */
#brands .card {
  transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s ease, background-color 0.28s ease, border-color 0.28s ease;
  cursor: pointer;
}
#brands .card:hover {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
  border-color: #dc3545 !important;
  background: #ffffff !important;
}
/* Button interactive hover enhancements */
.btn {
  transition: transform 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease, border-color 0.22s ease, filter 0.22s ease;
}
.btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.03);
}
.btn:active {
  transform: translateY(0);
}
.btn-danger:hover {
  box-shadow: 0 8px 20px rgba(220, 53, 69, 0.35);
}
.btn-success:hover {
  box-shadow: 0 8px 20px rgba(25, 135, 84, 0.35);
}
.btn-warning:hover {
  box-shadow: 0 8px 20px rgba(255, 193, 7, 0.4);
}
/* Contact card & info block hover touches */
#contact .card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
#contact .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12) !important;
}
/* Keyframe animations for subtle ambiance */
@keyframes subtlePulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}
.navbar-brand svg,
.navbar-brand img {
  transition: transform 0.3s ease;
}
.navbar-brand:hover svg,
.navbar-brand:hover img {
  transform: scale(1.08) rotate(-4deg);
}