/* MacManus Forms — Classic theme design system.
   Scoped to .mmforms-review so it never leaks into the surrounding WP theme. */

.mmforms-review {
	--brand: #0A1F44;
	--tint: #EEF2F8;
	--ink: #1A2230;
	--muted: #5B6577;
	--line: #DCE1EA;
	--bg: #FFFFFF;
	--card: #FFFFFF;
	--field-bg: #FFFFFF;
	--ring: rgba(10, 31, 68, .14);
	--radius: 5px;
	--radius-lg: 8px;
	--shadow: 0 1px 2px rgba(16, 24, 40, .05);
	--font-sans: 'Montserrat', system-ui, sans-serif;
	--font-display: 'Lato', Arial, sans-serif;
	--hero: #0A1F44;

	background: var(--bg);
	color: var(--ink);
	font-family: var(--font-sans);
	font-size: 17px;
	line-height: 1.5;
	overflow-anchor: none;
}

.mmforms-review * {
	box-sizing: border-box;
}

.mmforms-review a {
	color: var(--brand);
}

.mmforms-review input::placeholder,
.mmforms-review textarea::placeholder {
	color: #9aa3b2;
}

@keyframes mmformsFadeUp {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

/* ── Stepper ─────────────────────────────────────────────────────────────── */
.mmforms-review .mmforms-stepper {
	max-width: 1360px;
	margin: 0 auto;
	padding: 26px 28px 4px;
	position: relative;
}

.mmforms-review .mmforms-stepper-track {
	position: relative;
	display: flex;
	justify-content: space-between;
}

.mmforms-review .mmforms-stepper-line {
	position: absolute;
	top: 19px;
	left: 6%;
	right: 6%;
	height: 2px;
	background: var(--line);
	z-index: 0;
}

.mmforms-review .mmforms-stepper-fill {
	position: absolute;
	top: 19px;
	left: 6%;
	width: 0%;
	max-width: 88%;
	height: 2px;
	background: var(--brand);
	z-index: 0;
	transition: width .45s cubic-bezier(.2, .7, .2, 1);
}

.mmforms-review .mmforms-stepnav {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	flex: 1;
	cursor: pointer;
	background: none;
	border: none;
	font: inherit;
}

.mmforms-review .mmforms-dot {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 2px solid var(--line);
	background: var(--card);
	color: var(--muted);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 14px;
	transition: all .2s;
}

.mmforms-review .mmforms-dot-label {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--muted);
}

.mmforms-review .mmforms-stepnav.is-done .mmforms-dot {
	background: var(--brand);
	color: #fff;
	border-color: var(--brand);
	box-shadow: none;
}

.mmforms-review .mmforms-stepnav.is-active .mmforms-dot {
	background: var(--brand);
	color: #fff;
	border-color: var(--brand);
	box-shadow: 0 0 0 4px var(--ring);
}

.mmforms-review .mmforms-stepnav.is-done .mmforms-dot-label,
.mmforms-review .mmforms-stepnav.is-active .mmforms-dot-label {
	color: var(--brand);
}

.mmforms-review .mmforms-stepnav.is-active .mmforms-dot-label {
	font-weight: 700;
}

.mmforms-review .mmforms-stepnav--results {
	cursor: default;
	opacity: 1;
}

/* Active/hover step gets a filled navy pill behind the dot + label,
   so both must flip to white text/border to stay legible on navy. */
.mmforms-review .mmforms-stepnav.is-active::before,
.mmforms-review .mmforms-stepnav:hover:not(:disabled)::before {
	content: "";
	position: absolute;
	inset: -10px -14px;
	background: var(--brand);
	border-radius: 10px;
	z-index: -1;
}

.mmforms-review .mmforms-stepnav.is-active .mmforms-dot,
.mmforms-review .mmforms-stepnav:hover:not(:disabled) .mmforms-dot {
	background: #fff;
	color: var(--brand);
	border-color: #fff;
	box-shadow: none;
}

.mmforms-review .mmforms-stepnav.is-active .mmforms-dot-label,
.mmforms-review .mmforms-stepnav:hover:not(:disabled) .mmforms-dot-label {
	color: #fff;
}

/* ── Save draft row ──────────────────────────────────────────────────────── */
.mmforms-review .mmforms-savedraft-row {
	max-width: 1360px;
	margin: 0 auto;
	padding: 14px 28px 0;
	display: flex;
	justify-content: flex-end;
}

.mmforms-review .mmforms-savedraft-btn {
	display: flex;
	align-items: center;
	gap: 7px;
	background: var(--brand);
	color: #fff;
	border: none;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	padding: 10px 17px;
	border-radius: var(--radius);
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}

.mmforms-review .mmforms-savedraft-btn:hover {
	filter: brightness(1.12);
}

/* ── Main / cards ────────────────────────────────────────────────────────── */
.mmforms-review .mmforms-main {
	max-width: 1360px;
	margin: 0 auto;
	padding: 22px 28px 60px;
}

.mmforms-review .mmforms-step {
	display: none;
}

.mmforms-review .mmforms-step.is-active {
	display: block;
	animation: mmformsFadeUp .45s cubic-bezier(.2, .7, .2, 1);
}

.mmforms-review .mmforms-card {
	background: var(--card);
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow);
	padding: 38px;
	overflow: hidden;
}

.mmforms-review .mmforms-card--welcome,
.mmforms-review .mmforms-card--thanks {
	padding: 44px;
}

.mmforms-review .mmforms-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 6px;
}

.mmforms-review .mmforms-badge {
	display: inline-block;
	background: var(--brand);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding: 6px 12px;
	border-radius: 100px;
}

.mmforms-review .mmforms-step-count {
	font-size: 12px;
	color: var(--muted);
	letter-spacing: .08em;
	text-transform: uppercase;
}

.mmforms-review .mmforms-h2 {
	font-family: var(--font-display);
	font-size: 34px;
	font-weight: 700;
	color: var(--brand);
	margin: 14px 0 4px;
	letter-spacing: -.01em;
}

.mmforms-review .mmforms-h2--tight {
	margin-bottom: 8px;
}

.mmforms-review .mmforms-sub {
	font-size: 16px;
	color: var(--muted);
	margin: 0 0 22px;
}

.mmforms-review .mmforms-subhead {
	font-family: var(--font-display);
	font-size: 19px;
	font-weight: 700;
	color: var(--ink);
	margin: 28px 0 14px;
}

.mmforms-review .mmforms-subhead--rule {
	font-size: 17.5px;
	color: var(--brand);
	margin: 0 0 12px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--line);
}

.mmforms-review .mmforms-subhead--section {
	font-size: 18px;
	color: var(--ink);
	margin: 0;
}

/* ── Icon-badge section headings (Step 5) ─────────────────────────────────── */
.mmforms-review .mmforms-subhead-row {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 4px;
}

.mmforms-review .mmforms-subhead-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--tint);
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-subhead-row .mmforms-subhead {
	margin: 0;
}

/* ── Section blocks (Step 1) ─────────────────────────────────────────────── */
.mmforms-review .mmforms-section-block {
	margin-bottom: 28px;
	padding-bottom: 28px;
	border-bottom: 1px solid var(--line);
}

.mmforms-review .mmforms-section-block--last {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.mmforms-review .mmforms-section-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--line);
}

.mmforms-review .mmforms-section-head svg {
	color: var(--brand);
	flex: none;
}

/* ── Business overview layout ────────────────────────────────────────────── */
.mmforms-review .mmforms-biz-overview-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 280px;
	gap: 30px;
	align-items: start;
}

.mmforms-review .mmforms-field-grid--wide {
	grid-template-columns: 1fr 1fr;
}

.mmforms-review .mmforms-field-grid--3col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 20px;
}

.mmforms-review .mmforms-field-grid--4col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px 20px;
}

/* Business status pills */
.mmforms-review .mmforms-biz-status-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mmforms-review .mmforms-biz-status-pill {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 16px;
	border: 1px solid var(--line);
	border-radius: 100px;
	cursor: pointer;
	font-size: 15px;
	font-weight: 500;
	background: var(--card);
	transition: all .18s;
}

.mmforms-review .mmforms-biz-status-pill:hover {
	border-color: var(--brand);
	background: var(--tint);
	color: var(--brand);
}

.mmforms-review .mmforms-biz-status-pill input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.mmforms-review .mmforms-biz-status-pill:has(input:checked) {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}

.mmforms-review .mmforms-biz-status-pill:has(input:checked) svg {
	color: #fff;
}

/* "How did you hear" other row */
.mmforms-review .mmforms-hear-other-row {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-hear-other-input {
	flex: 1;
	min-width: 200px;
	max-width: 340px;
}

/* ── Notice / info boxes ─────────────────────────────────────────────────── */
.mmforms-review .mmforms-notice-box {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 26px;
}

.mmforms-review .mmforms-notice-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--brand);
	color: #fff;
	font-family: Georgia, serif;
	font-style: italic;
	font-weight: 700;
	font-size: 13px;
	flex: none;
	margin-top: 1px;
}

.mmforms-review .mmforms-notice-box strong {
	display: block;
	color: var(--ink);
	font-size: 15px;
}

.mmforms-review .mmforms-notice-box p {
	margin: 4px 0 0;
	font-size: 14px;
	color: var(--muted);
}

.mmforms-review .mmforms-group {
	margin-bottom: 26px;
	padding-bottom: 26px;
	border-bottom: 1px solid var(--line);
}

.mmforms-review .mmforms-group--last {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.mmforms-review .mmforms-group-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 14px;
}

.mmforms-review .mmforms-group-head svg {
	color: var(--brand);
	flex: none;
	margin-top: 2px;
}

.mmforms-review .mmforms-group-head .mmforms-subhead--rule {
	border-bottom: none;
	padding-bottom: 0;
	margin: 0;
}

.mmforms-review .mmforms-group-desc {
	margin: 4px 0 0;
	font-size: 14px;
	color: var(--muted);
}

/* ── Field grids ─────────────────────────────────────────────────────────── */
.mmforms-review .mmforms-grid-2col {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 30px;
	align-items: start;
}

.mmforms-review .mmforms-field-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 20px;
}

.mmforms-review .mmforms-field {
	display: flex;
	flex-direction: column;
}

.mmforms-review .mmforms-label {
	display: block;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--muted);
	margin-bottom: 6px;
	letter-spacing: .02em;
}

.mmforms-review .mmforms-label--strong {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
	margin-bottom: 8px;
}

.mmforms-review .mmforms-input,
.mmforms-review select.mmforms-input,
.mmforms-review .mmforms-select {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--field-bg);
	font-family: inherit;
	font-size: 16px;
	color: var(--ink);
	outline: none;
	transition: border-color .15s, box-shadow .15s;
	appearance: none;
	-webkit-appearance: none;
}

/* Country search is enhanced from a native select; the select still owns submission. */
.mmforms-review .mmforms-country-select[hidden] { display: none !important; }
.mmforms-review .mmforms-country-search { cursor: text; }
.mmforms-country-results {
    position: fixed;
    z-index: 100100;
    overflow-y: auto;
    overscroll-behavior: contain;
    box-sizing: border-box;
    border: 1px solid #dce4ed;
    border-radius: 6px;
    background: #fff;
    color: #132f4c;
    box-shadow: 0 6px 20px rgba(16, 41, 65, .15);
    font: 14px/1.5 'Montserrat', system-ui, sans-serif;
    text-align: left;
}
.mmforms-country-results[hidden] { display: none !important; }
.mmforms-country-results [role="option"],
.mmforms-country-results .mmforms-country-empty { padding: 10px 12px; }
.mmforms-country-results [role="option"] { cursor: pointer; }
.mmforms-country-results [role="option"]:hover,
.mmforms-country-results [aria-selected="true"] { background: #edf7f7; color: #087e88; }
.mmforms-country-results .mmforms-country-empty { color: #718095; }

.mmforms-review .mmforms-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235B6577' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	padding-right: 36px;
	cursor: pointer;
}

.mmforms-review .mmforms-input:focus,
.mmforms-review .mmforms-select:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px var(--ring);
}

.mmforms-review .mmforms-textarea {
	resize: vertical;
}

.mmforms-review .mmforms-error {
	display: none;
	font-size: 12px;
	color: #C0392B;
	margin-top: 4px;
}

.mmforms-review .mmforms-error.is-visible {
	display: block;
}

.mmforms-review .mmforms-input.is-invalid {
	border-color: #C0392B;
}

.mmforms-review .mmforms-prefix-wrap {
	display: flex;
	align-items: center;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--field-bg);
	overflow: hidden;
}

.mmforms-review .mmforms-prefix-wrap:focus-within {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px var(--ring);
}

.mmforms-review .mmforms-prefix {
	padding: 12px 13px;
	color: var(--muted);
	border-right: 1px solid var(--line);
	font-size: 16px;
}

.mmforms-review .mmforms-prefix-input {
	flex: 1;
	padding: 12px 14px;
	border: none;
	background: transparent;
	font-family: inherit;
	font-size: 16px;
	color: var(--ink);
	outline: none;
	min-width: 0;
}

/* Char counter */
.mmforms-review .mmforms-char-count {
	font-size: 12px;
	color: var(--muted);
	text-align: right;
	margin-top: 4px;
}

/* ── Checkbox / radio groups ─────────────────────────────────────────────── */
.mmforms-review .mmforms-check-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mmforms-review .mmforms-check-grid--cols3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.mmforms-review .mmforms-check-grid--cols3-tight {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 9px;
}

.mmforms-review .mmforms-check-grid--stack {
	display: grid;
	gap: 8px;
}

.mmforms-review .mmforms-check {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 10px 15px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	cursor: pointer;
	background: var(--card);
	font-size: 15px;
	line-height: 1.4;
}

.mmforms-review .mmforms-check:hover {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-check input {
	width: 17px;
	height: 17px;
	accent-color: var(--brand);
	margin: 0;
	flex: none;
}

.mmforms-review .mmforms-check:has(input:checked) {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-other-row {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 10px;
	padding: 10px 14px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--card);
}

.mmforms-review .mmforms-other-check {
	white-space: nowrap;
	border: none;
	padding: 0;
	background: none;
}

.mmforms-review .mmforms-other-input {
	flex: 1;
	min-width: 0;
}

.mmforms-review .mmforms-step[data-mmforms-step="4"] .mmforms-other-input.mmforms-input {
	border: none;
	border-bottom: 1px dotted var(--line);
	border-radius: 0;
	background: transparent;
	padding: 4px 8px;
}

.mmforms-review .mmforms-step[data-mmforms-step="4"] .mmforms-other-input.mmforms-input:focus {
	border-bottom-color: var(--brand);
	box-shadow: none;
}

.mmforms-review .mmforms-radio-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.mmforms-review .mmforms-radio-pills--wrap {
	flex-wrap: wrap;
}

.mmforms-review .mmforms-radio-pill {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 17px;
	border: 1px solid var(--line);
	border-radius: 100px;
	cursor: pointer;
	font-size: 15px;
}

.mmforms-review .mmforms-radio-pill:hover {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-radio-pill input {
	width: 15px;
	height: 15px;
	accent-color: var(--brand);
	margin: 0;
}

.mmforms-review .mmforms-radio-pill:has(input:checked) {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}

.mmforms-review .mmforms-radio-list {
	display: grid;
	gap: 9px;
}

.mmforms-review .mmforms-radio-list-item {
	display: flex;
	align-items: center;
	gap: 11px;
	font-size: 14.5px;
	cursor: pointer;
}

.mmforms-review .mmforms-radio-list-item input {
	width: 15px;
	height: 15px;
	accent-color: var(--brand);
	margin: 0;
}

/* ── Radio card list (with icon + description) ───────────────────────────── */
.mmforms-review .mmforms-radio-card-list {
	display: grid;
	gap: 9px;
}

.mmforms-review .mmforms-radio-card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 16px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	cursor: pointer;
	background: var(--card);
	transition: border-color .15s, background .15s;
}

.mmforms-review .mmforms-radio-card:hover {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-radio-card:has(input:checked) {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-radio-card input[type="radio"] {
	width: 16px;
	height: 16px;
	accent-color: var(--brand);
	margin: 0;
	flex: none;
}

.mmforms-review .mmforms-radio-card-icon {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-radio-card-body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
}

.mmforms-review .mmforms-radio-card-label {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
}

.mmforms-review .mmforms-radio-card-desc {
	font-size: 13px;
	color: var(--muted);
}

/* ── Tinted / aside boxes ────────────────────────────────────────────────── */
.mmforms-review .mmforms-tint-box {
	background: var(--tint);
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	padding: 20px;
}

.mmforms-review .mmforms-aside {
	background: var(--tint);
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	padding: 26px;
	position: sticky;
	top: 20px;
	text-align: center;
}

.mmforms-review .mmforms-aside--step1 {
	position: sticky;
	top: 20px;
}

.mmforms-review .mmforms-aside-icon {
	color: var(--brand);
	display: flex;
	justify-content: center;
	margin-bottom: 12px;
}

.mmforms-review .mmforms-aside-title {
	font-family: var(--font-display);
	margin: 0 0 10px;
	font-size: 19px;
	color: var(--brand);
	font-weight: 700;
}

.mmforms-review .mmforms-aside-title--hero {
	font-size: 22px;
	text-align: left;
}

.mmforms-review .mmforms-aside-text {
	margin: 0;
	font-size: 14px;
	color: var(--muted);
	line-height: 1.55;
}

/* ── Step actions ────────────────────────────────────────────────────────── */
.mmforms-review .mmforms-step-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin-top: 28px;
	padding-top: 20px;
	border-top: 1px solid var(--line);
	flex-wrap: wrap;
}

.mmforms-review .mmforms-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font: inherit;
	font-size: 16px;
	padding: 12px 22px;
	border-radius: var(--radius);
	cursor: pointer;
	border: 1px solid var(--line);
	background: transparent;
	color: var(--muted);
	text-decoration: none;
}

.mmforms-review .mmforms-btn:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}

.mmforms-review .mmforms-btn-primary {
	background: var(--brand);
	color: #fff;
	border: none;
	font-weight: 600;
	padding: 13px 28px;
}

.mmforms-review .mmforms-btn-primary:hover {
	filter: brightness(1.12);
	color: #fff;
}

.mmforms-review .mmforms-btn-primary:disabled {
	opacity: .6;
	cursor: not-allowed;
	filter: none;
}

.mmforms-review .mmforms-btn-arrow {
	display: inline-flex;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .22);
	align-items: center;
	justify-content: center;
	font-size: 13px;
	margin-left: 8px;
}

/* ── Welcome step ────────────────────────────────────────────────────────── */
.mmforms-review .mmforms-welcome-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 400px;
	gap: 48px;
	align-items: start;
}

.mmforms-review .mmforms-welcome-copy p {
	font-size: 16px;
	color: var(--muted);
	margin: 0 0 16px;
	max-width: 58ch;
}

.mmforms-review .mmforms-cta-row {
	display: flex;
	align-items: center;
	gap: 26px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-advisor {
	display: flex;
	align-items: center;
	gap: 13px;
}

.mmforms-review .mmforms-avatar-ring {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: repeating-linear-gradient(45deg, var(--tint), var(--tint) 6px, var(--line) 6px, var(--line) 12px);
	flex: none;
}

.mmforms-review .mmforms-avatar-photo {
	object-fit: cover;
	border: 1px solid var(--line);
}

.mmforms-review .mmforms-advisor-name {
	font-weight: 700;
	font-size: 16px;
	color: var(--ink);
}

.mmforms-review .mmforms-advisor-role {
	font-size: 14px;
	color: var(--muted);
}

.mmforms-review .mmforms-why-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.mmforms-review .mmforms-why-item {
	display: flex;
	gap: 15px;
	align-items: flex-start;
}

.mmforms-review .mmforms-why-item svg {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-why-item span.mmforms-why-text {
	font-size: 16px;
	color: var(--ink);
	padding-top: 2px;
	text-align: left;
}

.mmforms-review .mmforms-journey-band {
	margin-top: 34px;
	background: var(--hero);
	border-radius: var(--radius-lg);
	padding: 20px 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-journey-item {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.mmforms-review .mmforms-journey-item span {
	font-weight: 700;
	letter-spacing: .09em;
	font-size: 16px;
}

.mmforms-review .mmforms-journey-sep {
	color: rgba(255, 255, 255, .4);
	font-size: 20px;
}

/* ── Step 2: Plan flat sections ──────────────────────────────────────────── */
.mmforms-review .mmforms-plan-flat-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px 28px;
	margin-bottom: 24px;
}

.mmforms-review .mmforms-plan-flat-section {
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--card);
	padding: 18px 20px;
}

.mmforms-review .mmforms-plan-flat-head {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 12px;
}

.mmforms-review .mmforms-plan-flat-head svg {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-plan-flat-title {
	font-size: 15px;
	font-weight: 700;
	color: var(--brand);
	margin: 0;
}

.mmforms-review .mmforms-plan-flat-checks {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 12px;
}

/* Plain checkbox (no pill border) */
.mmforms-review .mmforms-plain-check {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	color: var(--ink);
	cursor: pointer;
	padding: 3px 0;
	line-height: 1.4;
}

.mmforms-review .mmforms-plain-check input[type="checkbox"] {
	width: 15px;
	height: 15px;
	accent-color: var(--brand);
	margin: 0;
	flex: none;
	cursor: pointer;
}

/* Plain radio (footer "when" list) */
.mmforms-review .mmforms-plain-radio {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	color: var(--ink);
	cursor: pointer;
	padding: 3px 0;
}

.mmforms-review .mmforms-plain-radio input[type="radio"] {
	width: 15px;
	height: 15px;
	accent-color: var(--brand);
	margin: 0;
	flex: none;
	cursor: pointer;
}

/* Inline "Other" row inside each plan section */
.mmforms-review .mmforms-plain-other-row {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 8px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-plain-other-input {
	flex: 1;
	min-width: 120px;
	font-size: 14px;
	padding: 7px 10px;
}

/* Plan footer achieve / when */
.mmforms-review .mmforms-plan-achieve-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 12px;
}

.mmforms-review .mmforms-plan-when-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

/* ── Step 6 Q6: Icon card update grid ────────────────────────────────────── */
.mmforms-review .mmforms-update-icon-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.mmforms-review .mmforms-update-icon-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 7px;
	padding: 14px 8px 12px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--card);
	cursor: pointer;
	text-align: center;
	font-size: 13px;
	font-weight: 500;
	color: var(--ink);
	line-height: 1.35;
	transition: border-color .15s, background .15s;
	position: relative;
}

.mmforms-review .mmforms-update-icon-card:hover {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-update-icon-card:has(input:checked) {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-update-icon-card input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

.mmforms-review .mmforms-update-icon-card svg {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-update-other-card {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 10px 12px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--card);
}

.mmforms-review .mmforms-update-other-label {
	font-size: 13px;
	font-weight: 600;
	color: var(--muted);
}

/* Remove the old update-grid / update-other-row (no longer used) */

/* Not sure yet box */
.mmforms-review .mmforms-plan-unsure-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 22px;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--tint);
	margin-bottom: 24px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-plan-unsure-left {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.mmforms-review .mmforms-plan-unsure-left svg {
	color: var(--brand);
	flex: none;
	margin-top: 2px;
}

.mmforms-review .mmforms-plan-unsure-left strong {
	display: block;
	color: var(--ink);
	font-size: 15px;
}

.mmforms-review .mmforms-plan-unsure-left p {
	margin: 3px 0 0;
	font-size: 14px;
	color: var(--muted);
}

/* Plan footer: budget + achieve + when */
.mmforms-review .mmforms-plan-footer-grid {
	display: grid;
	grid-template-columns: 220px 1fr 1fr;
	gap: 28px;
	align-items: start;
	padding-top: 24px;
	border-top: 1px solid var(--line);
}

.mmforms-review .mmforms-check-grid--achieve {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

/* ── Step 3: Fund goal cards ─────────────────────────────────────────────── */
.mmforms-review .mmforms-fundgoal-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 11px;
}

.mmforms-review .mmforms-fundgoal-card {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	text-align: left;
	gap: 12px;
	min-height: 92px;
	padding: 16px 18px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	cursor: pointer;
	background: var(--card);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.5;
}

.mmforms-review .mmforms-fundgoal-card:hover {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-fundgoal-card input {
	width: 17px;
	height: 17px;
	accent-color: var(--brand);
	margin: 0;
	flex: none;
}

.mmforms-review .mmforms-fundgoal-card:has(input:checked) {
	border-color: var(--brand);
	background: var(--tint);
}

.mmforms-review .mmforms-fundgoal-card svg {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-fundgoal-grid--cols3 {
	grid-template-columns: repeat(3, 1fr);
}

.mmforms-review .mmforms-fundgoal-card--other {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 8px;
	cursor: default;
}

.mmforms-review .mmforms-fundgoal-card--other input[type="text"] {
	width: 100%;
}

.mmforms-review .mmforms-update-icon-grid--cols4 {
	grid-template-columns: repeat(4, 1fr);
}

/* ── Step 3: Fund footer (requirement / timing / notes) ──────────────────── */
.mmforms-review .mmforms-fund-footer-grid {
	display: grid;
	grid-template-columns: 1fr 1.3fr 1.3fr;
	gap: 28px;
	align-items: start;
	padding-top: 24px;
	margin-top: 8px;
	border-top: 1px solid var(--line);
	margin-bottom: 24px;
}

.mmforms-review .mmforms-fundwhen-row {
	display: flex;
	flex-wrap: wrap;
	column-gap: 18px;
	row-gap: 6px;
}

/* ── Step 3: How we help notice box (icon on the right) ───────────────────── */
.mmforms-review .mmforms-notice-box--split {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 4px;
}

.mmforms-review .mmforms-notice-box-text {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.mmforms-review .mmforms-notice-box-icon {
	flex: none;
	color: var(--brand);
	opacity: .5;
}

/* ── Step 5: Health Check ────────────────────────────────────────────────── */
.mmforms-review .mmforms-rating-table {
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	overflow: hidden;
}

.mmforms-review .mmforms-rating-head,
.mmforms-review .mmforms-rating-row {
	display: grid;
	grid-template-columns: 1fr repeat(5, 42px);
	align-items: center;
	gap: 4px;
	padding: 9px 16px;
	font-size: 14.5px;
}

/* Rating head — includes a 56px spacer column to align with group labels */
.mmforms-review .mmforms-rating-head {
	background: var(--tint);
	font-size: 13px;
	font-weight: 700;
	color: var(--brand);
	padding: 11px 16px 11px calc(56px + 16px);
	display: grid;
	grid-template-columns: 1fr repeat(5, 42px);
	gap: 4px;
	align-items: center;
}

.mmforms-review .mmforms-rating-head span {
	text-align: center;
}

/* Rows inside a group — no left-padding eaten by the group label */
.mmforms-review .mmforms-rating-group-rows .mmforms-rating-row {
	padding-left: 16px;
}

/* Icon checkbox (challenge items) */
.mmforms-review .mmforms-check--icon svg {
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-rating-row {
	border-top: 1px solid var(--line);
}

.mmforms-review .mmforms-rating-row:hover {
	background: var(--tint);
}

.mmforms-review .mmforms-rating-cell {
	display: flex;
	justify-content: center;
	cursor: pointer;
}

.mmforms-review .mmforms-rating-cell input {
	accent-color: var(--brand);
	width: 16px;
	height: 16px;
	margin: 0;
}

.mmforms-review .mmforms-rating-caption {
	font-size: 14px;
	color: var(--muted);
	margin: 0 0 12px;
}

/* Rating group side labels */
.mmforms-review .mmforms-rating-group-block {
	display: flex;
	align-items: stretch;
	border-top: 1px solid var(--line);
}

.mmforms-review .mmforms-rating-group-label {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 56px;
	min-width: 56px;
	padding: 10px 6px;
	background: #E5EBF4;
	border-right: 1px solid var(--line);
	text-align: center;
	color: var(--brand);
}

.mmforms-review .mmforms-rating-group-label svg {
	flex: none;
}

.mmforms-review .mmforms-rating-group-label span {
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	line-height: 1.2;
}

.mmforms-review .mmforms-rating-group-rows {
	flex: 1;
	min-width: 0;
}

/* ── Step 6: Priorities ──────────────────────────────────────────────────── */
.mmforms-review .mmforms-prio-question {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mmforms-review .mmforms-prio-question--full {
	width: 100%;
}

.mmforms-review .mmforms-prio-q-head {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.mmforms-review .mmforms-prio-q-head svg {
	color: var(--brand);
	flex: none;
	margin-top: 2px;
}

.mmforms-review .mmforms-prio-q-num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--brand);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	flex: none;
}

.mmforms-review .mmforms-prio-q-label {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
	line-height: 1.4;
	padding-top: 3px;
	cursor: default;
}

/* Updates icon grid (Q6) */
.mmforms-review .mmforms-update-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 9px;
}

.mmforms-review .mmforms-update-other-row {
	margin-top: 10px;
}

/* ── Two-col layout (general) ────────────────────────────────────────────── */
.mmforms-review .mmforms-two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 34px;
	align-items: start;
}

.mmforms-review .mmforms-stack-gap {
	display: grid;
	gap: 18px;
}

.mmforms-review .mmforms-stack-gap-lg {
	display: grid;
	gap: 20px;
}

.mmforms-review .mmforms-tint-note {
	font-size: 12px;
	color: var(--muted);
	margin: 14px 0 0;
	font-style: italic;
}

/* ── Step 7: Thank You ───────────────────────────────────────────────────── */

/* Header 2-col */
.mmforms-review .mmforms-thanks-header-grid {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 40px;
	align-items: stretch;
	margin-bottom: 36px;
}

.mmforms-review .mmforms-thanks-header-content {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.mmforms-review .mmforms-thanks-check-row {
	display: flex;
	align-items: center;
	gap: 20px;
}

.mmforms-review .mmforms-thanks-check-circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	border: 3px solid #27AE60;
	color: #27AE60;
	flex: none;
}

.mmforms-review .mmforms-thanks-title {
	font-family: var(--font-display);
	font-size: 34px;
	font-weight: 800;
	color: var(--brand);
	margin: 0 0 4px;
}

.mmforms-review .mmforms-thanks-subtitle {
	font-size: 18px;
	font-weight: 700;
	color: var(--ink);
	margin: 0;
}

/* "In touch" highlight box */
.mmforms-review .mmforms-thanks-intouch-box {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 20px;
	background: #F0FAF4;
	border: 1px solid #A8D5B5;
	border-left: 4px solid #27AE60;
	border-radius: var(--radius);
}

.mmforms-review .mmforms-thanks-intouch-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #27AE60;
	color: #fff;
	flex: none;
}

.mmforms-review .mmforms-thanks-intouch-box strong {
	display: block;
	font-size: 15px;
	color: var(--ink);
	margin-bottom: 4px;
}

.mmforms-review .mmforms-thanks-intouch-box p {
	font-size: 14px;
	color: var(--muted);
	margin: 0;
}

/* Header photo */
.mmforms-review .mmforms-thanks-header-photo {
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: var(--tint);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 260px;
}

.mmforms-review .mmforms-thanks-header-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mmforms-review .mmforms-thanks-resources-photo-placeholder {
	font-family: monospace;
	font-size: 12px;
	letter-spacing: .05em;
	color: var(--muted);
}

/* What Happens Next section */
.mmforms-review .mmforms-thanks-next-section {
	margin-bottom: 28px;
}

.mmforms-review .mmforms-thanks-next-title {
	font-family: var(--font-display);
	font-size: 26px;
	font-weight: 700;
	color: var(--brand);
	margin: 0 0 6px;
}

.mmforms-review .mmforms-thanks-next-grid {
	display: grid;
	grid-template-columns: 1fr 240px;
	gap: 24px;
	align-items: start;
}

.mmforms-review .mmforms-thanks-next-items {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 16px;
}

.mmforms-review .mmforms-thanks-next-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
}

.mmforms-review .mmforms-thanks-next-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--tint);
	color: var(--brand);
	flex: none;
}

.mmforms-review .mmforms-thanks-next-item-title {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--ink);
	line-height: 1.3;
}

.mmforms-review .mmforms-thanks-next-item-desc {
	font-size: 12.5px;
	color: var(--muted);
	line-height: 1.45;
}

/* "Need something sooner?" sidebar */
.mmforms-review .mmforms-thanks-sooner-box {
	background: var(--tint);
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	padding: 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
}

.mmforms-review .mmforms-thanks-sooner-box svg {
	color: var(--brand);
}

.mmforms-review .mmforms-thanks-sooner-title {
	font-size: 17px;
	font-weight: 700;
	color: var(--brand);
	margin: 0;
}

.mmforms-review .mmforms-thanks-sooner-desc {
	font-size: 14px;
	color: var(--muted);
	margin: 0;
}

.mmforms-review .mmforms-thanks-contact-btn {
	width: 100%;
	justify-content: center;
	margin-top: 4px;
}

.mmforms-review .mmforms-thanks-sooner-contact {
	display: flex;
	flex-direction: column;
	gap: 6px;
	width: 100%;
}

.mmforms-review .mmforms-thanks-sooner-contact span {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--brand);
	font-weight: 500;
}

/* "Your information is secure" bar */
.mmforms-review .mmforms-thanks-secure-bar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 20px 24px;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--card);
	margin-bottom: 20px;
	flex-wrap: wrap;
}

.mmforms-review .mmforms-thanks-secure-left {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	flex: 1;
}

.mmforms-review .mmforms-thanks-fca-badge {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 16px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--tint);
	flex: none;
}

.mmforms-review .mmforms-thanks-fca-badge svg {
	color: var(--brand);
}

.mmforms-review .mmforms-thanks-fca-badge strong {
	display: block;
	font-size: 14px;
	color: var(--ink);
}

.mmforms-review .mmforms-thanks-fca-badge span {
	font-size: 12px;
	color: var(--muted);
}

/* Dark footer band */
.mmforms-review .mmforms-thanks-footer-band {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	background: var(--brand);
	color: #fff;
	border-radius: var(--radius-lg);
	padding: 24px 30px;
	margin-bottom: 10px;
}

.mmforms-review .mmforms-thanks-footer-left {
	display: flex;
	align-items: center;
	gap: 16px;
}

.mmforms-review .mmforms-thanks-footer-left svg {
	flex: none;
}

.mmforms-review .mmforms-thanks-footer-left strong {
	display: block;
	font-size: 16px;
	margin-bottom: 4px;
}

.mmforms-review .mmforms-thanks-footer-left p {
	font-size: 14px;
	opacity: .8;
	margin: 0;
}

.mmforms-review .mmforms-thanks-footer-tagline {
	font-family: var(--font-display);
	font-size: 18px;
	font-style: italic;
	font-weight: 700;
	line-height: 1.5;
	text-align: right;
	flex: none;
}

/* Misc */
.mmforms-review .mmforms-submit-error {
	display: none;
	margin-top: 16px;
	padding: 12px 16px;
	border: 1px solid #C0392B;
	background: #FBEAE8;
	color: #C0392B;
	border-radius: var(--radius);
	font-size: 14.5px;
}

.mmforms-review .mmforms-submit-error.is-visible {
	display: block;
}

.mmforms-review .mmforms-hp-field {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
	.mmforms-review .mmforms-thanks-next-items {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 900px) {
	.mmforms-review .mmforms-grid-2col,
	.mmforms-review .mmforms-welcome-grid,
	.mmforms-review .mmforms-two-col,
	.mmforms-review .mmforms-biz-overview-grid,
	.mmforms-review .mmforms-thanks-header-grid,
	.mmforms-review .mmforms-thanks-next-grid {
		grid-template-columns: 1fr;
	}

	.mmforms-review .mmforms-aside,
	.mmforms-review .mmforms-aside--step1 {
		position: static;
	}

	.mmforms-review .mmforms-plan-flat-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.mmforms-review .mmforms-plan-footer-grid {
		grid-template-columns: 1fr;
	}

	.mmforms-review .mmforms-field-grid--4col {
		grid-template-columns: repeat(2, 1fr);
	}

	.mmforms-review .mmforms-field-grid,
	.mmforms-review .mmforms-fundgoal-grid,
	.mmforms-review .mmforms-check-grid--cols3,
	.mmforms-review .mmforms-check-grid--cols3-tight,
	.mmforms-review .mmforms-update-icon-grid,
	.mmforms-review .mmforms-fundgoal-grid--cols3,
	.mmforms-review .mmforms-update-icon-grid--cols4 {
		grid-template-columns: repeat(2, 1fr);
	}

	.mmforms-review .mmforms-fund-footer-grid {
		grid-template-columns: 1fr;
	}

	.mmforms-review .mmforms-rating-head {
		padding-left: calc(44px + 12px);
		grid-template-columns: 1fr repeat(5, 28px);
		font-size: 12px;
	}

	.mmforms-review .mmforms-rating-row {
		grid-template-columns: 1fr repeat(5, 28px);
		font-size: 12px;
		padding: 8px 10px;
	}

	.mmforms-review .mmforms-rating-group-label {
		width: 44px;
		min-width: 44px;
		font-size: 8px;
	}

	.mmforms-review .mmforms-thanks-next-items {
		grid-template-columns: repeat(2, 1fr);
	}

	.mmforms-review .mmforms-thanks-footer-band {
		flex-direction: column;
		text-align: center;
	}

	.mmforms-review .mmforms-thanks-footer-tagline {
		text-align: center;
	}

	.mmforms-review .mmforms-thanks-footer-left {
		flex-direction: column;
		text-align: center;
	}
}

@media (max-width: 560px) {
	.mmforms-review .mmforms-card {
		padding: 22px;
	}

	.mmforms-review .mmforms-card--welcome,
	.mmforms-review .mmforms-card--thanks {
		padding: 24px;
	}

	.mmforms-review .mmforms-field-grid,
	.mmforms-review .mmforms-field-grid--wide,
	.mmforms-review .mmforms-field-grid--3col,
	.mmforms-review .mmforms-field-grid--4col,
	.mmforms-review .mmforms-plan-flat-grid,
	.mmforms-review .mmforms-plan-flat-checks,
	.mmforms-review .mmforms-plan-achieve-grid,
	.mmforms-review .mmforms-fundgoal-grid,
	.mmforms-review .mmforms-check-grid--cols3,
	.mmforms-review .mmforms-check-grid--cols3-tight,
	.mmforms-review .mmforms-update-icon-grid,
	.mmforms-review .mmforms-fundgoal-grid--cols3,
	.mmforms-review .mmforms-update-icon-grid--cols4 {
		grid-template-columns: 1fr;
	}

	.mmforms-review .mmforms-notice-box--split {
		flex-direction: column;
		align-items: flex-start;
	}

	.mmforms-review .mmforms-h2 {
		font-size: 26px;
	}

	.mmforms-review .mmforms-thanks-title {
		font-size: 26px;
	}

	.mmforms-review .mmforms-thanks-check-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.mmforms-review .mmforms-journey-band {
		flex-direction: column;
		align-items: center;
		text-align: left;
	}

	.mmforms-review .mmforms-journey-sep {
		display: inline-block;
		transform: rotate(90deg);
	}

	.mmforms-review .mmforms-thanks-next-items {
		grid-template-columns: repeat(2, 1fr);
	}

	.mmforms-review .mmforms-biz-status-pills {
		flex-direction: column;
	}
}
/* Enquiry-specific layout additions to the copied Business Review design. */
.mmforms-review [hidden] { display: none !important; }
.mmforms-review .mmforms-field { min-width: 0; }
.mmforms-review .mmforms-field-grid { align-items: start; }
.mmforms-review .mmforms-form-actions { display: flex; justify-content: flex-end; gap: 12px; margin-top: 30px; }
.mmforms-review .mmforms-repeater { grid-column: 1 / -1; min-width: 0; margin: 0; padding: 0; border: 0; }
.mmforms-review .mmforms-repeat-row { padding: 20px; margin: 14px 0; border: 1px solid var(--line); border-radius: var(--radius); background: var(--tint); }
.mmforms-review .mmforms-remove-row { background: transparent; border: 0; color: var(--muted); padding: 8px 0; font: inherit; font-size: 13px; cursor: pointer; text-decoration: underline; }
.mmforms-review .mmforms-hint { display: block; font-size: 13px; color: var(--muted); margin-top: 6px; }
.mmforms-review .mmforms-row-error { color: #b42318; font-size: 14px; }
.mmforms-review [aria-invalid="true"] { border-color: #b42318; }
.mmforms-review .mmforms-data-notice { display: block; margin-top: 28px; }
.mmforms-review .mmforms-data-notice p { font-size: 14px; }
.mmforms-review input, .mmforms-review select, .mmforms-review textarea { max-width: 100%; }
.mmforms-review button:disabled { opacity: .6; cursor: wait; }
.mmforms-review button:focus-visible, .mmforms-review input:focus-visible, .mmforms-review select:focus-visible, .mmforms-review textarea:focus-visible { outline: 2px solid var(--brand); outline-offset: 3px; }
@media (max-width: 700px) {
    .mmforms-review .mmforms-stepper { overflow-x: auto; padding: 20px 12px 4px; }
    .mmforms-review .mmforms-stepper-track { min-width: 520px; }
    .mmforms-review .mmforms-main { padding: 18px 8px 40px; }
    .mmforms-review .mmforms-card-head { align-items: flex-start; gap: 10px; flex-wrap: wrap; }
    .mmforms-review .mmforms-repeat-row { padding: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .mmforms-review *, .mmforms-review *::before { animation: none !important; transition: none !important; }
}

/* Refined enquiry presentation. Shared across registered forms. */
.mmforms-review {
    --brand: #102c4b;
    --tint: #f3f7fa;
    --line: #dfe7ee;
    --accent: #147d83;
    --radius: 10px;
    --radius-lg: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    overflow: visible;
}
.mmforms-review .mmforms-stepper { padding: 28px 38px 12px; }
.mmforms-review .mmforms-stepper-track { gap: 8px; }
.mmforms-review .mmforms-stepper-line, .mmforms-review .mmforms-stepper-fill { display: none; }
.mmforms-review .mmforms-stepnav { flex: 1; display: flex; flex-direction: row; justify-content: center; gap: 9px; padding: 12px 8px; background: transparent; border: 1px solid transparent; border-radius: 10px; transition: background .2s, border-color .2s; }
.mmforms-review .mmforms-stepnav::before { display: none; }
.mmforms-review .mmforms-stepnav .mmforms-dot { width: 28px; height: 28px; min-width: 28px; margin: 0; font-size: 11px; border: 1px solid #d7e0e9; background: #fff; color: #748297; box-shadow: none; }
.mmforms-review .mmforms-stepnav .mmforms-dot-label { margin: 0; font-size: 11px; letter-spacing: .01em; text-transform: none; color: #65758b; }
.mmforms-review .mmforms-stepnav.is-active, .mmforms-review .mmforms-stepnav:hover:not(:disabled) { background: #fff; border-color: #dce5ed; box-shadow: 0 3px 10px #153b5706; }
.mmforms-review .mmforms-stepnav.is-active .mmforms-dot { background: var(--brand); border-color: var(--brand); color: #fff; }
.mmforms-review .mmforms-stepnav.is-done .mmforms-dot { background: #e0f1ed; border-color: #c5e5dd; color: #1e7666; }
.mmforms-review .mmforms-stepnav.is-active .mmforms-dot-label, .mmforms-review .mmforms-stepnav:hover:not(:disabled) .mmforms-dot-label { color: var(--brand); }
.mmforms-review .mmforms-main { padding: 8px 38px 38px; }
.mmforms-review .mmforms-card { padding: 36px 40px; border: 1px solid #e0e7ef; border-radius: 0; box-shadow: none; }
.mmforms-review .mmforms-card-head { margin-bottom: 18px; }
.mmforms-review .mmforms-section-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--accent); font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.mmforms-review .mmforms-section-kicker svg { width: 19px; height: 19px; }
.mmforms-review .mmforms-step-count { background: #f3f6f9; border-radius: 30px; padding: 6px 12px; font-size: 10px; letter-spacing: .06em; }
.mmforms-review .mmforms-h2 { font-size: clamp(26px, 2.5vw, 32px); line-height: 1.25; margin: 0 0 12px; letter-spacing: -.025em; }
.mmforms-review .mmforms-sub { font-size: 14px; line-height: 1.8; max-width: 760px; margin-bottom: 28px; }
.mmforms-review .mmforms-field-grid { gap: 24px; }
.mmforms-review .mmforms-label { color: #364b61; font-size: 12px; font-weight: 600; letter-spacing: 0; margin-bottom: 9px; line-height: 1.5; }
.mmforms-review .mmforms-input { background-color: #fbfcfe; border-color: #dce4ed; border-radius: 9px; min-height: 49px; padding: 12px 14px; font-size: 14px; color: #203850; transition: border-color .2s, box-shadow .2s, background-color .2s; }
.mmforms-review .mmforms-input:hover { border-color: #adbdcc; }
.mmforms-review .mmforms-input:focus { border-color: #258c92; box-shadow: 0 0 0 4px #147d8310; background-color: #fff; outline: none; }
.mmforms-review .mmforms-field:has(textarea) { grid-column: 1 / -1; }
.mmforms-review .mmforms-textarea { min-height: 100px; resize: vertical; }
.mmforms-review .mmforms-notice-box { border-radius: 10px; border: 1px solid #d9eae9; border-left: 3px solid #27888c; background: #f1f8f7; padding: 15px 18px; color: #456567; font-size: 13px; line-height: 1.8; margin-bottom: 26px; }
.mmforms-review .mmforms-form-actions { align-items: center; justify-content: space-between; border-top: 1px solid #e8edf2; padding-top: 24px; margin-top: 32px; }
.mmforms-review .mmforms-required-note { font-size: 11px; color: #7b8897; }
.mmforms-review .mmforms-required-note span { color: #147d83; }
.mmforms-review .mmforms-action-buttons { display: flex; align-items: center; gap: 10px; }
.mmforms-review .mmforms-btn { gap: 10px; border-radius: 9px; padding: 13px 22px; min-height: 46px; font-size: 12px; font-weight: 600; letter-spacing: .01em; transition: transform .2s, background .2s, box-shadow .2s; }
.mmforms-review .mmforms-btn-primary { background: var(--brand); border-color: var(--brand); box-shadow: 0 4px 10px #102c4b14; }
.mmforms-review .mmforms-btn-primary:hover { background: #1b4666; border-color: #1b4666; transform: translateY(-1px); box-shadow: 0 6px 15px #102c4b20; }
.mmforms-review .mmforms-btn-ghost { background: #fff; color: #36536b; border: 1px solid #dbe4ec; }
.mmforms-review .mmforms-btn-ghost:hover { background: #f1f6f8; border-color: #b6c9d5; }
.mmforms-review .mmforms-repeater > legend { font-size: 15px; font-weight: 700; color: var(--brand); margin: 0; padding: 0; }
.mmforms-review .mmforms-repeater-intro { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 20px; }
.mmforms-review .mmforms-repeater-intro .mmforms-hint { max-width: 580px; margin: 8px 0 0; line-height: 1.7; font-size: 12px; }
.mmforms-review .mmforms-entry-count { flex-shrink: 0; padding: 5px 10px; border-radius: 20px; background: #edf4f8; color: #567087; font-size: 10px; font-weight: 600; }
.mmforms-review .mmforms-repeat-row { position: relative; background: #fff; border: 1px solid #dfe7ee; border-radius: 12px; padding: 0; margin: 0 0 16px; overflow: hidden; box-shadow: 0 2px 6px #102c4b03; transition: border-color .2s, box-shadow .2s; }
.mmforms-review .mmforms-repeat-row:focus-within { border-color: #80b8b8; box-shadow: 0 3px 16px #147d830a; }
.mmforms-review .mmforms-repeat-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 20px; border-bottom: 1px solid #e7edf2; background: linear-gradient(100deg, #f3f8fa, #fbfcfe); }
.mmforms-review .mmforms-repeat-title { display: flex; align-items: center; gap: 10px; color: #29465d; font-size: 12px; font-weight: 700; }
.mmforms-review .mmforms-repeat-icon { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: #e5f0f0; border: 1px solid #d7e8e8; border-radius: 8px; color: #287a7e; }
.mmforms-review .mmforms-repeat-icon svg { width: 17px; height: 17px; }
.mmforms-review .mmforms-repeat-row > .mmforms-field-grid { padding: 22px; gap: 20px; }
.mmforms-review .mmforms-remove-row { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid transparent; border-radius: 6px; color: #788696; font-size: 10px; font-weight: 500; text-decoration: none; }
.mmforms-review .mmforms-remove-row svg { width: 14px; height: 14px; }
.mmforms-review .mmforms-remove-row:hover { color: #b54747; background: #fff2f1; border-color: #f4dbd8; }
.mmforms-review .mmforms-repeater-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 4px 0; }
.mmforms-review .mmforms-repeater-footer .mmforms-hint { font-size: 11px; margin: 0; }
.mmforms-review .mmforms-repeater-footer .mmforms-btn { border-style: dashed; border-color: #9ebfc4; color: #216e75; background: #f7fbfb; }
@media (max-width: 1000px) {
    .mmforms-review .mmforms-stepnav { flex-direction: column; gap: 6px; }
}
@media (max-width: 700px) {
    .mmforms-review { border-radius: 0; }
    .mmforms-review .mmforms-stepper { padding: 16px 12px 12px; }
    .mmforms-review .mmforms-stepper-track { min-width: 0; gap: 4px; }
    .mmforms-review .mmforms-stepnav { padding: 8px 2px; min-width: 0; }
    .mmforms-review .mmforms-stepnav .mmforms-dot { width: 24px; height: 24px; min-width: 24px; font-size: 10px; }
    .mmforms-review .mmforms-stepnav .mmforms-dot-label { font-size: 8px; }
    .mmforms-review .mmforms-main { padding: 0 12px 20px; }
    .mmforms-review .mmforms-card { padding: 24px 20px; border-radius: 0; }
    .mmforms-review .mmforms-repeater-intro { gap: 10px; align-items: flex-start; }
    .mmforms-review .mmforms-repeat-head { padding: 12px 14px; }
    .mmforms-review .mmforms-repeat-row > .mmforms-field-grid { padding: 16px; }
    .mmforms-review .mmforms-form-actions { align-items: stretch; flex-direction: column; gap: 16px; }
    .mmforms-review .mmforms-action-buttons { justify-content: flex-end; }
    .mmforms-review .mmforms-repeater-footer { align-items: stretch; flex-direction: column; }
    .mmforms-review .mmforms-repeater-footer .mmforms-btn { justify-content: center; }
}

/* Elementor integration: clear the overlapping hero awards and fixed site header. */
.mmforms-review {
    --mmforms-scroll-offset: 144px;
    container-type: inline-size;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-block: 64px 40px;
    scroll-margin-top: var(--mmforms-scroll-offset);
}
.mmforms-review .mmforms-form { margin: 0; }
.mmforms-review .mmforms-field,
.mmforms-review .mmforms-h2,
.mmforms-review .mmforms-input { scroll-margin-top: var(--mmforms-scroll-offset); }
.mmforms-review .mmforms-stepnav { min-height: 52px; font-family: var(--font-sans); }
.mmforms-review .mmforms-stepnav .mmforms-dot-label { font-size: 12px; line-height: 1.4; }
.mmforms-review .mmforms-label { font-size: 14px; line-height: 1.5; }
.mmforms-review .mmforms-input { font-family: var(--font-sans); font-size: 16px; line-height: 1.5; min-height: 50px; width: 100%; }
.mmforms-review .mmforms-sub { font-size: 15px; }
.mmforms-review .mmforms-section-kicker { font-size: 12px; }
.mmforms-review .mmforms-step-count { font-size: 11px; }
.mmforms-review .mmforms-btn { font-family: var(--font-sans); font-size: 14px; line-height: 1.4; }
.mmforms-review .mmforms-required-note { font-size: 12px; }
.mmforms-review .mmforms-notice-box { font-size: 14px; }
.mmforms-review .mmforms-repeat-title { font-size: 14px; }
.mmforms-review .mmforms-remove-row { font-size: 12px; min-height: 36px; }
.mmforms-review .mmforms-entry-count { font-size: 12px; }
.mmforms-review .mmforms-repeater-intro .mmforms-hint,
.mmforms-review .mmforms-repeater-footer .mmforms-hint { font-size: 13px; }
@container (min-width: 900px) {
    .mmforms-review .mmforms-repeater[data-columns="4"] .mmforms-repeat-row > .mmforms-field-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
    }
}
@media (max-width: 700px) {
    .mmforms-review { --mmforms-scroll-offset: 100px; margin-block: 48px 24px; }
    .mmforms-review .mmforms-main { padding-inline: 10px; }
    .mmforms-review .mmforms-card { padding: 24px 18px; }
    .mmforms-review .mmforms-stepper { padding: 12px 10px; overflow: visible; }
    .mmforms-review .mmforms-stepper-track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
    .mmforms-review .mmforms-stepnav { flex-direction: row; justify-content: flex-start; gap: 7px; padding: 9px 7px; min-height: 46px; }
    .mmforms-review .mmforms-stepnav .mmforms-dot-label { font-size: 11px; }
    .mmforms-review .mmforms-stepnav .mmforms-dot { width: 23px; height: 23px; min-width: 23px; }
    .mmforms-review .mmforms-card-head { gap: 8px; }
    .mmforms-review .mmforms-repeater-intro { flex-wrap: wrap; gap: 8px; }
    .mmforms-review .mmforms-repeat-row > .mmforms-field-grid { gap: 18px; padding: 18px 14px; }
    .mmforms-review .mmforms-repeat-head { padding: 10px 12px; }
    .mmforms-review .mmforms-btn { padding-inline: 18px; min-height: 48px; }
}
@container (max-width: 340px) {
    .mmforms-review .mmforms-stepnav { flex-direction: column; justify-content: center; gap: 5px; padding-inline: 4px; }
}
/* Keep the shortcode width contained even in themes without a border-box reset. */
.mmforms-review { box-sizing: border-box; }

/* ── Redesign: Subheadings, Money Prefix, Compact Tables & Review Cards (v1.3.0) ── */
.mmforms-review .mmforms-section-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--brand);
    margin: 26px 0 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e5eaf0;
    letter-spacing: -.01em;
}
.mmforms-review .mmforms-currency-block {
    max-width: 280px;
    margin-bottom: 20px;
}
.mmforms-review .mmforms-money {
    position: relative;
    width: 100%;
}
.mmforms-review .mmforms-money::before {
    content: attr(data-currency);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 14px;
    color: #65758b;
    font-size: 13px;
    font-weight: 600;
    pointer-events: none;
    z-index: 1;
}
.mmforms-review .mmforms-money .mmforms-input {
    padding-left: 56px;
    text-align: right;
    font-variant-numeric: tabular-nums;
}
.mmforms-review .mmforms-total {
    background: #f1f5f9;
    padding: 16px 20px;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand);
}
.mmforms-review .mmforms-total strong {
    font-size: 19px;
    color: var(--brand);
    font-weight: 700;
}
.mmforms-review .mmforms-statusline {
    font-size: 13px;
    color: #567087;
    margin-top: 12px;
    line-height: 1.5;
}
.mmforms-review .mmforms-statusline.has-warning {
    color: #b54747;
    font-weight: 600;
}
.mmforms-review .mmforms-statusline.has-match {
    color: #1e7666;
    font-weight: 600;
}

/* Compact Tables */
.mmforms-review .mmforms-tablewrap {
    width: 100%;
    overflow-x: auto;
    margin: 16px 0;
    border: 1px solid #dce4ed;
    border-radius: 8px;
    background: #fff;
    -webkit-overflow-scrolling: touch;
}
.mmforms-review .mmforms-table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    table-layout: fixed;
    font-size: 13px;
    margin: 0;
}
.mmforms-review .mmforms-table th {
    text-align: left;
    background: #f0f4f8;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #49637c;
    padding: 12px 10px;
    border-top: none;
    border-bottom: 1px solid #dce4ed;
    border-left: none;
    border-right: none;
}
.mmforms-review .mmforms-table td {
    padding: 10px 8px;
    border-bottom: 1px solid #e8edf2;
    border-top: none;
    border-left: none;
    border-right: none;
    vertical-align: top;
    background: #fff;
}
.mmforms-review .mmforms-table tr:last-child td {
    border-bottom: none;
}
.mmforms-review .mmforms-table td .mmforms-input,
.mmforms-review .mmforms-table td .mmforms-select {
    padding: 8px 10px;
    font-size: 13px;
    min-height: 40px;
    border-radius: 6px;
}
.mmforms-review .mmforms-table td .mmforms-money::before {
    left: 10px;
    font-size: 11px;
}
.mmforms-review .mmforms-table td .mmforms-money .mmforms-input {
    padding-left: 42px;
}
.mmforms-review .mmforms-delete-btn {
    border: 0;
    background: transparent;
    color: #75859a;
    font-size: 20px;
    padding: 6px 10px;
    cursor: pointer;
    border-radius: 6px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color .2s, background .2s;
}
.mmforms-review .mmforms-delete-btn:hover {
    color: #b54747;
    background: #fff2f1;
}
.mmforms-review .mmforms-table-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}
.mmforms-review .mmforms-table-actions .mmforms-btn-add {
    border: 1px solid #95bbc0;
    color: #277b85;
    background: #fff;
    border-radius: 6px;
    font-weight: 600;
    font-size: 12px;
    padding: 10px 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.mmforms-review .mmforms-table-actions .mmforms-btn-add:hover {
    background: #f1f8f8;
    border-color: #277b85;
}

/* Bad Debt Table */
.mmforms-review .mmforms-table--bad td {
    padding: 12px 6px;
}
.mmforms-review .mmforms-period {
    display: block;
    margin-top: 5px;
    color: #62748b;
    font-size: 11px;
    line-height: 1.4;
    font-weight: normal;
}

/* Authorise: Review Summary Grid & Uppercase Box */
.mmforms-review .mmforms-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin: 18px 0 16px;
}
.mmforms-review .mmforms-summary-card {
    border: 1px solid #dfe7ee;
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 11px;
    font-weight: 700;
    color: #718198;
    background: #fff;
    letter-spacing: .05em;
}
.mmforms-review .mmforms-summary-card strong {
    display: block;
    color: var(--brand);
    margin-top: 6px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0;
}
.mmforms-review .mmforms-uppercase-box {
    padding: 12px 14px;
    background: #f2f5f8;
    min-height: 50px;
    border-radius: 9px;
    color: #49637c;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    align-items: center;
    border: 1px solid #dce4ed;
    letter-spacing: .03em;
}

/* Disabled styling for interactive table rows */
.mmforms-review input:disabled,
.mmforms-review select:disabled {
    background: #edf1f5 !important;
    color: #718095 !important;
    cursor: not-allowed;
    opacity: 0.8;
}

@media (max-width: 820px) {
    .mmforms-review .mmforms-summary-grid {
        grid-template-columns: 1fr;
    }
    .mmforms-review .mmforms-table--countries {
        min-width: 600px;
    }
    .mmforms-review .mmforms-table--customers {
        min-width: 900px;
    }
    .mmforms-review .mmforms-table--bad {
        min-width: 780px;
    }
}

/* ── Companies House Autocomplete & Dropdown (matching Supplier Portal) ── */
@keyframes mmformsSpin {
    0% { transform: translateY(-50%) rotate(0deg); }
    100% { transform: translateY(-50%) rotate(360deg); }
}

.mmforms-review .company-autocomplete-wrap {
    position: relative;
    width: 100%;
}

.mmforms-review .company-input-inner {
    position: relative !important;
    width: 100% !important;
    display: block !important;
}

.mmforms-review .company-autocomplete-wrap .company-autocomplete-input {
    padding-right: 42px !important;
}

.mmforms-review .company-autocomplete-spinner {
    position: absolute;
    right: 36px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid #e2e8f0;
    border-top-color: #1d63ed;
    border-radius: 50%;
    animation: mmformsSpin 0.75s linear infinite;
    pointer-events: none;
    z-index: 5;
}

.mmforms-review .company-autocomplete-clear-btn {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    background: #e2e8f0 !important;
    border: none !important;
    outline: none !important;
    border-radius: 50% !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    z-index: 15 !important;
    color: #64748b !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease !important;
}

.mmforms-review .company-autocomplete-clear-btn.is-visible {
    display: inline-flex !important;
}

.mmforms-review .company-autocomplete-clear-btn.is-hidden {
    display: none !important;
}

.mmforms-review .company-autocomplete-clear-btn:hover {
    background: #cbd5e1 !important;
    color: #0f172a !important;
    transform: translateY(-50%) scale(1.08) !important;
}

.mmforms-review .company-autocomplete-clear-btn svg {
    width: 12px !important;
    height: 12px !important;
    stroke: currentColor !important;
    stroke-width: 2.5 !important;
    display: block !important;
    pointer-events: none !important;
}

.mmforms-review .company-suggestions-dropdown {
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 99999 !important;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 38px -8px rgba(0, 12, 52, 0.18), 0 0 0 1px rgba(0, 12, 52, 0.05) !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    max-height: 340px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scroll-behavior: smooth;
    display: none;
    text-align: left;
}

.mmforms-review .company-suggestions-dropdown.is-open {
    display: block !important;
}

.mmforms-review .company-suggestions-dropdown::-webkit-scrollbar {
    width: 6px;
}
.mmforms-review .company-suggestions-dropdown::-webkit-scrollbar-track {
    background: #f8fafc;
    border-radius: 0 12px 12px 0;
}
.mmforms-review .company-suggestions-dropdown::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}
.mmforms-review .company-suggestions-dropdown::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

.mmforms-review .company-dropdown-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 9px 14px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
    cursor: default !important;
    user-select: none !important;
}

.mmforms-review .ch-header-title {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #475569;
}

.mmforms-review .ch-header-title svg {
    color: #1d63ed;
    flex-shrink: 0;
}

.mmforms-review .company-suggestions-dropdown li.company-item {
    padding: 11px 14px !important;
    cursor: pointer !important;
    border-bottom: 1px solid #f1f5f9 !important;
    border-left: 3px solid transparent !important;
    transition: all 0.15s ease !important;
    background: #ffffff !important;
    margin: 0 !important;
}

.mmforms-review .company-suggestions-dropdown li.company-item:last-of-type {
    border-bottom: none !important;
}

.mmforms-review .company-suggestions-dropdown li.company-item:hover,
.mmforms-review .company-suggestions-dropdown li.company-item.active {
    background: #f0f6ff !important;
    border-left-color: #1d63ed !important;
}

.mmforms-review .company-item-main {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.mmforms-review .company-item-icon-box {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #f1f5f9;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
    transition: all 0.15s ease;
}

.mmforms-review li.company-item:hover .company-item-icon-box,
.mmforms-review li.company-item.active .company-item-icon-box {
    background: #dbeafe;
    color: #1d63ed;
}

.mmforms-review .company-item-details {
    flex: 1;
    min-width: 0;
}

.mmforms-review .company-item-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.mmforms-review .company-item-name {
    font-size: 13.5px;
    font-weight: 700;
    color: #000c34;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    letter-spacing: -0.01em;
}

.mmforms-review mark.ch-highlight {
    background: #fef08a;
    color: #854d0e;
    font-weight: 800;
    padding: 0 2px;
    border-radius: 2px;
}

.mmforms-review .company-item-meta-tags {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.mmforms-review .company-status-badge {
    font-size: 10.5px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-transform: capitalize;
}

.mmforms-review .company-status-badge.status-active {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid #a7f3d0;
}

.mmforms-review .company-status-badge.status-other {
    background: #fef2f2;
    color: #b91c1c;
    border: 1px solid #fecaca;
}

.mmforms-review .status-pulse-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #10b981;
}

.mmforms-review .company-number {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #1e40af !important;
    background: #eff6ff !important;
    padding: 2px 7px !important;
    border-radius: 5px !important;
    border: 1px solid #bfdbfe !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    letter-spacing: 0.03em !important;
}

.mmforms-review .company-item-address {
    font-size: 12px;
    color: #64748b;
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mmforms-review .company-item-address svg {
    flex-shrink: 0;
}

.mmforms-review .company-item-address span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Sticky Dropdown Footer */
.mmforms-review .company-dropdown-footer {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 8px 14px !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
    cursor: default !important;
    user-select: none !important;
    font-size: 11.5px !important;
    color: #64748b !important;
}

.mmforms-review .ch-footer-note {
    display: flex;
    align-items: center;
    gap: 5px;
}

.mmforms-review .ch-kbd-hint {
    font-size: 10.5px;
    color: #94a3b8;
}

.mmforms-review .ch-kbd-hint kbd {
    display: inline-block;
    padding: 1px 4px;
    font-family: inherit;
    font-size: 10px;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 3px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    color: #475569;
}

/* Empty State Hint */
.mmforms-review .company-empty-hint {
    padding: 22px 16px !important;
    text-align: center !important;
    cursor: default !important;
    background: #ffffff !important;
}

.mmforms-review .company-empty-hint .empty-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #f1f5f9;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 8px auto;
}

.mmforms-review .company-empty-hint .empty-msg {
    font-size: 13px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 4px;
}

.mmforms-review .company-empty-hint .empty-sub {
    font-size: 12px;
    color: #64748b;
    margin: 0;
}

.mmforms-review .mmforms-field:has(> input[name="trading_name"]) {
    grid-column: 1 / -1;
}


