.mf-page {
	background: #f1f1f1;
	padding: 58px 0 76px;
}

.mf-wrap {
	max-width: 950px;
	margin: 0 auto;
}

.mf-lead {
	margin: 0 0 28px;
	font-size: clamp(1.25rem, 1rem + 1.2vw, 1.625rem);
	line-height: 1.45;
	font-weight: 700;
	color: #3f444c;
	max-width: 900px;
}

.mf-info-bar {
	background: #dcebef;
	color: #5f6871;
	font-size: 18px;
	line-height: 1.45;
	font-weight: 600;
	padding: 16px 18px;
	margin-bottom: 26px;
}

.mf-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 16px;
}

.mf-form {
	background: var(--surface);
	border: 1px solid var(--ui-line);
	border-radius: var(--radius-lg);
	padding-block: 32px;
	padding-inline: 28px;
	box-shadow: var(--shadow-sm);
	text-align: start;
}

/* Field look: components/forms.css (<x-web.field>). */
.mf-grid .wf-field {
	margin-block-end: 0;
}

.mf-field-full {
	margin-block-start: 18px;
}

.mf-submit-btn {
	margin-block-start: 8px;
	min-inline-size: 138px;
	min-block-size: 48px;
	padding-inline: 28px;
	border: 0;
	background: var(--violet-900);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	border-radius: var(--radius-md);
	transition: transform .2s ease, box-shadow .25s ease, opacity .2s ease;
}

.mf-submit-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 20px color-mix(in srgb, var(--violet-900) 22%, transparent);
	opacity: .97;
}

.mf-reveal {
	opacity: 0;
	transform: translate3d(0, 26px, 0);
	transition: opacity .55s ease, transform .55s ease;
}

.mf-reveal.is-visible {
	opacity: 1;
	transform: none;
}

@media (max-width: 991px) {
	.mf-page {
		padding: 40px 0 56px;
	}

	.mf-lead {
		font-size: 28px;
	}
}

@media (max-width: 767px) {
	.mf-grid {
		grid-template-columns: 1fr;
		gap: 13px;
	}

	.mf-lead {
		font-size: 23px;
		margin-bottom: 20px;
	}

	.mf-info-bar {
		font-size: 15px;
		padding: 12px 14px;
		margin-bottom: 18px;
	}

	.mf-form {
		padding-block: 22px;
		padding-inline: 16px;
	}

	.mf-submit-btn {
		inline-size: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mf-reveal {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
