/* up4d — back-to-top button. Markup lives in back-to-top.php. */

.up4d-top {
	--up4d-top-blue: #2196f3;
	--up4d-top-blue-hover: #1a7fd4;

	position: fixed;
	right: 24px;
	bottom: 24px;
	/*
	 * The Elementor floating buttons (WhatsApp, team call) sit at z-index 999 on
	 * the middle of the right edge. This corner is clear of them, and matching
	 * their stacking level keeps both above page content.
	 */
	z-index: 999;

	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0 none;
	border-radius: 50%;
	background: var(--up4d-top-blue);
	color: #fff;
	box-shadow: 0 4px 16px rgba(33, 150, 243, 0.35);
	cursor: pointer;

	/* hello-elementor and Elementor kits underline bare links. */
	text-decoration: none !important;

	/* Hidden until the page is scrolled; back-to-top.js adds .is-visible. */
	opacity: 0;
	visibility: hidden;
	transform: translateY(12px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s, background-color 0.2s ease;
}

.up4d-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.up4d-top:hover,
.up4d-top:focus-visible {
	background: var(--up4d-top-blue-hover);
	color: #fff;
	text-decoration: none !important;
}

.up4d-top:focus-visible {
	outline: 3px solid rgba(33, 150, 243, 0.45);
	outline-offset: 3px;
}

.up4d-top svg {
	display: block;
	width: 22px;
	height: 22px;
}

@media (max-width: 767px) {
	.up4d-top {
		right: 16px;
		bottom: 16px;
		width: 44px;
		height: 44px;
	}

	.up4d-top svg {
		width: 20px;
		height: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.up4d-top {
		transform: none;
		transition: opacity 0.01ms linear, visibility 0.01ms linear;
	}
}

@media print {
	.up4d-top {
		display: none !important;
	}
}
