/* ================= FLOATING CONTACT BUTTON ================= */

.floating-contact {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #31546c;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;                 /* keeps image inside frame */
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  z-index: 2000;
  cursor: pointer;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* IMAGE INSIDE BUTTON */
.floating-contact img {
  width: 100%;
  height: 100%;
  object-fit: contain;          /* no cropping */
  border-radius: 50%;
}

/* HOVER EFFECT */
.floating-contact:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 36px rgba(0,0,0,0.35);
}

/* ================= SHAKE ANIMATION ================= */

@keyframes bottle-shake {
  0%, 80%, 100% { transform: translateX(0); }
  82% { transform: translateX(-3px); }
  84% { transform: translateX(3px); }
  86% { transform: translateX(-3px); }
  88% { transform: translateX(3px); }
  90% { transform: translateX(0); }
}

.floating-contact {
  animation: bottle-shake 5s infinite;
}

.floating-contact:hover {
  animation-play-state: paused;
}

/* ================= MOBILE ================= */

@media (max-width: 900px) {
  .floating-contact {
    width: 56px;
    height: 56px;
    bottom: 18px;
    right: 18px;
  }
}
