/**
 * Pipeliner Pros Mobile Dock — front-end styles.
 * Bar color matches site brand purples (#340C74 / #8E3AD4 from pipelinerpros.com).
 */
.pp-mobile-dock,
.pp-mobile-dock *,
.pp-mobile-dock *::before,
.pp-mobile-dock *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

@media (min-width: 768px) {
	.pp-mobile-dock {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.pp-mobile-dock {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2147483000;
		display: grid;
		grid-template-columns: 48px 1px minmax(0, 1fr) 1px 48px;
		align-items: center;
		width: 100%;
		min-height: 52px;
		height: 52px;
		padding: 0;
		padding-bottom: env(safe-area-inset-bottom, 0px);
		margin: 0;
		background: #340c74;
		border-top: 1px solid rgba(142, 58, 212, 0.55);
		font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
		transform: translateZ(0);
	}

	.pp-mobile-dock__divider {
		width: 1px;
		height: 20px;
		background: rgba(255, 255, 255, 0.22);
		justify-self: center;
	}

	.pp-mobile-dock__btn {
		appearance: none;
		-webkit-appearance: none;
		border: 0;
		background: transparent !important;
		color: #fff !important;
		fill: none !important;
		margin: 0;
		padding: 0;
		min-width: 0;
		min-height: 52px;
		height: 52px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		text-decoration: none !important;
		box-shadow: none !important;
		border-radius: 0;
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
	}

	.pp-mobile-dock__btn:visited,
	.pp-mobile-dock__btn:hover,
	.pp-mobile-dock__btn:focus,
	.pp-mobile-dock__btn:active {
		color: #fff !important;
		background: transparent !important;
	}

	.pp-mobile-dock__btn svg {
		width: 20px;
		height: 20px;
		stroke: #fff !important;
		color: #fff !important;
		fill: none !important;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
		flex: 0 0 20px;
	}

	.pp-mobile-dock__btn path,
	.pp-mobile-dock__btn circle,
	.pp-mobile-dock__btn line,
	.pp-mobile-dock__btn polyline,
	.pp-mobile-dock__btn rect {
		stroke: #fff !important;
		fill: none !important;
	}

	.pp-mobile-dock__btn--call path {
		fill: none !important;
	}

	.pp-mobile-dock__btn--reviews {
		gap: 8px;
		padding: 0 12px;
		font-size: 12px;
		font-weight: 800;
		line-height: 1;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		white-space: nowrap;
		overflow: hidden;
	}

	.pp-mobile-dock__btn--reviews span {
		display: block;
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		color: #fff !important;
	}

	.pp-mobile-dock__btn:active {
		opacity: 0.82;
	}

	body {
		padding-bottom: 52px !important;
	}

	#contactToggle,
	.fixed-contact-toggle {
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		position: fixed !important;
		left: -9999px !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0, 0, 0, 0) !important;
		z-index: -1 !important;
	}
}
