.vision-wrap {
	max-width: 980px;
	margin: 32px auto;
	padding: 0 16px;
	font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.vision-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
	margin-top: 24px;
}

.vision-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 20px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.vision-button {
	display: inline-block;
	margin: 8px 8px 0 0;
	padding: 10px 14px;
	border-radius: 999px;
	text-decoration: none;
	background: #111827;
	color: #fff;
	font-weight: 600;
}

.vision-button:hover,
.vision-button:focus {
	color: #fff;
	opacity: 0.9;
}

.vision-button-secondary {
	background: #f3f4f6;
	color: #111827;
}

.vision-button-secondary:hover,
.vision-button-secondary:focus {
	color: #111827;
}

.vision-question-list li {
	margin-bottom: 12px;
}

.vision-progress {
	background: #eef2f7;
	border-radius: 999px;
	height: 10px;
	overflow: hidden;
	margin: 10px 0 14px;
}

.vision-progress span {
	display: block;
	height: 100%;
	background: #111827;
	border-radius: 999px;
	transition: width 180ms ease;
}

.vision-step-meta {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 14px;
	color: #4b5563;
	margin-bottom: 8px;
}

.vision-question {
	border-top: 1px solid #eef2f7;
	padding: 18px 0;
}

.vision-question:first-of-type {
	border-top: 0;
}

.vision-question-label {
	display: block;
	font-weight: 700;
	margin-bottom: 10px;
}

.vision-scale-group,
.vision-checkbox-group {
	display: grid;
	gap: 8px;
}

.vision-scale-option,
.vision-checkbox-group label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #f9fafb;
	cursor: pointer;
}

.vision-scale-option:has(input:checked),
.vision-checkbox-group label:has(input:checked) {
	background: #f3f4f6;
	border-color: #111827;
}

.vision-question textarea,
.vision-card input[type="text"],
.vision-card input[type="email"] {
	width: 100%;
	max-width: 680px;
	border: 1px solid #d1d5db;
	border-radius: 10px;
	padding: 10px 12px;
}

.vision-alert {
	border: 1px solid #f59e0b;
	background: #fffbeb;
	padding: 12px;
	border-radius: 12px;
	margin: 14px 0;
}

.vision-form-actions {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 16px;
}

button.vision-button {
	border: 0;
	cursor: pointer;
}

/* Phase 4 missions and reflections */
.vision-wrap textarea,
.vision-wrap select,
.vision-wrap input[type="text"],
.vision-wrap input[type="email"] {
	max-width: 100%;
}
.vision-wrap textarea {
	width: 100%;
	min-height: 96px;
}
.vision-released-report .vision-report {
	max-width: 920px;
	margin: 0 auto;
}
.vision-rhythm p {
	margin-bottom: 0.75rem;
}

.vision-report-insight {
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 14px 16px;
	margin: 12px 0;
	background: #ffffff;
}

.vision-report-insight h3 {
	margin-top: 0;
}

.vision-report-insight strong {
	font-weight: 700;
}

/* Phase 6 launch QA and report polish */
.vision-launch-qa .vision-qa-summary {
	display: flex;
	gap: 8px;
	margin: 16px 0;
	align-items: center;
	flex-wrap: wrap;
}
.vision-qa-pill {
	display: inline-block;
	border-radius: 999px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 700;
	border: 1px solid #c3c4c7;
	background: #f6f7f7;
}
.vision-qa-ok { background: #edfaef; border-color: #8ed29d; color: #0f5132; }
.vision-qa-warn { background: #fff8e5; border-color: #f0c36d; color: #7a4d00; }
.vision-qa-fail { background: #fde8e8; border-color: #e29a9a; color: #842029; }
.vision-launch-list li { margin-bottom: 8px; }
.vision-report {
	max-width: 940px;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.62;
	color: #1f2933;
}
.vision-report h1 {
	font-size: 34px;
	line-height: 1.18;
	margin: 0 0 16px;
}
.vision-report h2 {
	font-size: 23px;
	margin-top: 34px;
	padding-top: 18px;
	border-top: 1px solid #e5e7eb;
}
.vision-report h3 {
	font-size: 18px;
	margin-top: 18px;
}
.vision-report section {
	margin-bottom: 22px;
}
.vision-report-table {
	width: 100%;
	border-collapse: collapse;
	margin: 12px 0 20px;
	background: #fff;
}
.vision-report-table th,
.vision-report-table td {
	border: 1px solid #e5e7eb;
	padding: 12px 14px;
	vertical-align: top;
}
.vision-report-table th {
	width: 34%;
	text-align: left;
	background: #f9fafb;
}
.vision-student-snapshot {
	max-width: 760px;
}

/* Phase 7 / v3.0.14 guided VISION UI polish */
:root {
	--vision-blue: #94BDF6;
	--vision-soft-blue: #EAF3FF;
	--vision-muted-blue: #D8E8FF;
	--vision-ink: #050505;
	--vision-charcoal: #171A1F;
	--vision-muted: #4F5F70;
	--vision-border: #DDE5F0;
	--vision-soft: #F5F2EC;
	--vision-accent: #FF7A1A;
	--vision-white: #FFFFFF;
	--vision-success: #2E7D32;
	--vision-warning: #A66A00;
	--vision-radius: 26px;
}

.vision-wrap {
	max-width: 1180px;
	margin: 48px auto;
	padding: 0 20px;
	color: var(--vision-ink);
}

.vision-wrap h1,
.vision-wrap h2,
.vision-wrap h3 {
	letter-spacing: -0.03em;
	color: var(--vision-ink);
}

.vision-wrap h1 {
	font-size: clamp(2.25rem, 5vw, 4.35rem);
	line-height: 1.04;
	margin: 0 0 18px;
}

.vision-wrap h2 {
	font-size: clamp(1.55rem, 3vw, 2.35rem);
	line-height: 1.12;
}

.vision-wrap h3 {
	font-size: 1.35rem;
	line-height: 1.2;
}

.vision-kicker,
.vision-section-eyebrow,
.vision-question-type {
	margin: 0 0 10px;
	font-size: 0.78rem;
	line-height: 1.2;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vision-accent);
}

.vision-lead {
	font-size: clamp(1.05rem, 2vw, 1.32rem);
	line-height: 1.62;
	color: #475467;
	max-width: 760px;
}

.vision-muted,
.vision-module-intro {
	color: var(--vision-muted);
}

.vision-hero-card,
.vision-flow-header {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
	gap: 28px;
	align-items: stretch;
	margin-bottom: 28px;
}

.vision-hero-card {
	background: linear-gradient(135deg, #fff 0%, #fbfcff 52%, #fff7ed 100%);
	border: 1px solid var(--vision-border);
	border-radius: 32px;
	padding: clamp(28px, 5vw, 54px);
	box-shadow: 0 24px 70px rgba(16, 24, 40, 0.08);
}

.vision-soft-panel,
.vision-flow-progress-box {
	background: linear-gradient(135deg, var(--vision-soft-lavender) 0%, var(--vision-soft-blue) 100%);
	border: 1px solid rgba(111, 78, 255, 0.12);
	border-radius: var(--vision-radius);
	padding: 24px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.vision-soft-panel h2,
.vision-flow-progress-box h2 {
	margin-top: 0;
}

.vision-numbered-steps {
	list-style: none;
	margin: 18px 0 0;
	padding: 0;
	display: grid;
	gap: 14px;
}

.vision-numbered-steps li {
	position: relative;
	padding-left: 44px;
	min-height: 34px;
}

.vision-numbered-steps li::before {
	content: counter(list-item);
	position: absolute;
	left: 0;
	top: 0;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	background: var(--vision-navy);
	color: #fff;
	display: grid;
	place-items: center;
	font-weight: 800;
	font-size: 0.88rem;
}

.vision-numbered-steps span {
	display: block;
	color: var(--vision-muted);
	font-size: 0.94rem;
	margin-top: 2px;
}

.vision-card {
	border-radius: var(--vision-radius);
	border-color: var(--vision-border);
	box-shadow: 0 16px 48px rgba(16, 24, 40, 0.07);
}

.vision-button {
	background: linear-gradient(135deg, var(--vision-button), var(--vision-button-2));
	border-radius: 12px;
	padding: 13px 20px;
	font-weight: 800;
	box-shadow: 0 10px 24px rgba(47, 111, 190, 0.18);
	transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}

.vision-button:hover,
.vision-button:focus {
	transform: translateY(-1px);
	box-shadow: 0 14px 32px rgba(47, 111, 190, 0.22);
	opacity: 1;
}

.vision-button-secondary {
	background: #fff;
	border: 1px solid var(--vision-border);
	box-shadow: none;
	color: var(--vision-ink);
}

.vision-field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.vision-field-grid p,
.vision-start-form p {
	margin: 0;
}

.vision-field-wide {
	grid-column: 1 / -1;
}

.vision-form-section {
	border-top: 1px solid var(--vision-border);
	padding: 28px 0;
}

.vision-form-section:first-child {
	border-top: 0;
	padding-top: 0;
}

.vision-start-form input[type="text"],
.vision-start-form input[type="email"],
.vision-question textarea,
.vision-wrap textarea,
.vision-wrap select {
	border-radius: 14px;
	border: 1px solid #d7dce6;
	background: #fff;
	padding: 13px 14px;
	font-size: 1rem;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.vision-start-form input:focus,
.vision-question textarea:focus,
.vision-wrap select:focus {
	outline: none;
	border-color: #8098f9;
	box-shadow: 0 0 0 4px rgba(128, 152, 249, 0.18);
}

.vision-consent-list {
	display: grid;
	gap: 12px;
}

.vision-consent-list label {
	display: grid;
	grid-template-columns: 20px 1fr;
	gap: 12px;
	align-items: start;
	padding: 14px 16px;
	background: var(--vision-soft);
	border: 1px solid var(--vision-border);
	border-radius: 16px;
}

.vision-start-actions {
	align-items: center;
	justify-content: space-between;
	padding: 18px;
	border-radius: 18px;
	background: #f9fafb;
}

.vision-start-actions p {
	margin: 4px 0 0;
	color: var(--vision-muted);
}

.vision-journey-path,
.vision-module-stepper {
	display: flex;
	gap: 0;
	margin: 22px 0 32px;
	overflow-x: auto;
	padding-bottom: 4px;
}

.vision-path-item,
.vision-module-step {
	position: relative;
	min-width: 150px;
	text-decoration: none;
	color: var(--vision-muted);
	display: grid;
	gap: 6px;
	justify-items: center;
	text-align: center;
	font-size: 0.86rem;
	padding: 0 12px;
}

.vision-path-item:not(:last-child)::after,
.vision-module-step:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 16px;
	left: calc(50% + 18px);
	width: calc(100% - 36px);
	height: 2px;
	background: #d7dce6;
}

.vision-path-item span,
.vision-module-step span {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	background: #fff;
	border: 2px solid #d7dce6;
	font-weight: 800;
}

.vision-path-item.is-active span,
.vision-module-step.is-current span {
	border-color: #2f6fbe;
	color: #2f6fbe;
	box-shadow: 0 0 0 5px rgba(47, 111, 190, 0.12);
}

.vision-path-item.is-complete span,
.vision-module-step.is-complete span {
	background: #12b76a;
	border-color: #12b76a;
	color: #fff;
}

.vision-hub-grid {
	grid-template-columns: repeat(4, minmax(220px, 1fr));
}

.vision-hub-card {
	min-height: 280px;
	display: flex;
	flex-direction: column;
}

.vision-hub-card .vision-button {
	margin-top: auto;
	align-self: flex-start;
}

.vision-card-icon {
	width: 54px;
	height: 54px;
	border-radius: 18px;
	display: grid;
	place-items: center;
	font-size: 1.8rem;
	background: linear-gradient(135deg, #fff7ed, #eef7ff);
	margin-bottom: 12px;
}

.vision-status-pill {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	border-radius: 999px;
	padding: 6px 10px;
	background: #f2f4f7;
	border: 1px solid #e4e7ec;
	color: #344054;
	font-size: 0.78rem;
	font-weight: 800;
	margin-bottom: 12px;
}

.vision-status-active {
	background: #ecfdf3;
	border-color: #abefc6;
	color: #067647;
}

.vision-flow-header {
	align-items: center;
}

.vision-flow-progress-box {
	min-width: 280px;
}

.vision-flow-progress-box span {
	color: var(--vision-muted);
	font-weight: 700;
}

.vision-flow-progress-box strong {
	display: block;
	font-size: 1.7rem;
	margin: 4px 0 10px;
}

.vision-flow-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.vision-guidance-panel {
	position: sticky;
	top: 24px;
}

.vision-guidance-panel hr {
	border: 0;
	border-top: 1px solid rgba(16, 24, 40, 0.10);
	margin: 20px 0;
}

.vision-guidance-panel ul {
	margin: 8px 0 0;
	padding-left: 20px;
}

.vision-step-card {
	padding: clamp(22px, 4vw, 38px);
}

.vision-question-card {
	border: 1px solid var(--vision-border);
	border-radius: 20px;
	padding: 22px;
	margin: 18px 0;
	background: #fff;
	box-shadow: 0 8px 26px rgba(16, 24, 40, 0.045);
}

.vision-question-heading {
	margin-bottom: 16px;
}

.vision-question-label {
	font-size: clamp(1.08rem, 2vw, 1.45rem);
	line-height: 1.35;
	font-weight: 800;
	margin-bottom: 0;
}

.vision-answer-grid {
	grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
	gap: 12px;
}

.vision-answer-card,
.vision-choice-card {
	justify-content: center;
	min-height: 64px;
	padding: 14px 14px;
	border: 2px solid #cfd8ff;
	background: #fff;
	border-radius: 16px;
	font-weight: 800;
	color: #253858;
	text-align: center;
	transition: transform 140ms ease, border-color 140ms ease, background 140ms ease, box-shadow 140ms ease;
}

.vision-answer-card input,
.vision-choice-card input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.vision-answer-card:hover,
.vision-choice-card:hover {
	transform: translateY(-1px);
	border-color: #2f6fbe;
	box-shadow: 0 10px 26px rgba(47, 111, 190, 0.10);
}

.vision-answer-card:has(input:checked),
.vision-choice-card:has(input:checked),
.vision-answer-card.is-selected,
.vision-choice-card.is-selected {
	background: linear-gradient(135deg, #eef7ff, #f3efff);
	border-color: #2f6fbe;
	box-shadow: 0 0 0 4px rgba(47, 111, 190, 0.12);
}

.vision-choice-grid {
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 12px;
}

.vision-sticky-actions {
	position: sticky;
	bottom: 0;
	z-index: 5;
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(10px);
	border: 1px solid var(--vision-border);
	border-radius: 20px;
	padding: 14px;
	align-items: center;
	justify-content: space-between;
	box-shadow: 0 -10px 32px rgba(16, 24, 40, 0.08);
}

.vision-action-copy {
	display: grid;
	gap: 2px;
}

.vision-action-copy span {
	color: var(--vision-muted);
	font-size: 0.9rem;
}

@media (max-width: 980px) {
	.vision-hero-card,
	.vision-flow-header,
	.vision-flow-layout {
		grid-template-columns: 1fr;
	}

	.vision-hub-grid {
		grid-template-columns: repeat(2, minmax(220px, 1fr));
	}

	.vision-guidance-panel {
		position: static;
		order: -1;
	}
}

@media (max-width: 700px) {
	.vision-wrap {
		margin: 24px auto;
		padding: 0 14px;
	}

	.vision-hero-card {
		border-radius: 24px;
		padding: 24px;
	}

	.vision-field-grid,
	.vision-hub-grid,
	.vision-answer-grid,
	.vision-choice-grid {
		grid-template-columns: 1fr;
	}

	.vision-path-item,
	.vision-module-step {
		min-width: 112px;
		font-size: 0.74rem;
	}

	.vision-sticky-actions {
		align-items: stretch;
	}

	.vision-sticky-actions,
	.vision-sticky-actions > div:last-child {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.vision-button {
		width: 100%;
		text-align: center;
	}
}

/* v3.0.16 — 29eleven Visual System */
.vision-wrap,
.vision-wrap * { box-sizing: border-box; font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.vision-wrap { max-width: 1240px; color: var(--vision-charcoal); }
.vision-wrap h1, .vision-wrap h2, .vision-wrap h3 { color: var(--vision-ink); font-weight: 500; letter-spacing: -0.055em; }
.vision-wrap h1 { font-size: clamp(3rem, 7vw, 6.6rem); line-height: 0.95; }
.vision-wrap h2 { font-size: clamp(2rem, 4.2vw, 4rem); line-height: 1; }
.vision-wrap h3 { font-size: clamp(1.25rem, 2vw, 1.75rem); }
.vision-kicker, .vision-section-eyebrow, .vision-question-type { color: var(--vision-ink); letter-spacing: 0; text-transform: none; font-size: 0.98rem; font-weight: 600; }
.vision-lead { color: var(--vision-charcoal); font-size: clamp(1.15rem, 2vw, 1.6rem); line-height: 1.45; }
.vision-hero-card, .vision-flow-header { background: var(--vision-blue); border: 0; border-radius: 0; box-shadow: none; position: relative; overflow: hidden; }
.vision-hero-card::before, .vision-flow-header::before { content: ""; position: absolute; inset: -20% -10% auto auto; width: 540px; height: 540px; border: 2px solid rgba(255,255,255,0.55); border-radius: 50%; pointer-events: none; }
.vision-hero-card > *, .vision-flow-header > * { position: relative; z-index: 1; }
.vision-card, .vision-step-card, .vision-question-card { border: 1px solid var(--vision-border); border-radius: var(--vision-radius); box-shadow: 0 18px 48px rgba(5,5,5,0.06); }
.vision-soft-panel, .vision-flow-progress-box { background: rgba(255,255,255,0.78); border: 1px solid rgba(255,255,255,0.86); box-shadow: none; }
.vision-button, button.vision-button, .vision-card .button, .vision-wrap input[type="submit"] { background: var(--vision-ink); background-image: none; color: #fff; border-radius: 999px; padding: 15px 28px; font-weight: 700; box-shadow: none; border: 1px solid var(--vision-ink); min-height: 52px; }
.vision-button:hover, .vision-button:focus, button.vision-button:hover, button.vision-button:focus { background: var(--vision-charcoal); transform: translateY(-1px); box-shadow: none; }
.vision-button-secondary { background: transparent; color: var(--vision-ink); border: 1px solid var(--vision-ink); }
.vision-button-secondary:hover, .vision-button-secondary:focus { background: var(--vision-ink); color: #fff; }
.vision-progress span { background: var(--vision-ink); }
.vision-status-pill { background: var(--vision-white); border-color: var(--vision-border); color: var(--vision-ink); }
.vision-status-active, .vision-path-item.is-complete span, .vision-module-step.is-complete span { background: var(--vision-ink); border-color: var(--vision-ink); color: #fff; }
.vision-path-item.is-active span, .vision-module-step.is-current span { border-color: var(--vision-accent); color: var(--vision-ink); box-shadow: 0 0 0 5px rgba(255,122,26,0.18); }
.vision-answer-card, .vision-choice-card { border-color: var(--vision-border); color: var(--vision-ink); border-radius: 999px; min-height: 60px; font-weight: 700; }
.vision-answer-card:hover, .vision-choice-card:hover { border-color: var(--vision-ink); box-shadow: none; }
.vision-answer-card:has(input:checked), .vision-choice-card:has(input:checked), .vision-answer-card.is-selected, .vision-choice-card.is-selected { background: var(--vision-ink); border-color: var(--vision-ink); color: #fff; box-shadow: none; }
.vision-start-form input[type="text"], .vision-start-form input[type="email"], .vision-question textarea, .vision-wrap textarea, .vision-wrap select { border-radius: 18px; border-color: var(--vision-border); font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.vision-consent-list label { background: var(--vision-soft-blue); border-color: var(--vision-border); }
.vision-start-actions, .vision-sticky-actions { background: var(--vision-blue); border-color: transparent; }
.vision-card-icon { background: var(--vision-blue); font-size: 1.6rem; }
.vision-report { font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--vision-charcoal); }
.vision-report h1, .vision-report h2, .vision-report h3 { font-weight: 500; letter-spacing: -0.045em; color: var(--vision-ink); }
.vision-checkout-summary { border-radius: var(--vision-radius); background: var(--vision-soft-blue); border: 1px solid var(--vision-border); }


/* v3.0.21 — Two-column Start Flow Wizard */
.vision-start-wizard-wrap {
	max-width: 1240px;
	margin: clamp(18px, 3vh, 34px) auto 64px;
}
.vision-start-page { padding-top: 0; }
.vision-start-wizard { margin: 0; }
.vision-wizard-shell {
	background: var(--vision-blue);
	border-radius: 34px;
	padding: 0;
	overflow: hidden;
	position: relative;
	box-shadow: 0 24px 70px rgba(5,5,5,.09);
	display: grid;
	grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
	min-height: min(620px, calc(100vh - 178px));
}
.vision-wizard-shell::before {
	content: "";
	position: absolute;
	top: -220px;
	right: -80px;
	width: 560px;
	height: 560px;
	border: 2px solid rgba(255,255,255,.56);
	border-radius: 50%;
	pointer-events: none;
}
.vision-wizard-header,
.vision-wizard-card { position: relative; z-index: 1; }
.vision-wizard-header {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	margin: 0;
	padding: clamp(30px, 4vw, 48px);
	border-right: 1px solid rgba(5,5,5,.12);
	min-width: 0;
}
.vision-wizard-title h1 {
	font-size: clamp(3rem, 5.8vw, 5.75rem);
	line-height: .88;
	letter-spacing: -0.075em;
	margin: 0 0 18px;
	max-width: 420px;
}
.vision-wizard-title p:last-child {
	font-size: clamp(1.02rem, 1.45vw, 1.25rem);
	line-height: 1.38;
	max-width: 340px;
	margin: 0;
}
.vision-wizard-steps {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
.vision-wizard-steps li {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 12px;
	font-size: .92rem;
	font-weight: 800;
	color: rgba(5,5,5,.56);
	line-height: 1.15;
	min-width: 0;
}
.vision-wizard-steps span {
	width: 34px;
	height: 34px;
	border-radius: 999px;
	border: 2px solid rgba(5,5,5,.24);
	display: grid;
	place-items: center;
	font-size: .88rem;
	background: rgba(255,255,255,.35);
}
.vision-wizard-steps li.is-active,
.vision-wizard-steps li.is-complete { color: var(--vision-ink); }
.vision-wizard-steps li.is-active span { border-color: var(--vision-ink); background: #fff; }
.vision-wizard-steps li.is-complete span { border-color: var(--vision-ink); background: var(--vision-ink); color: #fff; }
.vision-wizard-card {
	background: rgba(255,255,255,.94);
	border: 0;
	border-radius: 0;
	padding: clamp(30px, 4.5vw, 56px);
	box-shadow: none;
	min-height: 0;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.vision-wizard-step { flex: 1; min-width: 0; }
.vision-wizard-step[hidden] { display: none !important; }
.vision-wizard-step h2 {
	font-size: clamp(2.15rem, 3.7vw, 4rem);
	line-height: .96;
	letter-spacing: -0.065em;
	margin: 0 0 14px;
	max-width: 680px;
}
.vision-wizard-step > p:not(.vision-section-eyebrow),
.vision-wizard-step .vision-lead {
	font-size: clamp(1rem, 1.35vw, 1.18rem);
	line-height: 1.48;
	max-width: 650px;
	margin-bottom: 0;
}
.vision-wizard-next-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 22px;
}
.vision-wizard-next-grid div,
.vision-review-card {
	background: #fff;
	border: 1px solid var(--vision-border);
	border-radius: 18px;
	padding: 16px;
}
.vision-wizard-next-grid strong,
.vision-wizard-next-grid span { display: block; }
.vision-wizard-next-grid strong { font-size: 1rem; margin-bottom: 4px; }
.vision-wizard-next-grid span { color: var(--vision-muted); font-size: .92rem; line-height: 1.35; }
.vision-wizard-card .vision-field-grid {
	margin-top: 22px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	max-width: 720px;
}
.vision-wizard-card .vision-field-grid p { margin: 0; }
.vision-wizard-card label { font-weight: 800; font-size: .95rem; }
.vision-wizard-card input[type="text"],
.vision-wizard-card input[type="email"] {
	width: 100%;
	margin-top: 7px;
	border: 1px solid var(--vision-border);
	border-radius: 16px;
	min-height: 50px;
	padding: 11px 14px;
	font-size: 1rem;
	background: #fff;
}
.vision-wizard-actions {
	margin-top: auto;
	padding-top: 20px;
	border-top: 1px solid var(--vision-border);
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
}
.vision-wizard-actions [data-vision-wizard-back] { margin-right: auto; }
.vision-review-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 22px;
	max-width: 800px;
}
.vision-review-card h3 { margin-top: 0; }
.vision-review-card p {
	display: grid;
	grid-template-columns: minmax(110px, .42fr) minmax(0, 1fr);
	gap: 10px;
	margin: 8px 0;
	border-top: 1px solid var(--vision-border);
	padding-top: 8px;
	font-size: .95rem;
}
.vision-review-card p:first-of-type { border-top: 0; padding-top: 0; }
.vision-review-card span { color: var(--vision-muted); }
.vision-consent-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 20px;
}
.vision-consent-list label {
	display: grid;
	grid-template-columns: 22px 1fr;
	gap: 10px;
	align-items: start;
	background: #fff;
	border: 1px solid var(--vision-border);
	border-radius: 16px;
	padding: 14px;
	font-weight: 600;
	font-size: .93rem;
	line-height: 1.35;
}
.vision-consent-list input { margin-top: 3px; }
@media (max-width: 1100px) {
	.vision-start-wizard-wrap { max-width: 900px; }
	.vision-wizard-shell { grid-template-columns: 1fr; min-height: 0; }
	.vision-wizard-header { border-right: 0; border-bottom: 1px solid rgba(5,5,5,.12); padding-bottom: 22px; }
	.vision-wizard-title h1 { font-size: clamp(2.7rem, 9vw, 4.4rem); max-width: none; }
	.vision-wizard-title p:last-child { max-width: 620px; }
	.vision-wizard-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
	.vision-wizard-steps li { grid-template-columns: 1fr; gap: 6px; font-size: .8rem; }
	.vision-wizard-card { min-height: auto; }
}
@media (max-width: 760px) {
	.vision-start-wizard-wrap { margin-left: -8px; margin-right: -8px; }
	.vision-wizard-shell { border-radius: 0; }
	.vision-wizard-header,
	.vision-wizard-card { padding: 20px; }
	.vision-wizard-title h1 { font-size: clamp(2.4rem, 13vw, 3.7rem); }
	.vision-wizard-steps { grid-template-columns: repeat(5, 74px); overflow-x: auto; padding-bottom: 4px; }
	.vision-wizard-step h2 { font-size: clamp(2rem, 10vw, 3rem); }
	.vision-wizard-next-grid,
	.vision-review-summary,
	.vision-consent-list,
	.vision-wizard-card .vision-field-grid { grid-template-columns: 1fr; }
	.vision-review-card p { grid-template-columns: 1fr; gap: 2px; }
	.vision-wizard-actions { flex-direction: column-reverse; align-items: stretch; }
	.vision-wizard-actions .vision-button { width: 100%; }
}

/* v3.0.22 — Full-width Tallo-inspired Start Flow */
body .vision-wrap.vision-start-page.vision-start-wizard-wrap {
	max-width: none !important;
	width: 100vw !important;
	margin: 0 0 0 calc(50% - 50vw) !important;
	padding: 0 !important;
	font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.vision-start-wizard { margin: 0 !important; }
.vision-start-app {
	display: grid;
	grid-template-columns: minmax(0, 58fr) minmax(380px, 42fr);
	min-height: calc(100vh - 92px);
	background: #fff;
	border-top: 1px solid rgba(5,5,5,.08);
	border-bottom: 1px solid rgba(5,5,5,.08);
	overflow: hidden;
}
.vision-start-form-pane {
	padding: clamp(28px, 4vw, 56px) clamp(40px, 6vw, 104px) 0;
	display: flex;
	flex-direction: column;
	min-width: 0;
	background: linear-gradient(180deg, #fff 0%, #fff 78%, #fbfaf7 100%);
}
.vision-start-progress {
	list-style: none;
	padding: 0;
	margin: 0 0 clamp(28px, 4vh, 44px);
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: start;
	gap: 0;
	max-width: 800px;
}
.vision-start-progress li {
	position: relative;
	display: grid;
	justify-items: center;
	gap: 8px;
	font-weight: 500;
	font-size: .82rem;
	color: #6d737b;
	text-align: center;
}
.vision-start-progress li::before {
	content: "";
	position: absolute;
	top: 17px;
	left: -50%;
	width: 100%;
	height: 1px;
	background: #cfd4da;
	z-index: 0;
}
.vision-start-progress li:first-child::before { display: none; }
.vision-start-progress span {
	position: relative;
	z-index: 1;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	background: #fff;
	border: 1.5px solid #b7bdc5;
	display: grid;
	place-items: center;
	font-weight: 700;
	color: #5c626a;
}
.vision-start-progress em { font-style: normal; line-height: 1.2; }
.vision-start-progress li.is-active span {
	background: #050505;
	border-color: #050505;
	color: #fff;
	box-shadow: 0 0 0 6px rgba(5,5,5,.08);
}
.vision-start-progress li.is-active,
.vision-start-progress li.is-complete { color: #050505; font-weight: 700; }
.vision-start-progress li.is-complete span { border-color: #050505; color: #050505; }
.vision-start-progress li.is-complete::before,
.vision-start-progress li.is-active::before { background: #050505; }
.vision-start-step-panel {
	min-height: 0;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.vision-start-step-panel .vision-wizard-step { flex: 1; }
.vision-start-step-panel .vision-wizard-step[hidden] { display: none !important; }
.vision-start-step-panel .vision-section-eyebrow {
	font-size: .86rem;
	font-weight: 800;
	letter-spacing: .01em;
	text-transform: none;
	margin: 0 0 14px;
	color: #050505;
}
.vision-start-step-panel h2 {
	font-size: clamp(2.35rem, 4vw, 3.7rem) !important;
	line-height: 1.02 !important;
	letter-spacing: -0.055em !important;
	max-width: 760px !important;
	margin: 0 0 12px !important;
}
.vision-start-step-panel .vision-lead,
.vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
	font-size: clamp(1rem, 1.3vw, 1.16rem) !important;
	line-height: 1.55 !important;
	max-width: 720px !important;
	margin: 0 0 22px !important;
	color: #333941;
}
.vision-field-grid.vision-field-grid-large {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px 32px !important;
	max-width: 840px !important;
	margin-top: 24px !important;
}
.vision-field-grid-large p { margin: 0 !important; }
.vision-field-grid-large .vision-field-wide { grid-column: 1 / -1; }
.vision-field-grid-large label {
	display: block;
	font-size: .92rem !important;
	font-weight: 700 !important;
	color: #23262b;
}
.vision-field-grid-large input,
.vision-field-grid-large select,
.vision-field-grid-large textarea {
	width: 100%;
	margin-top: 8px;
	border: 1px solid #cfd4da !important;
	background: #fff !important;
	border-radius: 10px !important;
	min-height: 50px !important;
	padding: 12px 16px !important;
	font-size: 1rem !important;
	font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	box-shadow: none !important;
}
.vision-field-grid-large textarea { min-height: 86px !important; resize: vertical; }
.vision-field-grid-large input:focus,
.vision-field-grid-large select:focus,
.vision-field-grid-large textarea:focus {
	outline: none !important;
	border-color: #2d6cdf !important;
	box-shadow: 0 0 0 4px rgba(45,108,223,.12) !important;
}
.vision-start-intro-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	max-width: 760px;
	margin-top: 28px;
}
.vision-start-intro-cards div {
	border: 1px solid #dde5f0;
	border-radius: 14px;
	padding: 18px;
	background: #fff;
}
.vision-start-intro-cards strong,
.vision-start-intro-cards span { display: block; }
.vision-start-intro-cards strong { margin-bottom: 5px; }
.vision-start-intro-cards span { color: #5c6673; font-size: .95rem; }
.vision-consent-list.vision-consent-list-compact {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 14px !important;
	max-width: 840px !important;
	margin-top: 22px !important;
}
.vision-consent-list-compact label {
	background: #fff !important;
	border: 1px solid #dce4ef !important;
	border-radius: 14px !important;
	padding: 16px !important;
	font-size: .92rem !important;
	line-height: 1.35 !important;
}
.vision-review-summary {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	max-width: 840px !important;
}
.vision-wizard-actions {
	margin-top: auto !important;
	padding: 22px clamp(40px, 6vw, 104px) !important;
	margin-left: calc(-1 * clamp(40px, 6vw, 104px));
	margin-right: calc(-1 * clamp(40px, 6vw, 104px));
	border-top: 1px solid #e5e7eb !important;
	background: #fff !important;
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
}
.vision-wizard-actions [data-vision-wizard-back] { margin-right: auto !important; }
.vision-wizard-actions .vision-button {
	min-width: 178px;
	border-radius: 12px !important;
	min-height: 50px !important;
}
.vision-start-support-pane {
	position: relative;
	background: radial-gradient(circle at 50% 30%, #f8fbff 0%, #eaf4ff 54%, #e5f1ff 100%);
	padding: clamp(48px, 6vw, 88px) clamp(44px, 5vw, 72px);
	overflow: hidden;
	display: flex;
	align-items: center;
}
.vision-start-support-pane::before,
.vision-start-support-pane::after {
	content: "";
	position: absolute;
	border: 1px solid rgba(45,108,223,.12);
	border-radius: 50%;
	pointer-events: none;
}
.vision-start-support-pane::before { width: 520px; height: 520px; right: -160px; top: -180px; }
.vision-start-support-pane::after { width: 620px; height: 620px; right: -260px; bottom: -250px; }
.vision-start-support-inner { position: relative; z-index: 1; max-width: 520px; }
.vision-start-support-inner .vision-kicker {
	color: #2d6cdf;
	font-weight: 800;
	letter-spacing: .03em;
	font-size: .9rem;
	text-transform: uppercase;
	margin-bottom: 22px;
}
.vision-start-support-inner h2 {
	font-size: clamp(2.1rem, 3.5vw, 3.25rem);
	line-height: 1.03;
	letter-spacing: -0.055em;
	margin: 0 0 20px;
}
.vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
	font-size: 1.1rem;
	line-height: 1.5;
	color: #333941;
	margin-bottom: 30px;
}
.vision-start-summary-list { display: grid; gap: 10px; margin: 0 0 34px; }
.vision-start-summary-list div {
	display: grid;
	grid-template-columns: 40px 1fr 24px;
	align-items: center;
	gap: 12px;
	min-height: 58px;
	padding: 10px 16px;
	border-radius: 13px;
	background: rgba(255,255,255,.78);
	border: 1px solid transparent;
	box-shadow: 0 14px 30px rgba(35,63,102,.05);
}
.vision-start-summary-list span {
	width: 32px;
	height: 32px;
	border-radius: 999px;
	display: grid;
	place-items: center;
	background: #dbeafd;
	color: #2d6cdf;
	font-weight: 800;
}
.vision-start-summary-list strong { font-size: 1rem; }
.vision-start-summary-list em { font-style: normal; justify-self: end; color: #2d6cdf; font-size: 1.3rem; }
.vision-start-summary-list .is-current {
	border-color: #2d6cdf;
	box-shadow: 0 0 0 2px rgba(45,108,223,.07), 0 18px 36px rgba(45,108,223,.10);
}
.vision-start-summary-list .is-current span { background: #2d6cdf; color: #fff; }
.vision-start-trust {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: .98rem;
	color: #3b4654;
}
.vision-start-trust span {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	display: grid;
	place-items: center;
	background: #dbeafd;
	color: #2d6cdf;
}
@media (max-width: 1200px) {
	.vision-start-app { grid-template-columns: 1fr; min-height: 0; }
	.vision-start-support-pane { display: none; }
	.vision-start-form-pane { padding-left: 32px; padding-right: 32px; min-height: calc(100vh - 92px); }
	.vision-wizard-actions { margin-left: -32px; margin-right: -32px; padding-left: 32px !important; padding-right: 32px !important; }
}
@media (max-width: 760px) {
	.vision-start-progress { grid-template-columns: repeat(5, 1fr); overflow-x: auto; padding-bottom: 6px; }
	.vision-start-progress em { font-size: .7rem; }
	.vision-field-grid.vision-field-grid-large,
	.vision-consent-list.vision-consent-list-compact,
	.vision-review-summary,
	.vision-start-intro-cards { grid-template-columns: 1fr !important; }
	.vision-start-form-pane { padding: 26px 20px 0; }
	.vision-wizard-actions { margin-left: -20px; margin-right: -20px; padding: 18px 20px !important; }
	.vision-wizard-actions .vision-button { min-width: 0; flex: 1; }
}

/* v3.0.23 — Mockup-matched two-column Start VISION form */
body.tne-site .tne-page-content.tne-start-page-clean,
.tne-page-content.tne-start-page-clean {
	padding: 0 !important;
	background: #fff !important;
	overflow-x: hidden !important;
}
body.tne-site .tne-start-page-clean .tne-container,
.tne-start-page-clean .tne-container {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body .vision-wrap.vision-start-page.vision-start-wizard-wrap {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #050505 !important;
	background: #fff !important;
	overflow: hidden !important;
}
body form.vision-start-wizard,
body.tne-site form.vision-start-wizard,
.vision-start-wizard {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body .vision-start-app {
	display: grid !important;
	grid-template-columns: minmax(0, 59fr) minmax(420px, 41fr) !important;
	width: 100% !important;
	min-height: calc(100vh - 72px) !important;
	min-height: calc(100dvh - 72px) !important;
	background: #fff !important;
	border-top: 1px solid #e4e6ea !important;
	border-bottom: 1px solid #e4e6ea !important;
	overflow: hidden !important;
}
body.admin-bar .vision-start-app {
	min-height: calc(100vh - 104px) !important;
	min-height: calc(100dvh - 104px) !important;
}
body .vision-start-form-pane {
	min-width: 0 !important;
	padding: clamp(48px, 5.5vw, 64px) clamp(84px, 7.6vw, 156px) 0 clamp(84px, 6.65vw, 136px) !important;
	display: flex !important;
	flex-direction: column !important;
	background: #fff !important;
}
body .vision-start-progress {
	width: 100% !important;
	max-width: 916px !important;
	margin: 0 0 clamp(42px, 4.6vw, 58px) !important;
	padding: 0 !important;
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	align-items: start !important;
	gap: 0 !important;
	list-style: none !important;
}
body .vision-start-progress li {
	position: relative !important;
	display: grid !important;
	justify-items: center !important;
	gap: 11px !important;
	min-width: 0 !important;
	font-size: 15px !important;
	line-height: 1.16 !important;
	font-weight: 500 !important;
	color: #777d85 !important;
	text-align: center !important;
}
body .vision-start-progress li::before {
	content: "" !important;
	position: absolute !important;
	top: 18px !important;
	left: -50% !important;
	width: 100% !important;
	height: 1.5px !important;
	background: #cfd4da !important;
	z-index: 0 !important;
}
body .vision-start-progress li:first-child::before { display: none !important; }
body .vision-start-progress span {
	position: relative !important;
	z-index: 1 !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 999px !important;
	background: #fff !important;
	border: 1.5px solid #aeb5bd !important;
	display: grid !important;
	place-items: center !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #69707a !important;
	box-shadow: 0 0 0 0 transparent !important;
}
body .vision-start-progress em {
	font-style: normal !important;
	white-space: normal !important;
	letter-spacing: -0.015em !important;
}
body .vision-start-progress li.is-complete,
body .vision-start-progress li.is-active {
	color: #050505 !important;
	font-weight: 700 !important;
}
body .vision-start-progress li.is-complete::before,
body .vision-start-progress li.is-active::before { background: #050505 !important; }
body .vision-start-progress li.is-complete span {
	border-color: #050505 !important;
	color: #050505 !important;
	background: #fff !important;
}
body .vision-start-progress li.is-active span {
	background: #050505 !important;
	border-color: #050505 !important;
	color: #fff !important;
	box-shadow: 0 0 0 5px #fff, 0 0 0 7px #050505 !important;
}
body .vision-start-step-panel {
	width: 100% !important;
	max-width: 916px !important;
	min-height: 0 !important;
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
}
body .vision-start-step-panel .vision-wizard-step {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}
body .vision-start-step-panel .vision-wizard-step[hidden] { display: none !important; }
body .vision-start-step-panel .vision-section-eyebrow { display: none !important; }
body .vision-start-step-panel h2 {
	font-size: clamp(48px, 3.25vw, 56px) !important;
	line-height: 1.02 !important;
	letter-spacing: -0.065em !important;
	font-weight: 700 !important;
	max-width: 916px !important;
	margin: 0 0 18px !important;
	color: #050505 !important;
}
body .vision-start-step-panel .vision-lead,
body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
	font-size: 20px !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	max-width: 760px !important;
	margin: 0 0 28px !important;
	color: #313741 !important;
}
body .vision-field-grid.vision-field-grid-large {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 28px 48px !important;
	width: 100% !important;
	max-width: 916px !important;
	margin: 29px 0 0 !important;
}
body .vision-field-grid-large p { margin: 0 !important; }
body .vision-field-grid-large .vision-field-wide { grid-column: 1 / -1 !important; }
body .vision-field-grid-large label {
	display: block !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	font-weight: 700 !important;
	color: #24282f !important;
}
body .vision-field-grid-large input,
body .vision-field-grid-large select,
body .vision-field-grid-large textarea {
	width: 100% !important;
	max-width: none !important;
	min-height: 58px !important;
	margin-top: 10px !important;
	padding: 14px 22px !important;
	border: 1.5px solid #cfd3d8 !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #050505 !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	appearance: auto !important;
}
body .vision-field-grid-large input::placeholder,
body .vision-field-grid-large textarea::placeholder { color: #8a9098 !important; opacity: 1 !important; }
body .vision-field-grid-large textarea {
	min-height: 106px !important;
	resize: vertical !important;
}
body .vision-field-grid-large input:focus,
body .vision-field-grid-large select:focus,
body .vision-field-grid-large textarea:focus {
	outline: none !important;
	border-color: #2f6feb !important;
	box-shadow: 0 0 0 4px rgba(47, 111, 235, .14) !important;
}
body .vision-start-intro-cards {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: 760px !important;
	margin-top: 40px !important;
}
body .vision-start-intro-cards div {
	background: #fff !important;
	border: 1px solid #dde5f0 !important;
	border-radius: 14px !important;
	padding: 20px !important;
}
body .vision-start-intro-cards strong,
body .vision-start-intro-cards span { display: block !important; }
body .vision-start-intro-cards strong { font-size: 18px !important; margin-bottom: 6px !important; }
body .vision-start-intro-cards span { color: #596472 !important; font-size: 15px !important; line-height: 1.35 !important; }
body .vision-consent-list.vision-consent-list-compact {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: 916px !important;
	margin-top: 30px !important;
}
body .vision-consent-list-compact label {
	background: #fff !important;
	border: 1px solid #dce4ef !important;
	border-radius: 14px !important;
	padding: 18px !important;
	font-size: 16px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
}
body .vision-review-summary {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: 916px !important;
	margin-top: 30px !important;
}
body .vision-wizard-actions {
	margin-top: auto !important;
	margin-left: calc(-1 * clamp(84px, 6.65vw, 136px)) !important;
	margin-right: calc(-1 * clamp(84px, 7.6vw, 156px)) !important;
	padding: 29px clamp(84px, 7.6vw, 156px) 29px clamp(84px, 6.65vw, 136px) !important;
	min-height: 112px !important;
	border-top: 1px solid #e2e5e9 !important;
	background: #fff !important;
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
}
body .vision-wizard-actions [data-vision-wizard-back] {
	margin-right: auto !important;
	background: transparent !important;
	border-color: transparent !important;
	color: #050505 !important;
	box-shadow: none !important;
	min-width: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
body .vision-wizard-actions [data-vision-wizard-back]:hover,
body .vision-wizard-actions [data-vision-wizard-back]:focus {
	background: transparent !important;
	color: #050505 !important;
	text-decoration: underline !important;
	transform: none !important;
}
body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
	width: 220px !important;
	min-width: 220px !important;
	min-height: 62px !important;
	border-radius: 12px !important;
	background: #050505 !important;
	border: 1px solid #050505 !important;
	color: #fff !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}
body .vision-start-support-pane {
	position: relative !important;
	min-width: 0 !important;
	padding: clamp(96px, 10.8vh, 128px) clamp(70px, 5vw, 96px) 60px clamp(70px, 4.7vw, 82px) !important;
	background-color: #eaf4ff !important;
	background-image: radial-gradient(circle at 45% 20%, rgba(255,255,255,.92) 0%, rgba(255,255,255,.5) 32%, rgba(234,244,255,.98) 66%, #e6f1ff 100%) !important;
	display: flex !important;
	align-items: flex-start !important;
	overflow: hidden !important;
}
body .vision-start-support-pane::before,
body .vision-start-support-pane::after {
	content: "" !important;
	position: absolute !important;
	pointer-events: none !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: repeating-radial-gradient(circle, transparent 0 30px, rgba(47,111,235,.13) 31px 33px, transparent 34px 50px) !important;
}
body .vision-start-support-pane::before {
	width: 740px !important;
	height: 740px !important;
	right: -230px !important;
	top: -460px !important;
}
body .vision-start-support-pane::after {
	width: 860px !important;
	height: 860px !important;
	right: -390px !important;
	bottom: -470px !important;
}
body .vision-start-support-inner {
	position: relative !important;
	z-index: 1 !important;
	width: 100% !important;
	max-width: 470px !important;
}
body .vision-start-support-inner .vision-kicker {
	margin: 0 0 28px !important;
	color: #2f6feb !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	letter-spacing: .045em !important;
	text-transform: uppercase !important;
}
body .vision-start-support-inner h2 {
	margin: 0 0 26px !important;
	font-size: clamp(44px, 3.05vw, 56px) !important;
	line-height: 1.02 !important;
	letter-spacing: -0.06em !important;
	font-weight: 700 !important;
	color: #050505 !important;
}
body .vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
	margin: 0 0 38px !important;
	font-size: 20px !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	color: #333941 !important;
}
body .vision-start-summary-list {
	display: grid !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 0 66px !important;
}
body .vision-start-summary-list div {
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) 30px !important;
	align-items: center !important;
	gap: 14px !important;
	min-height: 70px !important;
	padding: 10px 22px !important;
	border-radius: 12px !important;
	background: rgba(255,255,255,.82) !important;
	border: 1.5px solid transparent !important;
	box-shadow: 0 14px 30px rgba(35,63,102,.045) !important;
	color: #2b313a !important;
}
body .vision-start-summary-list span {
	width: 40px !important;
	height: 40px !important;
	border-radius: 999px !important;
	display: grid !important;
	place-items: center !important;
	background: #dcecff !important;
	color: #2f6feb !important;
	font-size: 18px !important;
	font-weight: 800 !important;
}
body .vision-start-summary-list strong {
	font-size: 18px !important;
	line-height: 1.1 !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}
body .vision-start-summary-list em {
	justify-self: end !important;
	font-style: normal !important;
	font-size: 32px !important;
	line-height: 1 !important;
	font-weight: 400 !important;
	color: #2f6feb !important;
}
body .vision-start-summary-list .is-current {
	border-color: #2f6feb !important;
	box-shadow: 0 0 0 2px rgba(47,111,235,.08), 0 18px 36px rgba(47,111,235,.10) !important;
}
body .vision-start-summary-list .is-current span {
	background: #2f6feb !important;
	color: #fff !important;
}
body .vision-start-summary-list .is-complete span {
	background: #dcecff !important;
	color: #2f6feb !important;
}
body .vision-start-trust {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin: 0 !important;
	font-size: 18px !important;
	line-height: 1.25 !important;
	font-weight: 400 !important;
	color: #3b4654 !important;
}
body .vision-start-trust strong { font-weight: 800 !important; color: #2b313a !important; }
body .vision-start-trust .vision-trust-icon {
	width: 42px !important;
	height: 42px !important;
	border-radius: 999px !important;
	display: grid !important;
	place-items: center !important;
	flex: 0 0 42px !important;
	background: #dcecff !important;
	color: #2f6feb !important;
}
body .vision-start-trust svg { width: 23px !important; height: 23px !important; display: block !important; }
@media (max-width: 1200px) {
	body .vision-start-app { grid-template-columns: 1fr !important; min-height: 0 !important; }
	body.admin-bar .vision-start-app { min-height: 0 !important; }
	body .vision-start-support-pane { display: none !important; }
	body .vision-start-form-pane { min-height: calc(100vh - 72px) !important; padding-left: 42px !important; padding-right: 42px !important; }
	body .vision-wizard-actions { margin-left: -42px !important; margin-right: -42px !important; padding-left: 42px !important; padding-right: 42px !important; }
}
@media (max-width: 760px) {
	body .vision-start-form-pane { min-height: 0 !important; padding: 28px 20px 0 !important; }
	body .vision-start-progress { grid-template-columns: repeat(5, 82px) !important; overflow-x: auto !important; padding-bottom: 8px !important; margin-bottom: 34px !important; }
	body .vision-start-progress li { font-size: 13px !important; }
	body .vision-start-step-panel h2 { font-size: clamp(36px, 12vw, 46px) !important; }
	body .vision-start-step-panel .vision-lead,
	body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) { font-size: 17px !important; }
	body .vision-field-grid.vision-field-grid-large,
	body .vision-consent-list.vision-consent-list-compact,
	body .vision-review-summary,
	body .vision-start-intro-cards { grid-template-columns: 1fr !important; }
	body .vision-field-grid.vision-field-grid-large { gap: 18px !important; }
	body .vision-wizard-actions { margin-left: -20px !important; margin-right: -20px !important; padding: 18px 20px !important; min-height: 88px !important; }
	body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) { width: auto !important; min-width: 0 !important; flex: 1 1 auto !important; }
}


/* v3.0.24 — Desktop above-the-fold fit refinement */
@media (min-width: 1201px) and (max-height: 900px) {
	body .vision-start-form-pane {
		padding: 30px 56px 0 56px !important;
	}
	body .vision-start-progress {
		max-width: 860px !important;
		margin-bottom: 26px !important;
	}
	body .vision-start-progress li {
		gap: 8px !important;
		font-size: 14px !important;
	}
	body .vision-start-progress li::before { top: 16px !important; }
	body .vision-start-progress span {
		width: 34px !important;
		height: 34px !important;
		font-size: 15px !important;
	}
	body .vision-start-step-panel h2 {
		font-size: clamp(36px, 2.5vw, 44px) !important;
		margin-bottom: 10px !important;
	}
	body .vision-start-step-panel .vision-lead,
	body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
		font-size: 17px !important;
		line-height: 1.4 !important;
		max-width: 700px !important;
		margin-bottom: 18px !important;
	}
	body .vision-field-grid.vision-field-grid-large {
		gap: 16px 24px !important;
		margin-top: 20px !important;
	}
	body .vision-field-grid-large label {
		font-size: 14px !important;
	}
	body .vision-field-grid-large input,
	body .vision-field-grid-large select,
	body .vision-field-grid-large textarea {
		min-height: 48px !important;
		margin-top: 6px !important;
		padding: 10px 16px !important;
		font-size: 16px !important;
	}
	body .vision-field-grid-large textarea {
		min-height: 80px !important;
	}
	body .vision-start-intro-cards {
		max-width: 760px !important;
		gap: 12px !important;
		margin-top: 22px !important;
	}
	body .vision-start-intro-cards div {
		padding: 14px !important;
		border-radius: 12px !important;
	}
	body .vision-start-intro-cards strong {
		font-size: 16px !important;
		margin-bottom: 4px !important;
	}
	body .vision-start-intro-cards span {
		font-size: 13px !important;
		line-height: 1.3 !important;
	}
	body .vision-consent-list.vision-consent-list-compact,
	body .vision-review-summary {
		gap: 12px !important;
		margin-top: 18px !important;
	}
	body .vision-consent-list-compact label {
		padding: 14px !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
	}
	body .vision-wizard-actions {
		margin-left: -56px !important;
		margin-right: -56px !important;
		padding: 16px 56px !important;
		min-height: 78px !important;
		gap: 12px !important;
	}
	body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
		width: 190px !important;
		min-width: 190px !important;
		min-height: 52px !important;
		font-size: 16px !important;
	}
	body .vision-start-support-pane {
		padding: 54px 56px 28px 56px !important;
	}
	body .vision-start-support-inner { max-width: 448px !important; }
	body .vision-start-support-inner .vision-kicker {
		margin-bottom: 16px !important;
		font-size: 14px !important;
	}
	body .vision-start-support-inner h2 {
		margin-bottom: 16px !important;
		font-size: clamp(36px, 2.55vw, 44px) !important;
	}
	body .vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
		margin-bottom: 22px !important;
		font-size: 17px !important;
		line-height: 1.4 !important;
	}
	body .vision-start-summary-list {
		gap: 10px !important;
		margin-bottom: 24px !important;
	}
	body .vision-start-summary-list div {
		grid-template-columns: 36px minmax(0, 1fr) 24px !important;
		gap: 12px !important;
		min-height: 58px !important;
		padding: 8px 16px !important;
	}
	body .vision-start-summary-list span {
		width: 36px !important;
		height: 36px !important;
		font-size: 16px !important;
	}
	body .vision-start-summary-list strong { font-size: 16px !important; }
	body .vision-start-summary-list em { font-size: 26px !important; }
	body .vision-start-trust {
		gap: 10px !important;
		font-size: 15px !important;
	}
	body .vision-start-trust .vision-trust-icon {
		width: 36px !important;
		height: 36px !important;
		flex-basis: 36px !important;
	}
	body .vision-start-trust svg {
		width: 20px !important;
		height: 20px !important;
	}
}

@media (min-width: 1201px) and (max-height: 820px) {
	body .vision-start-form-pane {
		padding: 24px 44px 0 44px !important;
	}
	body .vision-start-progress {
		margin-bottom: 18px !important;
	}
	body .vision-start-progress li {
		gap: 6px !important;
		font-size: 13px !important;
	}
	body .vision-start-progress span {
		width: 30px !important;
		height: 30px !important;
		font-size: 14px !important;
	}
	body .vision-start-progress li::before { top: 14px !important; }
	body .vision-start-step-panel h2 {
		font-size: clamp(32px, 2.2vw, 40px) !important;
		margin-bottom: 8px !important;
	}
	body .vision-start-step-panel .vision-lead,
	body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
		font-size: 15px !important;
		line-height: 1.35 !important;
		margin-bottom: 14px !important;
	}
	body .vision-field-grid.vision-field-grid-large {
		gap: 12px 18px !important;
		margin-top: 16px !important;
	}
	body .vision-field-grid-large label {
		font-size: 13px !important;
	}
	body .vision-field-grid-large input,
	body .vision-field-grid-large select,
	body .vision-field-grid-large textarea {
		min-height: 44px !important;
		margin-top: 5px !important;
		padding: 8px 14px !important;
		font-size: 15px !important;
	}
	body .vision-field-grid-large textarea {
		min-height: 68px !important;
	}
	body .vision-start-intro-cards {
		gap: 10px !important;
		margin-top: 16px !important;
	}
	body .vision-start-intro-cards div {
		padding: 12px !important;
	}
	body .vision-start-intro-cards strong {
		font-size: 15px !important;
	}
	body .vision-start-intro-cards span {
		font-size: 12px !important;
	}
	body .vision-consent-list.vision-consent-list-compact,
	body .vision-review-summary {
		gap: 10px !important;
		margin-top: 14px !important;
	}
	body .vision-consent-list-compact label {
		padding: 12px !important;
		font-size: 13px !important;
	}
	body .vision-wizard-actions {
		margin-left: -44px !important;
		margin-right: -44px !important;
		padding: 12px 44px !important;
		min-height: 68px !important;
		position: sticky !important;
		bottom: 0 !important;
		z-index: 3 !important;
	}
	body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
		width: 170px !important;
		min-width: 170px !important;
		min-height: 48px !important;
	}
	body .vision-start-support-pane {
		padding: 44px 44px 22px 44px !important;
	}
	body .vision-start-support-inner .vision-kicker {
		margin-bottom: 12px !important;
		font-size: 13px !important;
	}
	body .vision-start-support-inner h2 {
		margin-bottom: 14px !important;
		font-size: clamp(32px, 2.3vw, 40px) !important;
	}
	body .vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
		margin-bottom: 18px !important;
		font-size: 15px !important;
		line-height: 1.35 !important;
	}
	body .vision-start-summary-list {
		gap: 8px !important;
		margin-bottom: 18px !important;
	}
	body .vision-start-summary-list div {
		min-height: 50px !important;
		padding: 8px 14px !important;
		grid-template-columns: 32px minmax(0, 1fr) 20px !important;
	}
	body .vision-start-summary-list span {
		width: 32px !important;
		height: 32px !important;
		font-size: 15px !important;
	}
	body .vision-start-summary-list strong {
		font-size: 15px !important;
	}
	body .vision-start-summary-list em { font-size: 22px !important; }
	body .vision-start-trust {
		font-size: 14px !important;
		gap: 8px !important;
	}
	body .vision-start-trust .vision-trust-icon {
		width: 32px !important;
		height: 32px !important;
		flex-basis: 32px !important;
	}
	body .vision-start-trust svg {
		width: 18px !important;
		height: 18px !important;
	}
}


/* v3.0.25 — Wizard button visibility hardening */
body .vision-start-app [hidden],
body .vision-start-app button[hidden],
body .vision-start-app .vision-button[hidden],
body .vision-wizard-actions [hidden],
body .vision-wizard-actions .vision-button[hidden] {
	display: none !important;
}


/* v3.0.26 — Fixed-header offset for Start VISION page */
body {
	--vision-start-header-offset: 78px;
}
body.admin-bar {
	--vision-start-header-offset: 110px;
}
body .vision-wrap.vision-start-page.vision-start-wizard-wrap {
	padding-top: var(--vision-start-header-offset) !important;
	box-sizing: border-box !important;
}
body .vision-start-app {
	min-height: calc(100vh - var(--vision-start-header-offset)) !important;
	min-height: calc(100dvh - var(--vision-start-header-offset)) !important;
}
@media (max-width: 1200px) {
	body {
		--vision-start-header-offset: 70px;
	}
	body.admin-bar {
		--vision-start-header-offset: 102px;
	}
}
@media (max-width: 760px) {
	body {
		--vision-start-header-offset: 64px;
	}
	body.admin-bar {
		--vision-start-header-offset: 96px;
	}
}


/* v3.0.27 — Exact 29eleven theme match */
body.tne-site .vision-wrap.vision-start-page.vision-start-wizard-wrap,
body.tne-site .vision-start-app,
body.tne-site .vision-start-form-pane,
body.tne-site .vision-start-support-pane,
body.tne-site .vision-field-grid-large input,
body.tne-site .vision-field-grid-large select,
body.tne-site .vision-field-grid-large textarea,
body.tne-site .vision-button,
body.tne-site .vision-start-step-panel,
body.tne-site .vision-start-support-inner {
	font-family: 'IBM Plex Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
body.tne-site .vision-start-app {
	grid-template-columns: minmax(0, 56fr) minmax(380px, 44fr) !important;
	background: var(--tne-white, #fff) !important;
	border-top: 1px solid rgba(5,5,5,.08) !important;
	border-bottom: 1px solid rgba(5,5,5,.08) !important;
}
body.tne-site .vision-start-form-pane {
	padding: clamp(36px, 4.2vw, 54px) clamp(52px, 5vw, 84px) 0 clamp(52px, 5vw, 84px) !important;
	background: var(--tne-white, #fff) !important;
}
body.tne-site .vision-start-step-panel { max-width: 860px !important; }
body.tne-site .vision-start-step-panel .vision-section-eyebrow {
	display: block !important;
	margin: 0 0 14px !important;
	text-transform: uppercase !important;
	letter-spacing: .12em !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	color: var(--tne-orange, #ff7a1a) !important;
}
body.tne-site .vision-start-step-panel h2 {
	font-size: clamp(40px, 4.6vw, 64px) !important;
	line-height: 1 !important;
	letter-spacing: -0.058em !important;
	font-weight: 800 !important;
	margin: 0 0 18px !important;
	color: var(--tne-ink, #050505) !important;
	max-width: 760px !important;
}
body.tne-site .vision-start-step-panel .vision-lead,
body.tne-site .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
	font-size: clamp(18px, 1.6vw, 22px) !important;
	line-height: 1.42 !important;
	font-weight: 400 !important;
	color: rgba(5,5,5,.74) !important;
	max-width: 720px !important;
	margin: 0 0 24px !important;
}
body.tne-site .vision-start-intro-cards { display: none !important; }
body.tne-site .vision-field-grid.vision-field-grid-large {
	max-width: 860px !important;
	gap: 24px 24px !important;
	margin-top: 16px !important;
}
body.tne-site .vision-field-grid-large label {
	font-size: 15px !important;
	line-height: 1.25 !important;
	font-weight: 700 !important;
	color: var(--tne-ink, #050505) !important;
}
body.tne-site .vision-field-grid-large input,
body.tne-site .vision-field-grid-large select,
body.tne-site .vision-field-grid-large textarea {
	min-height: 54px !important;
	margin-top: 8px !important;
	padding: 14px 16px !important;
	border: 1.5px solid var(--tne-line, #dde5f0) !important;
	border-radius: 16px !important;
	background: #fff !important;
	color: var(--tne-ink, #050505) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	box-shadow: none !important;
	appearance: auto !important;
}
body.tne-site .vision-field-grid-large textarea {
	min-height: 124px !important;
	resize: vertical !important;
}
body.tne-site .vision-field-grid-large input::placeholder,
body.tne-site .vision-field-grid-large textarea::placeholder {
	color: rgba(5,5,5,.42) !important;
}
body.tne-site .vision-field-grid-large input:focus,
body.tne-site .vision-field-grid-large select:focus,
body.tne-site .vision-field-grid-large textarea:focus {
	outline: none !important;
	border-color: var(--tne-blue, #94bdf6) !important;
	box-shadow: 0 0 0 4px rgba(148,189,246,.22) !important;
}
body.tne-site .vision-consent-list.vision-consent-list-compact,
body.tne-site .vision-review-summary {
	max-width: 860px !important;
	gap: 14px !important;
	margin-top: 20px !important;
}
body.tne-site .vision-consent-list-compact label,
body.tne-site .vision-review-summary > * {
	background: #fff !important;
	border: 1px solid rgba(5,5,5,.08) !important;
	border-radius: 24px !important;
	padding: 18px 20px !important;
	box-shadow: 0 20px 60px rgba(5,5,5,.05) !important;
}
body.tne-site .vision-wizard-actions {
	margin-left: -84px !important;
	margin-right: -84px !important;
	padding: 20px 84px !important;
	min-height: 92px !important;
	border-top: 1px solid rgba(5,5,5,.08) !important;
	background: #fff !important;
	gap: 14px !important;
}
body.tne-site .vision-wizard-actions [data-vision-wizard-back] {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: var(--tne-ink, #050505) !important;
}
body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 50px !important;
	width: auto !important;
	min-width: 196px !important;
	padding: 14px 25px !important;
	border-radius: 999px !important;
	background: var(--tne-ink, #050505) !important;
	color: #fff !important;
	border: 2px solid var(--tne-ink, #050505) !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	box-shadow: none !important;
}
body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]):hover,
body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]):focus {
	background: #222 !important;
	border-color: #222 !important;
	transform: translateY(-1px) !important;
}
body.tne-site .vision-start-support-pane {
	padding: clamp(44px, 5vw, 62px) clamp(42px, 4vw, 58px) 32px !important;
	background: var(--tne-soft-blue, #eaf3ff) !important;
	background-image: none !important;
}
body.tne-site .vision-start-support-pane::before,
body.tne-site .vision-start-support-pane::after {
	background: repeating-radial-gradient(circle, transparent 0 34px, rgba(148,189,246,.18) 35px 37px, transparent 38px 58px) !important;
	opacity: .65 !important;
}
body.tne-site .vision-start-support-inner {
	max-width: 470px !important;
}
body.tne-site .vision-start-support-inner .vision-kicker {
	margin: 0 0 16px !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase !important;
	color: var(--tne-orange, #ff7a1a) !important;
}
body.tne-site .vision-start-support-inner h2 {
	margin: 0 0 18px !important;
	font-size: clamp(34px, 3.5vw, 52px) !important;
	line-height: 1.02 !important;
	letter-spacing: -0.055em !important;
	font-weight: 800 !important;
	color: var(--tne-ink, #050505) !important;
}
body.tne-site .vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
	margin: 0 0 28px !important;
	font-size: 18px !important;
	line-height: 1.42 !important;
	color: rgba(5,5,5,.74) !important;
}
body.tne-site .vision-start-summary-list {
	gap: 12px !important;
	margin: 0 0 28px !important;
}
body.tne-site .vision-start-summary-list div {
	min-height: 62px !important;
	padding: 12px 16px !important;
	grid-template-columns: 36px minmax(0,1fr) 18px !important;
	gap: 14px !important;
	background: rgba(255,255,255,.86) !important;
	border: 1px solid rgba(5,5,5,.08) !important;
	border-radius: 22px !important;
	box-shadow: none !important;
}
body.tne-site .vision-start-summary-list span {
	width: 36px !important;
	height: 36px !important;
	background: #fff !important;
	color: var(--tne-ink, #050505) !important;
	border: 1px solid rgba(5,5,5,.10) !important;
	font-size: 16px !important;
	font-weight: 800 !important;
}
body.tne-site .vision-start-summary-list strong {
	font-size: 17px !important;
	line-height: 1.08 !important;
	font-weight: 700 !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
}
body.tne-site .vision-start-summary-list em {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: var(--tne-orange, #ff7a1a) !important;
}
body.tne-site .vision-start-summary-list .is-current {
	border-color: rgba(5,5,5,.18) !important;
	box-shadow: 0 20px 60px rgba(5,5,5,.05) !important;
}
body.tne-site .vision-start-summary-list .is-current span {
	background: var(--tne-ink, #050505) !important;
	border-color: var(--tne-ink, #050505) !important;
	color: #fff !important;
}
body.tne-site .vision-start-trust {
	gap: 12px !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	color: rgba(5,5,5,.72) !important;
}
body.tne-site .vision-start-trust strong {
	color: var(--tne-ink, #050505) !important;
	font-weight: 800 !important;
}
body.tne-site .vision-start-trust .vision-trust-icon {
	background: #fff !important;
	border: 1px solid rgba(5,5,5,.08) !important;
	color: var(--tne-orange, #ff7a1a) !important;
}
@media (min-width: 1201px) {
	body.tne-site .vision-start-progress { display: none !important; }
}
@media (max-width: 1200px) {
	body.tne-site .vision-start-form-pane {
		padding-left: 42px !important;
		padding-right: 42px !important;
	}
	body.tne-site .vision-start-progress {
		display: grid !important;
		margin-bottom: 28px !important;
	}
	body.tne-site .vision-start-progress li {
		font-size: 13px !important;
		color: rgba(5,5,5,.58) !important;
	}
	body.tne-site .vision-start-progress span {
		border-color: rgba(5,5,5,.18) !important;
		color: var(--tne-ink, #050505) !important;
	}
	body.tne-site .vision-start-progress li.is-active,
	body.tne-site .vision-start-progress li.is-complete {
		color: var(--tne-ink, #050505) !important;
	}
	body.tne-site .vision-start-progress li.is-active span {
		background: var(--tne-ink, #050505) !important;
		border-color: var(--tne-ink, #050505) !important;
		box-shadow: 0 0 0 5px #fff, 0 0 0 6px rgba(5,5,5,.12) !important;
	}
	body.tne-site .vision-start-progress li.is-complete span {
		border-color: var(--tne-orange, #ff7a1a) !important;
		color: var(--tne-orange, #ff7a1a) !important;
	}
	body.tne-site .vision-wizard-actions {
		margin-left: -42px !important;
		margin-right: -42px !important;
		padding-left: 42px !important;
		padding-right: 42px !important;
	}
}
@media (max-width: 760px) {
	body.tne-site .vision-start-form-pane {
		padding: 24px 20px 0 !important;
	}
	body.tne-site .vision-start-step-panel .vision-section-eyebrow {
		margin-bottom: 10px !important;
		font-size: 12px !important;
	}
	body.tne-site .vision-start-step-panel h2 {
		font-size: clamp(34px, 10vw, 48px) !important;
	}
	body.tne-site .vision-start-step-panel .vision-lead,
	body.tne-site .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
		font-size: 17px !important;
	}
	body.tne-site .vision-consent-list.vision-consent-list-compact,
	body.tne-site .vision-review-summary,
	body.tne-site .vision-field-grid.vision-field-grid-large {
		gap: 16px !important;
	}
	body.tne-site .vision-wizard-actions {
		margin-left: -20px !important;
		margin-right: -20px !important;
		padding: 16px 20px !important;
		min-height: 80px !important;
	}
	body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
		min-width: 0 !important;
		flex: 1 1 auto !important;
	}
}


/* v3.0.28 — Theme alignment correction */
body.tne-site .vision-wrap.vision-start-page.vision-start-wizard-wrap {
	padding-top: 0 !important;
}
body.tne-site .vision-start-app {
	min-height: calc(100vh - 70px) !important;
	min-height: calc(100dvh - 70px) !important;
}
body.tne-site.admin-bar .vision-start-app,
body.admin-bar.tne-site .vision-start-app {
	min-height: calc(100vh - 102px) !important;
	min-height: calc(100dvh - 102px) !important;
}
body.tne-site .vision-start-form-pane,
body.tne-site .vision-start-support-pane {
	padding-top: clamp(44px, 5.2vw, 68px) !important;
}
body.tne-site .vision-start-form-pane {
	padding-left: max(40px, calc((100vw - var(--tne-max, 1180px)) / 2)) !important;
	padding-right: clamp(44px, 5vw, 76px) !important;
}
body.tne-site .vision-start-support-pane {
	padding-left: clamp(44px, 5vw, 76px) !important;
	padding-right: max(40px, calc((100vw - var(--tne-max, 1180px)) / 2)) !important;
}
body.tne-site .vision-start-step-panel,
body.tne-site .vision-start-support-inner {
	margin-top: 0 !important;
}
body.tne-site .vision-start-step-panel h2,
body.tne-site .vision-start-support-inner h2 {
	margin-top: 0 !important;
}
body.tne-site .vision-wizard-actions {
	margin-left: calc(-1 * max(40px, calc((100vw - var(--tne-max, 1180px)) / 2))) !important;
	margin-right: calc(-1 * clamp(44px, 5vw, 76px)) !important;
	padding-left: max(40px, calc((100vw - var(--tne-max, 1180px)) / 2)) !important;
	padding-right: clamp(44px, 5vw, 76px) !important;
}
@media (min-width: 1201px) and (max-height: 900px) {
	body.tne-site .vision-start-form-pane,
	body.tne-site .vision-start-support-pane {
		padding-top: 38px !important;
	}
	body.tne-site .vision-start-step-panel h2,
	body.tne-site .vision-start-support-inner h2 {
		font-size: clamp(38px, 3.4vw, 54px) !important;
	}
	body.tne-site .vision-start-support-inner > p:not(.vision-kicker):not(.vision-start-trust) {
		margin-bottom: 22px !important;
	}
	body.tne-site .vision-start-summary-list {
		gap: 10px !important;
	}
	body.tne-site .vision-start-summary-list div {
		min-height: 56px !important;
	}
}
@media (max-width: 1200px) {
	body.tne-site .vision-wrap.vision-start-page.vision-start-wizard-wrap {
		padding-top: 0 !important;
	}
	body.tne-site .vision-start-form-pane {
		padding-left: 42px !important;
		padding-right: 42px !important;
	}
	body.tne-site .vision-wizard-actions {
		margin-left: -42px !important;
		margin-right: -42px !important;
		padding-left: 42px !important;
		padding-right: 42px !important;
	}
}
@media (max-width: 760px) {
	body.tne-site .vision-start-form-pane {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	body.tne-site .vision-wizard-actions {
		margin-left: -20px !important;
		margin-right: -20px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}


/* v3.0.29 — Start-page wrapper hard reset
   The theme page template supplies the nav/header. The plugin surface must begin immediately below it. */
html body.tne-site .tne-main > .tne-page-content.tne-start-page-clean,
html body.tne-site .tne-page-content.tne-start-page-clean,
html body .tne-page-content.tne-start-page-clean {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	background: #fff !important;
}
html body.tne-site .tne-start-page-clean > .tne-container,
html body .tne-start-page-clean > .tne-container,
html body.tne-site .tne-page-content.tne-start-page-clean .tne-container,
html body .tne-page-content.tne-start-page-clean .tne-container {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
html body.tne-site .vision-wrap.vision-start-page.vision-start-wizard-wrap,
html body .vision-wrap.vision-start-page.vision-start-wizard-wrap {
	padding-top: 0 !important;
	margin-top: 0 !important;
}
html body.tne-site .vision-start-app,
html body .vision-start-app {
	margin-top: 0 !important;
}
@media (min-width: 1201px) {
	html body.tne-site .vision-start-app,
	html body .vision-start-app {
		min-height: calc(100vh - 70px) !important;
		min-height: calc(100dvh - 70px) !important;
	}
}
@media (min-width: 1201px) and (max-height: 900px) {
	html body.tne-site .vision-start-form-pane,
	html body.tne-site .vision-start-support-pane,
	html body .vision-start-form-pane,
	html body .vision-start-support-pane {
		padding-top: 34px !important;
	}
}


/* v3.0.30 — Revert Start VISION to a calm single-column layout
   Keep the 29eleven theme styling, remove the two-panel split, and let the plugin own a centered form surface. */
html body.tne-site .tne-page-content.tne-start-page-clean,
html body .tne-page-content.tne-start-page-clean {
	background: #fff !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

html body.tne-site .vision-start-app,
html body .vision-start-app {
	display: block !important;
	grid-template-columns: none !important;
	width: 100% !important;
	max-width: none !important;
	min-height: auto !important;
	background: #fff !important;
	border-top: 1px solid rgba(5,5,5,.08) !important;
	border-bottom: 0 !important;
	overflow: visible !important;
}

html body.tne-site .vision-start-support-pane,
html body .vision-start-support-pane {
	display: none !important;
}

html body.tne-site .vision-start-form-pane,
html body .vision-start-form-pane {
	width: min(var(--tne-max, 1180px), calc(100% - 40px)) !important;
	max-width: var(--tne-max, 1180px) !important;
	min-height: auto !important;
	margin: 0 auto !important;
	padding: clamp(46px, 5vw, 72px) 0 clamp(54px, 6vw, 86px) !important;
	display: block !important;
	background: #fff !important;
}

html body.tne-site .vision-start-progress,
html body .vision-start-progress {
	display: grid !important;
	width: 100% !important;
	max-width: 940px !important;
	margin: 0 auto clamp(44px, 5vw, 66px) !important;
	padding: 0 !important;
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	align-items: start !important;
	gap: 0 !important;
	list-style: none !important;
}

html body.tne-site .vision-start-progress li,
html body .vision-start-progress li {
	position: relative !important;
	display: grid !important;
	justify-items: center !important;
	gap: 10px !important;
	min-width: 0 !important;
	font-size: 14px !important;
	line-height: 1.15 !important;
	font-weight: 600 !important;
	color: rgba(5,5,5,.54) !important;
	text-align: center !important;
}

html body.tne-site .vision-start-progress li::before,
html body .vision-start-progress li::before {
	content: "" !important;
	position: absolute !important;
	top: 17px !important;
	left: -50% !important;
	width: 100% !important;
	height: 1.5px !important;
	background: rgba(5,5,5,.14) !important;
	z-index: 0 !important;
}

html body.tne-site .vision-start-progress li:first-child::before,
html body .vision-start-progress li:first-child::before { display: none !important; }

html body.tne-site .vision-start-progress span,
html body .vision-start-progress span {
	position: relative !important;
	z-index: 1 !important;
	width: 36px !important;
	height: 36px !important;
	border-radius: 999px !important;
	display: grid !important;
	place-items: center !important;
	background: #fff !important;
	border: 1.5px solid rgba(5,5,5,.18) !important;
	color: var(--tne-ink, #050505) !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	box-shadow: none !important;
}

html body.tne-site .vision-start-progress em,
html body .vision-start-progress em {
	font-style: normal !important;
	white-space: normal !important;
	letter-spacing: -0.01em !important;
}

html body.tne-site .vision-start-progress li.is-active,
html body.tne-site .vision-start-progress li.is-complete,
html body .vision-start-progress li.is-active,
html body .vision-start-progress li.is-complete {
	color: var(--tne-ink, #050505) !important;
	font-weight: 700 !important;
}

html body.tne-site .vision-start-progress li.is-complete::before,
html body.tne-site .vision-start-progress li.is-active::before,
html body .vision-start-progress li.is-complete::before,
html body .vision-start-progress li.is-active::before {
	background: rgba(5,5,5,.28) !important;
}

html body.tne-site .vision-start-progress li.is-active span,
html body .vision-start-progress li.is-active span {
	background: var(--tne-ink, #050505) !important;
	border-color: var(--tne-ink, #050505) !important;
	color: #fff !important;
	box-shadow: 0 0 0 5px #fff, 0 0 0 6px rgba(5,5,5,.14) !important;
}

html body.tne-site .vision-start-progress li.is-complete span,
html body .vision-start-progress li.is-complete span {
	border-color: var(--tne-orange, #ff7a1a) !important;
	color: var(--tne-orange, #ff7a1a) !important;
	background: #fff !important;
}

html body.tne-site .vision-start-step-panel,
html body .vision-start-step-panel {
	width: 100% !important;
	max-width: 940px !important;
	margin: 0 auto !important;
	min-height: 0 !important;
	display: block !important;
}

html body.tne-site .vision-start-step-panel .vision-wizard-step,
html body .vision-start-step-panel .vision-wizard-step {
	width: 100% !important;
	min-width: 0 !important;
}

html body.tne-site .vision-start-step-panel .vision-wizard-step[hidden],
html body .vision-start-step-panel .vision-wizard-step[hidden] {
	display: none !important;
}

html body.tne-site .vision-start-step-panel .vision-section-eyebrow,
html body .vision-start-step-panel .vision-section-eyebrow {
	display: none !important;
}

html body.tne-site .vision-start-step-panel h2,
html body .vision-start-step-panel h2 {
	margin: 0 0 18px !important;
	max-width: 780px !important;
	font-size: clamp(44px, 5.2vw, 68px) !important;
	line-height: .98 !important;
	letter-spacing: -0.065em !important;
	font-weight: 800 !important;
	color: var(--tne-ink, #050505) !important;
}

html body.tne-site .vision-start-step-panel .vision-lead,
html body.tne-site .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow),
html body .vision-start-step-panel .vision-lead,
html body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
	max-width: 760px !important;
	margin: 0 0 30px !important;
	font-size: clamp(18px, 1.75vw, 23px) !important;
	line-height: 1.42 !important;
	font-weight: 400 !important;
	color: rgba(5,5,5,.74) !important;
}

html body.tne-site .vision-start-intro-cards,
html body .vision-start-intro-cards {
	display: none !important;
}

html body.tne-site .vision-field-grid.vision-field-grid-large,
html body .vision-field-grid.vision-field-large,
html body .vision-field-grid.vision-field-grid-large {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 24px !important;
	width: 100% !important;
	max-width: 940px !important;
	margin: 28px 0 0 !important;
}

html body.tne-site .vision-field-grid-large .vision-field-wide,
html body .vision-field-grid-large .vision-field-wide {
	grid-column: 1 / -1 !important;
}

html body.tne-site .vision-field-grid-large label,
html body .vision-field-grid-large label {
	display: block !important;
	font-size: 15px !important;
	line-height: 1.25 !important;
	font-weight: 700 !important;
	color: var(--tne-ink, #050505) !important;
}

html body.tne-site .vision-field-grid-large input,
html body.tne-site .vision-field-grid-large select,
html body.tne-site .vision-field-grid-large textarea,
html body .vision-field-grid-large input,
html body .vision-field-grid-large select,
html body .vision-field-grid-large textarea {
	width: 100% !important;
	max-width: none !important;
	min-height: 54px !important;
	margin-top: 8px !important;
	padding: 14px 16px !important;
	border: 1.5px solid var(--tne-line, #dde5f0) !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--tne-ink, #050505) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	font-family: 'IBM Plex Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
	appearance: auto !important;
}

html body.tne-site .vision-field-grid-large textarea,
html body .vision-field-grid-large textarea {
	min-height: 124px !important;
	resize: vertical !important;
}

html body.tne-site .vision-field-grid-large input:focus,
html body.tne-site .vision-field-grid-large select:focus,
html body.tne-site .vision-field-grid-large textarea:focus,
html body .vision-field-grid-large input:focus,
html body .vision-field-grid-large select:focus,
html body .vision-field-grid-large textarea:focus {
	outline: none !important;
	border-color: var(--tne-blue, #94bdf6) !important;
	box-shadow: 0 0 0 4px rgba(148,189,246,.22) !important;
}

html body.tne-site .vision-consent-list.vision-consent-list-compact,
html body .vision-consent-list.vision-consent-list-compact,
html body.tne-site .vision-review-summary,
html body .vision-review-summary {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: 940px !important;
	margin-top: 28px !important;
}

html body.tne-site .vision-consent-list-compact label,
html body .vision-consent-list-compact label {
	background: #fff !important;
	border: 1px solid rgba(5,5,5,.08) !important;
	border-radius: 24px !important;
	padding: 20px !important;
	font-size: 16px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
	box-shadow: 0 20px 60px rgba(5,5,5,.04) !important;
}

html body.tne-site .vision-wizard-actions,
html body .vision-wizard-actions {
	position: static !important;
	width: 100% !important;
	max-width: 940px !important;
	min-height: 0 !important;
	margin: clamp(34px, 4vw, 50px) auto 0 !important;
	padding: 24px 0 0 !important;
	border-top: 1px solid rgba(5,5,5,.10) !important;
	background: transparent !important;
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
}

html body.tne-site .vision-wizard-actions [data-vision-wizard-back],
html body .vision-wizard-actions [data-vision-wizard-back] {
	margin-right: auto !important;
	background: transparent !important;
	border-color: transparent !important;
	color: var(--tne-ink, #050505) !important;
	box-shadow: none !important;
	min-width: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
}

html body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]),
html body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 196px !important;
	min-height: 50px !important;
	padding: 14px 25px !important;
	border-radius: 999px !important;
	background: var(--tne-ink, #050505) !important;
	border: 2px solid var(--tne-ink, #050505) !important;
	color: #fff !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	box-shadow: none !important;
}

html body.tne-site .vision-start-app [hidden],
html body.tne-site .vision-start-app button[hidden],
html body.tne-site .vision-start-app .vision-button[hidden],
html body .vision-start-app [hidden],
html body .vision-start-app button[hidden],
html body .vision-start-app .vision-button[hidden] {
	display: none !important;
}

@media (max-width: 760px) {
	html body.tne-site .vision-start-form-pane,
	html body .vision-start-form-pane {
		width: min(100% - 26px, var(--tne-max, 1180px)) !important;
		padding: 34px 0 48px !important;
	}
	html body.tne-site .vision-start-progress,
	html body .vision-start-progress {
		grid-template-columns: repeat(5, 78px) !important;
		overflow-x: auto !important;
		justify-content: start !important;
		margin-bottom: 34px !important;
		padding-bottom: 6px !important;
	}
	html body.tne-site .vision-start-progress li,
	html body .vision-start-progress li {
		font-size: 12px !important;
	}
	html body.tne-site .vision-start-progress span,
	html body .vision-start-progress span {
		width: 32px !important;
		height: 32px !important;
		font-size: 14px !important;
	}
	html body.tne-site .vision-start-progress li::before,
	html body .vision-start-progress li::before {
		top: 15px !important;
	}
	html body.tne-site .vision-start-step-panel h2,
	html body .vision-start-step-panel h2 {
		font-size: clamp(34px, 11vw, 48px) !important;
	}
	html body.tne-site .vision-start-step-panel .vision-lead,
	html body.tne-site .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow),
	html body .vision-start-step-panel .vision-lead,
	html body .vision-start-step-panel .vision-wizard-step > p:not(.vision-section-eyebrow) {
		font-size: 17px !important;
	}
	html body.tne-site .vision-field-grid.vision-field-grid-large,
	html body .vision-field-grid.vision-field-grid-large,
	html body.tne-site .vision-consent-list.vision-consent-list-compact,
	html body .vision-consent-list.vision-consent-list-compact,
	html body.tne-site .vision-review-summary,
	html body .vision-review-summary {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
	html body.tne-site .vision-wizard-actions,
	html body .vision-wizard-actions {
		padding-top: 18px !important;
	}
	html body.tne-site .vision-wizard-actions .vision-button:not([data-vision-wizard-back]),
	html body .vision-wizard-actions .vision-button:not([data-vision-wizard-back]) {
		min-width: 0 !important;
		flex: 1 1 auto !important;
	}
}


/* v3.0.32 — Match stepper width to form width */
html body.tne-site .vision-start-progress,
html body .vision-start-progress {
	max-width: var(--tne-max, 1180px) !important;
	width: min(var(--tne-max, 1180px), calc(100% - 40px)) !important;
}
@media (max-width: 760px) {
	html body.tne-site .vision-start-progress,
	html body .vision-start-progress {
		width: 100% !important;
		max-width: 100% !important;
	}
}


/* v3.0.34 — Start page background set to #eaf3ff */
html body.tne-site .vision-wrap.vision-start-page.vision-start-wizard-wrap,
html body .vision-wrap.vision-start-page.vision-start-wizard-wrap,
html body.tne-site .vision-start-app,
html body .vision-start-app,
html body.tne-site .vision-start-form-pane,
html body .vision-start-form-pane {
	background: #eaf3ff !important;
}
html body.tne-site .vision-wizard-actions,
html body .vision-wizard-actions {
	background: transparent !important;
}
