#sticky-cta {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
}

#sticky-cta a {
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
}

/* Battement de cœur permanent sur le lien */
#sticky-cta a {
  animation: heartbeat 2.5s infinite ease-in-out;
}

/* Image CTA */
#sticky-cta img {
  max-width: 150px;
  height: auto;
  transition: transform 0.3s ease;
  z-index: 2;
}

/* Bounce au survol */
#sticky-cta a:hover img {
  animation: bounce 0.6s;
}

/* Message au survol (à gauche) */
#sticky-cta .sticky-tooltip {
  position: absolute;
  right: 100%;
  margin-right: 10px;
  background-color: #1B223C;
  color: white;
  padding: 10px 16px;
  border-radius: 20px 0 0 20px;
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Apparition du message au survol */
#sticky-cta a:hover .sticky-tooltip {
  opacity: 1;
  transform: scaleX(1);
}

/* Heartbeat (double boum + pause) */
@keyframes heartbeat {
  0%, 20%, 100% {
    transform: scale(1);
  }
  10% {
    transform: scale(1.15);
  }
  15% {
    transform: scale(0.95);
  }
  18% {
    transform: scale(1.12);
  }
  20% {
    transform: scale(1);
  }
}

/* Bounce simple */
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  30% { transform: translateY(-12px); }
  50% { transform: translateY(6px); }
  70% { transform: translateY(-4px); }
}
