
/* ===================== WhatsApp FAB (floating button) ===================== */
.whatsapp-fab {
  outline: none;
  --fab-size: clamp(50px, 6.2vw, 64px);
  --fab-pad: 12px;
  --fab-bg: #25D366; /* color de marca WhatsApp */
  --fab-shadow: 0 6px 22px rgba(0,0,0,.35);
  position: fixed;
  right: clamp(20px, 3vw, 32px);
  bottom: calc(clamp(20px, 3vw, 32px) + env(safe-area-inset-bottom, 0px));
  z-index: 1100;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--fab-size);
  height: var(--fab-size);
  padding: var(--fab-pad);
  border-radius: 999px;
  background: var(--fab-bg);
  border: none;
  box-shadow: 0 10px 28px rgba(0,0,0,.4);
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.whatsapp-fab:focus-visible {
  outline: 2px solid rgba(255,255,255,.9);
  outline-offset: 2px;
}
.whatsapp-fab:hover {
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 14px 34px rgba(0,0,0,.5);
}
.whatsapp-fab:active {
  transform: translateY(0) scale(.98);
  box-shadow: 0 10px 28px rgba(0,0,0,.4);
}

.whatsapp-fab__icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Evitar superposición con el menú móvil abierto (si cubre el botón) */
.header-v2.is-open ~ .whatsapp-fab {
  outline: none; pointer-events: auto; }

/* Ocultar en impresión */
@media print { .whatsapp-fab {
  outline: none; display: none; } }

/* Reduce motion: desactivar animaciones fuertes */
@media (prefers-reduced-motion: reduce) {
  .whatsapp-fab {
  outline: none; transition: opacity .2s linear; }
  .whatsapp-fab:hover,
  .whatsapp-fab:active { transform: none; }
}

/* Mobile positioning (precise) */
@media (max-width: 768px) {
  .whatsapp-fab {
    --fab-size: clamp(44px, 12vw, 56px);
    right: clamp(12px, 4vw, 18px);
    bottom: calc(env(safe-area-inset-bottom, 0px) + clamp(14px, 5vw, 22px));
    z-index: 60; /* debajo del menú abierto */
  }
  /* Si el menú está abierto, no molestar */
  .header-v2.is-open ~ .whatsapp-fab { 
    opacity: 0.0; pointer-events: none; 
  }
  /* Cuando esté cerca del footer, subir un poco */
  .whatsapp-fab.is-raised { transform: translateY(-64px); }
  @media (max-width: 480px) {
    .whatsapp-fab.is-raised { transform: translateY(-56px); }
  }
}
