/**
 * EV Road Tax Calculator — RTG calculator design system.
 *
 * GOVERNANCE
 * ----------
 * Participates in the shared `_rtg-calculator-system.css` via `body.rtg-calculator-page`
 * (added in `pages/ev-road-tax-calculator.php`). All visual numbers — shell, prose lane,
 * module rhythm, heading cadence, colors — are read THROUGH shared `--rtg-cps-*` tokens
 * so this page inherits Road Tax visual identity.
 *
 * `--rtg-evx-*` aliases are kept as a stable name surface for existing page-local rules;
 * they now resolve to `--rtg-cps-*` (Road Tax canonical values).
 */
.rtg-ev-road-tax-calculator {
	--rtg-evx-module-radius:        var(--rtg-cps-module-radius);
	--rtg-evx-module-border:        var(--rtg-cps-module-border);
	--rtg-evx-module-border-soft:   var(--rtg-cps-module-border-soft);
	--rtg-evx-module-tint:          var(--rtg-cps-module-tint);
	--rtg-evx-module-tint-deep:     var(--rtg-cps-module-tint-deep);
	--rtg-evx-text:                 var(--rtg-cps-text);
	--rtg-evx-text-soft:            var(--rtg-cps-text-soft);
	--rtg-evx-shell-max:            var(--rtg-cps-shell-max);
	--rtg-evx-prose-max:            var(--rtg-cps-prose-max);
	--rtg-evx-module-pad-x:         var(--rtg-cps-module-pad-x);
	--rtg-evx-module-pad-y:         var(--rtg-cps-module-pad-y);
	--rtg-evx-module-gap:           var(--rtg-cps-module-gap);
	--rtg-evx-shadow:               var(--rtg-cps-calc-shadow);
}

.rtg-ev-road-tax-calculator .elementor-heading-title {
	font-family: inherit;
}

.rtg-ev-road-tax-calculator .elementor-widget-text-editor p {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.84;
	color: var(--rtg-evx-text);
	margin: 0 0 0.92rem;
}

.rtg-ev-road-tax-calculator .elementor-widget-text-editor p a {
	color: #1969aa;
	font-weight: 600;
}

/* Shell */
.rtg-ev-road-tax-calculator .elementor > .elementor-element.e-con-boxed > .e-con-inner {
	max-width: var(--rtg-evx-shell-max);
	margin-left: auto;
	margin-right: auto;
}

.rtg-ev-road-tax-calculator .elementor > section.elementor-top-section.elementor-section-boxed {
	margin-top: 0.48rem;
	margin-bottom: 0.52rem;
}

.rtg-ev-road-tax-calculator .elementor-section:first-of-type,
.rtg-ev-road-tax-calculator .elementor-element.elementor-element-4041fe4 {
	margin-bottom: 0;
}

.rtg-ev-road-tax-calculator .elementor-element-4041fe4 > .elementor-container {
	max-width: var(--rtg-evx-shell-max);
	margin-left: auto;
	margin-right: auto;
}

/* Match road-tax H1 widget rhythm (post-314: 30px vertical on .elementor-widget-container) */
.rtg-ev-road-tax-calculator .elementor-element-4041fe4 .elementor-widget-heading .elementor-widget-container {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	max-width: var(--rtg-evx-shell-max);
	padding: 30px 0;
}

.rtg-ev-road-tax-calculator .elementor-element-4041fe4 .elementor-heading-title {
	text-align: center;
	margin-bottom: 0;
	line-height: 1.2;
}

/* JPJ subtitle — air after dotted hero + before spacer band (road: subtitle sits in hero; EV split layout) */
.rtg-ev-road-tax-calculator .elementor-element-d7a09ec > .e-con-inner {
	max-width: var(--rtg-evx-prose-max);
	margin-left: auto;
	margin-right: auto;
	padding: 0.85rem 0 0.95rem;
}

.rtg-ev-road-tax-calculator .elementor-element-d7a09ec .elementor-heading-title {
	text-align: center;
	font-size: clamp(0.95rem, 1.65vw, 1.12rem);
	font-weight: 600;
	color: var(--rtg-evx-text-soft);
	line-height: 1.38;
	margin: 0 auto;
	max-width: 38rem;
}

/* Prose width */
.rtg-ev-road-tax-calculator .e-con-boxed .elementor-widget-heading .elementor-widget-container,
.rtg-ev-road-tax-calculator
	.e-con-boxed
	.elementor-widget-text-editor
	.elementor-widget-container:not(:has(.rtg-evx-rate-grid)) {
	max-width: var(--rtg-evx-prose-max);
	margin-left: 0;
	margin-right: 0;
}

.rtg-ev-road-tax-calculator section.elementor-section-boxed .elementor-widget-heading .elementor-widget-container,
.rtg-ev-road-tax-calculator
	section.elementor-section-boxed
	.elementor-widget-text-editor
	.elementor-widget-container {
	max-width: var(--rtg-evx-prose-max);
	margin-left: auto;
	margin-right: auto;
}

/* Section rhythm — match .rtg-road-tax-calculator top-level boxed blocks */
.rtg-ev-road-tax-calculator .elementor > .elementor-element.e-con-boxed {
	margin-top: 0.48rem;
	margin-bottom: 0.52rem;
}

.rtg-ev-road-tax-calculator
	.elementor
	> .elementor-element.e-con-boxed
	+ .elementor-element.e-con-boxed
	> .e-con-inner {
	padding-top: 0.28rem;
}

/* Calculator band — integrated shell (road-tax calculator shell rhythm) */
.rtg-ev-road-tax-calculator .elementor-element-23bbd66.e-con-boxed {
	margin-top: 0.35rem;
	margin-bottom: 0.9rem;
	max-width: var(--rtg-evx-shell-max);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid var(--rtg-evx-module-border);
	border-radius: var(--rtg-evx-module-radius);
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	box-shadow: var(--rtg-evx-shadow);
	padding: calc(var(--rtg-evx-module-pad-y) * 1.28) calc(var(--rtg-evx-module-pad-x) * 1.1);
}

/* Calculator inner — taller field/button rhythm + disclaimer air */
.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .calculator-container {
	padding: 1.52rem 1.28rem;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .form-group {
	margin-bottom: 1.22rem;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .form-group label {
	margin-bottom: 0.48rem;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .form-group input,
.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .form-group select {
	padding: 14px 15px;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .calculator-container button {
	padding: 16px 17px;
	margin-top: 0.52rem;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc #road-tax-output {
	margin-top: 1.28rem;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .source-link {
	margin-top: 1.18rem;
	line-height: 1.5;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 > .e-con-inner {
	padding: 0 !important;
	margin: 0 !important;
	max-width: 100% !important;
}

.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .elementor-widget-html .elementor-widget-container {
	margin: 0;
	padding: 0;
}

/* Intro after calculator — align with road-tax post-calculator breathing */
.rtg-ev-road-tax-calculator .elementor-element-e203011.e-con-boxed {
	margin-top: 0.35rem;
}

/* Modular surfaces — outer e-con-boxed */
.rtg-ev-road-tax-calculator :is(
		.elementor-element-e203011,
		.elementor-element-f3d2df1,
		.elementor-element-1001bb7,
		.elementor-element-b62bcd5,
		.elementor-element-49599f1,
		.elementor-element-f5204a9,
		.elementor-element-e52ebeb,
		.elementor-element-1aa5a12
	).e-con-boxed {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid var(--rtg-evx-module-border);
	border-radius: var(--rtg-evx-module-radius);
	background: #ffffff;
	box-shadow: var(--rtg-evx-shadow);
	padding: var(--rtg-evx-module-pad-y) var(--rtg-evx-module-pad-x);
	max-width: var(--rtg-evx-shell-max);
	margin-left: auto;
	margin-right: auto;
}

.rtg-ev-road-tax-calculator :is(
		.elementor-element-e203011,
		.elementor-element-f3d2df1,
		.elementor-element-1001bb7,
		.elementor-element-b62bcd5,
		.elementor-element-49599f1,
		.elementor-element-f5204a9,
		.elementor-element-e52ebeb,
		.elementor-element-1aa5a12
	).e-con-boxed
	> .e-con-inner {
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0.56rem !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.rtg-ev-road-tax-calculator .elementor-element-e203011.e-con-boxed,
.rtg-ev-road-tax-calculator .elementor-element-f3d2df1.e-con-boxed {
	background: linear-gradient(180deg, #fbfcfe 0%, #f6f9fd 100%);
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7.e-con-boxed {
	background: linear-gradient(180deg, #ffffff 0%, #f3f7fb 100%);
}

.rtg-ev-road-tax-calculator .elementor-element-b62bcd5.e-con-boxed {
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
	border-color: #d0dfee;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1.e-con-boxed {
	background: linear-gradient(180deg, #f9fbfd 0%, #ffffff 100%);
	border-color: #d7e6f4;
	padding-top: 1.12rem;
	padding-bottom: 1.1rem;
}

.rtg-ev-road-tax-calculator .elementor-element-f5204a9.e-con-boxed {
	background: #ffffff;
}

.rtg-ev-road-tax-calculator .elementor-element-e52ebeb.e-con-boxed {
	background: #ffffff;
	padding-top: 1.06rem;
	padding-bottom: 1.04rem;
}

.rtg-ev-road-tax-calculator .elementor-element-1aa5a12.e-con-boxed {
	background: linear-gradient(180deg, #ffffff 0%, #f5f8fc 100%);
	padding-top: 1.1rem;
	padding-bottom: 1.08rem;
}

/* Heading-only “Understanding” — no double card */
.rtg-ev-road-tax-calculator .elementor-element-f02bf05.e-con-boxed {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0.2rem 0 0;
	max-width: var(--rtg-evx-shell-max);
}

.rtg-ev-road-tax-calculator .elementor-element-f02bf05 .elementor-widget-heading h2.elementor-heading-title {
	border-top: none;
	padding-top: 0;
	margin-top: 0.22rem;
	margin-bottom: 0.52rem;
}

.rtg-ev-road-tax-calculator .elementor-element-f02bf05 > .e-con-inner {
	padding-bottom: 0 !important;
}

.rtg-ev-road-tax-calculator .elementor-element-f02bf05 + .elementor-element-f3d2df1.e-con-boxed {
	margin-top: 0.22rem;
}

/* “Understanding Road Tax…” body — extra vertical ease */
.rtg-ev-road-tax-calculator .elementor-element-f3d2df1.e-con-boxed {
	padding-top: calc(var(--rtg-evx-module-pad-y) * 1.1);
	padding-bottom: calc(var(--rtg-evx-module-pad-y) * 1.18);
}

.rtg-ev-road-tax-calculator .elementor-element-f3d2df1 .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

/* Headings — road-tax hierarchy */
.rtg-ev-road-tax-calculator .elementor-widget-heading .elementor-heading-title {
	color: #12263a;
	line-height: 1.23;
	margin-bottom: 0.32rem;
}

.rtg-ev-road-tax-calculator .elementor-widget-heading h2.elementor-heading-title {
	font-size: clamp(1.25rem, 2vw, 1.58rem);
	font-weight: 700;
	letter-spacing: -0.015em;
	margin-top: 0.22rem;
	margin-bottom: 0.58rem;
	padding-top: 0.18rem;
	border-top: 1px solid #eff4f9;
}

.rtg-ev-road-tax-calculator .elementor-element-4041fe4 .elementor-heading-title,
.rtg-ev-road-tax-calculator .elementor-element-d7a09ec .elementor-heading-title {
	border-top: none;
	padding-top: 0;
	margin-top: 0;
}

.rtg-ev-road-tax-calculator .elementor-widget-heading h3.elementor-heading-title {
	font-size: clamp(1.03rem, 1.45vw, 1.22rem);
	margin-top: 0.12rem;
	margin-bottom: 0.32rem;
}

.rtg-ev-road-tax-calculator .elementor-widget-heading h4.elementor-heading-title {
	font-size: 1rem;
	margin-bottom: 0.32rem;
	line-height: 1.32;
}

/* Spacer fatigue — suppress empty spacer-only parents (keep hero rhythm spacers: ca4cf9b 50px, a258e80/3d3e57c 20px — matches Elementor post-1748, parallels road-tax top + interstitial spacers) */
.rtg-ev-road-tax-calculator :is(
	.elementor-element-8d2a809,
	.elementor-element-8e1cc3f,
	.elementor-element-94b442c,
	.elementor-element-bc1ed8b,
	.elementor-element-df652dd,
	.elementor-element-8768a17,
	.elementor-element-500ecdc,
	.elementor-element-1e8f47f,
	.elementor-element-f30a853,
	.elementor-element-516bcb1
) {
	display: none !important;
}

/* Duplicate sticky TOP from snapshot */
.rtg-ev-road-tax-calculator .elementor-element-64042c7 {
	display: none !important;
}

/* --- Why Choose EV — 2×2 feature grid --- */
.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .e-con-inner {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.78rem 1rem;
	align-items: stretch;
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .elementor-widget-heading {
	grid-column: 1 / -1;
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .elementor-widget-text-editor {
	grid-column: 1 / -1;
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .elementor-widget-image-box .elementor-image-box-wrapper {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.4rem;
	padding: 0.72rem 0.82rem;
	border: 1px solid var(--rtg-evx-module-border-soft);
	border-radius: 10px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	min-height: 100%;
	box-sizing: border-box;
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .elementor-image-box-title {
	font-size: 0.98rem;
	margin: 0;
	color: #12263a;
}

.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .elementor-image-box-description {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.45;
	color: var(--rtg-evx-text-soft);
}

/* --- EV kW rate bands — card grid --- */
.rtg-ev-road-tax-calculator .elementor-element-49599f1 .e-con-inner {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.78rem 0.92rem;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-widget-heading,
.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-widget-text-editor {
	grid-column: 1 / -1;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-widget-image-box .elementor-image-box-wrapper {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 0.72rem;
	padding: 0.68rem 0.78rem;
	border: 1px solid #dbe8f4;
	border-radius: 10px;
	background: linear-gradient(135deg, #ffffff 0%, #f0f6fc 100%);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-image-box-img {
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-image-box-img img {
	width: 28px;
	height: 28px;
	object-fit: contain;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-image-box-title {
	margin: 0 0 0.15rem;
	font-size: 0.95rem;
	color: #0f2942;
}

.rtg-ev-road-tax-calculator .elementor-element-49599f1 .elementor-image-box-description {
	margin: 0;
	font-size: 0.88rem;
	font-weight: 600;
	color: #2b6cb0;
}

/* --- Calculator benefits — compact utility row --- */
.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .e-con-inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.68rem 0.78rem;
}

.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .elementor-widget-heading,
.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .elementor-widget-text-editor {
	grid-column: 1 / -1;
}

.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .elementor-widget-image-box .elementor-image-box-wrapper {
	padding: 0.68rem 0.72rem;
	border: 1px solid var(--rtg-evx-module-border-soft);
	border-radius: 10px;
	background: #fbfcfe;
	min-height: 100%;
}

.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .elementor-image-box-title {
	font-size: 0.92rem;
	margin: 0 0 0.2rem;
}

.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .elementor-image-box-description {
	font-size: 0.84rem;
	line-height: 1.42;
	margin: 0;
	color: var(--rtg-evx-text-soft);
}

/* --- How to use — numbered list rhythm --- */
.rtg-ev-road-tax-calculator .elementor-element-e52ebeb .elementor-widget-text-editor ul {
	margin: 0.45rem 0 0;
	padding-left: 1.35rem;
	counter-reset: rtg-evx-step;
	list-style: none;
}

.rtg-ev-road-tax-calculator .elementor-element-e52ebeb .elementor-widget-text-editor li {
	position: relative;
	margin-bottom: 0.62rem;
	padding-left: 0.15rem;
	line-height: 1.58;
}

.rtg-ev-road-tax-calculator .elementor-element-e52ebeb .elementor-widget-text-editor li::before {
	counter-increment: rtg-evx-step;
	content: counter(rtg-evx-step);
	position: absolute;
	left: -1.35rem;
	top: 0.08rem;
	width: 1.28rem;
	height: 1.28rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #1f4f7a;
	color: #fff;
	font-size: 0.68rem;
	font-weight: 700;
}

/* --- Regional comparison --- */
.rtg-ev-road-tax-calculator .elementor-element-1aa5a12 .elementor-element-0a7990f ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.68rem 0.88rem;
	list-style: none;
	padding: 0;
	margin: 0.42rem 0 0.58rem;
}

.rtg-ev-road-tax-calculator .elementor-element-1aa5a12 .elementor-element-0a7990f li {
	margin: 0;
	padding: 0.72rem 0.82rem;
	border: 1px solid var(--rtg-evx-module-border-soft);
	border-radius: 10px;
	background: #ffffff;
	font-size: 0.92rem;
	line-height: 1.48;
}

/* --- FAQ (faq-system.js) — match road-tax .faq-section.e-con-boxed rhythm --- */
.rtg-ev-road-tax-calculator .rtg-faq-section.rtg-faq-section--unified {
	max-width: var(--rtg-evx-shell-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-top: 0.75rem !important;
	margin-bottom: 0.85rem !important;
}

.rtg-ev-road-tax-calculator .elementor-element-74800e9.e-con-boxed {
	max-width: var(--rtg-evx-shell-max);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0.85rem;
	padding: 0.72rem 0.88rem;
	border: 1px solid var(--rtg-evx-module-border-soft);
	border-radius: var(--rtg-evx-module-radius);
	background: #fbfcfd;
}

.rtg-ev-road-tax-calculator .elementor-element-74800e9 > .e-con-inner {
	padding: 0 !important;
}

/* Note callout link */
.rtg-ev-road-tax-calculator .elementor-element-b62bcd5 .elementor-heading-title a {
	color: #12263a;
	text-decoration: none;
}

.rtg-ev-road-tax-calculator .elementor-element-b62bcd5 .elementor-heading-title a:hover {
	color: #1969aa;
}

@media (max-width: 767px) {
	.rtg-ev-road-tax-calculator {
		--rtg-evx-shell-max: min(1040px, calc(100% - 1.2rem));
	}

	.rtg-ev-road-tax-calculator .elementor-element-1001bb7 .e-con-inner {
		grid-template-columns: 1fr;
	}

	.rtg-ev-road-tax-calculator .elementor-element-49599f1 .e-con-inner {
		grid-template-columns: 1fr;
	}

	.rtg-ev-road-tax-calculator .elementor-element-f5204a9 .e-con-inner {
		grid-template-columns: 1fr;
	}

	.rtg-ev-road-tax-calculator .elementor-element-1aa5a12 .elementor-element-0a7990f ul {
		grid-template-columns: 1fr;
	}

	.rtg-ev-road-tax-calculator .elementor-element-23bbd66.e-con-boxed {
		padding: 0.95rem 0.78rem;
		margin-bottom: 0.9rem;
	}

	.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .calculator-container {
		padding: 1.28rem 1.05rem;
	}

	.rtg-ev-road-tax-calculator .elementor-element-23bbd66 .rtg-ev-calc .form-group {
		margin-bottom: 1.05rem;
	}

	.rtg-ev-road-tax-calculator .elementor-widget-text-editor p {
		font-size: 15px;
		line-height: 1.76;
		margin-bottom: 0.82rem;
	}

	.rtg-ev-road-tax-calculator :is(
			.elementor-element-e203011,
			.elementor-element-f3d2df1,
			.elementor-element-1001bb7,
			.elementor-element-b62bcd5,
			.elementor-element-49599f1,
			.elementor-element-f5204a9,
			.elementor-element-e52ebeb,
			.elementor-element-1aa5a12
		).e-con-boxed {
		padding: calc(var(--rtg-evx-module-pad-y) * 0.9) calc(var(--rtg-evx-module-pad-x) * 0.88);
	}

	/* Preserve road-tax-like vertical ease on dense grid modules (shorthand above resets sides) */
	.rtg-ev-road-tax-calculator .elementor-element-49599f1.e-con-boxed,
	.rtg-ev-road-tax-calculator .elementor-element-1aa5a12.e-con-boxed,
	.rtg-ev-road-tax-calculator .elementor-element-e52ebeb.e-con-boxed {
		padding-top: 1rem;
		padding-bottom: 0.98rem;
	}
}
