.afcalc {
	--af-green: #035d3c;
	--af-green-dark: #004a3f;
	--af-green-soft: #edf6f1;
	--af-lime: #c4e325;
	--af-yellow: #f8c956;
	--af-text: #3d3d3d;
	--af-muted: #66756d;
	--af-line: rgba(3, 93, 60, 0.14);
	--af-surface: #ffffff;
	--af-surface-soft: #f7faf8;
	--af-danger: #a62e2e;
	--af-danger-soft: #fdeceb;
	--af-success: #087044;
	--af-success-soft: #ecf8f0;
	--af-warning: #b27b00;
	--af-warning-soft: #fff7dd;
	--af-info: #2f6ebd;
	--af-info-soft: #edf5ff;
	--af-shadow: 0 20px 42px rgba(3, 93, 60, 0.08), 0 4px 12px rgba(3, 93, 60, 0.05);
	background: #fff;
	color: var(--af-text);
	font-family: "Manrope", sans-serif;
	font-size: 16px;
	line-height: 1.5;
	min-height: 100vh;
	overflow: clip;
}

@media (min-width: 1920px) {
	.afcalc-main {
		box-sizing: border-box;
		max-width: 1752.282px;
		min-height: 0;
		padding: 60.078px 60.078px 202px;
		width: calc(100% - 167.718px);
	}

	.afcalc-hero,
	.afcalc[data-current-step="1"] .afcalc-hero {
		height: auto;
		margin: 0;
		min-height: 0;
	}

	.afcalc-hero-copy {
		max-width: 850px;
	}

	.afcalc-kicker {
		font-size: 13px;
		line-height: 17px;
	}

	.afcalc-hero h1 {
		font-size: 60px;
		line-height: 66px;
		margin-top: 15px;
		max-width: 1085px;
	}

	.afcalc-hero-copy > p:last-child {
		font-size: 22px;
		line-height: 35.86px;
		margin-top: 15px;
		max-width: 760px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] {
		padding-top: 50.065px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] .afcalc-layout {
		gap: 40px;
		grid-template-columns: minmax(0, 1066.389px) 525.685px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-layout,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-layout {
		gap: 40px;
		grid-template-columns: minmax(0, 1141.486px) 450px;
	}

	.afcalc-sidebar {
		gap: 25px;
		position: static;
	}

	.afcalc-property-card {
		border-radius: 30px;
		box-shadow: none;
		height: 275.359px;
	}

	.afcalc-property-card img {
		height: 334.576px;
		left: -34.793px;
		max-width: none;
		position: absolute;
		top: -29.882px;
		width: 594.485px;
	}

	.afcalc-property-card::after {
		background: linear-gradient(180deg, rgba(0, 74, 63, 0.02), rgba(0, 74, 63, 0.08));
	}

	.afcalc-property-note {
		background: rgba(255, 255, 255, 0.85);
		border-radius: 14px;
		gap: 10px;
		left: 25px;
		min-height: 57.26px;
		padding: 11px 16px 11px 11px;
		top: 22px;
	}

	.afcalc-property-note__icon {
		border-radius: 11px;
		flex-basis: 31.432px;
		height: 31.432px;
		width: 31.432px;
	}

	.afcalc-property-note__icon::before {
		height: 15.716px;
		width: 15.716px;
	}

	.afcalc-property-note__copy b {
		font-size: 16px;
		line-height: 1.05;
	}

	.afcalc-property-note__copy small {
		color: var(--af-muted);
		font-size: 12px;
		line-height: 1.05;
		margin-top: 3px;
	}

	.afcalc-live-summary {
		border-radius: 30px;
		height: 318.721px;
		min-height: 0;
		padding: 30.039px;
	}

	.afcalc-live-summary > p:not(.afcalc-kicker) {
		font-size: 13px;
		margin-top: 20.026px;
		white-space: nowrap;
	}

	.afcalc-live-summary .afcalc-summary-pair {
		gap: 15.02px;
		margin-top: 20.026px;
	}
}

@media (max-width: 767px) {
	.afcalc-property-note {
		gap: 4px;
		min-height: 0;
		padding: 8px 10px;
	}

	.afcalc-property-note__icon {
		display: none;
	}

	.afcalc-property-note__copy b,
	.afcalc-property-note__copy small {
		font-size: 11px;
		line-height: 1.1;
		margin-top: 0;
	}
}

.afcalc *,
.afcalc *::before,
.afcalc *::after {
	box-sizing: border-box;
}

.afcalc [hidden] {
	display: none !important;
}

.afcalc button,
.afcalc input,
.afcalc select,
.afcalc textarea {
	font: inherit;
}

.afcalc button,
.afcalc a {
	-webkit-tap-highlight-color: transparent;
}

.afcalc button {
	cursor: pointer;
}

.afcalc a {
	color: inherit;
	text-decoration: none;
}

.afcalc h1,
.afcalc h2,
.afcalc p {
	margin: 0;
}

.afcalc .screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.afcalc-header {
	align-items: center;
	backdrop-filter: blur(18px);
	background: rgba(255, 255, 255, 0.95);
	border-bottom: 1px solid rgba(3, 93, 60, 0.08);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	display: grid;
	gap: 24px;
	grid-template-columns: auto 1fr auto;
	height: 88px;
	padding: 0 clamp(28px, 3.65vw, 70px);
	position: relative;
	z-index: 20;
}

.afcalc-brand {
	align-items: center;
	color: var(--af-green);
	display: inline-flex;
	font-size: 26px;
	font-weight: 800;
	gap: 15px;
	letter-spacing: -0.02em;
	white-space: nowrap;
}

.afcalc-brand img {
	display: block;
	height: 48px;
	width: 48px;
}

.afcalc-navigation {
	align-items: center;
	display: flex;
	justify-content: center;
}

.afcalc-navigation a {
	border-radius: 12px;
	color: var(--af-text);
	font-size: clamp(14px, 1.05vw, 20px);
	font-weight: 500;
	padding: 10px clamp(9px, 0.9vw, 17px);
	transition: background-color 160ms ease, color 160ms ease;
	white-space: nowrap;
}

.afcalc-navigation a:hover {
	background: var(--af-green-soft);
	color: var(--af-green);
}

.afcalc-menu-button {
	align-items: center;
	background: transparent;
	border: 0;
	display: none;
	flex-direction: column;
	gap: 5px;
	justify-content: center;
	padding: 10px;
}

.afcalc-menu-button > span:not(.screen-reader-text) {
	background: var(--af-green);
	border-radius: 2px;
	display: block;
	height: 2px;
	width: 24px;
}

.afcalc-button {
	align-items: center;
	background: var(--af-green);
	border: 1px solid var(--af-green);
	border-radius: 20px;
	box-shadow: none;
	color: #fff;
	display: inline-flex;
	font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
	font-size: 14px;
	font-weight: 700 !important;
	gap: 8px;
	justify-content: center;
	letter-spacing: 0.025em;
	min-height: 52px;
	padding: 14px 28px;
	text-align: center;
	text-transform: uppercase;
	transition: box-shadow 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.afcalc a.afcalc-button {
	color: #fff;
}

.afcalc-button:hover {
	box-shadow: none;
	transform: none;
}

.afcalc-button:active {
	transform: translateY(0);
}

.afcalc-button:disabled {
	cursor: not-allowed;
	opacity: 0.52;
	transform: none;
}

.afcalc-button--header {
	font-size: clamp(11px, 0.85vw, 16px);
	white-space: nowrap;
}

.afcalc-button--secondary {
	background: #fff;
	border-color: rgba(3, 93, 60, 0.2);
	box-shadow: none;
	color: var(--af-green);
}

.afcalc-main {
	margin: 0 auto;
	padding: 87px 0 90px;
	width: min(1752px, calc(100% - 168px));
}

.afcalc-hero {
	align-items: flex-end;
	display: flex;
	gap: 48px;
	justify-content: space-between;
	margin-bottom: 50px;
}

.afcalc-hero-copy {
	max-width: 850px;
}

.afcalc-kicker {
	color: var(--af-green);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.afcalc-hero h1 {
	color: var(--af-text);
	font-size: clamp(38px, 3.15vw, 60px);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.1;
	margin-top: 15px;
	white-space: normal;
}

.afcalc-hero-copy > p:last-child {
	color: var(--af-muted);
	font-size: clamp(17px, 1.18vw, 22px);
	line-height: 1.63;
	margin-top: 15px;
	max-width: 760px;
}

.afcalc-stepper {
	align-items: center;
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.afcalc-stepper li {
	align-items: center;
	display: flex;
}

.afcalc-stepper li:not(:last-child)::after {
	background: rgba(3, 93, 60, 0.15);
	border-radius: 4px;
	content: "";
	height: 2px;
	margin: 0 15px;
	width: 30px;
}

.afcalc-stepper li.is-complete:not(:last-child)::after {
	background: var(--af-green);
}

.afcalc-stepper button {
	align-items: center;
	background: transparent;
	border: 0;
	color: #7c8782;
	display: flex;
	font-size: 14px;
	font-weight: 600;
	gap: 12px;
	padding: 0;
	white-space: nowrap;
}

.afcalc-step-number {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.2);
	border-radius: 16px;
	color: var(--af-green);
	display: inline-flex;
	font-size: 16px;
	font-weight: 800;
	height: 45px;
	justify-content: center;
	width: 45px;
}

.afcalc-stepper li.is-active button {
	color: var(--af-green);
	font-weight: 700;
}

.afcalc-stepper li.is-active .afcalc-step-number {
	background: var(--af-green);
	border-color: var(--af-green);
	box-shadow: 0 10px 14px rgba(3, 93, 60, 0.27);
	color: #fff;
}

.afcalc-stepper li.is-complete button {
	color: rgba(3, 93, 60, 0.7);
}

.afcalc-stepper li.is-complete .afcalc-step-number {
	background: rgba(3, 93, 60, 0.75);
	border-color: transparent;
	color: transparent;
	position: relative;
}

.afcalc-stepper li.is-complete .afcalc-step-number::after {
	color: #fff;
	content: "✓";
	inset: 0;
	line-height: 45px;
	position: absolute;
	text-align: center;
}

.afcalc-step-panel {
	animation: afcalc-fade-in 180ms ease-out;
}

@keyframes afcalc-fade-in {
	from {
		opacity: 0;
		transform: translateY(5px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.afcalc-layout {
	align-items: start;
	display: grid;
	gap: 40px;
	grid-template-columns: minmax(0, 1fr) minmax(460px, 525.685px);
}

.afcalc-card {
	background: #fff;
	border: 1px solid var(--af-line);
	border-radius: 30px;
	box-shadow: var(--af-shadow);
}

.afcalc-configurator {
	padding: 40px;
}

.afcalc-section {
	border: 0;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.afcalc-section + .afcalc-section {
	border-top: 1px solid rgba(3, 93, 60, 0.1);
	margin-top: 38px;
	padding-top: 38px;
}

.afcalc-section legend {
	align-items: center;
	display: flex;
	gap: 15px;
	margin-bottom: 30px;
	padding: 0;
	width: 100%;
}

.afcalc-section legend > span:last-child {
	display: flex;
	flex-direction: column;
}

.afcalc-section legend strong {
	font-size: 26px;
	font-weight: 700;
	line-height: 1.35;
}

.afcalc-section legend small {
	color: var(--af-muted);
	font-size: 14px;
	font-weight: 400;
	margin-top: 3px;
}

.afcalc-section-number {
	align-items: center;
	background: var(--af-green);
	border-radius: 14px;
	color: #fff;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 17px;
	font-weight: 800;
	height: 40px;
	justify-content: center;
	width: 40px;
}

.afcalc-currency-row {
	align-items: center;
	display: flex;
	gap: 16px;
	margin-bottom: 28px;
}

.afcalc-currency-row .afcalc-currency-choice {
	margin-bottom: 0;
}

.afcalc-currency-note {
	color: rgba(61, 61, 61, 0.5);
	font-size: 13px;
	line-height: 18px;
}

.afcalc-product-control {
	display: grid;
	gap: 8px;
	margin: 0 0 20px;
	padding-top: 30px;
	max-width: 420px;
}

.afcalc-product-control label {
	color: #3D3D3D;
	font-size: 16px;
	font-weight: 600;
}

.afcalc-product-control select {
	appearance: none;
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.2);
	border-radius: 15px;
	color: var(--af-text);
	font: inherit;
	font-weight: 700;
	min-height: 54px;
	padding: 0 45px 0 17px;
}

.afcalc-product-control small {
	color: var(--af-muted);
	font-size: 13px;
	line-height: 1.45;
}

.afcalc-product-control select:focus-visible {
	border-color: var(--af-green);
	box-shadow: 0 0 0 3px rgba(3, 93, 60, 0.12);
	outline: 0;
}

@media (max-width: 768px) {
	.afcalc-currency-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
		margin-bottom: 20px;
	}
}

.afcalc-currency-choice {
	background: var(--af-surface-soft);
	border: 1px solid rgba(3, 93, 60, 0.08);
	border-radius: 16px;
	display: inline-grid;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 30px;
	padding: 4px;
	width: 280px;
}

.afcalc-currency-choice label,
.afcalc-chip-choice label {
	cursor: pointer;
	position: relative;
}

.afcalc-currency-choice input,
.afcalc-chip-choice input {
	height: 1px;
	opacity: 0;
	position: absolute;
	width: 1px;
}

.afcalc-currency-choice span {
	align-items: center;
	border-radius: 12px;
	color: var(--af-muted);
	display: flex;
	font-size: 15px;
	font-weight: 700;
	justify-content: center;
	min-height: 42px;
}

.afcalc-currency-choice input:checked + span {
	background: var(--af-green);
	box-shadow: 0 4px 8px rgba(3, 93, 60, 0.2);
	color: #fff;
}

.afcalc-currency-choice input:focus-visible + span,
.afcalc-chip-choice input:focus-visible + span {
	outline: 3px solid rgba(196, 227, 37, 0.7);
	outline-offset: 2px;
}

.afcalc-control-group + .afcalc-control-group {
	margin-top: 30px;
}

.afcalc-control-group--required {
	background: rgba(3, 93, 60, 0.035);
	border: 1px solid rgba(3, 93, 60, 0.08);
	border-radius: 20px;
	padding: 20px;
}

.afcalc-control-heading {
	align-items: end;
	display: flex;
	gap: 20px;
	justify-content: space-between;
}

.afcalc-control-heading > label {
	color: #3D3D3D;
	font-size: 16px;
	font-weight: 600;
}

.afcalc-value-control {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.18);
	border-radius: 15px;
	display: flex;
	min-height: 54px;
	overflow: hidden;
	width: 230px;
}

.afcalc-value-control:focus-within,
.afcalc-contact-form input:focus,
.afcalc-contact-form textarea:focus {
	border-color: var(--af-green);
	box-shadow: 0 0 0 3px rgba(3, 93, 60, 0.12);
	outline: 0;
}

.afcalc-value-control input {
	-moz-appearance: textfield;
	background: transparent;
	border: 0;
	color: var(--af-text);
	font-size: 18px;
	font-weight: 800;
	min-width: 0;
	outline: 0;
	padding: 12px 4px 12px 17px;
	text-align: right;
	width: 100%;
}

.afcalc-value-control input::-webkit-inner-spin-button,
.afcalc-value-control input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.afcalc-value-control > span {
	color: var(--af-green);
	flex: 0 0 auto;
	font-size: 14px;
	font-weight: 800;
	padding: 0 16px 0 8px;
}

.afcalc-value-control select {
	appearance: none;
	background: var(--af-green-soft);
	border: 0;
	border-left: 1px solid var(--af-line);
	color: var(--af-green);
	cursor: pointer;
	font-size: 14px;
	font-weight: 800;
	height: 52px;
	outline: 0;
	padding: 0 25px 0 12px;
}

.afcalc-value-control--short {
	width: 180px;
}

.afcalc-value-control--select {
	width: 240px;
}

.afcalc-value-control--down-payment {
	min-width: 235px;
	width: auto;
}

.afcalc-value-control--down-payment input {
	font-size: 16px;
	min-width: 65px;
	padding: 10px 4px 10px 12px;
}

.afcalc-value-control--down-payment .afcalc-unit {
	font-size: 13px;
	padding: 0 12px 0 4px;
	white-space: nowrap;
}

.afcalc-range {
	--af-range-progress: 30%;
	appearance: none;
	background: linear-gradient(to right, var(--af-green) 0 var(--af-range-progress), #dce8e1 var(--af-range-progress) 100%);
	border-radius: 999px;
	height: 8px;
	margin: 23px 0 0;
	outline: 0;
	width: 100%;
}

.afcalc-range::-webkit-slider-thumb {
	appearance: none;
	background: var(--af-lime);
	border: 4px solid #fff;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(3, 93, 60, 0.3);
	height: 24px;
	width: 24px;
}

.afcalc-range::-moz-range-thumb {
	background: var(--af-lime);
	border: 4px solid #fff;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(3, 93, 60, 0.3);
	height: 16px;
	width: 16px;
}

.afcalc-range:focus-visible::-webkit-slider-thumb {
	outline: 3px solid rgba(3, 93, 60, 0.28);
	outline-offset: 3px;
}

.afcalc-range-labels {
	align-items: center;
	color: var(--af-muted);
	display: flex;
	font-size: 12px;
	justify-content: space-between;
	margin-top: 8px;
}

.afcalc-range-labels strong {
	color: var(--af-green);
	font-size: 14px;
}

.afcalc-control-group > small {
	color: var(--af-muted);
	display: block;
	font-size: 12px;
	margin-top: 8px;
}

.afcalc-field-error {
	color: var(--af-danger) !important;
	font-weight: 700;
}

.afcalc input[aria-invalid="true"],
.afcalc select[aria-invalid="true"] {
	border-color: var(--af-danger);
}

.afcalc-value-control:has(input[aria-invalid="true"]),
.afcalc-value-control:has(select[aria-invalid="true"]),
.afcalc-value-control.has-error {
	border-color: var(--af-danger, #a62e2e) !important;
	box-shadow: 0 0 0 3px rgba(166, 46, 46, 0.18) !important;
	animation: afcalc-field-shake 0.35s ease;
}

@keyframes afcalc-field-shake {
	0%, 100% { transform: translateX(0); }
	20%, 60% { transform: translateX(-4px); }
	40%, 80% { transform: translateX(4px); }
}

.afcalc-two-columns {
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 30px;
}

.afcalc-two-columns .afcalc-control-group {
	margin-top: 0;
}

.afcalc-two-columns .afcalc-control-heading,
.afcalc-configurator .afcalc-two-columns .afcalc-control-heading {
	align-items: stretch !important;
	flex-direction: column !important;
	gap: 8px !important;
	height: auto !important;
}

.afcalc-two-columns .afcalc-value-control,
.afcalc-configurator .afcalc-two-columns .afcalc-value-control,
.afcalc-configurator .afcalc-two-columns .afcalc-value-control.afcalc-value-control--down-payment {
	max-width: 100% !important;
	min-width: 0 !important;
	width: 100% !important;
}

.afcalc-two-columns .afcalc-value-control input {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.afcalc-toggle-row {
	align-items: center;
	background: var(--af-surface-soft);
	border: 1px solid rgba(3, 93, 60, 0.08);
	border-radius: 18px;
	display: flex;
	justify-content: space-between;
	padding: 17px 20px;
}

.afcalc-toggle-row > div {
	display: flex;
	flex-direction: column;
}

.afcalc-toggle-row strong {
	font-size: 15px;
}

.afcalc-toggle-row small {
	color: var(--af-muted);
	font-size: 12px;
	margin-top: 3px;
}

.afcalc-switch {
	cursor: pointer;
	flex: 0 0 auto;
	position: relative;
}

.afcalc-switch input {
	height: 1px;
	opacity: 0;
	position: absolute;
	width: 1px;
}

.afcalc-switch > span:first-of-type {
	background: #cbd8d1;
	border-radius: 999px;
	display: block;
	height: 30px;
	position: relative;
	transition: background-color 160ms ease;
	width: 54px;
}

.afcalc-switch > span:first-of-type::after {
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
	content: "";
	height: 24px;
	left: 3px;
	position: absolute;
	top: 3px;
	transition: transform 160ms ease;
	width: 24px;
}

.afcalc-switch input:checked + span {
	background: var(--af-green);
}

.afcalc-switch input:checked + span::after {
	transform: translateX(24px);
}

.afcalc-switch input:focus-visible + span {
	outline: 3px solid rgba(196, 227, 37, 0.7);
	outline-offset: 2px;
}

.afcalc-optional {
	margin-top: 24px;
}

.afcalc-error {
	background: #fff0ef;
	border: 1px solid rgba(166, 46, 46, 0.22);
	border-radius: 14px;
	color: var(--af-danger);
	font-size: 14px;
	font-weight: 700;
	margin-top: 28px;
	padding: 14px 16px;
}

.afcalc-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: flex-end;
	margin-top: 40px;
}

.afcalc-actions--center {
	justify-content: center;
	margin: 28px 0 0;
}

.afcalc-sidebar {
	display: flex;
	flex-direction: column;
	gap: 25px;
	position: sticky;
	top: 102px;
}

.afcalc-property-card {
	border-radius: 30px;
	box-shadow: var(--af-shadow);
	height: 275px;
	overflow: hidden;
	position: relative;
}

.afcalc-property-card::after {
	background: linear-gradient(180deg, transparent 45%, rgba(0, 74, 63, 0.68));
	content: "";
	inset: 0;
	position: absolute;
}

.afcalc-property-card img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.afcalc-property-note {
	align-items: center;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(3, 93, 60, 0.08);
	border-radius: 20px;
	box-shadow: 0 10px 24px rgba(3, 93, 60, 0.14);
	color: var(--af-text);
	display: inline-flex;
	gap: 14px;
	left: 26px;
	min-height: 57px;
	padding: 13px 16px;
	position: absolute;
	top: 22px;
	z-index: 1;
}

.afcalc-property-note__icon {
	align-items: center;
	background: var(--af-lime);
	border-radius: 11px;
	display: inline-flex;
	flex: 0 0 31px;
	height: 31px;
	justify-content: center;
	position: relative;
	width: 31px;
}

.afcalc-property-note__icon::before {
	background: #fff;
	border-radius: 50%;
	content: "";
	height: 16px;
	width: 16px;
}

.afcalc-property-note__copy {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

.afcalc-property-note__copy b,
.afcalc-property-note__copy small {
	display: block;
}

.afcalc-property-note__copy b {
	color: var(--af-text);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.05;
}

.afcalc-property-note__copy small {
	color: var(--af-text);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.1;
	margin-top: 3px;
}

.afcalc-live-summary,
.afcalc-capacity-card,
.afcalc-eligibility,
.afcalc-simulation-data,
.afcalc-important,
.afcalc-application-summary,
.afcalc-next-steps,
.afcalc-help {
	padding: 30px;
}

.afcalc-live-summary {
	background: var(--af-green);
	border-color: var(--af-green);
	color: #fff;
}

.afcalc-live-summary .afcalc-kicker {
	color: var(--af-lime);
}

.afcalc-payment {
	display: block;
	font-size: clamp(27px, 2vw, 38px);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.18;
	margin-top: 8px;
}

.afcalc-live-summary > p:not(.afcalc-kicker) {
	color: rgba(255, 255, 255, 0.74);
	font-size: 13px;
	margin-top: 8px;
}

.afcalc-summary-pair {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 22px;
}

.afcalc-summary-pair > div {
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.12);
	border-radius: 16px;
	box-sizing: border-box;
	color: var(--af-text);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 72px;
	min-width: 0;
	padding: 12px 14px;
}

.afcalc-summary-pair span {
	color: var(--af-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
}

.afcalc-summary-pair strong {
	font-size: 15px;
	font-variant-numeric: tabular-nums;
	font-weight: 800;
	letter-spacing: -0.01em;
	line-height: 1.25;
	margin-top: 4px;
	white-space: nowrap;
}

.afcalc-card-title {
	align-items: start;
	display: flex;
	gap: 14px;
	justify-content: space-between;
}

.afcalc-card-title h2,
.afcalc-eligibility h2,
.afcalc-simulation-data h2,
.afcalc-important h2,
.afcalc-next-steps h2,
.afcalc-help h2 {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.25;
	margin-top: 4px;
}

.afcalc-status-dot {
	align-items: center;
	background: var(--af-surface-soft);
	border: 1px solid var(--af-line);
	border-radius: 12px;
	color: var(--af-green);
	display: flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	min-height: 34px;
	padding: 7px 10px;
}

.afcalc-status-dot.is-eligible {
	background: var(--af-lime);
	border-color: var(--af-lime);
}

.afcalc-status-dot.is-ineligible {
	background: #ffe4de;
	border-color: #f1bbb0;
	color: var(--af-danger);
}

.afcalc-progress-copy {
	color: var(--af-muted);
	display: flex;
	font-size: 12px;
	justify-content: space-between;
	margin-top: 20px;
}

.afcalc-progress-copy strong {
	color: var(--af-green);
}

.afcalc-progress {
	background: #dfeae4;
	border-radius: 999px;
	height: 8px;
	margin-top: 8px;
	overflow: hidden;
}

.afcalc-progress > span {
	background: var(--af-green);
	border-radius: inherit;
	display: block;
	height: 100%;
	transition: width 200ms ease, background-color 200ms ease;
	width: 0;
}

.afcalc-progress > span.is-over-limit {
	background: #e53935 !important;
}

.afcalc-progress > span.is-warning:not(.is-over-limit) {
	background: #f59e0b !important;
}

.afcalc-capacity-card:has(.is-over-limit) .afcalc-progress-copy,
.afcalc-capacity-card.is-over-limit .afcalc-progress-copy {
	color: #e53935;
}

.afcalc-capacity-card:has(.is-warning:not(.is-over-limit)) .afcalc-progress-copy,
.afcalc-capacity-card.is-warning:not(.is-over-limit) .afcalc-progress-copy {
	color: #b27b00;
}

.afcalc-capacity-card:not(.is-over-limit):not(.is-warning) .afcalc-progress-copy {
	color: #0b6838;
}

.afcalc-verdict-status {
	display: block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	margin-bottom: 4px;
}

.afcalc-verdict-detail {
	display: block;
	font-size: 11px;
	line-height: 1.3;
	opacity: 0.9;
}

.afcalc-mini-checks {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, 1fr);
	list-style: none;
	margin: 18px 0 0;
	padding: 0;
}

.afcalc-mini-checks li {
	align-items: center;
	background: var(--af-surface-soft);
	border: 1px solid var(--af-line);
	border-radius: 11px;
	color: var(--af-muted);
	display: flex;
	font-size: 11px;
	font-weight: 700;
	gap: 5px;
	justify-content: center;
	padding: 8px 4px;
}

.afcalc-mini-checks li > span {
	background: #aab7b0;
	border-radius: 50%;
	height: 7px;
	width: 7px;
}

.afcalc-mini-checks li.is-passed {
	background: var(--af-green-soft);
	color: var(--af-green);
}

.afcalc-mini-checks li.is-passed > span {
	background: var(--af-green);
}

.afcalc-mini-checks li.is-failed {
	background: #fff0ed;
	color: var(--af-danger);
}

.afcalc-mini-checks li.is-failed > span {
	background: var(--af-danger);
}

.afcalc-result-column {
	display: flex;
	flex-direction: column;
	gap: 30px;
	min-width: 0;
}

.afcalc-result-hero {
	background: var(--af-green);
	border-radius: 30px;
	box-shadow: 0 22px 32px rgba(3, 93, 60, 0.2);
	color: #fff;
	padding: 40px;
}

.afcalc-result-hero.is-ineligible {
	background: #7b332b;
}

.afcalc-result-label {
	align-items: center;
	color: var(--af-lime);
	display: flex;
	font-size: 14px;
	font-weight: 800;
	gap: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.afcalc-result-label > span {
	align-items: center;
	background: var(--af-lime);
	border-radius: 13px;
	color: var(--af-green);
	display: flex;
	height: 38px;
	justify-content: center;
	width: 38px;
}

.afcalc-result-payment {
	font-size: clamp(36px, 3vw, 52px);
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 1.05;
	margin-top: 22px !important;
}

.afcalc-result-hero > p:last-of-type {
	color: rgba(255, 255, 255, 0.74);
	font-size: 16px;
	margin-top: 12px;
}

.afcalc-result-metrics {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 26px;
}

.afcalc-result-metrics > div {
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.12);
	border-radius: 16px;
	color: var(--af-text);
	display: flex;
	flex-direction: column;
	min-height: 94px;
	padding: 16px;
}

.afcalc-result-metrics span {
	color: var(--af-green);
	font-size: 11px;
	font-weight: 700;
}

.afcalc-result-metrics strong {
	font-size: 17px;
	font-weight: 800;
	line-height: 1.3;
	margin-top: 8px;
	overflow-wrap: anywhere;
}

.afcalc-result-metrics--light {
	margin-top: 24px;
}

.afcalc-result-metrics--light > div {
	background: var(--af-surface-soft);
}

.afcalc-cost-card,
.afcalc-documents,
.afcalc-schedule {
	padding: 30px;
}

.afcalc-cost-card > h2,
.afcalc-documents > h2,
.afcalc-schedule h2 {
	font-size: 25px;
	font-weight: 700;
}

.afcalc-cost-card > p,
.afcalc-documents > p,
.afcalc-schedule-header p {
	color: var(--af-muted);
	font-size: 13px;
	margin-top: 4px;
}

.afcalc-cost-bar {
	border-radius: 999px;
	display: flex;
	height: 18px;
	margin-top: 25px;
	overflow: hidden;
	width: 100%;
}

.afcalc-cost-bar > span {
	display: block;
	height: 100%;
	transition: width 200ms ease;
}

.afcalc-cost-bar .is-principal,
.afcalc-cost-legend .is-principal {
	background: var(--af-green);
	width: 50%;
}

.afcalc-cost-bar .is-interest,
.afcalc-cost-legend .is-interest {
	background: var(--af-yellow);
	width: 40%;
}

.afcalc-cost-bar .is-commission,
.afcalc-cost-legend .is-commission {
	background: var(--af-lime);
	width: 10%;
}

.afcalc-cost-bar .is-tax,
.afcalc-cost-legend .is-tax {
	background: #0284c7;
	width: 5%;
}

.afcalc-cost-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 15px;
}

.afcalc-cost-legend > div {
	align-items: center;
	display: grid;
	gap: 1px 7px;
	grid-template-columns: 9px auto;
}

.afcalc-cost-legend > div > span {
	border-radius: 50%;
	grid-row: 1 / span 2;
	height: 9px;
	width: 9px !important;
}

.afcalc-cost-legend small {
	color: var(--af-muted);
	font-size: 10px;
}

.afcalc-cost-legend strong {
	font-size: 12px;
}

.afcalc-action-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 24px;
}

.afcalc-action-card {
	align-items: start;
	background: #fff;
	border: 1px solid var(--af-line);
	border-radius: 17px;
	color: var(--af-text);
	display: grid;
	gap: 3px 12px;
	grid-template-columns: 38px 1fr;
	min-height: 110px;
	padding: 17px;
	text-align: left;
}

.afcalc-action-card > span {
	align-items: center;
	background: var(--af-surface-soft);
	border-radius: 11px;
	color: var(--af-green);
	display: flex;
	grid-row: 1 / span 2;
	height: 38px;
	justify-content: center;
	width: 38px;
}

.afcalc-action-card strong {
	font-size: 13px;
}

.afcalc-action-card small {
	color: var(--af-muted);
	font-size: 10px;
}

.afcalc-action-card:hover {
	border-color: var(--af-green);
	transform: translateY(-1px);
}

.afcalc-action-card.is-primary {
	background: var(--af-green);
	color: #fff;
}

.afcalc-action-card.is-primary > span {
	background: var(--af-lime);
}

.afcalc-action-card.is-primary small {
	color: rgba(255, 255, 255, 0.72);
}

.afcalc-eligibility > p:nth-of-type(2) {
	color: var(--af-muted);
	font-size: 13px;
	margin-top: 7px;
}

.afcalc-checks {
	display: flex;
	flex-direction: column;
	gap: 9px;
	list-style: none;
	margin: 22px 0 0;
	padding: 0;
}

.afcalc-checks li {
	align-items: center;
	background: var(--af-surface-soft);
	border: 1px solid var(--af-line);
	border-radius: 14px;
	display: grid;
	gap: 10px;
	grid-template-columns: 32px 1fr auto;
	padding: 10px;
}

.afcalc-check-mark {
	align-items: center;
	background: #d8e1dc;
	border-radius: 9px;
	color: var(--af-muted);
	display: flex;
	font-size: 12px;
	font-weight: 800;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.afcalc-checks li > span:nth-child(2) {
	display: flex;
	flex-direction: column;
}

.afcalc-checks li strong {
	font-size: 12px;
}

.afcalc-checks li small {
	color: var(--af-muted);
	font-size: 9px;
}

.afcalc-checks li > b {
	color: var(--af-muted);
	font-size: 10px;
}

.afcalc-checks li.is-passed {
	background: var(--af-green-soft);
}

.afcalc-checks li.is-passed .afcalc-check-mark {
	background: var(--af-green);
	color: #fff;
}

.afcalc-checks li.is-passed > b {
	color: var(--af-green);
}

.afcalc-checks li.is-failed {
	background: #fff0ed;
	border-color: rgba(166, 46, 46, 0.2);
}

.afcalc-checks li.is-failed .afcalc-check-mark {
	background: var(--af-danger);
	color: #fff;
}

.afcalc-checks li.is-failed > b {
	color: var(--af-danger);
}

.afcalc-reasons {
	background: #fff0ed;
	border-radius: 12px;
	color: var(--af-danger);
	font-size: 13px; /* was 11px (+18% / ~15% larger per client request P10) */
	line-height: 1.45;
	margin: 12px 0 0;
	padding: 12px 14px 12px 28px;
}

.afcalc-simulation-data dl,
.afcalc-application-summary dl {
	margin: 18px 0 0;
}

.afcalc-simulation-data dl > div,
.afcalc-application-summary dl > div {
	align-items: start;
	border-bottom: 1px solid rgba(3, 93, 60, 0.08);
	display: flex;
	gap: 20px;
	justify-content: space-between;
	padding: 9px 0;
}

.afcalc-simulation-data dl > div:last-child,
.afcalc-application-summary dl > div:last-child {
	border-bottom: 0;
}

.afcalc-simulation-data dt,
.afcalc-application-summary dt {
	color: var(--af-muted);
	font-size: 11px;
}

.afcalc-simulation-data dd,
.afcalc-application-summary dd {
	font-size: 11px;
	font-weight: 700;
	margin: 0;
	text-align: right;
}

.afcalc-important .afcalc-kicker {
	margin-bottom: 9px;
}

.afcalc-important h2 {
	font-size: 16px;
}

.afcalc-important > p:last-child {
	color: var(--af-muted);
	font-size: 12px;
	margin-top: 12px;
}

.afcalc-schedule-header {
	align-items: start;
	display: flex;
	gap: 20px;
	justify-content: space-between;
}

.afcalc-scroll-hint {
	color: var(--af-muted);
	display: none;
	font-size: 11px;
	margin: 15px 0 0 !important;
}

.afcalc-schedule-scroller {
	margin-top: 22px;
	overflow-x: auto;
}

.afcalc-schedule-table {
	border-collapse: collapse;
	font-size: 12px;
	min-width: 1380px;
	width: 100%;
}

.afcalc-schedule-table th,
.afcalc-schedule-table td {
	border-bottom: 1px solid rgba(3, 93, 60, 0.09);
	padding: 11px 10px;
	text-align: right;
	white-space: nowrap;
}

.afcalc-schedule-table th:first-child,
.afcalc-schedule-table td:first-child {
	text-align: left;
}

.afcalc-schedule-table thead th {
	background: var(--af-surface-soft);
	color: var(--af-green);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.afcalc-contact-form {
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 40px;
}

.afcalc-contact-form .wpcf7 form {
	display: flex;
	flex-direction: column;
	gap: 34px;
}

.afcalc-contact-copy h2 {
	font-size: 33px;
	font-weight: 700;
	line-height: 1.12;
}

.afcalc-contact-copy p {
	color: var(--af-muted);
	font-size: 18px;
	line-height: 1.5;
	margin-top: 8px;
}

.afcalc-contact-grid {
	display: grid;
	gap: 25px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.afcalc-contact-grid > p {
	display: contents;
}

.afcalc-contact-grid .wpcf7-form-control-wrap,
.afcalc-message-label .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.afcalc-contact-grid br {
	display: none;
}

.afcalc-contact-grid label,
.afcalc-message-label,
.afcalc-choice-fieldset legend {
	color: var(--af-green);
	display: flex;
	flex-direction: column;
	font-size: 15px;
	font-weight: 700;
	gap: 10px;
}

.afcalc-message-label {
	width: 100%;
}

.afcalc-contact-form input[type="text"],
.afcalc-contact-form input[type="tel"],
.afcalc-contact-form input[type="email"],
.afcalc-contact-form textarea {
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.18);
	border-radius: 18px;
	color: var(--af-text);
	font-size: 18px;
	font-weight: 500;
	min-height: 64px;
	padding: 16px 20px;
	width: 100%;
}

.afcalc-contact-form textarea {
	min-height: 122px;
	resize: vertical;
}

.afcalc-contact-form input::placeholder,
.afcalc-contact-form textarea::placeholder {
	color: #89958f;
}

.afcalc-contact-form .intl-tel-input {
	display: block;
	width: 100%;
}

.afcalc-contact-form .intl-tel-input input[type="text"],
.afcalc-contact-form .intl-tel-input input[type="tel"],
.afcalc-contact-form .wpcf7-phonetext {
	padding-left: 104px !important;
	width: 100%;
}

.afcalc-contact-form .intl-tel-input .flag-container {
	left: 1px !important;
	top: 1px !important;
	bottom: 1px !important;
	height: calc(100% - 2px) !important;
}

.afcalc-contact-form .intl-tel-input .selected-flag {
	background: rgba(3, 93, 60, 0.05) !important;
	border-right: 1px solid rgba(3, 93, 60, 0.12) !important;
	border-radius: 17px 0 0 17px !important;
	padding-left: 14px !important;
	padding-right: 12px !important;
	width: auto !important;
	height: 100% !important;
	display: flex !important;
	align-items: center !important;
}

.afcalc-contact-form .intl-tel-input .selected-dial-code {
	color: var(--af-green) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	margin-left: 4px !important;
}

.afcalc-contact-form .intl-tel-input .selected-flag :is(.arrow, .iti-arrow, .iti__arrow) {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: relative !important;
	top: 0 !important;
	right: auto !important;
	left: auto !important;
	margin: 0 0 0 6px !important;
	width: 0 !important;
	height: 0 !important;
	border-left: 3.5px solid transparent !important;
	border-right: 3.5px solid transparent !important;
	border-top: 4.5px solid var(--af-green) !important;
	border-bottom: 0 !important;
	pointer-events: none !important;
	flex-shrink: 0 !important;
}

.afcalc-contact-form .intl-tel-input .selected-flag :is(.arrow, .iti-arrow, .iti__arrow).up {
	border-top: 0 !important;
	border-bottom: 4.5px solid var(--af-green) !important;
}

.afcalc-contact-form .intl-tel-input .country-list {
	border: 1px solid rgba(3, 93, 60, 0.12);
	border-radius: 16px;
	box-shadow: 0 20px 32px rgba(3, 93, 60, 0.14);
	color: var(--af-text);
	margin-top: 10px;
}

.afcalc-contact-form .intl-tel-input .country-list .country.highlight {
	background: rgba(3, 93, 60, 0.06);
}

.afcalc-choice-fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

.afcalc-choice-fieldset legend {
	display: block;
	margin-bottom: 12px;
}

.afcalc-chip-choice {
	display: block;
}

.afcalc-chip-choice > p,
.afcalc-chip-choice .wpcf7-form-control-wrap {
	display: block;
	margin: 0;
	width: 100%;
}

.afcalc-chip-choice .wpcf7-radio {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100%;
}

.afcalc-chip-choice .wpcf7-list-item {
	display: block;
	margin: 0;
	min-width: 0;
}

.afcalc-chip-choice label {
	cursor: pointer;
	display: block;
	position: relative;
	width: 100%;
}

.afcalc-chip-choice input[type="radio"] {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.afcalc-chip-choice .wpcf7-list-item-label {
	align-items: center;
	background: #fff;
	border: 1px solid var(--af-line);
	border-radius: 14px;
	color: var(--af-text);
	display: flex;
	font-size: 13px;
	font-weight: 700;
	justify-content: center;
	min-height: 46px;
	padding: 11px 18px;
	text-align: center;
	width: 100%;
}

.afcalc-chip-choice input:checked + .wpcf7-list-item-label {
	background: var(--af-green);
	border-color: var(--af-green);
	box-shadow: 0 6px 12px rgba(3, 93, 60, 0.18);
	color: #fff;
}

.afcalc-message-label small {
	color: var(--af-muted);
	display: inline;
	font-weight: 400;
}

.afcalc-consent {
	color: var(--af-muted);
	font-size: 13px;
	line-height: 1.55;
}

.afcalc-consent .wpcf7-list-item {
	margin: 0;
}

.afcalc-consent label {
	align-items: flex-start;
	display: flex;
	gap: 10px;
}

.afcalc-consent input {
	accent-color: var(--af-green);
	flex: 0 0 auto;
	height: 18px;
	margin-top: 1px;
	width: 18px;
}

.afcalc-consent a {
	color: var(--af-green);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.av-site .afcalc-consent a {
	color: var(--af-green);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.afcalc-transfer-note {
	background: var(--af-surface-soft);
	border-radius: 18px;
	padding: 22px;
}

.afcalc-transfer-note strong {
	color: var(--af-green);
	font-size: 15px;
}

.afcalc-transfer-note p {
	color: var(--af-muted);
	font-size: 12px;
	line-height: 1.5;
	margin-top: 6px;
}

.afcalc-contact-footer {
	align-items: center;
	border-top: 1px solid rgba(3, 93, 60, 0.09);
	display: flex;
	gap: 24px;
	justify-content: space-between;
	padding-top: 28px;
}

.afcalc-contact-footer > div:first-child {
	display: flex;
	flex-direction: column;
}

.afcalc-contact-footer > div:first-child strong {
	color: var(--af-green);
	font-size: 14px;
}

.afcalc-contact-footer > div:first-child span {
	color: var(--af-muted);
	font-size: 12px;
}

.afcalc-contact-footer .afcalc-actions {
	flex: 0 0 auto;
	margin: 0;
}

.afcalc-contact-footer .afcalc-actions .afcalc-button,
.afcalc-contact-footer .afcalc-cf7-submit,
.afcalc-button.afcalc-cf7-submit,
.afcalc-cf7-submit {
	padding-left: 30px !important;
	padding-right: 30px !important;
	text-align: center !important;
	width: auto;
}

.afcalc-contact-form .wpcf7-response-output {
	border: 1px solid rgba(3, 93, 60, 0.16) !important;
	border-radius: 16px;
	background: #fff;
	color: var(--af-text);
	font-size: 13px;
	line-height: 1.5;
	margin: -8px 0 0 !important;
	padding: 14px 16px !important;
}

.afcalc-contact-form .wpcf7-not-valid-tip {
	color: #bf4e3b;
	font-size: 12px;
	font-weight: 600;
	margin-top: 6px;
}

.afcalc-contact-form .wpcf7-form-control-wrap .wpcf7-not-valid,
.afcalc-contact-form .intl-tel-input input.wpcf7-not-valid {
	border-color: var(--af-danger) !important;
	box-shadow: 0 0 0 3px rgba(166, 46, 46, 0.12);
}

.afcalc-contact-form .wpcf7 form.sent .wpcf7-response-output {
	background: var(--af-success-soft);
	border-color: rgba(8, 112, 68, 0.34) !important;
	color: var(--af-success);
}

.afcalc-contact-form .wpcf7 form.invalid .wpcf7-response-output,
.afcalc-contact-form .wpcf7 form.unaccepted .wpcf7-response-output,
.afcalc-contact-form .wpcf7 form.payment-required .wpcf7-response-output {
	background: var(--af-warning-soft);
	border-color: rgba(178, 123, 0, 0.34) !important;
	color: #7a5800;
}

.afcalc-contact-form .wpcf7 form.failed .wpcf7-response-output,
.afcalc-contact-form .wpcf7 form.aborted .wpcf7-response-output,
.afcalc-contact-form .wpcf7 form.spam .wpcf7-response-output {
	background: var(--af-danger-soft);
	border-color: rgba(166, 46, 46, 0.34) !important;
	color: #8d2430;
}

.afcalc-contact-form .wpcf7 form.submitting .wpcf7-response-output {
	background: var(--af-info-soft);
	border-color: rgba(47, 110, 189, 0.28) !important;
	color: #23529b;
}

.afcalc-contact-form .wpcf7-spinner {
	animation: av-wpcf7-spin 0.75s linear infinite !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 2.5px solid rgba(255, 255, 255, 0.35) !important;
	border-radius: 50% !important;
	border-top-color: #ffffff !important;
	box-sizing: border-box !important;
	display: inline-block !important;
	height: 20px !important;
	margin: -10px 0 0 0 !important;
	max-height: 20px !important;
	max-width: 20px !important;
	opacity: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
	position: absolute !important;
	right: 8px !important;
	top: 50% !important;
	transform-origin: center center !important;
	transition: opacity 0.2s ease, visibility 0.2s ease !important;
	visibility: hidden !important;
	width: 20px !important;
	z-index: 10 !important;
}

.afcalc-contact-form .wpcf7-spinner::before,
.afcalc-contact-form .wpcf7-spinner::after {
	animation: none !important;
	content: none !important;
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

.afcalc-contact-form .wpcf7-spinner.is-active,
.afcalc-contact-form .wpcf7 form.submitting .wpcf7-spinner {
	opacity: 1 !important;
	visibility: visible !important;
}

.afcalc-application-summary {
	background: var(--af-green);
	border-color: var(--af-green);
	color: #fff;
}

.afcalc-application-summary .afcalc-kicker {
	color: var(--af-lime);
}

.afcalc-application-summary dl {
	background: #fff;
	border-radius: 15px;
	color: var(--af-text);
	padding: 8px 13px;
}

.afcalc-application-status {
	align-items: center;
	color: var(--af-lime);
	display: flex;
	font-size: 12px;
	gap: 7px;
	margin-top: 7px !important;
}

.afcalc-application-status > span {
	background: var(--af-lime);
	border-radius: 50%;
	height: 7px;
	width: 7px;
}

.afcalc-next-steps ol {
	display: flex;
	flex-direction: column;
	gap: 16px;
	list-style: none;
	margin: 22px 0 0;
	padding: 0;
}

.afcalc-next-steps li {
	align-items: start;
	display: grid;
	gap: 12px;
	grid-template-columns: 34px 1fr;
}

.afcalc-next-steps li > span {
	align-items: center;
	background: var(--af-green);
	border-radius: 10px;
	color: #fff;
	display: flex;
	font-size: 10px;
	font-weight: 800;
	height: 32px;
	justify-content: center;
	width: 32px;
}

.afcalc-next-steps li > div {
	display: flex;
	flex-direction: column;
}

.afcalc-next-steps li strong {
	font-size: 12px;
}

.afcalc-next-steps li small {
	color: var(--af-muted);
	font-size: 10px;
	margin-top: 2px;
}

.afcalc-help {
	background: var(--af-yellow);
	border-color: var(--af-yellow);
}

.afcalc-help p {
	color: #5f5d50;
	font-size: 12px;
	margin-top: 10px;
}

.afcalc-help .afcalc-button {
	margin-top: 18px;
	width: 100%;
}

.afcalc-methodology {
	margin-top: 50px;
	padding: 0;
}

.afcalc-methodology summary {
	color: var(--af-green);
	cursor: pointer;
	font-size: 16px;
	font-weight: 800;
	padding: 22px 28px;
}

.afcalc-methodology > div {
	border-top: 1px solid var(--af-line);
	color: var(--af-muted);
	font-size: 13px;
	padding: 5px 28px 25px;
}

.afcalc-methodology li + li {
	margin-top: 8px;
}

.afcalc-methodology > div > p {
	background: var(--af-surface-soft);
	border-radius: 12px;
	margin-top: 18px;
	padding: 14px;
}

.afcalc-footer {
	background: var(--af-green-dark);
	color: #fff;
	padding: 76px max(32px, calc((100% - 1600px) / 2)) 38px;
}

.afcalc-footer-main {
	display: grid;
	gap: 35px;
	grid-template-columns: minmax(300px, 2fr) 0.7fr 1.2fr 0.9fr 1.2fr;
	min-height: 370px;
}

.afcalc-footer-brand > strong {
	font-size: 40px;
	font-weight: 700;
	letter-spacing: -0.025em;
}

.afcalc-footer-brand h2 {
	font-size: 22px;
	line-height: 1.4;
	margin-top: 18px;
	max-width: 470px;
}

.afcalc-footer-brand p {
	color: rgba(255, 255, 255, 0.75);
	font-size: 15px;
	margin-top: 16px;
	max-width: 470px;
}

.afcalc-footer nav,
.afcalc-footer-main > div:not(.afcalc-footer-brand) {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.afcalc-footer nav a,
.afcalc-footer-main a,
.afcalc-footer-main strong,
.afcalc-footer-main span {
	font-size: 15px;
}

.afcalc-footer nav a {
	font-weight: 700;
}

.afcalc-footer-title {
	color: var(--af-lime);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin-bottom: 6px !important;
	text-transform: uppercase;
}

.afcalc-footer-main small {
	color: var(--af-lime);
	font-size: 11px;
	font-weight: 800;
	margin-top: 4px;
}

.afcalc-footer-main > div:last-child > p:not(.afcalc-footer-title) {
	color: rgba(255, 255, 255, 0.75);
	font-size: 12px;
}

.afcalc-footer-rate {
	display: flex !important;
	flex-direction: row !important;
	justify-content: space-between;
	width: 100%;
}

.afcalc-footer-rate strong {
	color: var(--af-lime);
}

.afcalc-footer-bottom {
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	display: flex;
	flex-wrap: wrap;
	font-size: 13px;
	gap: 18px 25px;
	justify-content: space-between;
	padding-top: 30px;
}

.afcalc-footer-legal {
	display: flex;
	flex: 1 1 420px;
	flex-direction: column;
	gap: 10px;
}

.afcalc-footer-bottom span {
	color: rgba(255, 255, 255, 0.75);
	text-align: right;
}

.afcalc-footer-address-link {
	color: inherit;
	transition: color 160ms ease;
}

.afcalc-footer-address-link:hover {
	color: var(--af-lime);
}

.afcalc-footer-credits {
	align-items: center;
	display: flex;
	flex: 0 1 auto;
	flex-wrap: wrap;
	gap: 14px 22px;
	justify-content: flex-end;
}

.afcalc-footer-copyright {
	color: rgba(255, 255, 255, 0.72);
	font-size: 13px;
	line-height: 1.6;
	margin: 0;
}

@media (max-width: 1440px) {
	.afcalc-header {
		gap: 14px;
		padding-inline: 30px;
	}

	.afcalc-navigation a {
		font-size: 14px;
		padding-inline: 9px;
	}

	.afcalc-button--header {
		font-size: 11px;
		padding-inline: 16px;
	}

	.afcalc-main {
		width: calc(100% - 48px);
	}

	.afcalc-layout {
		grid-template-columns: minmax(0, 1fr) 390px;
	}

	.afcalc-footer {
		padding-inline: 48px;
	}
}

@media (max-width: 1180px) {
	.afcalc-header {
		grid-template-columns: auto auto 1fr;
	}

	.afcalc-menu-button {
		display: flex;
		grid-column: 3;
		justify-self: end;
	}

	.afcalc-navigation {
		align-items: stretch;
		background: #fff;
		border: 1px solid var(--af-line);
		border-radius: 18px;
		box-shadow: var(--af-shadow);
		display: none;
		flex-direction: column;
		padding: 10px;
		position: absolute;
		right: 28px;
		top: 76px;
		width: min(320px, calc(100vw - 40px));
	}

	.afcalc-navigation.is-open {
		display: flex;
	}

	.afcalc-navigation a {
		font-size: 15px;
		padding: 10px 12px;
	}

	.afcalc-button--header {
		display: none;
	}

	.afcalc-hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.afcalc-hero h1 {
		white-space: normal;
	}

	.afcalc-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-sidebar {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		position: static;
	}

	.afcalc-sidebar > :last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.afcalc-property-card {
		height: auto;
		min-height: 260px;
	}

	.afcalc-footer-main {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		min-height: 0;
	}

	.afcalc-footer-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 760px) {
	.afcalc-header {
		height: 72px;
		padding-inline: 18px;
	}

	.afcalc-brand {
		font-size: 20px;
		gap: 10px;
	}

	.afcalc-brand img {
		height: 38px;
		width: 38px;
	}

	.afcalc-main {
		padding: 36px 0 60px;
		width: calc(100% - 28px);
	}

	.afcalc-hero {
		gap: 24px;
		margin-bottom: 28px;
	}

	.afcalc-hero h1 {
		font-size: clamp(28px, 7.5vw, 36px) !important;
		line-height: 1.16 !important;
		letter-spacing: -0.025em !important;
		text-wrap: balance !important;
		margin: 0 0 12px !important;
	}

	.afcalc-hero-copy > p:last-child {
		font-size: 15px;
		line-height: 22px;
		color: #5F6A65;
	}
	.afcalc-configurator,
	.afcalc-contact-form,
	.afcalc-result-hero,
	.afcalc-cost-card,
	.afcalc-documents,
	.afcalc-schedule {
		border-radius: 20px;
		padding: 20px 18px;
		box-shadow: 0 4px 20px rgba(0, 48, 32, 0.05);
	}

	.afcalc-section legend strong {
		font-size: 18px;
	}

	.afcalc-section legend small {
		font-size: 12.5px;
		line-height: 1.4;
	}

	.afcalc-currency-choice {
		width: 100%;
	}

	.afcalc-control-heading {
		align-items: stretch;
		flex-direction: column;
		gap: 9px;
	}

	.afcalc-value-control,
	.afcalc-value-control--short,
	.afcalc-value-control--select {
		width: 100%;
		min-height: 50px;
		border-radius: 14px;
	}

	.afcalc-two-columns,
	.afcalc-contact-grid,
	.afcalc-sidebar,
	.afcalc-result-metrics,
	.afcalc-result-metrics--light,
	.afcalc-action-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-summary-pair {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
		margin-top: 14px !important;
	}

	.afcalc-summary-pair > div {
		background: #FFFFFF !important;
		border: 1px solid rgba(3, 93, 60, 0.12) !important;
		border-radius: 14px !important;
		padding: 10px 10px !important;
		min-height: 68px !important;
		height: auto !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		box-sizing: border-box !important;
	}

	.afcalc-summary-pair span {
		font-size: 10.5px !important;
		font-weight: 700 !important;
		color: #5F6A65 !important;
		line-height: 1.2 !important;
	}

	.afcalc-summary-pair strong {
		font-size: clamp(12.5px, 3.8vw, 15px) !important;
		font-weight: 800 !important;
		color: #14231C !important;
		margin-top: 4px !important;
		line-height: 1.25 !important;
		white-space: nowrap !important;
		font-variant-numeric: tabular-nums !important;
		letter-spacing: -0.02em !important;
	}

	.afcalc-preliminary-grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
		margin-top: 14px !important;
	}

	.afcalc-preliminary-grid > div {
		background: #FFFFFF !important;
		border: 1px solid rgba(3, 93, 60, 0.12) !important;
		border-radius: 14px !important;
		padding: 10px 10px !important;
		min-height: 68px !important;
		height: auto !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		box-sizing: border-box !important;
	}

	.afcalc-preliminary-grid span {
		font-size: 10.5px !important;
		font-weight: 700 !important;
		color: var(--af-green) !important;
		line-height: 1.2 !important;
	}

	.afcalc-preliminary-grid strong {
		font-size: clamp(12.5px, 3.8vw, 15px) !important;
		font-weight: 800 !important;
		color: #14231C !important;
		margin-top: 4px !important;
		line-height: 1.25 !important;
		white-space: nowrap !important;
		font-variant-numeric: tabular-nums !important;
		letter-spacing: -0.02em !important;
	}

	.afcalc-preliminary-grid .is-limit {
		background: #035D3C !important;
		border-color: #035D3C !important;
		color: #FFFFFF !important;
	}

	.afcalc-preliminary-grid .is-limit span {
		color: #C4E325 !important;
	}

	.afcalc-preliminary-grid .is-limit strong {
		color: #FFFFFF !important;
	}

	.afcalc-result-payment {
		font-size: 34px;
	}

	.afcalc-result-metrics > div {
		min-height: 78px;
	}

	.afcalc-actions,
	.afcalc-contact-footer {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.afcalc-actions .afcalc-button,
	.afcalc-contact-footer .afcalc-button {
		width: 100%;
		min-height: 50px;
		border-radius: 14px;
		font-size: 14px;
		font-weight: 700;
	}

	.afcalc-scroll-hint {
		display: block;
	}

	.afcalc-footer {
		padding: 55px 24px 30px;
	}

	.afcalc-footer-main {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-footer-brand {
		grid-column: auto;
	}

	.afcalc-footer-brand > strong {
		font-size: 32px;
	}

	.afcalc-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.afcalc-footer-bottom span {
		text-align: left;
	}

	.afcalc-footer-credits {
		justify-content: flex-start;
	}
}

@media (max-width: 430px) {
	.afcalc-main {
		width: calc(100% - 20px);
	}

	.afcalc-configurator,
	.afcalc-contact-form,
	.afcalc-result-hero,
	.afcalc-cost-card,
	.afcalc-documents,
	.afcalc-schedule,
	.afcalc-live-summary,
	.afcalc-capacity-card,
	.afcalc-eligibility,
	.afcalc-simulation-data,
	.afcalc-important,
	.afcalc-application-summary,
	.afcalc-next-steps,
	.afcalc-help {
		padding: 18px;
	}

	.afcalc-section legend {
		align-items: flex-start;
	}

	.afcalc-toggle-row {
		gap: 12px;
		padding: 14px;
	}

	.afcalc-chip-choice {
		display: block;
	}

	.afcalc-chip-choice .wpcf7-radio {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.afcalc-chip-choice .wpcf7-list-item-label {
		justify-content: center;
		padding-inline: 8px;
	}

	.afcalc-contact-footer {
		align-items: stretch;
		gap: 16px;
	}

	.afcalc-contact-footer > div:first-child {
		gap: 6px;
	}

	.afcalc-contact-footer > div:first-child span {
		display: block;
		max-width: 28ch;
	}
}

@media print {
	body {
		background: #fff !important;
	}

	.afcalc-header,
	.afcalc-footer,
	.afcalc-stepper,
	.afcalc-actions,
	.afcalc-action-grid,
	.afcalc-methodology,
	.afcalc-property-card,
	.afcalc-step-panel[data-calculator-step-panel="1"],
	.afcalc-step-panel[data-calculator-step-panel="3"] {
		display: none !important;
	}

	.afcalc-main {
		max-width: none;
		padding: 0;
		width: 100%;
	}

	.afcalc-hero {
		margin-bottom: 20px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"],
	.afcalc-schedule {
		display: block !important;
	}

	.afcalc-layout,
	.afcalc-sidebar {
		display: block;
	}

	.afcalc-sidebar > * {
		margin-top: 20px;
	}

	.afcalc-card,
	.afcalc-result-hero {
		break-inside: avoid;
		box-shadow: none;
	}

	.afcalc-schedule-scroller {
		overflow: visible;
	}

	.afcalc-schedule-table {
		font-size: 8px;
		min-width: 0;
	}
}

/*
 * Figma parity: avalon-calculator1, calculator frames 1:29 / 1:364 / 1:677.
 * These rules intentionally live after the responsive base so the production
 * calculator keeps its tested behaviour while matching the approved artboard.
 */
.afcalc-market-disclosure {
	margin-top: 10px;
	position: relative;
	z-index: 2;
}

.afcalc-market-disclosure > summary {
	color: var(--af-green);
	cursor: pointer;
	font-size: 12px;
	font-weight: 700;
	list-style: none;
	margin-left: 0 !important;
	margin-right: auto !important;
	text-align: left !important;
	width: max-content;
}

.afcalc-market-disclosure > summary::-webkit-details-marker {
	display: none;
}

.afcalc-market-disclosure > summary::before {
	content: "+";
	display: inline-block;
	margin-right: 6px;
}

.afcalc-market-disclosure[open] > summary::before {
	content: "−";
}

.afcalc-market-disclosure[open] {
	margin-top: 18px;
}

.afcalc-market-disclosure .afcalc-control-group {
	background: var(--af-surface-soft);
	border: 1px solid var(--af-line);
	border-radius: 20px;
	margin-top: 14px;
	padding: 22px;
}

.afcalc-preliminary-card {
	background: #f3f7f5;
	padding: 28px;
}

.afcalc-preliminary-card h2,
.afcalc-capacity-card > h2,
.afcalc-capacity-card h2 {
	font-size: 22px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
}

.afcalc-capacity-card > h2,
.afcalc-capacity-card h2 {
	color: var(--af-green) !important;
}

.afcalc-preliminary-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 20px;
}

.afcalc-preliminary-grid > div {
	background: #fff;
	border: 1px solid var(--af-line);
	border-radius: 17px;
	display: flex;
	flex-direction: column;
	min-height: 92px;
	padding: 16px;
}

.afcalc-preliminary-grid span {
	color: var(--af-green);
	font-size: 11px;
	font-weight: 700;
}

.afcalc-preliminary-grid strong {
	font-size: 18px;
	margin-top: 7px;
}

.afcalc-preliminary-grid .is-limit {
	background: var(--af-green);
	border-color: var(--af-green);
	color: #fff;
}

.afcalc-preliminary-grid .is-limit span {
	color: var(--af-lime);
}

.afcalc-capacity-card > p {
	color: var(--af-muted);
	font-size: 13px;
	line-height: 1.55;
	margin-top: 18px;
}

@media (min-width: 1920px) {
	.afcalc-main {
		box-sizing: border-box;
		max-width: 1752.282px;
		min-height: 2149.386px;
		padding: 60.078px 60.078px 202px;
		width: calc(100% - 167.718px);
	}

	.afcalc-hero {
		align-items: flex-start;
		height: auto;
		margin: 0;
		position: relative;
	}

	.afcalc[data-current-step="1"] .afcalc-hero {
		display: block;
		height: auto;
	}

	.afcalc[data-current-step="1"] .afcalc-stepper {
		bottom: 0;
		left: 0;
		position: static;
	}

	.afcalc-hero-copy {
		max-width: 850px;
	}

	.afcalc-kicker {
		font-size: 13px;
		line-height: 17px;
	}

	.afcalc-hero h1 {
		font-size: 60px;
		line-height: 66px;
		margin-top: 15px;
	}

	.afcalc-hero-copy > p:last-child {
		font-size: 22px;
		line-height: 35.86px;
		margin-top: 15px;
		max-width: 760px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] {
		min-height: 1610.21px;
		padding-top: 50.065px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] .afcalc-layout {
		gap: 40px;
		grid-template-columns: minmax(0, 1066.389px) minmax(0, 1fr);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-layout,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-layout {
		gap: 40px;
		grid-template-columns: minmax(0, 1141.486px) minmax(0, 1fr);
	}

	.afcalc-configurator {
		display: flex;
		flex-direction: column;
		gap: 35.046px;
		height: auto;
		min-height: 1560.145px;
		padding: 41.053px;
		position: relative;
	}

	.afcalc-configurator .afcalc-section,
	.afcalc-configurator .afcalc-optional:not([hidden]) {
		display: contents;
	}

	.afcalc-configurator .afcalc-two-columns {
		display: grid;
		gap: 35.046px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		height: auto;
	}

	.afcalc-configurator .afcalc-section + .afcalc-section {
		border: 0;
		margin: 0;
		padding: 0;
	}

	.afcalc-configurator .afcalc-section legend {
		height: 63.787px;
		margin: 0;
	}

	.afcalc-configurator .afcalc-section:not(:first-child) legend {
		border-top: 1.252px solid rgba(3, 93, 60, 0.1);
		box-sizing: content-box;
		height: 63.787px;
		padding-top: 35.046px;
	}

	.afcalc-section legend strong {
		font-size: 27.536px;
		line-height: 34.42px;
	}

	.afcalc-section legend small {
		font-size: 17.523px;
		line-height: 26.284px;
		padding: 0;
	}

	.afcalc-section-number {
		border-radius: 17.523px;
		font-size: 17.523px;
		height: 52.568px;
		width: 52.568px;
	}

	.afcalc-currency-choice {
		background: transparent;
		border: 0;
		border-radius: 0;
		display: flex;
		gap: 10.013px;
		height: 52.568px;
		margin: 0;
		padding: 0;
		width: 100%;
	}

	.afcalc-currency-choice label span {
		border: 1px solid rgba(3, 93, 60, 0.16);
		border-radius: 16.271px;
		font-size: 17.523px;
		height: 52.568px;
		width: 112.647px;
	}

	.afcalc-currency-choice input:checked + span {
		border-color: var(--af-green);
	}

	.afcalc-currency-choice::after {
		content: none !important;
		display: none !important;
	}

	.afcalc-configurator .afcalc-control-group {
		height: auto;
		margin: 0;
		min-height: 97.627px;
		position: relative;
	}

	.afcalc-configurator .afcalc-control-heading {
		height: 60.078px;
	}

	.afcalc-configurator .afcalc-control-heading label {
		font-size: 20.026px;
		line-height: 30.039px;
	}

	.afcalc-configurator .afcalc-value-control {
		border-radius: 17.523px;
		height: 60.078px;
		min-width: 212.777px;
		width: 212.777px;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment {
		min-width: 260px;
		width: auto;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment input {
		font-size: 20px;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment .afcalc-unit {
		font-size: 14px;
		padding: 0 12px 0 4px;
	}

	.afcalc-configurator .afcalc-value-control input {
		font-size: 23.781px;
		line-height: 35.671px;
	}

	.afcalc-configurator .afcalc-value-control span,
	.afcalc-configurator .afcalc-value-control select {
		font-size: 16.271px;
	}

	.afcalc-configurator .afcalc-range {
		height: 30.039px;
		margin-top: 0;
	}

	.afcalc-configurator .afcalc-range-labels {
		font-size: 15.02px;
		height: 22.529px;
		line-height: 22.529px;
		margin-top: -6.258px;
	}

	.afcalc-configurator .afcalc-control-group > small:not(.afcalc-field-error) {
		display: none;
	}

	.afcalc-configurator .afcalc-toggle-row {
		background: transparent;
		border: 0;
		border-radius: 0;
		height: 37.549px;
		margin: 0;
		padding: 0;
	}

	.afcalc-configurator .afcalc-toggle-row strong {
		font-size: 18.774px;
		line-height: 28.162px;
	}

	.afcalc-configurator .afcalc-toggle-row small {
		display: none;
	}

	.afcalc-configurator .afcalc-switch,
	.afcalc-configurator .afcalc-switch > span:first-of-type {
		height: 37.549px;
		width: 65.085px;
	}

	.afcalc-configurator .afcalc-switch > span:first-of-type::after {
		height: 30.039px;
		top: 3.755px;
		width: 30.039px;
	}

	.afcalc-configurator .afcalc-switch input:checked + span::after {
		transform: translateX(27.536px);
	}

	.afcalc-configurator .afcalc-actions {
		gap: 15.02px;
		height: 80.104px;
		margin: 0;
		padding-top: 10.013px;
	}

	.afcalc-configurator .afcalc-actions .afcalc-button {
		border-radius: 20.026px;
		font-size: 17.523px;
		height: 70.091px;
		padding-inline: 31.04px;
	}

	.afcalc-configurator .afcalc-actions .afcalc-button:last-child {
		padding-inline: 40.052px;
	}

	.afcalc-configurator .afcalc-error[hidden] {
		display: none;
	}

	.afcalc-configurator .afcalc-market-disclosure {
		margin: 10px 0 0;
		position: static;
		right: auto;
		top: auto;
	}

	.afcalc-configurator .afcalc-market-disclosure[open] {
		background: #fff;
		border: 1px solid var(--af-line);
		border-radius: 20px;
		box-shadow: var(--af-shadow);
		padding: 18px;
		width: 100%;
	}

	.afcalc-configurator .afcalc-market-disclosure[open] .afcalc-control-group {
		background: transparent;
		border: 0;
		margin-top: 16px;
		padding: 0;
	}

	.afcalc-sidebar {
		gap: 25px;
		position: sticky;
		top: 102px;
	}

	.afcalc-property-card {
		border-radius: 30px;
		box-shadow: none;
		height: 275.359px;
	}

	.afcalc-property-card img {
		height: 334.576px;
		left: -34.793px;
		max-width: none;
		position: absolute;
		top: -29.882px;
		width: 594.485px;
	}

	.afcalc-property-card::after {
		background: linear-gradient(180deg, rgba(0, 74, 63, 0.02), rgba(0, 74, 63, 0.08));
	}

	.afcalc-property-card > span {
		align-items: center;
		background: rgba(255, 255, 255, 0.85);
		border-radius: 14px;
		bottom: auto;
		color: var(--af-text);
		display: grid;
		font-size: 12px;
		font-weight: 600;
		grid-template-columns: 34px auto;
		left: 25px;
		line-height: 1.1;
		padding: 11px 16px 11px 11px;
		top: 25px;
	}

	.afcalc-property-card > span i {
		align-items: center;
		background: var(--af-lime);
		border-radius: 11px;
		display: flex;
		grid-row: 1 / span 2;
		height: 34px;
		justify-content: center;
		margin-right: 10px;
		width: 34px;
	}

	.afcalc-property-card > span i::after {
		background: #fff;
		border-radius: 50%;
		content: "";
		height: 12px;
		width: 12px;
	}

	.afcalc-property-card > span b {
		font-weight: 700;
	}

	.afcalc-property-card > span small {
		color: var(--af-muted);
		font-size: 10px;
	}

	.afcalc-live-summary {
		border-radius: 30px;
		height: 318.721px;
		min-height: 0;
		padding: 30.039px;
	}

	.afcalc-payment {
		font-size: 38px;
		margin-top: 20.026px;
	}

	.afcalc-live-summary > p:not(.afcalc-kicker) {
		font-size: 13px;
		margin-top: 20.026px;
		white-space: nowrap;
	}

	.afcalc-live-summary .afcalc-summary-pair {
		gap: 15.02px;
		margin-top: 20.026px;
	}

	.afcalc-live-summary .afcalc-summary-pair > div {
		border-radius: 18px;
		height: 104.565px;
		min-height: 0;
		padding: 21.027px;
	}

	.afcalc-live-summary .afcalc-summary-pair span {
		color: var(--af-green);
		font-size: 12px;
	}

	.afcalc-live-summary .afcalc-summary-pair strong {
		font-size: 19px;
		margin-top: 10px;
	}

	.afcalc-preliminary-card {
		border: 0;
		border-radius: 30px;
		box-shadow: none;
		height: 333.246px;
		min-height: 0;
		padding: 25.033px;
	}

	.afcalc-preliminary-grid {
		gap: 20.026px 15.02px;
		margin-top: 20.026px;
	}

	.afcalc-preliminary-grid > div {
		height: 104.565px;
		min-height: 0;
		padding: 21.027px;
	}

	.afcalc-capacity-card {
		border-radius: 30px;
		box-shadow: none;
		height: 219.643px;
		min-height: 0;
		padding: 26.034px;
	}

	.afcalc-capacity-card > p {
		font-size: 15.02px;
		line-height: 26.284px;
		margin-top: 15.019px;
	}

	.afcalc-capacity-card .afcalc-progress-copy {
		justify-content: flex-start;
		margin-top: 15.02px;
	}

	.afcalc-capacity-card .afcalc-progress {
		height: 12.516px;
		margin-top: 15.02px;
	}

	.afcalc-footer {
		box-sizing: border-box;
		height: 792px;
		padding: 76px max(32px, calc((100% - 1600px) / 2)) 38px;
	}

	.afcalc-footer-main {
		gap: 35px;
		grid-template-columns: 500px 160px 300px 200px 300px;
		min-height: 370px;
	}

	.afcalc-footer-brand > strong {
		font-size: 48px;
		line-height: 58px;
	}

	.afcalc-footer-brand h2 {
		font-size: 26px;
		line-height: 36px;
		margin-top: 25px;
	}

	.afcalc-footer-brand p {
		font-size: 18px;
		line-height: 28px;
		margin-top: 24px;
	}

	.afcalc-footer nav,
	.afcalc-footer-main > div:not(.afcalc-footer-brand) {
		gap: 16px;
	}

	.afcalc-footer nav a,
	.afcalc-footer-main a,
	.afcalc-footer-main strong,
	.afcalc-footer-main span {
		font-size: 18px;
		line-height: 28px;
	}

	.afcalc-footer-title {
		font-size: 13px;
		line-height: 18px;
		margin-bottom: 2px !important;
	}

	.afcalc-footer-main small {
		font-size: 13px;
	}

	.afcalc-footer-main > div:last-child > p:not(.afcalc-footer-title) {
		font-size: 14px;
		line-height: 22px;
	}

	.afcalc-footer-bottom {
		font-size: 14px;
		margin-top: 56px;
		min-height: 96px;
		padding-top: 30px;
	}
}

@media (max-width: 1199px) {
	.afcalc-preliminary-card {
		padding: 22px;
	}

	.afcalc-market-disclosure {
		margin-top: 12px;
	}
}

@media (max-width: 767px) {
	.afcalc-preliminary-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-property-card > span {
		align-items: center;
		display: flex;
		gap: 4px;
	}

	.afcalc-property-card > span i {
		display: none;
	}

	.afcalc-live-summary > p:not(.afcalc-kicker) {
		white-space: normal;
	}
}

@media (min-width: 1200px) and (max-width: 1919px) {
	.afcalc-main {
		box-sizing: border-box;
		max-width: 1632px;
		min-height: 0;
		padding: 34px 40px 88px;
		width: calc(100% - 80px);
	}

	.afcalc-hero,
	.afcalc[data-current-step="1"] .afcalc-hero {
		gap: 24px;
		height: auto;
		margin: 0 0 12px;
		min-height: 0;
	}

	.afcalc[data-current-step="1"] .afcalc-stepper {
		bottom: auto;
		left: auto;
		margin-top: 20px;
		position: relative;
	}

	.afcalc-hero-copy {
		flex: 1 1 auto;
		max-width: 690px;
		min-width: 0;
	}

	.afcalc-kicker {
		font-size: 11px;
		line-height: 14px;
	}

	.afcalc-hero h1 {
		font-size: 42px;
		line-height: 48px;
		margin-top: 10px;
		max-width: 720px;
		white-space: normal;
	}

	.afcalc-hero-copy > p:last-child {
		font-size: 17px;
		line-height: 26px;
		margin-top: 10px;
		max-width: 620px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] {
		min-height: 0;
		padding-top: 18px;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] .afcalc-layout {
		gap: clamp(24px, 2.5vw, 40px);
		grid-template-columns: minmax(0, 1fr) clamp(360px, 32vw, 450px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-layout,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-layout {
		gap: clamp(24px, 2.5vw, 40px);
		grid-template-columns: minmax(0, 1fr) clamp(360px, 32vw, 450px);
	}

	.afcalc-configurator {
		gap: 22px;
		height: auto;
		min-height: 0;
		padding: 24px;
	}

	.afcalc-configurator .afcalc-section legend,
	.afcalc-configurator .afcalc-section:not(:first-child) legend {
		height: auto;
		margin: 0;
		padding-top: 22px;
	}

	.afcalc-configurator .afcalc-section:first-child legend {
		padding-top: 0;
	}

	.afcalc-section legend strong {
		font-size: 22px;
		line-height: 28px;
	}

	.afcalc-section legend small {
		font-size: 14px;
		line-height: 20px;
	}

	.afcalc-section-number {
		border-radius: 14px;
		font-size: 14px;
		height: 40px;
		width: 40px;
	}

	.afcalc-currency-choice {
		background: transparent;
		border: 0;
		border-radius: 0;
		display: flex;
		gap: 10.013px;
		height: 52.568px;
		margin: 0;
		padding: 0;
		width: auto;
	}

	.afcalc-currency-choice label span {
		border: 1px solid rgba(3, 93, 60, 0.18);
		border-radius: 16.271px;
		font-size: 17.523px;
		height: 52.568px;
		width: 112.647px;
	}

	.afcalc-currency-choice input:checked + span {
		background: var(--af-green);
		border-color: var(--af-green);
		box-shadow: 0px 2.5px 5px -2.5px rgba(3, 93, 60, 0.25), 0px 5px 7.5px -1.25px rgba(3, 93, 60, 0.25);
		color: #fff;
	}

	.afcalc-currency-choice::after {
		content: none !important;
		display: none !important;
	}

	.afcalc-configurator .afcalc-control-group {
		height: auto;
		margin: 0;
		min-height: 0;
	}

	.afcalc-configurator .afcalc-control-heading {
		align-items: flex-start;
		height: auto;
	}

	.afcalc-configurator .afcalc-control-heading label {
		font-size: 16px;
		line-height: 24px;
	}

	.afcalc-configurator .afcalc-value-control {
		border-radius: 14px;
		height: 50px;
		min-width: 172px;
		width: 178px;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment {
		min-width: 235px;
		width: auto;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment input {
		font-size: 16px;
	}

	.afcalc-configurator .afcalc-value-control.afcalc-value-control--down-payment .afcalc-unit {
		font-size: 12.5px;
		padding: 0 8px 0 2px;
	}

	.afcalc-configurator .afcalc-value-control input {
		font-size: 18px;
		line-height: 24px;
	}

	.afcalc-configurator .afcalc-value-control span,
	.afcalc-configurator .afcalc-value-control select {
		font-size: 13px;
	}

	.afcalc-configurator .afcalc-range {
		height: 22px;
	}

	.afcalc-configurator .afcalc-range-labels {
		font-size: 12px;
		line-height: 16px;
		margin-top: -2px;
	}

	.afcalc-configurator .afcalc-toggle-row {
		height: auto;
	}

	.afcalc-configurator .afcalc-toggle-row strong {
		font-size: 15px;
		line-height: 22px;
	}

	.afcalc-configurator .afcalc-switch,
	.afcalc-configurator .afcalc-switch > span:first-of-type {
		height: 30px;
		width: 52px;
	}

	.afcalc-configurator .afcalc-switch > span:first-of-type::after {
		height: 24px;
		top: 3px;
		width: 24px;
	}

	.afcalc-configurator .afcalc-switch input:checked + span::after {
		transform: translateX(22px);
	}

	.afcalc-configurator .afcalc-actions {
		height: auto;
		padding-top: 0;
	}

	.afcalc-configurator .afcalc-actions .afcalc-button {
		border-radius: 16px;
		font-size: 15px;
		height: 56px;
		padding-inline: 22px;
	}

	.afcalc-configurator .afcalc-market-disclosure {
		margin: 10px 0 0;
		position: static;
		right: auto;
		top: auto;
	}

	.afcalc-configurator .afcalc-market-disclosure[open] {
		width: 100%;
	}

	.afcalc-sidebar {
		gap: 14px;
	}

	.afcalc-property-card {
		border-radius: 22px;
		height: 164px;
	}

	.afcalc-property-card img {
		display: block;
		height: 100%;
		inset: 0;
		max-width: none;
		object-fit: cover;
		position: absolute;
		width: 100%;
	}

	.afcalc-property-card > span {
		border-radius: 12px;
		font-size: 11px;
		left: 14px;
		padding: 8px 12px 8px 8px;
		top: 14px;
	}

	.afcalc-property-card > span i {
		border-radius: 9px;
		height: 28px;
		width: 28px;
	}

	.afcalc-live-summary,
	.afcalc-preliminary-card,
	.afcalc-capacity-card {
		border-radius: 22px;
		height: auto;
		min-height: 0;
		padding: 20px;
	}

	.afcalc-payment {
		font-size: 30px;
		margin-top: 12px;
	}

	.afcalc-live-summary > p:not(.afcalc-kicker) {
		font-size: 11px;
		margin-top: 12px;
		white-space: normal;
	}

	.afcalc-live-summary .afcalc-summary-pair {
		gap: 10px;
		margin-top: 12px;
	}

	.afcalc-live-summary .afcalc-summary-pair > div,
	.afcalc-preliminary-grid > div {
		border-radius: 14px;
		height: auto;
		min-height: 80px;
		padding: 14px;
	}

	.afcalc-live-summary .afcalc-summary-pair span,
	.afcalc-preliminary-grid span {
		font-size: 10px;
	}

	.afcalc-live-summary .afcalc-summary-pair strong,
	.afcalc-preliminary-grid strong {
		font-size: 16px;
		margin-top: 6px;
	}

	.afcalc-preliminary-card h2,
	.afcalc-capacity-card > h2,
	.afcalc-capacity-card h2 {
		font-size: 18px !important;
		line-height: 24px !important;
	}

	.afcalc-preliminary-grid {
		gap: 10px;
		margin-top: 12px;
	}

	.afcalc-capacity-card > p {
		font-size: 11px;
		margin-top: 12px;
	}

	.afcalc-result-hero,
	.afcalc-cost-card,
	.afcalc-documents,
	.afcalc-schedule,
	.afcalc-eligibility,
	.afcalc-sidebar > .afcalc-card {
		border-radius: 22px;
	}

	.afcalc-stepper {
		flex: 0 0 auto;
		gap: 0;
	}

	.afcalc-stepper li:not(:last-child)::after {
		margin: 0 15px;
		width: 30px;
		height: 1.5px;
	}

	.afcalc-stepper button {
		font-size: 17.5px;
		line-height: 26px;
		gap: 12.5px;
	}

	.afcalc-step-number {
		height: 45px;
		width: 45px;
		font-size: 17.5px;
		border-radius: 16px;
	}

	.afcalc-footer {
		height: auto;
		padding: 56px max(28px, calc((100% - 1280px) / 2)) 28px;
	}

	.afcalc-footer-main {
		gap: 26px;
		grid-template-columns: 1.35fr 0.62fr 0.86fr 0.74fr 0.84fr;
		min-height: 0;
	}

	.afcalc-footer-brand > strong {
		font-size: 38px;
		line-height: 46px;
	}

	.afcalc-footer-brand h2 {
		font-size: 18px;
		line-height: 28px;
		margin-top: 18px;
	}

	.afcalc-footer-brand p {
		font-size: 15px;
		line-height: 24px;
		margin-top: 16px;
	}

	.afcalc-footer nav a,
	.afcalc-footer-main a,
	.afcalc-footer-main strong,
	.afcalc-footer-main span {
		font-size: 15px;
		line-height: 24px;
	}

	.afcalc-footer-title {
		font-size: 12px;
		line-height: 16px;
	}

	.afcalc-footer-main small,
	.afcalc-footer-main > div:last-child > p:not(.afcalc-footer-title) {
		font-size: 12px;
		line-height: 18px;
	}

	.afcalc-footer-bottom {
		font-size: 12px;
		margin-top: 30px;
		min-height: 0;
		padding-top: 18px;
	}
}

@media (min-width: 1920px) {
	.afcalc-main {
		box-sizing: border-box !important;
		max-width: 1752.282px !important;
		padding: 60.078px 60.078px 202px !important;
		width: calc(100% - 167.718px) !important;
	}

	.afcalc-hero {
		height: auto !important;
		margin: 0 !important;
		min-height: 0 !important;
	}

	.afcalc[data-current-step="1"] .afcalc-hero {
		height: auto !important;
	}

	.afcalc-hero-copy {
		max-width: 1084.521px !important;
	}

	.afcalc-kicker {
		font-size: 13px !important;
		line-height: 17px !important;
	}

	.afcalc-hero h1 {
		font-size: 60px !important;
		line-height: 66px !important;
		margin-top: 15px !important;
		max-width: 1084.521px !important;
	}

	.afcalc-hero-copy > p:last-child {
		font-size: 22px !important;
		line-height: 35.86px !important;
		margin-top: 15px !important;
		max-width: 760px !important;
	}

	.afcalc-stepper {
		gap: 12px !important;
	}

	.afcalc-stepper li:not(:last-child)::after {
		width: 30px !important;
	}

	.afcalc-stepper button {
		font-size: 17px !important;
		gap: 12px !important;
	}

	.afcalc-step-number {
		height: 45px !important;
		width: 45px !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] {
		padding-top: 50.065px !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="1"] .afcalc-layout {
		gap: 40px !important;
		grid-template-columns: minmax(0, 1066.389px) 525.685px !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-layout,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-layout {
		gap: 40px !important;
		grid-template-columns: minmax(0, 1141.486px) 450px !important;
	}

	.afcalc-sidebar {
		gap: 25px !important;
	}

	.afcalc-property-card {
		border-radius: 30px !important;
		box-shadow: none !important;
		height: 275.359px !important;
	}

	.afcalc-property-card img {
		height: 334.576px !important;
		left: -34.793px !important;
		max-width: none !important;
		right: auto !important;
		top: -29.882px !important;
		width: 594.485px !important;
	}

	.afcalc-property-card::after {
		background: linear-gradient(180deg, rgba(0, 74, 63, 0.02), rgba(0, 74, 63, 0.08)) !important;
	}

	.afcalc-property-note {
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		background: rgba(255, 255, 255, 0.84) !important;
		border: 1px solid rgba(255, 255, 255, 0.34) !important;
		border-radius: 14px !important;
		box-shadow: 0 18px 40px rgba(24, 49, 39, 0.14) !important;
		gap: 10px !important;
		left: 25px !important;
		min-height: 57.26px !important;
		padding: 11px 16px 11px 11px !important;
		top: 22px !important;
	}

	.afcalc-property-note__icon {
		border-radius: 11px !important;
		flex-basis: 31.432px !important;
		height: 31.432px !important;
		width: 31.432px !important;
	}

	.afcalc-property-note__icon::before {
		height: 15.716px !important;
		width: 15.716px !important;
	}

	.afcalc-property-note__copy b {
		font-size: 16px !important;
		line-height: 1.05 !important;
	}

	.afcalc-property-note__copy small {
		color: var(--af-muted) !important;
		font-size: 12px !important;
		line-height: 1.05 !important;
		margin-top: 3px !important;
	}

	.afcalc-live-summary,
	.afcalc-preliminary-card,
	.afcalc-capacity-card {
		border-radius: 30px !important;
		padding: 30.039px !important;
	}

	.afcalc-live-summary {
		min-height: 318.721px !important;
	}

	.afcalc-live-summary > p:not(.afcalc-kicker) {
		font-size: 13px !important;
		margin-top: 20.026px !important;
		white-space: nowrap !important;
	}

	.afcalc-payment {
		font-size: 56px !important;
		line-height: 1 !important;
		margin-top: 18px !important;
	}

	.afcalc-live-summary .afcalc-summary-pair {
		gap: 15.02px !important;
		margin-top: 20.026px !important;
	}

	.afcalc-live-summary .afcalc-summary-pair > div,
	.afcalc-preliminary-grid > div {
		border-radius: 18px !important;
		min-height: 92px !important;
		padding: 18px 20px !important;
	}

	.afcalc-live-summary .afcalc-summary-pair span,
	.afcalc-preliminary-grid span {
		font-size: 12px !important;
		line-height: 16px !important;
	}

	.afcalc-live-summary .afcalc-summary-pair strong,
	.afcalc-preliminary-grid strong {
		font-size: 20px !important;
		line-height: 1.15 !important;
		margin-top: 10px !important;
	}

	.afcalc-preliminary-card h2,
	.afcalc-capacity-card > h2 {
		font-size: 20px !important;
		line-height: 28px !important;
	}

	.afcalc-preliminary-grid {
		gap: 14px !important;
		margin-top: 16px !important;
	}

	.afcalc-capacity-card > p {
		font-size: 14px !important;
		line-height: 22px !important;
		margin-top: 14px !important;
	}

	.afcalc-capacity-card .afcalc-progress-copy {
		margin-top: 28px !important;
	}

	.afcalc-capacity-card .afcalc-progress {
		margin-top: 16px !important;
	}
}

/* ==========================================================================
   Figma parity pass — Calculator pas1 (figma node 1:29)
   ========================================================================== */

/* Slider handle is amber in the design, not lime. */
.afcalc-range::-webkit-slider-thumb {
	background: var(--af-yellow, #f8c956);
}

.afcalc-range::-moz-range-thumb {
	background: var(--af-yellow, #f8c956);
}

@media (min-width: 1200px) and (max-width: 1919px) {
	/* The design has no market-value disclosure on this row; keep the control
	   available but out of the way so it never covers the max range label. */
	.afcalc-configurator .afcalc-market-disclosure {
		margin: 6px 0 0;
		position: static;
		right: auto;
		top: auto;
	}

	.afcalc-configurator .afcalc-market-disclosure[open] {
		width: auto;
	}
}

.av-page--calculator .afcalc-hero h1 {
	color: var(--af-text);
	letter-spacing: -0.035em;
}

/* ==========================================================================
   Figma parity pass — Calculator pas2 / pas3 (figma nodes 1:364, 1:677)
   Card headings inherited the 64px site heading scale; the design uses
   34px for panel titles, 26px in the sidebar and 18px for the notes.
   ========================================================================== */
@media (min-width: 1700px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-card > h2,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-card > h2,
	.afcalc-step-panel[data-calculator-step-panel="3"] .afcalc-card header h2 {
		font-size: 34px;
		letter-spacing: -0.4px;
		line-height: 46px;
		margin: 0 0 8px;
	}

	.afcalc-sidebar .afcalc-card > h2 {
		font-size: 22px !important;
		letter-spacing: -0.01em;
		line-height: 28px !important;
		margin: 0 0 16px;
	}

	.afcalc-important h2,
	.afcalc-help h2 {
		font-size: 18px;
		font-weight: 700;
		letter-spacing: 0;
		line-height: 28px;
		margin: 0 0 8px;
	}

	.afcalc-result-payment {
		align-items: baseline;
		display: flex;
		font-size: 42px;
		gap: 8px;
		line-height: 53px;
	}

	.afcalc-result-payment small {
		font-size: 22px;
		font-weight: 600;
		line-height: 1;
	}

	.afcalc-result-subline {
		font-size: 20px;
		line-height: 32px;
		margin: 6px 0 0;
	}

	.afcalc-result-metrics span {
		font-size: 14px;
		line-height: 23px;
	}

	.afcalc-action-card strong {
		font-size: 18px;
		line-height: 26px;
	}

	.afcalc-action-card small {
		font-size: 14px;
		line-height: 22px;
	}

	.afcalc-application-summary .afcalc-payment {
		font-size: 32px;
		line-height: 41px;
	}

	.afcalc-next-steps h2 {
		font-size: 26px;
		line-height: 38px;
	}
}

@media (min-width: 1700px) {
	/* Sidebar eligibility card follows design 1:364: ratio row, bar, two tiles. */
	.afcalc-eligibility-ratio {
		align-items: baseline;
		display: flex;
		font-size: 18px;
		gap: 12px;
		justify-content: space-between;
		line-height: 27px;
		margin-top: 18px;
	}

	.afcalc-eligibility-ratio b {
		color: var(--af-green);
		font-weight: 700;
		white-space: nowrap;
	}

	.afcalc-eligibility .afcalc-progress {
		margin-top: 10px;
	}

	.afcalc-eligibility .afcalc-summary-pair {
		margin-top: 20px;
	}
}

@media (min-width: 1700px) {
	/* Design 1:364 renders the eligibility card on the dark green surface. */
	.afcalc-sidebar .afcalc-eligibility {
		background: var(--af-green);
		border-color: transparent;
		color: #fff;
	}

	.afcalc-sidebar .afcalc-eligibility h2,
	.afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair strong {
		color: #fff;
	}

	.afcalc-sidebar .afcalc-eligibility > p,
	.afcalc-sidebar .afcalc-eligibility .afcalc-eligibility-ratio > span,
	.afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair span {
		color: rgba(255, 255, 255, 0.72);
	}

	.afcalc-sidebar .afcalc-eligibility .afcalc-eligibility-ratio b {
		color: var(--af-lime, #c4e325);
	}

	.afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair > div {
		background: rgba(255, 255, 255, 0.08);
		border-color: rgba(255, 255, 255, 0.16);
	}

	.afcalc-sidebar .afcalc-eligibility .afcalc-progress {
		background: rgba(255, 255, 255, 0.18);
	}
}

@media (min-width: 1700px) {
	.afcalc-application-summary .afcalc-payment {
		align-items: baseline;
		display: flex;
		gap: 6px;
	}

	.afcalc-application-summary .afcalc-payment small {
		font-size: 18px;
		font-weight: 600;
	}
}

/* ===========================================================================
   Calculator pas2 — exact desktop geometry from Figma frame 1:364.
   Business-only fields and working exports remain available; this layer only
   aligns the visual system, spacing and responsive proportions.
   ========================================================================== */
@media (min-width: 1920px) {
	.afcalc[data-current-step="2"] .afcalc-hero {
		align-items: flex-end;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] {
		padding-top: 50.065px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-column {
		gap: 30.039px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero {
		border-radius: 30.039px;
		box-shadow: 0 25.033px 15.645px rgba(3, 93, 60, 0.2), 0 10.013px 6.258px rgba(3, 93, 60, 0.2);
		display: flex;
		flex-direction: column;
		gap: 25.033px;
		padding: 40.052px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-label {
		font-size: 16.271px;
		gap: 15.02px;
		letter-spacing: 1.6271px;
		line-height: 24.407px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-label > span {
		border-radius: 15.02px;
		font-size: 20.026px;
		height: 40.052px;
		line-height: 30.039px;
		width: 40.052px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment {
		font-size: 52px;
		display: flex;
		align-items: baseline;
		gap: 8px;
		letter-spacing: -1.5px;
		line-height: 1.1;
		margin: 0 !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment small {
		font-size: 24px;
		font-weight: 600;
		line-height: 1;
		letter-spacing: normal;
		opacity: 0.85;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-subline,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero > p:last-of-type {
		font-size: 21.278px;
		line-height: 31.917px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics {
		gap: 15.02px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics > div {
		border-radius: 22.529px;
		gap: 7.51px;
		height: 103.38px;
		min-height: 0;
		padding: 21.027px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics span {
		font-size: 15.02px;
		font-weight: 600;
		letter-spacing: 0.3755px;
		line-height: 22.529px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics strong {
		font-size: 25.033px;
		line-height: 31.291px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card {
		background: #f7faf9;
		border: 0;
		border-radius: 30.039px;
		box-shadow: none;
		padding: 35.046px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > h2 {
		font-size: 30.039px;
		letter-spacing: 0;
		line-height: 45.059px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > p,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > p {
		font-size: 17.523px;
		line-height: 26.284px;
		margin: 5.007px 0 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-bar {
		height: 35.046px;
		margin-top: 25.033px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend {
		gap: 30.039px;
		margin-top: 25.033px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend > div {
		gap: 0 12.516px;
		grid-template-columns: 15.02px auto;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend > div > span {
		height: 15.02px;
		width: 15.02px !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend small {
		font-size: 16.271px;
		line-height: 24.407px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend strong {
		font-size: 17.523px;
		line-height: 26.284px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card .afcalc-result-metrics--light {
		gap: 15.02px;
		margin-top: 25.033px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card .afcalc-result-metrics--light > div {
		background: #fff;
		border-radius: 20.026px;
		height: 100.26px;
		padding: 21.027px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card .afcalc-result-metrics--light strong {
		font-size: 22.529px;
		line-height: 28.162px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents {
		border-radius: 30.039px;
		box-shadow: 0 1.252px 1.877px rgba(0, 0, 0, 0.1), 0 1.252px 1.252px rgba(0, 0, 0, 0.1);
		padding: 36.047px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > p {
		margin-top: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-grid {
		gap: 20.026px;
		margin-top: 25.033px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card {
		border-radius: 25.033px;
		gap: 7.51px 20.026px;
		grid-template-columns: 60.078px minmax(0, 1fr);
		height: 129.36px;
		min-height: 0;
		padding: 25.033px;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card:not(.is-primary) {
		padding: 26.034px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card > span {
		border-radius: 17.523px;
		height: 60.078px;
		width: 60.078px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card strong {
		font-size: 20.026px;
		line-height: 25.033px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card small {
		font-size: 16.271px;
		font-weight: 500;
		line-height: 22.373px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-actions--center {
		gap: 15.02px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-actions--center .afcalc-button {
		border-radius: 20.026px;
		font-size: 17.523px;
		height: 70.091px;
		line-height: 26.284px;
		padding-inline: 40.052px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-actions--center .afcalc-button--secondary {
		padding-inline: 31.04px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-card {
		border-radius: 30.039px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility {
		box-shadow: 0 25.033px 15.645px rgba(3, 93, 60, 0.2), 0 10.013px 6.258px rgba(3, 93, 60, 0.2);
		padding: 30.039px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data h2 {
		font-size: 25.033px;
		line-height: 37.549px;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility > p {
		font-size: 16.271px;
		line-height: 26.441px;
		margin-top: 20.026px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility-ratio {
		font-size: 17.523px;
		line-height: 26.284px;
		margin-top: 20.026px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-progress {
		height: 15.02px;
		margin-top: 10.013px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair {
		gap: 15.02px;
		margin-top: 20.026px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair > div {
		background: #fff;
		border-color: rgba(3, 93, 60, 0.14);
		border-radius: 18px;
		color: var(--af-text);
		display: flex;
		flex-direction: column;
		justify-content: center;
		height: auto;
		min-height: 84px;
		min-width: 0;
		padding: 14px 16px;
		box-sizing: border-box;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair span {
		color: var(--af-green);
		font-size: 12px;
		font-weight: 700;
		line-height: 1.3;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair strong {
		color: var(--af-text);
		font-size: clamp(15px, 1.1vw, 17.5px);
		letter-spacing: -0.02em;
		line-height: 1.25;
		margin-top: 4px;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data {
		background: #f7faf9;
		border: 0;
		box-shadow: none;
		padding: 30.039px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl {
		display: flex;
		flex-direction: column;
		gap: 15.02px;
		margin-top: 15.02px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl > div {
		align-items: center;
		min-height: 42.305px;
		padding: 7.51px 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dt,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dd {
		font-size: 17.523px;
		line-height: 26.284px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important {
		box-shadow: 0 1.252px 1.877px rgba(0, 0, 0, 0.1), 0 1.252px 1.252px rgba(0, 0, 0, 0.1);
		padding: 31.04px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important .afcalc-kicker {
		font-size: 15.02px !important;
		letter-spacing: 1.502px;
		line-height: 22.529px !important;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important h2 {
		font-size: 22.529px;
		line-height: 28.162px;
		margin: 15.02px 0 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important > p:last-child {
		font-size: 17.523px;
		line-height: 28.475px;
		margin-top: 15.02px;
	}
}

@media (min-width: 1200px) and (max-width: 1919px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] {
		padding-top: clamp(34px, 2.61vw, 50px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-column {
		gap: clamp(22px, 1.56vw, 30px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero {
		padding: clamp(28px, 2.08vw, 40px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents {
		padding: clamp(26px, 1.88vw, 36px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment {
		font-size: clamp(40px, 2.74vw, 52.5px);
		line-height: 1.1;
		display: flex;
		align-items: baseline;
		gap: 8px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment small {
		font-size: clamp(20px, 1.4vw, 24px);
		font-weight: 600;
		opacity: 0.85;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics > div {
		border-radius: 20px;
		min-height: 96px;
		padding: clamp(16px, 1.09vw, 21px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card {
		min-height: 122px;
	}
}

/* Pas 2 keeps the same visual language between the reference desktop frame
   and the real responsive breakpoints. The 1920px block above remains the
   exact source of truth; these rules interpolate it without shrinking the
   information into unreadable desktop cards. */
.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card {
	transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, color 180ms ease, transform 180ms ease;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility {
	background: var(--af-green);
	border-color: transparent;
	color: #fff;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility h2 {
	color: #fff;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility > p,
.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-eligibility-ratio > span {
	color: rgba(255, 255, 255, 0.76);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-eligibility-ratio b {
	color: var(--af-lime, #c4e325);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-progress {
	background: rgba(255, 255, 255, 0.2);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair > div {
	background: #fff;
	border-color: rgba(3, 93, 60, 0.14);
	color: var(--af-text);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair span {
	color: var(--af-green);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility .afcalc-summary-pair strong {
	color: var(--af-text);
	white-space: nowrap !important;
	font-variant-numeric: tabular-nums;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 18px;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li,
.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-passed,
.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-failed {
	align-items: flex-start;
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(255, 255, 255, 0.17);
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-content: flex-start;
	min-width: 0;
	padding: 12px;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-failed {
	background: rgba(166, 46, 46, 0.24);
	border-color: rgba(255, 205, 196, 0.34);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-check-mark {
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
	height: 28px;
	width: 28px;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-passed .afcalc-check-mark {
	background: var(--af-lime, #c4e325);
	color: var(--af-green);
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-failed .afcalc-check-mark {
	background: #ffd7cf;
	color: #7b332b;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li > span:nth-child(2) {
	gap: 2px;
	min-width: 0;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li strong {
	color: #fff;
	font-size: 11.5px;
	line-height: 1.25;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li small {
	color: rgba(255, 255, 255, 0.72);
	font-size: 10px;
	line-height: 1.35;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li > b,
.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-passed > b {
	color: var(--af-lime, #c4e325);
	font-size: 10px;
	line-height: 1.3;
}

.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-failed > b {
	color: #ffd7cf;
}

@media (min-width: 1181px) {
	.afcalc[data-current-step="2"] .afcalc-hero {
		align-items: flex-end;
	}
}

@media (min-width: 761px) and (max-width: 1919px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero {
		border-radius: clamp(24px, 1.56vw, 30px);
		box-shadow: 0 clamp(18px, 1.3vw, 25px) clamp(13px, 0.82vw, 16px) rgba(3, 93, 60, 0.2);
		display: flex;
		flex-direction: column;
		gap: clamp(19px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-label {
		font-size: clamp(14px, 0.85vw, 16.271px);
		gap: clamp(12px, 0.78vw, 15px);
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-label > span {
		border-radius: clamp(13px, 0.78vw, 15px);
		font-size: clamp(18px, 1.04vw, 20px);
		height: clamp(38px, 2.09vw, 40px);
		width: clamp(38px, 2.09vw, 40px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-subline,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero > p:last-of-type {
		font-size: clamp(16px, 1.11vw, 21.278px);
		line-height: 1.5;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics {
		gap: clamp(12px, 0.78vw, 15px);
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics span {
		font-size: clamp(12px, 0.78vw, 15px);
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics strong {
		font-size: clamp(18px, 1.3vw, 25px);
		line-height: 1.25;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card {
		background: #f7faf9;
		border: 0;
		border-radius: clamp(24px, 1.56vw, 30px);
		box-shadow: none;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > h2 {
		font-size: clamp(25px, 1.56vw, 30px);
		letter-spacing: 0;
		line-height: 1.5;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > p,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > p {
		font-size: clamp(14px, 0.91vw, 17.5px);
		line-height: 1.5;
		margin: 4px 0 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-bar {
		height: clamp(24px, 1.83vw, 35px);
		margin-top: clamp(20px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend {
		gap: clamp(18px, 1.56vw, 30px);
		margin-top: clamp(18px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend > div {
		gap: 0 clamp(8px, 0.65vw, 12.5px);
		grid-template-columns: clamp(11px, 0.78vw, 15px) auto;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend > div > span {
		height: clamp(11px, 0.78vw, 15px);
		width: clamp(11px, 0.78vw, 15px) !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend small {
		font-size: clamp(12px, 0.85vw, 16.2px);
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend strong {
		font-size: clamp(14px, 0.91vw, 17.5px);
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card .afcalc-result-metrics--light {
		margin-top: clamp(20px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents {
		border-radius: clamp(24px, 1.56vw, 30px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-grid {
		gap: clamp(14px, 1.04vw, 20px);
		margin-top: clamp(20px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card {
		border-radius: clamp(20px, 1.3vw, 25px);
		gap: 6px clamp(14px, 1.04vw, 20px);
		grid-template-columns: clamp(46px, 3.13vw, 60px) minmax(0, 1fr);
		min-height: clamp(116px, 6.74vw, 129px);
		padding: clamp(19px, 1.3vw, 25px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card > span {
		border-radius: clamp(13px, 0.91vw, 17.5px);
		height: clamp(46px, 3.13vw, 60px);
		width: clamp(46px, 3.13vw, 60px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card strong {
		font-size: clamp(15px, 1.04vw, 20px);
		line-height: 1.25;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card small {
		font-size: clamp(12px, 0.85vw, 16.2px);
		line-height: 1.4;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-actions--center .afcalc-button {
		border-radius: clamp(17px, 1.04vw, 20px);
		font-size: clamp(15px, 0.91vw, 17.5px);
		min-height: clamp(58px, 3.65vw, 70px);
		padding-inline: clamp(25px, 2.09vw, 40px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-card {
		border-radius: clamp(24px, 1.56vw, 30px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-eligibility,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important {
		padding: clamp(24px, 1.56vw, 30px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data h2 {
		font-size: clamp(22px, 1.3vw, 25px);
		line-height: 1.5;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility > p {
		font-size: clamp(14px, 0.85vw, 16.2px);
		line-height: 1.55;
		margin-top: clamp(15px, 1.04vw, 20px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility-ratio {
		font-size: clamp(15px, 0.91vw, 17.5px);
		line-height: 1.5;
		margin-top: clamp(15px, 1.04vw, 20px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-progress {
		height: clamp(11px, 0.78vw, 15px);
		margin-top: 10px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair {
		gap: clamp(12px, 0.78vw, 15px);
		margin-top: clamp(15px, 1.04vw, 20px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair > div {
		border-radius: clamp(14px, 1.17vw, 18px);
		min-height: clamp(74px, 5vw, 86px);
		height: auto;
		padding: clamp(12px, 0.9vw, 16px) clamp(10px, 0.75vw, 14px);
		overflow: visible;
		display: flex;
		flex-direction: column;
		justify-content: center;
		box-sizing: border-box;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair span {
		font-size: clamp(11px, 0.75vw, 13px);
		font-weight: 700;
		line-height: 1.3;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair strong {
		font-size: clamp(14px, 1.05vw, 17px);
		letter-spacing: -0.02em;
		line-height: 1.25;
		margin-top: 4px;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data {
		background: #f7faf9;
		border: 0;
		box-shadow: none;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl {
		display: flex;
		flex-direction: column;
		gap: clamp(10px, 0.78vw, 15px);
		margin-top: clamp(10px, 0.78vw, 15px);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl > div {
		align-items: center;
		min-height: clamp(36px, 2.2vw, 42px);
		padding: clamp(5px, 0.39vw, 7.5px) 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dt,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dd {
		font-size: clamp(14px, 0.91vw, 17.5px);
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important .afcalc-kicker {
		font-size: clamp(13px, 0.78vw, 15px) !important;
		line-height: 1.5 !important;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important h2 {
		font-size: clamp(18px, 1.17vw, 22.5px);
		line-height: 1.25;
		margin: clamp(10px, 0.78vw, 15px) 0 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important > p:last-child {
		font-size: clamp(14px, 0.91vw, 17.5px);
		line-height: 1.6;
		margin-top: clamp(10px, 0.78vw, 15px);
	}
}

@media (min-width: 761px) and (max-width: 1499px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics--light {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar > * {
		grid-column: auto !important;
	}
}

@media (max-width: 760px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] {
		padding-top: 4px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-column {
		gap: 20px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero {
		display: flex;
		flex-direction: column;
		gap: 18px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-label {
		font-size: 13px;
		gap: 11px;
		line-height: 1.45;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 6px;
		font-size: clamp(30px, 8vw, 38px);
		line-height: 1.1;
		margin: 0 !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment small {
		font-size: clamp(16px, 4.2vw, 20px);
		font-weight: 600;
		line-height: 1;
		color: rgba(255, 255, 255, 0.85);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-subline,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-hero > p:last-of-type {
		font-size: 15px;
		line-height: 1.55;
		margin: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics--light {
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-top: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics > div {
		border-radius: 15px;
		min-height: 88px;
		padding: 14px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics span {
		font-size: 11px;
		line-height: 1.4;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics strong {
		font-size: clamp(16px, 4.6vw, 19px);
		line-height: 1.25;
		margin-top: 6px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-card {
		border-radius: 22px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card {
		background: #f7faf9;
		border: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > h2 {
		font-size: 23px;
		line-height: 1.3;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card > p,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents > p {
		font-size: 14px;
		line-height: 1.5;
		margin-top: 6px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-bar {
		height: 26px;
		margin-top: 20px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend {
		display: grid;
		gap: 10px;
		grid-template-columns: minmax(0, 1fr);
		margin-top: 16px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend small {
		font-size: 12px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-legend strong {
		font-size: 14px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card .afcalc-result-metrics--light {
		margin-top: 20px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-grid {
		gap: 12px;
		margin-top: 20px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card {
		border-radius: 18px;
		grid-template-columns: 44px minmax(0, 1fr);
		min-height: 112px;
		padding: 17px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card > span {
		height: 44px;
		width: 44px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card strong {
		font-size: 15px;
		line-height: 1.35;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-action-card small {
		font-size: 12px;
		line-height: 1.45;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important {
		padding: 22px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility h2,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data h2 {
		font-size: 23px;
		line-height: 1.35;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility > p,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility-ratio {
		font-size: 14px;
		line-height: 1.5;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility-ratio {
		align-items: flex-start;
		gap: 8px;
		margin-top: 17px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-progress {
		height: 12px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair {
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-top: 17px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks {
		grid-template-columns: minmax(0, 1fr);
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-passed,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-checks li.is-failed {
		align-items: center;
		display: grid;
		gap: 10px;
		grid-template-columns: 28px minmax(0, 1fr) auto;
		min-height: 58px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair > div {
		border-radius: 14px;
		min-height: 68px;
		height: auto;
		padding: 10px 10px;
		overflow: visible;
		display: flex;
		flex-direction: column;
		justify-content: center;
		box-sizing: border-box;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair span {
		font-size: 10.5px;
		font-weight: 700;
		line-height: 1.2;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair strong {
		font-size: clamp(12.5px, 3.8vw, 15px);
		line-height: 1.25;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
		letter-spacing: -0.02em;
		margin-top: 4px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data {
		background: #f7faf9;
		border: 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl {
		margin-top: 14px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dl > div {
		align-items: center;
		gap: 14px;
		padding: 10px 0;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dt,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-simulation-data dd {
		font-size: 14px;
		line-height: 1.45;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important .afcalc-kicker {
		font-size: 13px !important;
		line-height: 1.45 !important;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important h2 {
		font-size: 20px;
		line-height: 1.3;
		margin-top: 11px;
	}

	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-important > p:last-child {
		font-size: 14px;
		line-height: 1.6;
	}
}

@media (max-width: 340px) {
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics--light,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   Figma Parity & Mobile UX Enhancements
   ========================================================================== */

/* Quick down payment preset chips (Step 1) */
.afcalc-quick-chips {
	display: flex;
	gap: 8px;
	margin-top: 10px;
	flex-wrap: wrap;
}

.afcalc-quick-chip {
	background: #f0f5f2;
	border: 1px solid rgba(3, 93, 60, 0.12);
	border-radius: 999px;
	padding: 5px 14px;
	font-size: 13px;
	font-weight: 700;
	color: var(--af-green);
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
	font-family: inherit;
}

.afcalc-quick-chip:hover {
	background: var(--af-green-soft);
	border-color: var(--af-green);
}

.afcalc-quick-chip.is-active {
	background: var(--af-green);
	border-color: var(--af-green);
	color: #fff;
}

/* Step 2: Decision Actions (3 buttons under hero card) */
.afcalc-decision-actions {
	display: flex;
	gap: 16px;
	align-items: center;
	margin-top: 24px;
	flex-wrap: wrap;
}

.afcalc-decision-actions .afcalc-button {
	flex: 1;
	min-height: 52px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

.afcalc .afcalc-decision-actions .afcalc-button--secondary,
.afcalc .afcalc-decision-actions a.afcalc-button--secondary {
	background: #fff !important;
	border: 1px solid rgba(3, 93, 60, 0.25) !important;
	color: var(--af-green) !important;
}

.afcalc .afcalc-decision-actions .afcalc-button--secondary:hover,
.afcalc .afcalc-decision-actions a.afcalc-button--secondary:hover {
	background: var(--af-green-soft) !important;
	border-color: var(--af-green) !important;
	color: var(--af-green) !important;
}

/* Step 2: Avantajele PrimaCheie */
.afcalc-advantages {
	margin-top: 24px;
	padding: 30px;
	border-radius: 24px;
	background: #fff;
	border: 1px solid rgba(3, 93, 60, 0.08);
}

.afcalc-advantages h2 {
	font-size: 22px;
	font-weight: 700;
	color: var(--af-text);
	margin: 0 0 20px;
}

.afcalc-advantages-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.afcalc-advantage-item {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #f7faf9;
	border: 1px solid rgba(3, 93, 60, 0.06);
	border-radius: 16px;
	padding: 16px 20px;
	font-size: 15px;
	font-weight: 600;
	color: var(--af-text);
}

.afcalc-advantage-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--af-green);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	flex-shrink: 0;
}

/* Mobile Action Bar - Desktop (Hidden) */
.afcalc-mobile-bar {
	display: none;
}

/* ==========================================================================
   Mobile UX Improvements (Strictly scoped to <= 768px as per Rule 5)
   ========================================================================== */
@media (max-width: 768px) {
	/* Sticky Bottom Action Bar */
	.afcalc-mobile-bar {
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 990;
		background: rgba(255, 255, 255, 0.94);
		backdrop-filter: blur(20px);
		-webkit-backdrop-filter: blur(20px);
		border-top: 1px solid rgba(3, 93, 60, 0.12);
		box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.08);
		padding: 8px 14px calc(8px + env(safe-area-inset-bottom, 0px));
	}

	.afcalc-mobile-bar__inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		max-width: 500px;
		margin: 0 auto;
	}

	.afcalc-mobile-bar__info {
		display: flex;
		flex-direction: column;
		min-width: 0;
		flex: 1 1 auto;
		overflow: hidden;
	}

	.afcalc-mobile-bar__eyebrow {
		display: flex;
		align-items: center;
		gap: 5px;
		font-size: 10px;
		font-weight: 700;
		color: var(--af-muted);
		text-transform: uppercase;
		letter-spacing: 0.03em;
		line-height: 1.2;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.afcalc-mobile-bar__dot {
		color: var(--af-green);
		font-size: 7px;
	}

	.afcalc-mobile-bar__status {
		display: inline-flex;
		align-items: center;
		font-size: 9.5px;
		font-weight: 800;
		padding: 1px 7px;
		border-radius: 999px;
		letter-spacing: 0.02em;
		white-space: nowrap;
		background: rgba(3, 93, 60, 0.08);
		color: var(--af-green);
		transition: background 0.2s ease, color 0.2s ease;
	}

	.afcalc-mobile-bar__status.is-eligible {
		background: rgba(46, 125, 50, 0.12);
		color: #1b633e;
	}

	.afcalc-mobile-bar__status.is-ineligible {
		background: rgba(220, 38, 38, 0.12);
		color: #dc2626;
	}

	.afcalc-mobile-bar.is-empty .afcalc-mobile-bar__dot,
	.afcalc-mobile-bar.is-empty .afcalc-mobile-bar__status {
		display: none !important;
	}

	.afcalc-mobile-bar__value {
		display: flex;
		align-items: baseline;
		gap: 4px;
		line-height: 1.2;
		margin-top: 2px;
		white-space: nowrap;
		overflow: hidden;
	}

	.afcalc-mobile-bar__value strong {
		font-size: 17px;
		font-weight: 800;
		color: var(--af-green);
		letter-spacing: -0.02em;
		font-family: inherit;
		white-space: nowrap;
	}

	.afcalc-mobile-bar__value small {
		font-size: 11px;
		color: var(--af-muted);
		font-weight: 600;
		white-space: nowrap;
	}

	.afcalc-mobile-bar__actions {
		flex-shrink: 0;
	}

	.afcalc-mobile-bar__btn {
		background: var(--af-green);
		color: #fff;
		border: none;
		border-radius: 999px;
		padding: 10px 16px;
		font-size: 13px;
		font-weight: 800;
		letter-spacing: 0.02em;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		cursor: pointer;
		box-shadow: 0 4px 14px rgba(3, 93, 60, 0.22);
		transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
		text-transform: uppercase;
		min-height: 42px;
		font-family: inherit;
		white-space: nowrap;
		flex-shrink: 0;
	}

	.afcalc-mobile-bar__btn:active {
		transform: scale(0.97);
	}

	.afcalc-mobile-bar__arrow {
		font-size: 15px;
		line-height: 1;
	}

	/* Hide floating support widgets on mobile calculator viewports so they never block inputs or CTAs */
	:is(body.single-produse, body.page-id-30, body:has(.afcalc-mobile-bar), .afcalc) .av-floating-actions,
	:is(body.single-produse, body.page-id-30, body:has(.afcalc-mobile-bar), .afcalc) .av-site-actions,
	:is(body.single-produse, body.page-id-30, body:has(.afcalc-mobile-bar), .afcalc) .av-back-to-top {
		display: none !important;
	}

	.afcalc-main {
		padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
	}

	/* Step 2 Decision Actions on Mobile */
	.afcalc-decision-actions {
		flex-direction: column;
		gap: 10px;
	}

	.afcalc-decision-actions .afcalc-button {
		width: 100%;
	}

	/* Advantages grid on mobile */
	.afcalc-advantages-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
	}

	.afcalc-advantages {
		padding: 20px;
		border-radius: 20px;
	}

	.afcalc-advantage-item {
		padding: 12px 14px;
		font-size: 14px;
	}

	/* Slider touch targets on mobile (26px thumb) */
	.afcalc-range::-webkit-slider-thumb {
		width: 26px !important;
		height: 26px !important;
	}

	.afcalc-range::-moz-range-thumb {
		width: 26px !important;
		height: 26px !important;
	}

	/* ── Stepper 100% Responsive Mobile Alignment (<= 768px) ── */
	.afcalc-stepper,
	:is(.av-product-single, .av-site, body) .afcalc-stepper {
		display: flex !important;
		align-items: flex-start !important;
		justify-content: space-between !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 0 16px !important;
		margin: 0 0 24px !important;
		list-style: none !important;
		position: relative !important;
		gap: 0 !important;
		overflow: visible !important;
	}

	.afcalc-stepper li,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		flex: 1 1 0 !important;
		min-width: 0 !important;
		position: relative !important;
		padding: 0 4px !important;
		margin: 0 !important;
	}

	.afcalc-stepper li:last-child,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li:last-child {
		flex: 1 1 0 !important;
	}

	/* Continuous connector line between badges */
	.afcalc-stepper li:not(:last-child)::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li:not(:last-child)::after {
		content: "" !important;
		display: block !important;
		position: absolute !important;
		top: 17px !important;
		left: calc(50% + 20px) !important;
		right: calc(-50% + 20px) !important;
		width: auto !important;
		height: 2px !important;
		background: rgba(3, 93, 60, 0.15) !important;
		border-radius: 2px !important;
		margin: 0 !important;
		z-index: 1 !important;
		align-self: auto !important;
		flex: none !important;
	}

	.afcalc-stepper li.is-complete:not(:last-child)::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete:not(:last-child)::after {
		background: var(--af-green, #035d3c) !important;
	}

	.afcalc-stepper button,
	:is(.av-product-single, .av-site, body) .afcalc-stepper button {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 8px !important;
		width: 100% !important;
		background: transparent !important;
		border: 0 !important;
		padding: 0 !important;
		cursor: pointer !important;
		text-align: center !important;
		position: relative !important;
		z-index: 2 !important;
	}

	.afcalc-step-number,
	:is(.av-product-single, .av-site, body) .afcalc-step-number {
		width: 34px !important;
		height: 34px !important;
		min-width: 34px !important;
		min-height: 34px !important;
		border-radius: 12px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		font-family: 'Manrope', sans-serif !important;
		font-size: 14px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		background: #FFFFFF !important;
		border: 1.5px solid rgba(3, 93, 60, 0.2) !important;
		color: rgba(61, 61, 61, 0.45) !important;
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
		transition: all 0.2s ease !important;
		box-sizing: border-box !important;
		flex: 0 0 34px !important;
	}

	.afcalc-stepper li.is-active .afcalc-step-number,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-active .afcalc-step-number {
		background: var(--af-green, #035d3c) !important;
		border-color: var(--af-green, #035d3c) !important;
		color: #FFFFFF !important;
		box-shadow: 0 4px 12px rgba(3, 93, 60, 0.25) !important;
	}

	.afcalc-stepper li.is-complete .afcalc-step-number,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete .afcalc-step-number {
		background: #035d3c !important;
		border-color: #035d3c !important;
		color: transparent !important;
		position: relative !important;
	}

	.afcalc-stepper li.is-complete .afcalc-step-number::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete .afcalc-step-number::after {
		color: #fff !important;
		content: "✓" !important;
		inset: 0 !important;
		line-height: 34px !important;
		font-size: 15px !important;
		position: absolute !important;
		text-align: center !important;
	}

	.afcalc-stepper button span:not(.afcalc-step-number),
	:is(.av-product-single, .av-site, body) .afcalc-stepper button span:not(.afcalc-step-number) {
		font-family: 'Manrope', sans-serif !important;
		font-size: 12px !important;
		line-height: 1.3 !important;
		font-weight: 600 !important;
		color: rgba(61, 61, 61, 0.5) !important;
		text-align: center !important;
		white-space: normal !important;
		word-break: normal !important;
		hyphens: none !important;
		display: block !important;
		max-width: 100% !important;
		transition: color 0.2s ease !important;
	}

	.afcalc-stepper li.is-active button span:not(.afcalc-step-number),
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-active button span:not(.afcalc-step-number) {
		color: #3D3D3D !important;
		font-weight: 700 !important;
	}

	.afcalc-stepper li.is-complete button span:not(.afcalc-step-number),
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete button span:not(.afcalc-step-number) {
		color: var(--af-green, #035d3c) !important;
	}

	/* ── Section number badge: 44×44 touch target, rounder radius ── */
	.afcalc-section-number {
		min-width: 44px !important;
		min-height: 44px !important;
		width: 44px !important;
		height: 44px !important;
		border-radius: 15px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	/* ── Hero H1: tighter size for small screens ── */
	.afcalc-hero h1 {
		font-size: clamp(22px, 6.5vw, 28px) !important;
	}

	/* ── Currency choice: separate pill buttons instead of a monolithic block ── */
	.afcalc-currency-choice {
		display: flex !important;
		gap: 6px !important;
		background: transparent !important;
		border: none !important;
		padding: 0 !important;
		width: auto !important;
		margin-bottom: 0 !important;
	}

	.afcalc-currency-choice label {
		flex: 1 1 auto !important;
	}

	.afcalc-currency-choice span {
		border: 1px solid rgba(3, 93, 60, 0.18) !important;
		border-radius: 14px !important;
		background: #fff !important;
		min-height: 40px !important;
		padding: 0 14px !important;
		font-size: 14px !important;
		transition: background 0.15s, border-color 0.15s, color 0.15s !important;
	}

	.afcalc-currency-choice input:checked + span {
		background: var(--af-green) !important;
		border-color: var(--af-green) !important;
		color: #fff !important;
		box-shadow: 0 3px 10px rgba(3, 93, 60, 0.2) !important;
	}

	/* ── Property Card Mobile Fix (cover image completely without empty bottom gradient) ── */
	.afcalc-property-card {
		border-radius: 24px !important;
		height: 220px !important;
		min-height: 220px !important;
		max-height: 220px !important;
		overflow: hidden !important;
		position: relative !important;
		box-shadow: none !important;
		width: 100% !important;
		align-self: start !important;
	}

	.afcalc-property-card img {
		display: block !important;
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		object-position: center 30% !important;
		max-width: none !important;
	}

	.afcalc-property-card::after {
		display: none !important;
		content: none !important;
	}

	.afcalc-property-note {
		left: 16px !important;
		top: 16px !important;
		z-index: 2 !important;
	}

	/* ── Mobile: Show Step 1 calculation preview cards ONLY when result exists ── */
	.afcalc:not(.has-result) .afcalc-step-panel[data-calculator-step-panel="1"] .afcalc-sidebar,
	.afcalc:not(.has-result) .afcalc-property-card,
	.afcalc:not(.has-result) .afcalc-live-summary,
	.afcalc:not(.has-result) .afcalc-preliminary-card,
	.afcalc:not(.has-result) .afcalc-capacity-card {
		display: none !important;
	}
}


/* ==========================================================================
   Typography & Vertical Rhythm Safeguards Across All Viewports
   Prevent big headings and small text from colliding or sitting at 0-2px
   ========================================================================== */
.afcalc-section legend > span:last-child {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

.afcalc-section legend strong,
.afcalc-section legend small {
	margin: 0 !important;
}

.afcalc-capacity-card > h2 {
	margin-bottom: 0 !important;
}

.afcalc-capacity-card > p {
	margin-top: 10px !important;
}

@media (max-width: 900px) {
	.afcalc-hero .afcalc-kicker,
	.afcalc-hero-copy > .afcalc-kicker {
		display: block !important;
		margin-bottom: 10px !important;
	}

	.afcalc-hero h1,
	.afcalc-hero-copy > h1 {
		margin-top: 0 !important;
		margin-bottom: 12px !important;
	}

	.afcalc-hero-copy > p:not(.afcalc-kicker),
	.afcalc-hero [data-calculator-hero-intro] {
		margin-top: 0 !important;
	}
}

/* ==========================================================================
   Figma Color & Typography Parity Across All Viewports (Steps 1, 2, 3)
   ========================================================================== */

/* 1. Step 1: Preliminary Grid "Limită estimativă" (.is-limit) dark green card */
.afcalc .afcalc-preliminary-grid > div.is-limit,
:is(.av-home, .av-products-archive, .av-site, body) .afcalc .afcalc-preliminary-grid > div.is-limit {
	background: var(--af-green, #035d3c) !important;
	border-color: var(--af-green, #035d3c) !important;
	color: #ffffff !important;
}

.afcalc .afcalc-preliminary-grid > div.is-limit span,
:is(.av-home, .av-products-archive, .av-site, body) .afcalc .afcalc-preliminary-grid > div.is-limit span {
	color: var(--af-lime, #c4e325) !important;
}

.afcalc .afcalc-preliminary-grid > div.is-limit strong,
:is(.av-home, .av-products-archive, .av-site, body) .afcalc .afcalc-preliminary-grid > div.is-limit strong {
	color: #ffffff !important;
}

/* 2. Step 2: Eligibilitate preliminară — Grad de îndatorare ratio row & lime progress bar */
.afcalc .afcalc-eligibility-ratio {
	display: flex !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	gap: 6px 10px !important;
	flex-wrap: wrap !important;
	font-size: 13px !important;
	line-height: 1.35 !important;
}

.afcalc .afcalc-eligibility-ratio span,
.afcalc .afcalc-eligibility-ratio strong {
	color: #ffffff !important;
	font-weight: 600 !important;
}

.afcalc .afcalc-eligibility-ratio .afcalc-ratio-divider {
	color: rgba(255, 255, 255, 0.5) !important;
	font-weight: 400 !important;
	margin-right: 4px !important;
}

.afcalc .afcalc-eligibility-ratio b {
	color: var(--af-lime, #c4e325) !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
}

.afcalc .afcalc-eligibility:has(.is-over-limit) .afcalc-eligibility-ratio b,
.afcalc .afcalc-eligibility.is-over-limit .afcalc-eligibility-ratio b,
.afcalc .afcalc-eligibility:has(.is-over-limit) .afcalc-eligibility-ratio strong[data-output="debtRatio"],
.afcalc .afcalc-eligibility.is-over-limit .afcalc-eligibility-ratio strong[data-output="debtRatio"] {
	color: #ffd7cf !important;
}

.afcalc .afcalc-eligibility:is(:has(.is-warning:not(.is-over-limit)), .is-warning:not(.is-over-limit)) .afcalc-eligibility-ratio b,
.afcalc .afcalc-eligibility:is(:has(.is-warning:not(.is-over-limit)), .is-warning:not(.is-over-limit)) .afcalc-eligibility-ratio strong[data-output="debtRatio"] {
	color: #fde68a !important;
}

.afcalc .afcalc-eligibility .afcalc-progress {
	background: rgba(255, 255, 255, 0.2) !important;
}

.afcalc .afcalc-eligibility .afcalc-progress > span:not(.is-over-limit):not(.is-warning) {
	background: var(--af-lime, #c4e325) !important;
}

.afcalc .afcalc-eligibility .afcalc-progress > span.is-warning:not(.is-over-limit) {
	background: #f59e0b !important;
}

.afcalc .afcalc-eligibility .afcalc-progress > span.is-over-limit {
	background: #ff6b5b !important;
}

/* 3. Step 2: Cost card (.afcalc-cost-card) inner metric boxes must be white on #f7faf9 card */
.afcalc .afcalc-cost-card .afcalc-result-metrics--light > div {
	background: #ffffff !important;
	border: 1px solid rgba(3, 93, 60, 0.12) !important;
}

/* 4. Step 2 & Step 3: Prevent global .av-site h2 (52px-64px) from inflating calculator card headings on <1700px */
.afcalc .afcalc-advantages h2,
.afcalc .afcalc-cost-card > h2,
.afcalc .afcalc-documents > h2,
.afcalc .afcalc-schedule h2 {
	font-size: clamp(22px, 1.56vw, 30px) !important;
	line-height: 1.3 !important;
	letter-spacing: -0.015em !important;
}

.afcalc .afcalc-contact-copy h2 {
	font-size: clamp(26px, 1.8vw, 34px) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
	color: var(--af-text, #3d3d3d) !important;
}

.afcalc .afcalc-sidebar .afcalc-card > h2,
.afcalc .afcalc-eligibility h2,
.afcalc .afcalc-simulation-data h2,
.afcalc .afcalc-next-steps h2 {
	font-size: clamp(20px, 1.3vw, 25px) !important;
	line-height: 1.3 !important;
	letter-spacing: -0.01em !important;
}

.afcalc .afcalc-eligibility h2 {
	color: #ffffff !important;
}

.afcalc .afcalc-important h2,
.afcalc .afcalc-help h2 {
	font-size: clamp(18px, 1.15vw, 22px) !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em !important;
}

/* 5. Step 3: "Ce se întâmplă după trimitere?" (.afcalc-next-steps) & "Ai nevoie de ajutor" (.afcalc-help) Figma parity */
.afcalc .afcalc-next-steps {
	background: #f7faf9 !important;
	border: 0 !important;
	box-shadow: none !important;
}

.afcalc .afcalc-next-steps li strong {
	font-size: 15px !important;
	line-height: 1.35 !important;
	color: var(--af-text, #3d3d3d) !important;
}

.afcalc .afcalc-next-steps li small {
	font-size: 13px !important;
	line-height: 1.45 !important;
	color: var(--af-muted, #66756d) !important;
	margin-top: 3px !important;
}

.afcalc .afcalc-help p {
	font-size: 14px !important;
	line-height: 1.5 !important;
	color: #554822 !important;
}

/* ==========================================================================
   Small Mobile Viewports Responsiveness (< 425px down to 320px)
   ========================================================================== */
@media (max-width: 425px) {
	.afcalc-main {
		padding-left: 12px !important;
		padding-right: 12px !important;
		padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.afcalc-header {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	.afcalc-card,
	.afcalc-result-hero,
	.afcalc-cost-card,
	.afcalc-documents,
	.afcalc-schedule,
	.afcalc-advantages,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-card {
		padding: 16px 14px !important;
		border-radius: 20px !important;
	}

	.afcalc-stepper,
	:is(.av-product-single, .av-site, body) .afcalc-stepper {
		margin-bottom: 20px !important;
		padding-bottom: 12px !important;
	}

	.afcalc-step-number,
	:is(.av-product-single, .av-site, body) .afcalc-step-number {
		width: 30px !important;
		height: 30px !important;
		min-width: 30px !important;
		min-height: 30px !important;
		border-radius: 10px !important;
		font-size: 13px !important;
		flex: 0 0 30px !important;
	}

	.afcalc-stepper li.is-complete .afcalc-step-number::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete .afcalc-step-number::after {
		line-height: 30px !important;
		font-size: 13px !important;
	}

	.afcalc-stepper li:not(:last-child)::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li:not(:last-child)::after {
		top: 15px !important;
		left: calc(50% + 18px) !important;
		right: calc(-50% + 18px) !important;
	}

	.afcalc-stepper button span:not(.afcalc-step-number),
	:is(.av-product-single, .av-site, body) .afcalc-stepper button span:not(.afcalc-step-number) {
		font-size: 11px !important;
		line-height: 1.2 !important;
	}

	.afcalc-section-number {
		width: 36px !important;
		height: 36px !important;
		min-width: 36px !important;
		min-height: 36px !important;
		border-radius: 12px !important;
		font-size: 15px !important;
	}

	.afcalc-field-display,
	.afcalc-value-control {
		min-height: 44px !important;
	}

	.afcalc-value-control input {
		font-size: 18px !important;
	}

	.afcalc-quick-chips {
		gap: 6px !important;
		margin-top: 8px !important;
	}

	.afcalc-quick-chip {
		padding: 4px 9px !important;
		font-size: 11.5px !important;
		min-height: 28px !important;
	}

	.afcalc-currency-choice span {
		min-height: 36px !important;
		padding: 0 10px !important;
		font-size: 13px !important;
	}

	.afcalc-mobile-bar {
		padding: 7px 10px calc(7px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.afcalc-mobile-bar__inner {
		gap: 8px !important;
	}

	.afcalc-mobile-bar__eyebrow {
		font-size: 9.5px !important;
		gap: 4px !important;
	}

	.afcalc-mobile-bar__status {
		font-size: 8.5px !important;
		padding: 1px 5px !important;
	}

	.afcalc-mobile-bar__value {
		gap: 3px !important;
	}

	.afcalc-mobile-bar__value strong {
		font-size: 15px !important;
	}

	.afcalc-mobile-bar__value small {
		font-size: 10px !important;
	}

	.afcalc-mobile-bar__btn {
		padding: 8px 12px !important;
		font-size: 11.5px !important;
		min-height: 38px !important;
		gap: 4px !important;
	}

	.afcalc-result-hero {
		padding: 18px 14px !important;
	}

	.afcalc-result-label {
		font-size: 11.5px !important;
		gap: 8px !important;
	}

	.afcalc-result-label > span {
		width: 32px !important;
		height: 32px !important;
		font-size: 16px !important;
	}

	.afcalc-result-payment,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment {
		font-size: clamp(26px, 7.5vw, 32px) !important;
		margin-top: 14px !important;
	}

	.afcalc-result-metrics,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics--light {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
		margin-top: 16px !important;
	}

	.afcalc-result-metrics > div,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics > div {
		padding: 10px 8px !important;
		min-height: 72px !important;
		border-radius: 12px !important;
	}

	.afcalc-result-metrics span,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics span {
		font-size: 10px !important;
	}

	.afcalc-result-metrics strong,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics strong {
		font-size: 14.5px !important;
		margin-top: 4px !important;
	}

	.afcalc-eligibility-ratio {
		font-size: 13px !important;
	}

	.afcalc-summary-pair,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair {
		gap: 8px !important;
		margin-top: 12px !important;
	}

	.afcalc-summary-pair > div,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair > div {
		padding: 10px 8px !important;
		min-height: 66px !important;
		height: auto !important;
		border-radius: 12px !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		box-sizing: border-box !important;
	}

	.afcalc-summary-pair strong,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-eligibility .afcalc-summary-pair strong {
		font-size: clamp(11.5px, 3.5vw, 14px) !important;
		white-space: nowrap !important;
		font-variant-numeric: tabular-nums !important;
		letter-spacing: -0.02em !important;
		line-height: 1.25 !important;
		margin-top: 3px !important;
	}

	.afcalc-decision-actions {
		gap: 8px !important;
		margin-top: 16px !important;
	}

	.afcalc-decision-actions .afcalc-button {
		min-height: 44px !important;
		font-size: 13px !important;
		padding: 8px 14px !important;
	}

	.afcalc-schedule-table th,
	.afcalc-schedule-table td {
		padding: 6px 4px !important;
		font-size: 11px !important;
	}
}

@media (max-width: 360px) {
	.afcalc-main {
		padding-left: 8px !important;
		padding-right: 8px !important;
	}

	.afcalc-card,
	.afcalc-result-hero,
	.afcalc-cost-card,
	.afcalc-documents,
	.afcalc-schedule,
	.afcalc-advantages,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-cost-card,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-documents,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-sidebar .afcalc-card {
		padding: 14px 10px !important;
		border-radius: 16px !important;
	}

	.afcalc-step-number,
	:is(.av-product-single, .av-site, body) .afcalc-step-number {
		width: 28px !important;
		height: 28px !important;
		min-width: 28px !important;
		min-height: 28px !important;
		font-size: 12px !important;
		flex: 0 0 28px !important;
		border-radius: 8px !important;
	}

	.afcalc-stepper li.is-complete .afcalc-step-number::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li.is-complete .afcalc-step-number::after {
		line-height: 28px !important;
		font-size: 12px !important;
	}

	.afcalc-stepper li:not(:last-child)::after,
	:is(.av-product-single, .av-site, body) .afcalc-stepper li:not(:last-child)::after {
		top: 14px !important;
		left: calc(50% + 16px) !important;
		right: calc(-50% + 16px) !important;
	}

	.afcalc-stepper button span:not(.afcalc-step-number),
	:is(.av-product-single, .av-site, body) .afcalc-stepper button span:not(.afcalc-step-number) {
		font-size: 9.5px !important;
		line-height: 1.15 !important;
	}

	.afcalc-mobile-bar {
		padding: 6px 8px calc(6px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.afcalc-mobile-bar__inner {
		gap: 6px !important;
	}

	.afcalc-mobile-bar__eyebrow {
		font-size: 9px !important;
	}

	.afcalc-mobile-bar__value strong {
		font-size: 13.5px !important;
	}

	.afcalc-mobile-bar__value small {
		font-size: 9px !important;
	}

	.afcalc-mobile-bar__btn {
		padding: 7px 10px !important;
		font-size: 11px !important;
		min-height: 35px !important;
	}

	.afcalc-result-payment,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-payment {
		font-size: 24px !important;
	}

	.afcalc-result-metrics strong,
	.afcalc-step-panel[data-calculator-step-panel="2"] .afcalc-result-metrics strong {
		font-size: 13.5px !important;
	}
}

/* ==========================================================================
   Mobile Quick Actions & Schedule Jump Hub (Senior UI/UX - Max-Width 768px Only)
   ========================================================================== */

/* Hidden on desktop/PC viewports */
.afcalc-mobile-quick-nav {
	display: none !important;
}

.afcalc-mobile-bar__btn--schedule {
	display: none !important;
}

#afcalc-cost-card,
#afcalc-documents,
#afcalc-schedule {
	scroll-margin-top: 76px;
}

@keyframes afcalcHighlightPulse {
	0% {
		box-shadow: 0 0 0 0 rgba(3, 93, 60, 0.45);
		border-color: #035d3c;
	}
	40% {
		box-shadow: 0 0 0 7px rgba(3, 93, 60, 0.2);
		border-color: #035d3c;
	}
	100% {
		box-shadow: 0 0 0 0 rgba(3, 93, 60, 0);
	}
}

.is-highlight-target {
	animation: afcalcHighlightPulse 1.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

@media (max-width: 768px) {
	.afcalc-mobile-quick-nav {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr);
		gap: 9px;
		margin: 14px 0 16px;
		padding: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.afcalc-quick-chip {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 10px 12px;
		background: #ffffff;
		border: 1px solid rgba(3, 93, 60, 0.14);
		border-radius: 14px;
		color: #0f2d1e;
		text-align: left;
		text-decoration: none;
		cursor: pointer;
		position: relative;
		box-shadow: 0 2px 8px rgba(3, 93, 60, 0.05);
		transition: transform 0.15s ease, background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
		min-height: 56px;
		-webkit-tap-highlight-color: transparent;
		box-sizing: border-box;
	}

	.afcalc-quick-chip:active {
		transform: scale(0.97);
		background: #f0faf4;
		border-color: rgba(3, 93, 60, 0.32);
	}

	.afcalc-quick-chip--schedule {
		background: linear-gradient(135deg, #f2faf5 0%, #ffffff 100%);
		border-color: rgba(3, 93, 60, 0.25);
		box-shadow: 0 3px 10px rgba(3, 93, 60, 0.08);
	}

	.afcalc-quick-chip__icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 34px;
		height: 34px;
		border-radius: 10px;
		background: rgba(3, 93, 60, 0.08);
		color: #035d3c;
		flex-shrink: 0;
		transition: background 0.15s ease, color 0.15s ease;
	}

	.afcalc-quick-chip--schedule .afcalc-quick-chip__icon {
		background: #035d3c;
		color: #ffffff;
		box-shadow: 0 2px 6px rgba(3, 93, 60, 0.25);
	}

	.afcalc-quick-chip__icon svg {
		width: 18px;
		height: 18px;
		stroke: currentColor;
	}

	.afcalc-quick-chip__content {
		display: flex;
		flex-direction: column;
		min-width: 0;
		flex-grow: 1;
	}

	.afcalc-quick-chip__title {
		font-size: 13px;
		font-weight: 700;
		line-height: 1.2;
		color: #0f2d1e;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.afcalc-quick-chip__sub {
		font-size: 10.5px;
		line-height: 1.25;
		color: #5c796b;
		margin-top: 2px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.afcalc-quick-chip__arrow {
		font-size: 12px;
		color: #035d3c;
		opacity: 0.7;
		margin-left: auto;
		flex-shrink: 0;
		font-weight: 700;
	}

	/* Sticky mobile bottom bar schedule button - only on step 2 */
	.afcalc-mobile-bar__btn--schedule {
		display: none !important;
	}

	.afcalc[data-current-step="2"] .afcalc-mobile-bar__btn--schedule {
		background: #eef7f2 !important;
		color: #035d3c !important;
		border: 1px solid rgba(3, 93, 60, 0.22) !important;
		border-radius: 999px !important;
		padding: 8px 12px !important;
		font-size: 12px !important;
		font-weight: 700 !important;
		display: inline-flex !important;
		align-items: center !important;
		gap: 5px !important;
		cursor: pointer !important;
		white-space: nowrap !important;
		transition: background 0.15s ease, transform 0.15s ease, border-color 0.15s ease !important;
		box-shadow: none !important;
	}

	.afcalc-mobile-bar__btn--schedule:active {
		background: #dff0e7 !important;
		transform: scale(0.96) !important;
	}

	.afcalc-mobile-bar__btn--schedule svg {
		width: 14px !important;
		height: 14px !important;
		flex-shrink: 0 !important;
		stroke: currentColor !important;
	}
}

@media (max-width: 360px) {
	.afcalc-mobile-quick-nav {
		gap: 6px !important;
		margin: 10px 0 12px !important;
	}

	.afcalc-quick-chip {
		padding: 8px 9px !important;
		gap: 7px !important;
		min-height: 48px !important;
		border-radius: 12px !important;
	}

	.afcalc-quick-chip__icon {
		width: 28px !important;
		height: 28px !important;
		border-radius: 8px !important;
	}

	.afcalc-quick-chip__icon svg {
		width: 15px !important;
		height: 15px !important;
	}

	.afcalc-quick-chip__title {
		font-size: 11.5px !important;
	}

	.afcalc-quick-chip__sub {
		font-size: 9.5px !important;
	}

	.afcalc-mobile-bar__btn--schedule {
		padding: 6px 9px !important;
		font-size: 11px !important;
	}
}

/* ==========================================================================
   Fintech Exchange Rate Badges & Inline Currency Indicators
   ========================================================================== */
.afcalc-currency-row {
	align-items: center;
	display: flex;
	gap: 22px;
	margin-bottom: 36px;
	flex-wrap: wrap;
}

.afcalc-currency-note {
	display: none !important;
}

.afcalc-currency-rate-live {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 40px;
	padding: 0 16px 0 14px;
	background: #f4f8f6;
	border: 1px solid rgba(3, 93, 60, 0.16);
	border-radius: 999px;
	color: #035D3C;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.01em;
	box-shadow: 0 1px 3px rgba(3, 93, 60, 0.05);
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	user-select: none;
}

.afcalc-currency-rate-live:hover {
	background: #ebf4f0;
	border-color: rgba(3, 93, 60, 0.28);
}

.afcalc-rate-swap-icon {
	color: #035D3C;
	opacity: 0.7;
	flex-shrink: 0;
}

.afcalc-rate-source-tag {
	display: inline-flex;
	align-items: center;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 3px 9px;
	background: rgba(3, 93, 60, 0.09);
	color: #035D3C;
	border: 1px solid rgba(3, 93, 60, 0.14);
	border-radius: 999px;
	line-height: 1.2;
}

.afcalc-rate-source-tag:empty,
.afcalc-rate-source-tag[hidden],
.afcalc-live-rate-chip__tag:empty,
.afcalc-live-rate-chip__tag[hidden] {
	display: none !important;
}

@media (max-width: 768px) {
	.afcalc-currency-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
		margin-bottom: 24px;
	}

	.afcalc-currency-rate-live {
		height: 36px;
		padding: 0 13px 0 11px;
		font-size: 12.5px;
		gap: 8px;
	}
}

/* ==========================================================================
   Applied Exchange Rate Badges & Chips (Senior Fintech UI/UX)
   ========================================================================== */

/* 1. Step 1 Live Summary Frosted Chip (on dark green card) */
.afcalc-live-summary {
	min-height: 350px !important;
	padding: clamp(28px, 2.2vw, 36px) !important;
}

.afcalc-live-summary > p:not(.afcalc-kicker) {
	margin-top: 16px !important;
	margin-bottom: 18px !important;
}

.afcalc-live-rate-chip {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: 0;
	margin-bottom: 24px;
	padding: 5px 14px 5px 12px;
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.20);
	border-radius: 999px;
	color: #ffffff;
	font-family: inherit;
	font-size: 12.5px;
	line-height: 1.3;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	user-select: none;
	max-width: 100%;
}

.afcalc-live-rate-chip:hover {
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(255, 255, 255, 0.32);
}

.afcalc-live-rate-chip__icon {
	color: #8CE5BE;
	flex-shrink: 0;
	opacity: 0.95;
}

.afcalc-live-rate-chip__rate {
	color: #ffffff;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: -0.01em;
}

.afcalc-live-rate-chip__tag {
	display: inline-flex;
	align-items: center;
	padding: 2.5px 8px;
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	color: #ffffff;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.2;
}

.afcalc-live-summary .afcalc-summary-pair {
	margin-top: 0 !important;
	gap: 16px !important;
}

/* 2. Step 2 Metric Tile ([data-applied-rate-col]) */
[data-applied-rate-col] {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.afcalc-metric-rate-wrap {
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 6px;
}

.afcalc-metric-rate-wrap strong {
	font-size: 15px !important;
	color: #035D3C !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em;
	line-height: 1.2;
}

.afcalc-metric-rate-tag {
	display: inline-flex;
	align-items: center;
	padding: 1.5px 6px;
	background: rgba(3, 93, 60, 0.08);
	border: 1px solid rgba(3, 93, 60, 0.14);
	border-radius: 999px;
	font-size: 9.5px;
	font-weight: 700;
	color: #035D3C;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	line-height: 1.2;
}

/* 3. Step 2 & Step 3 Sidebar Definition Lists ([data-applied-rate-row]) */
[data-applied-rate-row] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.afcalc-sidebar-rate {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-align: right;
	margin: 0;
}

.afcalc-sidebar-rate__val {
	font-size: 13.5px;
	font-weight: 700;
	color: #035D3C;
	letter-spacing: -0.01em;
}

.afcalc-sidebar-rate__tag {
	display: inline-flex;
	align-items: center;
	padding: 1.5px 6px;
	background: rgba(3, 93, 60, 0.08);
	border: 1px solid rgba(3, 93, 60, 0.14);
	border-radius: 999px;
	font-size: 9.5px;
	font-weight: 700;
	color: #035D3C;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	line-height: 1.2;
}

/* Fallback / legacy support */
.afcalc-rate-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 10px;
	margin-bottom: 4px;
	padding: 5px 12px;
	background: rgba(3, 93, 60, 0.06);
	border: 1px solid rgba(3, 93, 60, 0.12);
	border-radius: 999px;
	font-size: 12.5px;
	color: #035D3C;
}

@media (max-width: 768px) {
	.afcalc-live-rate-chip {
		font-size: 11.5px;
		padding: 4px 11px 4px 9px;
		gap: 6px;
		margin-top: 0;
		margin-bottom: 18px;
	}

	.afcalc-live-rate-chip__tag {
		font-size: 9.5px;
		padding: 1.5px 6px;
	}

	.afcalc-sidebar-rate {
		flex-wrap: wrap;
		justify-content: flex-end;
	}
}
