/* Floating WhatsApp chat button: white pill with the green icon; icon only on phones. */

.wa-chat { position: fixed; right: 24px; bottom: 24px; z-index: 90; display: flex; align-items: center; gap: 12px; padding: 6px 22px 6px 6px; background: #fff; border: 1px solid #e0e5ea; border-radius: 999px; box-shadow: 0 16px 40px rgba(23, 54, 89, .16); color: var(--ink); transition: transform .25s, box-shadow .25s; }
.wa-chat:hover { box-shadow: 0 20px 46px rgba(23, 54, 89, .22); color: var(--ink); transform: translateY(-3px); }
.wa-chat-icon { position: relative; display: grid; flex: none; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #25d366; color: #fff; }
.wa-chat-icon::after { content: ""; position: absolute; inset: 0; border-radius: 50%; animation: wa-pulse 2.6s infinite; }
.wa-chat-icon svg { width: 26px; height: 26px; fill: currentColor; }
.wa-chat-text { display: grid; font-size: 15px; font-weight: 800; line-height: 1.2; }
.wa-chat-text small { color: var(--muted); font-size: 12px; font-weight: 600; }

@keyframes wa-pulse {
	0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, .45); }
	70% { box-shadow: 0 0 0 14px rgba(37, 211, 102, 0); }
	100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}

@media (max-width: 680px) {
	.wa-chat { right: 16px; bottom: 16px; padding: 0; background: none; border: 0; box-shadow: 0 12px 30px rgba(18, 140, 73, .35); }
	.wa-chat-icon { width: 56px; height: 56px; }
	.wa-chat-icon svg { width: 30px; height: 30px; }
	.wa-chat-text { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.wa-chat { transition: none; }
	.wa-chat-icon::after { animation: none; }
}

@media print {
	.wa-chat { display: none; }
}
