		/* Layout */
		.solution-page {
			padding: 0 40px;
		}

		.solution-page__layout {
			display: flex;
			align-items: flex-start;
			max-width: 1440px;
			margin: 40px auto 96px;
			gap: 40px;
		}

		.solution-page__main {
			flex: 1 1 auto;
			min-width: 0;
		}

		/* CTA Container */
		.mezivo-cta {
			position: sticky;
			top: 120px;
			color: #fff;
			font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text",
				"Inter", "Segoe UI", sans-serif;
			z-index: 1;
			flex: 0 0 320px;
			max-width: 320px;
		}

		.mezivo-cta__inner {
			width: 100%;
			max-width: 100%;
			padding: 28px 24px 24px;
			background: var(--title);
			border-radius: 22px;
			box-shadow: 0 18px 42px rgba(15, 23, 42, 0.55);
			display: flex;
			flex-direction: column;
			gap: 18px;
			position: relative;
			overflow: hidden;
			pointer-events: auto;
		}

		/* Faint blobs */
		.mezivo-cta__bg-blur {
			position: absolute;
			width: 340px;
			height: 340px;
			background: radial-gradient(circle, rgba(104, 214, 171, 0.12), transparent 70%);
			filter: blur(36px);
			opacity: 0.18;
			pointer-events: none;
			z-index: 0;
		}

		.mezivo-cta__bg-blur--tl {
			top: -80px;
			left: -60px;
		}

		.mezivo-cta__bg-blur--br {
			bottom: -120px;
			right: -80px;
		}

		/* Left column */
		.mezivo-cta__left {
			position: relative;
			z-index: 1;
		}

		.mezivo-cta__eyebrow {
			font-size: 13px;
			letter-spacing: 0.18em;
			text-transform: uppercase;
			color: rgba(255, 255, 255, 0.7);
			margin-bottom: 14px;
		}

		.mezivo-cta__headline-wrap {
			display: flex;
			align-items: center;
			gap: 10px;
		}

		.mezivo-cta__headline {
			font-size: 32px;
			line-height: 1.15;
			font-weight: 700;
			margin: 0 0 16px;
		}

		.mezivo-cta__headline-accent {
			color: #68D6AB;
		}

		.mezivo-cta__sparkle {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 6px;
			border-radius: 999px;
			background: rgba(255, 255, 255, 0.03);
			box-shadow: 0 0 0 1px rgba(104, 214, 171, 0.2);
		}

		.mezivo-cta__sub {
			margin: 0 0 24px;
			font-size: 16px;
			line-height: 1.6;
			color: #ffffff;
			max-width: 520px;
		}

		/* Trust bullets */
		.mezivo-cta__trust {
			list-style: none;
			padding: 0;
			margin: 0;
			display: flex;
			flex-wrap: wrap;
			gap: 10px 18px;
			font-size: 14px;
			color: rgba(255, 255, 255, 0.82);
		}

		.mezivo-cta__trust li {
			display: inline-flex;
			align-items: center;
			gap: 8px;
		}

		.mezivo-cta__trust-icon {
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}

		/* Right column / buttons */
		.mezivo-cta__right {
			position: relative;
			z-index: 1;
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			justify-content: center;
		}

		.mezivo-cta__buttons {
			display: flex;
			flex-direction: column;
			gap: 12px;
			width: 100%;
			max-width: 320px;
		}

		.mezivo-cta__btn {
			display: inline-flex;
			justify-content: center;
			align-items: center;
			padding: 0 28px;
			height: 50px;
			border-radius: 16px;
			font-size: 15px;
			font-weight: 600;
			text-decoration: none;
			transition: all 0.18s ease-out;
			white-space: nowrap;
		}

		h2 {
			text-transform: none;
		}

		.mezivo-cta__btn--primary {
			background: var(--theme);
			color: var(--white);
		}

		.mezivo-cta__btn--primary:hover {
			background: var(--theme4);
			transform: translateY(-1px);
			color: var(--white) !important;

		}

		.mezivo-cta__btn--secondary {
			background: transparent;
			border: 1px solid rgba(255, 255, 255, 0.35);
			color: var(--white);
		}

		.mezivo-cta__btn--secondary:hover {
			border-color: var(--theme4);
			background: var(--theme4);
			color: var(--white) !important;
			border-color: var(--theme4) !important;
		}

		.mezivo-cta__micro {
			margin-top: 10px;
			font-size: 13px;
			color: rgba(255, 255, 255, 0.65);
		}

		@media (max-width: 991.98px) {
			.solution-page {
				padding: 0 20px;
			}

			.solution-page__layout {
				flex-direction: column;
				gap: 32px;
			}

			.mezivo-cta {
				position: static;
				transform: none;
				margin: 0 auto 64px;
				padding: 0;
				pointer-events: auto;
				max-width: 100%;
				flex: 0 0 auto;
			}

			.mezivo-cta__inner {
				width: 100%;
				max-width: 100%;
				padding: 32px 24px 28px;
			}

			.mezivo-cta__left,
			.mezivo-cta__right {
				align-items: flex-start;
			}
		}

		@media (max-width: 767.98px) {
			.mezivo-cta__headline {
				font-size: 26px;
			}

			.mezivo-cta__sub {
				font-size: 15px;
			}

			.mezivo-cta__buttons {
				max-width: 100%;
			}

			.mezivo-cta__btn {
				width: 100%;
			}
		}


		/* Image sizing.
		   These were four inline `style` objects repeated in the template.
		   Scoped to `> img` so the references slider's logos, which sit in the
		   same `.solution-hero-image` wrapper, keep their own rules. The
		   `--full` variants reset `width` because they stack on the base rule
		   and the base sets one. */
		.solution-hero-image > img {
			border-radius: 18px;
			max-height: 360px;
			object-fit: cover;
			width: 90%;
		}

		.solution-hero-image--full > img {
			border-radius: 18px;
			max-width: 720px;
			max-height: 380px;
			object-fit: cover;
			width: auto;
		}

		.solution-content-image > img {
			border-radius: 15px;
			max-height: 380px;
			object-fit: cover;
			width: 100%;
		}

		.solution-content-image--full > img {
			border-radius: 15px;
			max-width: 720px;
			max-height: 420px;
			object-fit: cover;
			width: auto;
		}
