/**
 * QRSVP Chat for WhatsApp: the chat button, lower left — QRSVP's Back to
 * top is lower right, the same size, so the two sit as a pair.
 *
 * Measured (QRSVP_WhatsApp::GREEN…): the white glyph on #1A9E4C is 3.48:1,
 * on the hover's #0F7A3C 5.43:1; WCAG asks 3:1 of an icon. A 2px white ring
 * parts the button from whatever section it passes over, light or dark; on
 * focus a dark ring outside it shows on both.
 *
 * Colours are !important for the reason QRSVP's buttons' are: themes style
 * every link state (Hello Elementor's a:hover is near-black), and this is a
 * link. The button lives at the end of <body>, outside every Elementor
 * section, so nothing but fixed positioning places it.
 */
.qrsvp-wa {
	align-items: center;
	border: 0;
	border-radius: 999px;
	bottom: max(20px, env(safe-area-inset-bottom));
	box-shadow: 0 0 0 2px #fff, 0 12px 24px -10px rgba(0, 0, 0, 0.45);
	box-sizing: border-box;
	display: flex;
	height: 48px;
	justify-content: center;
	left: max(20px, env(safe-area-inset-left));
	margin: 0;
	padding: 0;
	position: fixed;
	text-decoration: none !important;
	transition: background-color 0.15s ease, transform 0.15s ease;
	width: 48px;
	z-index: 40;
}

.qrsvp-wa,
.qrsvp-wa:visited,
.qrsvp-wa:focus {
	background: #1a9e4c !important;
	color: #fff !important;
}

.qrsvp-wa:is(:hover, :focus-visible, :active) {
	background: #0f7a3c !important;
	color: #fff !important;
}

.qrsvp-wa:hover {
	transform: translateY(-2px);
}

.qrsvp-wa:focus {
	outline: none;
}

.qrsvp-wa:focus-visible {
	box-shadow: 0 0 0 2px #fff, 0 0 0 5px #111;
	outline: none;
}

.qrsvp-wa .qrsvp-wa__icon {
	display: block;
	height: 30px;
	max-width: none;
	width: 30px;
}

@media (prefers-reduced-motion: reduce) {
	.qrsvp-wa {
		transition: none;
	}

	.qrsvp-wa:hover {
		transform: none;
	}
}

@media print {
	.qrsvp-wa {
		display: none !important;
	}
}
