/* ==========================================================================
   Gold Loan Calculator Pro — frontend
   Every selector is scoped under .glc-calculator:not(#glc-iso):not(#glc-iso2). Theming is done through
   CSS custom properties so Elementor controls and admin settings can override
   them without specificity fights with theme / Elementor Kit styles.
   ========================================================================== */

.glc-calculator {
	--glc-primary: #0b4ea2;
	--glc-primary-strong: color-mix(in srgb, var(--glc-primary) 82%, #000);
	--glc-primary-soft: color-mix(in srgb, var(--glc-primary) 9%, #fff);
	--glc-heading: #0a1a3a;
	--glc-text: #34405a;
	--glc-muted: #66728c;
	--glc-cta: #d71920;
	--glc-cta-hover: color-mix(in srgb, var(--glc-cta) 85%, #000);
	--glc-success: #15803d;
	--glc-success-soft: color-mix(in srgb, var(--glc-success) 10%, #fff);
	--glc-danger: #c0262d;
	--glc-page-bg: #f5f8fd;
	--glc-card-bg: #ffffff;
	--glc-border: #e2e8f2;
	--glc-input-bg: #ffffff;
	--glc-input-border: #d5deeb;
	--glc-input-height: 48px;
	--glc-radius: 16px;
	--glc-radius-sm: 10px;
	--glc-shadow: 0 1px 2px rgba(16, 36, 80, .04), 0 12px 32px -12px rgba(16, 36, 80, .12);
	--glc-gap: 24px;
	--glc-field-gap: 18px;
	--glc-card-pad: 32px;
	--glc-font: inherit;
	--glc-btn-bg: var(--glc-primary);
	--glc-btn-bg-hover: var(--glc-primary-strong);
}

/* ==========================================================================
   Isolation layer
   Every rule below is scoped as `.glc-calculator:not(#glc-iso):not(#glc-iso2) …`. Each
   :not(#id) adds one ID-level of specificity without needing a real ID, giving (2,1,0)+,
   so theme selectors — even ID-qualified ones like `#page input[type=submit]` (1,1,1) —
   cannot override us.
   CSS variables above stay at class level so Elementor controls and admin colours
   still override them. Never give any element the id "glc-iso" or "glc-iso2".
   ========================================================================== */

/* Revert all theme (author) styles on every descendant and pseudo-element.
   SVG icons and third-party CAPTCHA widgets are excluded: `all` would also wipe
   SVG presentation attributes and the widgets' own styling. */
.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(*:not(svg, svg *, .glc-captcha__widget *)),
.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(*:not(svg, svg *, .glc-captcha__widget *))::before,
.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(*:not(svg, svg *, .glc-captcha__widget *))::after {
	all: revert;
	box-sizing: border-box;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(*:not(svg, svg *, .glc-captcha__widget *))::before,
.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(*:not(svg, svg *, .glc-captcha__widget *))::after {
	content: none;
}

/* SVG icons: neutralise theme rules such as `svg { width: 100% }` or `svg path { fill }`.
   Never use `all` here: path data (d) and circle geometry (cx, cy, r) are CSS properties
   in modern browsers and would be wiped. :where() keeps this at (1,1,0) so component
   rules (.glc-control__icon etc.) still win. */
.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(svg.glc-icon) {
	display: inline-block;
	position: static;
	float: none;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	min-width: 0;
	max-width: none;
	min-height: 0;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	filter: none;
	opacity: 1;
	transform: none;
	transition: none;
	vertical-align: middle;
	overflow: visible;
	letter-spacing: normal;
	word-spacing: normal;
	fill: none;
	stroke: currentColor;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) :where(svg.glc-icon) :where(*) {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	opacity: 1;
	transform: none;
	transition: none;
	filter: none;
	letter-spacing: normal;
	word-spacing: normal;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) {
	all: revert;
	container-type: inline-size;
	container-name: glc;
	box-sizing: border-box;
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: clamp(16px, 3vw, 40px) clamp(12px, 2.5vw, 32px);
	background: var(--glc-page-bg);
	color: var(--glc-text);
	font-family: var(--glc-font);
	font-size: 15px;
	line-height: 1.5;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	/* Lock inherited text properties so page/theme values cannot seep in. */
	font-style: normal;
	font-weight: 400;
	font-variant: normal;
	letter-spacing: normal;
	word-spacing: normal;
	text-transform: none;
	text-indent: 0;
	text-shadow: none;
	text-decoration: none;
	white-space: normal;
	word-break: normal;
	overflow-wrap: break-word;
	hyphens: manual;
	list-style: none;
	cursor: auto;
	float: none;
	clear: both;
	isolation: isolate;
	transition: none;
	animation: none;
	outline: 0;
	border: 0;
	box-shadow: none;
	min-height: 0;
	max-width: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) *,
.glc-calculator:not(#glc-iso):not(#glc-iso2) *::before,
.glc-calculator:not(#glc-iso):not(#glc-iso2) *::after {
	box-sizing: border-box;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) p,
.glc-calculator:not(#glc-iso):not(#glc-iso2) h2,
.glc-calculator:not(#glc-iso):not(#glc-iso2) dl,
.glc-calculator:not(#glc-iso):not(#glc-iso2) dd,
.glc-calculator:not(#glc-iso):not(#glc-iso2) ol,
.glc-calculator:not(#glc-iso):not(#glc-iso2) ul,
.glc-calculator:not(#glc-iso):not(#glc-iso2) fieldset,
.glc-calculator:not(#glc-iso):not(#glc-iso2) legend {
	margin: 0;
	padding: 0;
	border: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) [hidden] {
	display: none !important;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-icon {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	vertical-align: middle;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-sr,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hp {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hp * {
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	flex: 0 0 auto;
}

/* Wide: break out of narrow theme content columns (e.g. block themes' 645px content width). */
.glc-calculator:not(#glc-iso):not(#glc-iso2).glc-calculator--wide {
	/* Centre on the parent with left/translate: block themes force margin-inline:auto !important
	   on content children, which would otherwise pin an over-wide element to the left. */
	position: relative;
	left: 50%;
	width: min(1400px, 100vw - 32px);
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	translate: -50% 0;
}

/* Phones: go edge to edge (mobile scrollbars overlay, so 100vw is safe here). */
@media (max-width: 600px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2).glc-calculator--wide {
		width: 100vw;
		padding-left: 10px;
		padding-right: 10px;
	}
}

/* ---------- Header ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-header {
	max-width: 760px;
	margin: 0 auto 36px;
	text-align: center;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-header__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 5px 14px;
	border: 1px solid color-mix(in srgb, var(--glc-primary) 30%, #fff);
	border-radius: 999px;
	background: var(--glc-primary-soft);
	color: var(--glc-primary);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-header__title {
	margin: 18px 0 12px;
	color: var(--glc-heading);
	font-family: var(--glc-font);
	font-size: clamp(30px, 5vw, 52px);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.08;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-header__accent {
	color: var(--glc-primary);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-header__subtitle {
	max-width: 62ch;
	margin: 0 auto;
	color: var(--glc-muted);
	font-size: clamp(15px, 1.6vw, 18px);
}

/* ---------- Layout ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--glc-gap);
	max-width: 1360px;
	margin: 0 auto;
	align-items: start;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-col {
	min-width: 0;
}

/* Themes such as Hello Elementor set white-space: nowrap on every button. */
.glc-calculator:not(#glc-iso):not(#glc-iso2) button,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tab {
	white-space: normal;
	overflow-wrap: anywhere;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-chip,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure__btn {
	white-space: nowrap;
	overflow-wrap: normal;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-col--result {
	display: grid;
	gap: var(--glc-gap);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-card {
	position: relative;
	background: var(--glc-card-bg);
	border: 1px solid var(--glc-border);
	border-radius: var(--glc-radius);
	box-shadow: var(--glc-shadow);
	padding: var(--glc-card-pad);
}

/* ---------- Tabs ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px;
	max-width: 520px;
	margin: 0 auto 28px;
	padding: 4px;
	border: 1px solid var(--glc-border);
	border-radius: 12px;
	background: #f1f4f9;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	margin: 0;
	padding: 8px 14px;
	border: 0;
	border-radius: 9px;
	background: transparent;
	box-shadow: none;
	color: var(--glc-heading);
	font: inherit;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab:hover {
	background: #e6ebf3;
	color: var(--glc-heading);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab.is-active,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab.is-active:hover {
	background: var(--glc-primary);
	color: #fff;
	font-weight: 600;
	box-shadow: 0 4px 12px -4px color-mix(in srgb, var(--glc-primary) 60%, transparent);
}

/* ---------- Fields ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--glc-field-gap) 20px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-field {
	min-width: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-label,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-section__title {
	display: block;
	margin: 0 0 7px;
	color: var(--glc-heading);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-req {
	color: var(--glc-danger);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-optional,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-muted {
	color: var(--glc-muted);
	font-weight: 400;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-label-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 4px 12px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hint {
	margin-bottom: 7px;
	color: var(--glc-muted);
	font-size: 12.5px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hint strong {
	color: var(--glc-primary);
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control {
	position: relative;
	display: flex;
	align-items: center;
}

/* Double class beats Elementor Kit input:not(...) selectors. */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-input.glc-input {
	display: block;
	width: 100%;
	height: var(--glc-input-height);
	min-height: 0;
	margin: 0;
	padding: 0 16px;
	border: 1px solid var(--glc-input-border);
	border-radius: var(--glc-radius-sm);
	background: var(--glc-input-bg);
	box-shadow: none;
	color: var(--glc-heading);
	font: inherit;
	font-size: 16px;
	line-height: 1.2;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-input.glc-input::placeholder {
	color: #9aa5ba;
	opacity: 1;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-input.glc-input:focus {
	border-color: var(--glc-primary);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--glc-primary) 18%, transparent);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-input.glc-input[aria-invalid="true"] {
	border-color: var(--glc-danger);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--glc-danger) 12%, transparent);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control--icon-left .glc-input.glc-input {
	padding-left: 44px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control__icon {
	position: absolute;
	left: 15px;
	color: #8a96ad;
	pointer-events: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control--prefix .glc-input.glc-input {
	padding-left: 52px;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control--currency .glc-input.glc-input {
	padding-left: 38px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control__prefix {
	position: absolute;
	left: 16px;
	color: var(--glc-muted);
	font-size: 14px;
	pointer-events: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control__valid {
	position: absolute;
	right: 14px;
	display: inline-flex;
	color: var(--glc-success);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control__tag {
	position: absolute;
	right: 10px;
	padding: 3px 8px;
	border-radius: 6px;
	background: var(--glc-success-soft);
	color: var(--glc-success);
	font-size: 12px;
	font-weight: 600;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control--select .glc-select.glc-select {
	padding-right: 40px;
	cursor: pointer;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-control__chevron {
	position: absolute;
	right: 14px;
	color: var(--glc-muted);
	pointer-events: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-error {
	min-height: 0;
	margin: 6px 0 0;
	color: var(--glc-danger);
	font-size: 13px;
	line-height: 1.35;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-error:empty {
	display: none;
}

/* ---------- Sections ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-section {
	margin-top: 28px;
	min-width: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-section__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 6px 12px;
	width: 100%;
	margin-bottom: 12px;
	float: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-section__head .glc-section__title {
	margin: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-section__hint {
	color: var(--glc-muted);
	font-size: 12.5px;
}

/* ---------- Purity cards ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__card {
	position: relative;
	display: block;
	margin: 0;
	cursor: pointer;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
	margin: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	height: 100%;
	padding: 14px 16px;
	border: 1px solid var(--glc-input-border);
	border-radius: 12px;
	background: #fbfcfe;
	transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__card:hover .glc-purity__body {
	border-color: color-mix(in srgb, var(--glc-primary) 45%, #fff);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__input:checked + .glc-purity__body {
	border: 2px solid var(--glc-primary);
	padding: 13px 15px;
	background: var(--glc-primary-soft);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__input:focus-visible + .glc-purity__body {
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--glc-primary) 25%, transparent);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__name {
	color: var(--glc-heading);
	font-size: 15px;
	font-weight: 600;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__pct {
	font-weight: 500;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__desc {
	color: var(--glc-muted);
	font-size: 12.5px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__rate {
	margin-top: 6px;
	color: var(--glc-primary);
	font-size: 13px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__input:checked + .glc-purity__body .glc-purity__desc {
	color: var(--glc-primary);
}

/* ---------- Panels ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-panel {
	margin-top: 24px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-slider-box {
	padding: 18px 20px;
	border: 1px solid var(--glc-border);
	border-radius: 14px;
	background: #f4f7fc;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-slider-box__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-slider-box__head .glc-label {
	margin: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-unit-input {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-input--compact.glc-input {
	width: 108px;
	height: 40px;
	padding: 0 10px;
	text-align: center;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	-moz-appearance: textfield;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-input--compact::-webkit-outer-spin-button,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-input--compact::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-unit-input__unit {
	color: var(--glc-muted);
	font-size: 14px;
}

/* Range slider */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range {
	--glc-fill: 50%;
	display: block;
	width: 100%;
	height: 28px;
	margin: 14px 0 2px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range:focus {
	outline: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range::-webkit-slider-runnable-track {
	height: 8px;
	border-radius: 999px;
	background: linear-gradient(to right, var(--glc-primary) 0, var(--glc-primary) var(--glc-fill), #dfe5ef var(--glc-fill), #dfe5ef 100%);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range::-moz-range-track {
	height: 8px;
	border-radius: 999px;
	background: #dfe5ef;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range::-moz-range-progress {
	height: 8px;
	border-radius: 999px;
	background: var(--glc-primary);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range::-webkit-slider-thumb {
	width: 22px;
	height: 22px;
	margin-top: -7px;
	border: 4px solid #fff;
	border-radius: 50%;
	background: var(--glc-primary);
	box-shadow: 0 1px 4px rgba(10, 26, 58, .35);
	-webkit-appearance: none;
	appearance: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range::-moz-range-thumb {
	width: 14px;
	height: 14px;
	border: 4px solid #fff;
	border-radius: 50%;
	background: var(--glc-primary);
	box-shadow: 0 1px 4px rgba(10, 26, 58, .35);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range:focus-visible::-webkit-slider-thumb {
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--glc-primary) 30%, transparent);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range:focus-visible::-moz-range-thumb {
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--glc-primary) 30%, transparent);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-range-legend {
	display: flex;
	justify-content: space-between;
	color: var(--glc-muted);
	font-size: 12.5px;
	font-variant-numeric: tabular-nums;
}

/* Quick select chips */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--glc-border);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-panel > .glc-quick {
	border-top: 0;
	padding-top: 4px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick__label {
	margin-right: auto;
	color: var(--glc-muted);
	font-size: 13.5px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick .glc-chip {
	min-height: 36px;
	margin: 0;
	padding: 6px 12px;
	border: 1px solid var(--glc-input-border);
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	color: var(--glc-heading);
	font: inherit;
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
	text-transform: none;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick .glc-chip:hover {
	border-color: var(--glc-primary);
	background: var(--glc-primary-soft);
	color: var(--glc-heading);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick .glc-chip.is-active,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick .glc-chip.is-active:hover {
	border-color: var(--glc-primary);
	background: var(--glc-primary);
	color: #fff;
	font-weight: 600;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-panel > .glc-field {
	margin-top: 22px;
}

/* Loan amount box */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-amount-box {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border: 1px solid var(--glc-border);
	border-radius: 14px;
	background: #f7f9fd;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-amount-box__symbol {
	color: var(--glc-primary);
	font-size: 26px;
	font-weight: 700;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-form .glc-amount-box__input.glc-input {
	height: 56px;
	font-size: clamp(22px, 4vw, 30px);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.01em;
}

/* Collateral requirement */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 18px;
	padding: 14px 16px;
	border: 1px solid color-mix(in srgb, var(--glc-primary) 20%, #fff);
	border-radius: 12px;
	background: var(--glc-primary-soft);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--glc-primary);
	color: #fff;
	flex: 0 0 auto;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__text {
	display: flex;
	flex-direction: column;
	flex: 1 1 0;
	min-width: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__label {
	color: var(--glc-text);
	font-size: 13px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__value {
	color: var(--glc-primary-strong);
	font-size: 15px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__bench {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	color: var(--glc-muted);
	font-size: 12px;
	text-align: right;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__bench strong {
	color: var(--glc-heading);
	font-size: 14px;
	font-variant-numeric: tabular-nums;
}

/* CAPTCHA */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-captcha {
	margin-top: 22px;
	padding: 12px 14px;
	border: 1px solid var(--glc-border);
	border-radius: 12px;
	background: #fafbfd;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-captcha__widget {
	min-height: 65px;
	overflow-x: auto;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-captcha__note {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--glc-muted);
	font-size: 13px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-captcha__note .glc-icon {
	color: var(--glc-success);
}

/* Status */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-status {
	margin-top: 16px;
	font-size: 14px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-status:empty {
	display: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-status.is-error {
	padding: 10px 14px;
	border-radius: 10px;
	background: color-mix(in srgb, var(--glc-danger) 8%, #fff);
	color: var(--glc-danger);
}

/* ---------- Buttons ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	min-height: 54px;
	margin: 20px 0 0;
	padding: 12px 20px;
	border: 0;
	border-radius: 12px;
	box-shadow: none;
	color: #fff;
	font: inherit;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: normal;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn:active {
	transform: translateY(1px);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn[disabled],
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn[aria-busy="true"] {
	cursor: not-allowed;
	opacity: .65;
	transform: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--cta {
	min-height: 56px;
	background: var(--glc-cta);
	box-shadow: 0 10px 22px -10px color-mix(in srgb, var(--glc-cta) 80%, transparent);
	letter-spacing: .03em;
	text-transform: uppercase;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--cta:hover,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--cta:focus {
	background: var(--glc-cta-hover);
	color: #fff;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--primary {
	background: var(--glc-btn-bg);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--primary:hover,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--primary:focus {
	background: var(--glc-btn-bg-hover);
	color: #fff;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-microcopy {
	margin-top: 12px;
	color: var(--glc-muted);
	font-size: 12.5px;
	text-align: center;
}

/* Focus visibility for all interactive elements */
.glc-calculator:not(#glc-iso):not(#glc-iso2) button:focus-visible,
.glc-calculator:not(#glc-iso):not(#glc-iso2) a:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--glc-primary) 55%, transparent);
	outline-offset: 2px;
}

/* ---------- Result card ---------- */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-result__top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 12px;
	margin-bottom: 22px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-pill {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 4px 11px;
	border-radius: 999px;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.4;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-pill--success {
	border: 1px solid color-mix(in srgb, var(--glc-success) 30%, #fff);
	background: var(--glc-success-soft);
	color: var(--glc-success);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-pill--info {
	border: 1px solid color-mix(in srgb, var(--glc-primary) 30%, #fff);
	background: var(--glc-primary-soft);
	color: var(--glc-primary);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-asof {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--glc-muted);
	font-size: 12.5px;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-asof .glc-icon {
	width: 15px;
	height: 15px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero {
	padding-bottom: 22px;
	border-bottom: 1px solid var(--glc-border);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero--boxed {
	padding: 18px;
	border: 1px solid var(--glc-border);
	border-radius: 14px;
	background: #f7f9fd;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero__label {
	color: var(--glc-muted);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero__value {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	margin-top: 4px;
	color: var(--glc-heading);
	font-size: clamp(32px, 6cqi, 46px);
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero__unit {
	margin-left: 4px;
	font-size: .45em;
	font-weight: 600;
	letter-spacing: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero--boxed .glc-tag {
	margin-left: auto;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tag {
	display: inline-flex;
	padding: 3px 9px;
	border: 1px solid color-mix(in srgb, var(--glc-primary) 25%, #fff);
	border-radius: 6px;
	background: var(--glc-primary-soft);
	color: var(--glc-primary);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.4;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero__sub {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--glc-border);
	color: var(--glc-muted);
	font-size: 14px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-hero__sub strong {
	color: var(--glc-heading);
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-rows {
	display: grid;
	gap: 4px;
	padding: 16px 0;
	border-bottom: 1px solid var(--glc-border);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 4px 12px;
	padding: 8px 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row dt {
	color: var(--glc-text);
	font-size: 15px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row dd {
	color: var(--glc-heading);
	font-size: 15px;
	font-weight: 700;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-rate-chip {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 6px;
	background: var(--glc-success-soft);
	color: var(--glc-success);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row__rate .glc-muted {
	font-size: 12.5px;
	font-weight: 500;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row--highlight {
	margin-top: 4px;
	padding: 12px 14px;
	border-radius: 10px;
	background: var(--glc-primary-soft);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row--highlight dd {
	color: var(--glc-primary);
	font-size: 18px;
	font-weight: 800;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row--small dt,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-row--small dd {
	color: var(--glc-muted);
	font-size: 13px;
	font-weight: 500;
}

/* Tenure */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure {
	padding-top: 18px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure__head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	color: var(--glc-heading);
	font-size: 14px;
	font-weight: 500;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure__selected {
	color: var(--glc-primary);
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(54px, 1fr));
	gap: 8px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure .glc-tenure__btn {
	min-height: 42px;
	margin: 0;
	padding: 6px 8px;
	border: 1px solid var(--glc-input-border);
	border-radius: 9px;
	background: #fff;
	box-shadow: none;
	color: var(--glc-heading);
	font: inherit;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	text-transform: none;
	cursor: pointer;
	font-variant-numeric: tabular-nums;
	transition: border-color .15s ease, background-color .15s ease;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure .glc-tenure__btn:hover {
	border-color: var(--glc-primary);
	background: var(--glc-primary-soft);
	color: var(--glc-heading);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure .glc-tenure__btn.is-active,
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure .glc-tenure__btn.is-active:hover {
	border-color: var(--glc-primary);
	background: var(--glc-primary);
	color: #fff;
	font-weight: 700;
}

/* Unavailable / success */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-result__unavailable {
	display: flex;
	gap: 12px;
	padding: 16px;
	border-radius: 12px;
	background: #fff7ed;
	color: #9a3412;
	font-size: 14px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-success {
	display: flex;
	gap: 12px;
	margin-top: 18px;
	padding: 14px 16px;
	border: 1px solid color-mix(in srgb, var(--glc-success) 30%, #fff);
	border-radius: 12px;
	background: var(--glc-success-soft);
	color: var(--glc-success);
	font-size: 14px;
	font-weight: 500;
	outline: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-success p {
	color: color-mix(in srgb, var(--glc-success) 70%, #000);
}

/* Info & steps */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-info {
	padding: 20px 22px;
	border-color: color-mix(in srgb, var(--glc-primary) 18%, #fff);
	background: color-mix(in srgb, var(--glc-primary) 4%, #fff);
	box-shadow: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-info__title {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--glc-primary);
	font-size: 15px;
	font-weight: 600;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-info__text {
	margin-top: 6px;
	color: var(--glc-text);
	font-size: 14px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps {
	padding: 22px;
	box-shadow: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__title {
	margin-bottom: 14px;
	color: var(--glc-heading);
	font-size: 13.5px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__list {
	display: grid;
	gap: 14px;
	list-style: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__item {
	display: flex;
	gap: 12px;
	margin: 0;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 1px solid color-mix(in srgb, var(--glc-primary) 30%, #fff);
	border-radius: 50%;
	background: var(--glc-primary-soft);
	color: var(--glc-primary);
	font-size: 13px;
	font-weight: 700;
	flex: 0 0 auto;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__item:last-child .glc-steps__num {
	border-color: color-mix(in srgb, var(--glc-cta) 30%, #fff);
	background: color-mix(in srgb, var(--glc-cta) 7%, #fff);
	color: var(--glc-cta);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__text {
	display: flex;
	flex-direction: column;
	color: var(--glc-muted);
	font-size: 13.5px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-steps__text strong {
	color: var(--glc-heading);
	font-size: 15px;
	font-weight: 600;
}

/* Trust & disclaimer */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
	max-width: 1360px;
	margin: 40px auto 0;
	padding-top: 32px;
	border-top: 1px solid var(--glc-border);
	list-style: none;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust__item {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--glc-border);
	border-radius: 14px;
	background: var(--glc-card-bg);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust__item > .glc-icon {
	width: 26px;
	height: 26px;
	color: var(--glc-primary);
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust__item > span {
	display: flex;
	flex-direction: column;
	color: var(--glc-muted);
	font-size: 13px;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust__item strong {
	color: var(--glc-heading);
	font-size: 15px;
	font-weight: 600;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-disclaimer {
	max-width: 980px;
	margin: 28px auto 0;
	color: var(--glc-muted);
	font-size: 13px;
	text-align: center;
}

.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-disclaimer p + p {
	margin-top: 6px;
}

/* ---------- Responsive (container-based, works inside any Elementor column) ----------
   "glc"     = the whole calculator  → decides one vs two columns.
   "glcform" = the form column       → decides its own inner grids, so they adapt to the
               real column width whether the layout is stacked or side by side. */
.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-col--form {
	container-type: inline-size;
	container-name: glcform;
	min-width: 0;
}

@container glcform (min-width: 440px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-fields {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-field--full {
		grid-column: 1 / -1;
	}
}

@container glcform (min-width: 500px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@container glcform (max-width: 439px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-card.glc-form {
		--glc-card-pad: 18px;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab {
		font-size: 13.5px;
		padding: 8px 6px;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tabs .glc-tab .glc-icon {
		display: none;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-slider-box {
		padding: 16px 14px;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-quick__label {
		width: 100%;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral {
		flex-wrap: wrap;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-collateral__bench {
		flex-direction: row;
		align-items: baseline;
		gap: 6px;
		width: 100%;
		padding-left: 54px;
		text-align: left;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-btn--cta {
		font-size: 15px;
		letter-spacing: .01em;
	}
}

@container glc (min-width: 600px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@container glc (min-width: 680px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-grid {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
		gap: 20px;
	}
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-col--result {
		position: sticky;
		top: 24px;
	}
}

@container glc (min-width: 1100px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-grid {
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
		gap: 32px;
	}
}

@container glc (max-width: 1099px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) {
		--glc-card-pad: 24px;
	}
}

@container glc (max-width: 519px) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) {
		--glc-card-pad: 18px;
		--glc-gap: 16px;
	}
}

/* Fallback when container queries are unsupported */
@supports not (container-type: inline-size) {
	@media (min-width: 600px) {
		.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-field--full { grid-column: 1 / -1; }
		.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__grid,
		.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-trust { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	}
	@media (min-width: 768px) {
		.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
	}
}

@media (prefers-reduced-motion: reduce) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) *,
	.glc-calculator:not(#glc-iso):not(#glc-iso2) *::before,
	.glc-calculator:not(#glc-iso):not(#glc-iso2) *::after {
		transition: none !important;
		animation: none !important;
	}
}

@media (forced-colors: active) {
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-purity__input:checked + .glc-purity__body,
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tab.is-active,
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-chip.is-active,
	.glc-calculator:not(#glc-iso):not(#glc-iso2) .glc-tenure__btn.is-active {
		outline: 3px solid Highlight;
	}
}
