/* Mobile sticky CTA — full-width bar, homepage only */

.mk-mobile-home-cta {
	display: none;
	--mk-cta-bar-h: 4.85rem;
	--mk-cta-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

body.has-mk-mobile-home-cta {
	padding-bottom: calc(
		var(--mk-cta-bar-h) + 0.55rem + env(safe-area-inset-bottom, 0px)
	);
}

@media (max-width: 767px) {
	.mk-mobile-home-cta {
		display: block;
	}

	.mk-mobile-home-cta__bar {
		position: fixed;
		inset-inline: 0;
		bottom: 0;
		z-index: 8600;
		padding: 0.5rem 0.85rem calc(0.5rem + env(safe-area-inset-bottom, 0px));
		background: linear-gradient(
			180deg,
			rgba(255, 255, 255, 0) 0%,
			rgba(255, 255, 255, 0.92) 28%,
			rgba(255, 255, 255, 0.98) 100%
		);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		pointer-events: none;
		transform: translateY(110%);
		opacity: 0;
		animation: mk-mobile-home-cta-enter 0.85s var(--mk-cta-ease) 0.35s forwards;
	}

	.mk-mobile-home-cta__button {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.72rem;
		width: 100%;
		min-height: 3.65rem;
		padding: 0.78rem 1.2rem;
		overflow: hidden;
		pointer-events: auto;
		text-decoration: none;
		color: #fff;
		font-family: var(--mk-font, inherit);
		font-size: 0.94rem;
		font-weight: 800;
		letter-spacing: -0.01em;
		line-height: 1.2;
		background: linear-gradient(
			135deg,
			var(--mk-mobile-home-cta-color-deep, #2f6fff) 0%,
			var(--mk-mobile-home-cta-color, #438bff) 52%,
			var(--mk-mobile-home-cta-color-soft, #5b4dff) 100%
		);
		border: 1px solid rgba(255, 255, 255, 0.34);
		border-radius: 14px;
		box-shadow:
			0 12px 28px color-mix(in srgb, var(--mk-mobile-home-cta-color, #438bff) 36%, transparent),
			0 2px 8px rgba(15, 23, 42, 0.1);
		transition:
			transform 0.35s var(--mk-cta-ease),
			box-shadow 0.35s var(--mk-cta-ease);
		isolation: isolate;
	}

	.mk-mobile-home-cta__button:active {
		transform: scale(0.985);
		box-shadow:
			0 8px 20px color-mix(in srgb, var(--mk-mobile-home-cta-color, #438bff) 28%, transparent),
			0 1px 4px rgba(15, 23, 42, 0.08);
	}

	.mk-mobile-home-cta__glow {
		position: absolute;
		inset: -40%;
		z-index: -1;
		background: radial-gradient(
			circle at 50% 50%,
			color-mix(in srgb, var(--mk-mobile-home-cta-color, #438bff) 55%, transparent) 0%,
			transparent 68%
		);
		opacity: 0.55;
		animation: mk-mobile-home-cta-glow 3.6s ease-in-out infinite;
		pointer-events: none;
	}

	.mk-mobile-home-cta__icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		width: 2.52rem;
		height: 2.52rem;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.16);
		animation: mk-mobile-home-cta-icon 2.8s ease-in-out infinite;
	}

	.mk-mobile-home-cta__icon svg {
		width: 1.44rem;
		height: 1.44rem;
	}

	[dir="rtl"] .mk-mobile-home-cta__icon svg {
		transform: scaleX(-1);
	}

	.mk-mobile-home-cta__content {
		display: flex;
		flex: 0 0 auto;
		flex-direction: column;
		align-items: flex-start;
		gap: 0.14rem;
		min-width: 0;
		text-align: right;
	}

	.mk-mobile-home-cta__title {
		display: block;
		font-size: 0.94rem;
		font-weight: 800;
		line-height: 1.15;
		letter-spacing: -0.01em;
		white-space: nowrap;
		text-align: right;
	}

	.mk-mobile-home-cta__subtitle {
		display: block;
		font-size: 0.72rem;
		font-weight: 400;
		line-height: 1.25;
		color: rgba(255, 255, 255, 0.68);
		letter-spacing: 0;
		white-space: nowrap;
		text-align: right;
	}

	.mk-mobile-home-cta__shine {
		position: absolute;
		inset: 0;
		background: linear-gradient(
			110deg,
			transparent 0%,
			rgba(255, 255, 255, 0.26) 48%,
			transparent 72%
		);
		transform: translateX(-130%);
		animation: mk-mobile-home-cta-shine 4.8s ease-in-out infinite;
		pointer-events: none;
	}

	body.has-mk-mobile-home-cta .mk-back-to-top {
		bottom: calc(
			var(--mk-cta-bar-h) + 0.65rem + env(safe-area-inset-bottom, 0px)
		);
	}
}

@media (min-width: 768px) {
	body.has-mk-mobile-home-cta {
		padding-bottom: 0;
	}
}

@keyframes mk-mobile-home-cta-enter {
	from {
		transform: translateY(110%);
		opacity: 0;
	}

	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes mk-mobile-home-cta-glow {
	0%,
	100% {
		opacity: 0.42;
		transform: scale(0.96);
	}

	50% {
		opacity: 0.72;
		transform: scale(1.04);
	}
}

@keyframes mk-mobile-home-cta-icon {
	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-2px);
	}
}

@keyframes mk-mobile-home-cta-shine {
	0%,
	72%,
	100% {
		transform: translateX(-130%);
	}

	86% {
		transform: translateX(130%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mk-mobile-home-cta__bar,
	.mk-mobile-home-cta__button,
	.mk-mobile-home-cta__glow,
	.mk-mobile-home-cta__icon,
	.mk-mobile-home-cta__shine {
		animation: none;
		transition: none;
	}

	.mk-mobile-home-cta__bar {
		transform: none;
		opacity: 1;
	}
}
