html {
	scroll-behavior: smooth;
}

.hc-sticky-cta {
	position: fixed;
	right: clamp(16px, 2.5vw, 36px);
	right: max(clamp(16px, 2.5vw, 36px), env(safe-area-inset-right));
	bottom: clamp(16px, 2.5vw, 36px);
	bottom: max(clamp(16px, 2.5vw, 36px), env(safe-area-inset-bottom));
	z-index: 1000;
	display: inline-flex;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	max-width: calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right));
	padding: 14px 26px;
	border: 2px solid #c94707;
	border-radius: 0;
	background: #c94707;
	color: #fff;
	font-family: 'Mogathe-Spurs', serif;
	font-size: 0.9rem;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 175ms ease, border-color 175ms ease, transform 175ms ease;
	white-space: nowrap;
}

.hc-sticky-cta:hover {
	border-color: #9f3504;
	background: #9f3504;
	color: #fff;
	transform: translateY(-2px);
}

.hc-sticky-cta:focus-visible {
	outline: 3px solid #fff8e6;
	outline-offset: 4px;
}

@media (max-width: 767px) {
	.hc-sticky-cta {
		right: 14px;
		right: max(14px, env(safe-area-inset-right));
		bottom: 14px;
		bottom: max(14px, env(safe-area-inset-bottom));
		min-height: 44px;
		max-width: calc(100vw - 28px - env(safe-area-inset-left) - env(safe-area-inset-right));
		padding: 11px 18px;
		font-size: 0.8rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.hc-sticky-cta {
		transition: none;
	}

	.hc-sticky-cta:hover {
		transform: none;
	}
}
