/* BongDevs Core — only what Elementor's style controls cannot express. */

.bd-graphic { display: block; line-height: 0; }
.bd-graphic svg { display: block; width: 100%; height: 100%; overflow: visible; }
.bd-graphic--ping { display: inline-block; width: 14px; height: 14px; vertical-align: -2px; }

/* Floating WhatsApp button */
.bd-wa-float {
	position: fixed; right: 20px; bottom: 20px; z-index: 9990;
	display: inline-flex; align-items: center; gap: 10px;
	min-height: 56px; padding: 0 20px 0 16px; border-radius: 999px;
	background: #16A34A; color: #FFFFFF !important; text-decoration: none !important;
	font: 700 15px/1 'Plus Jakarta Sans', system-ui, sans-serif;
	box-shadow: 0 16px 32px -12px rgba(22, 163, 74, .6);
	transition: transform .25s ease, background-color .2s ease;
}
.bd-wa-float::before {
	content: ""; position: absolute; inset: 0; border-radius: inherit;
	border: 2px solid #22C55E; animation: bdWaPing 2.4s ease-out infinite; pointer-events: none;
}
.bd-wa-float:hover { transform: translateY(-3px); background: #15803D; }
.bd-wa-float:focus-visible { outline: 3px solid #8C86FF; outline-offset: 3px; }
@keyframes bdWaPing { 0% { transform: scale(1); opacity: .8; } 100% { transform: scale(1.25); opacity: 0; } }

@media (max-width: 767px) {
	.bd-wa-float { right: 16px; bottom: 16px; width: 56px; padding: 0; justify-content: center; }
	.bd-wa-float__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

@media (prefers-reduced-motion: reduce) {
	.bd-wa-float::before { animation: none; }
}
