.whatsapp-direct {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  gap: 9px;
  background: #18a84f;
  color: #fff;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
  animation: whatsapp-bounce 1.35s ease-in-out infinite;
  transform-origin: center bottom;
}

.whatsapp-direct::before {
  content: "✆";
  width: 15px;
  height: 15px;
  border: 1.5px solid currentColor;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1;
}

.inline-whatsapp {
  width: 468px;
  height: 54px;
  border-radius: 12px;
  font-size: 15px;
}

.bottom-whatsapp {
  width: 468px;
  height: 54px;
  border-radius: 12px;
  background: #18a84f;
  color: #fff;
  font-size: 15px;
}

.whatsapp-direct:hover { filter: brightness(.95); }
.whatsapp-direct:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

@keyframes whatsapp-bounce {
  0%, 100% {
    transform: translateY(0) scale(1);
    opacity: 1;
    box-shadow: 0 0 0 rgba(99, 227, 181, 0);
  }
  12% {
    transform: translateY(-7px) scale(1.015);
    opacity: .88;
    box-shadow: 0 0 15px rgba(99, 227, 181, .38);
  }
  24% {
    transform: translateY(0) scale(1);
    opacity: 1;
    box-shadow: 0 0 4px rgba(99, 227, 181, .12);
  }
  34% {
    transform: translateY(-3px) scale(1.008);
    opacity: .93;
    box-shadow: 0 0 10px rgba(99, 227, 181, .25);
  }
  44%, 100% {
    transform: translateY(0) scale(1);
    opacity: 1;
    box-shadow: 0 0 0 rgba(99, 227, 181, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .whatsapp-direct { animation: none; }
}

@media (max-width: 560px) {
  .inline-whatsapp,
  .bottom-whatsapp { width: min(100%, 468px); margin: auto; }
  .bottom-form { padding: 0 18px; }
}
