/* Floating WhatsApp contact — storefront public pages only (base.html). */
.kalji-whatsapp-fab {
  position: fixed;
  right: clamp(0.85rem, 2.5vw, 1.25rem);
  bottom: max(1rem, calc(env(safe-area-inset-bottom, 0px) + 0.85rem));
  z-index: 55;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #25d366;
  box-shadow: 0 8px 24px rgba(37, 211, 102, 0.35);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
  text-decoration: none;
}

.kalji-whatsapp-fab:hover,
.kalji-whatsapp-fab:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(37, 211, 102, 0.42);
  outline: 2px solid rgba(37, 211, 102, 0.45);
  outline-offset: 2px;
}

.kalji-whatsapp-fab img {
  width: 1.75rem;
  height: 1.75rem;
  display: block;
}

/* Keep back-to-top above the WhatsApp FAB. */
.kalji-top-btn.js-prem-top {
  bottom: calc(max(1rem, env(safe-area-inset-bottom, 0px) + 0.85rem) + 3.75rem);
}

/* PDP mobile sticky add-to-cart bar clearance. */
@media (max-width: 960px) {
  .page-pdp .kalji-whatsapp-fab {
    bottom: max(5.25rem, calc(env(safe-area-inset-bottom, 0px) + 4.75rem));
  }

  .page-pdp .kalji-top-btn.js-prem-top {
    bottom: calc(max(5.25rem, env(safe-area-inset-bottom, 0px) + 4.75rem) + 3.75rem);
  }
}
