/* ==========================================================================
   Logiskil – "lgk-form" Gravity Form
   ========================================================================== */

/* 1) Design tokens  */
:root {
	--lgk-red: #ea0026;                           /* Brand red */
	--lgk-red-text: #ff5468;                      /* Lighter red for small text on dark (AA) */
	--lgk-surface: #121212;                       /* Popup card */
	--lgk-ink: #f5f5f4;                           /* Typed text */
	--lgk-label-rest: rgba(255, 255, 255, .5);    /* Label resting inside an empty field */
	--lgk-label-float: rgba(255, 255, 255, .62);  /* Label floated above the field */
	--lgk-rule: rgba(255, 255, 255, .34);         /* Underline – 3:1 against the card */
	--lgk-rule-hover: rgba(255, 255, 255, .6);
	--lgk-fs: clamp(17px, 0.6vw + 13px, 20px);    /* Field text – never below 16px (iOS zoom) */
	--lgk-lh: 1.45;
	--lgk-pad-y: 12px;                            /* Vertical padding inside each field */
	--lgk-label-space: 22px;                      /* Room above each field for the floated label */
	--lgk-float: .66;                             /* Scale of the floated label */
	--lgk-gap-x: clamp(20px, 3vw, 36px);
	--lgk-gap-y: clamp(18px, 2.2vw, 26px);
	--lgk-ease: cubic-bezier(.22, 1, .36, 1);
}

/* 2) Thrive lightbox shell – only lightboxes that hold this form  */
.tve_p_lb_background:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_overlay {
	background: rgba(6, 6, 6, .74) !important;
}

@media (min-width: 768px) {
	.tve_p_lb_background:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_overlay {
		-webkit-backdrop-filter: blur(8px);
		backdrop-filter: blur(8px);
	}
}

.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) {
	padding: clamp(28px, 4.5vw, 56px) !important;
	border: 1px solid rgba(255, 255, 255, .08) !important;
	border-radius: 24px !important;
	background: var(--lgk-surface) !important;
	box-shadow: 0 40px 120px -24px rgba(0, 0, 0, .85), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
	color: var(--lgk-ink);
}

/* Close button: thin ring + drawn cross (replaces Thrive's text "x") */
.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close {
	position: absolute !important;
	top: 18px !important;
	right: 18px !important;
	bottom: auto !important;
	left: auto !important;
	z-index: 3;
	width: 42px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(255, 255, 255, .2) !important;
	border-radius: 50% !important;
	background: transparent !important;
	box-shadow: none !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	transition: transform .5s var(--lgk-ease), background-color .25s ease, border-color .25s ease;
}

.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close::before,
.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 1.5px;
	border-radius: 2px;
	background: #fff;
}

.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

@media (hover: hover) {
	.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close:hover {
		transform: rotate(90deg);
		border-color: var(--lgk-red) !important;
		background: var(--lgk-red) !important;
	}
}

.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close:focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 3px !important;
}

/* 3) Form base  */
body .gform_wrapper.lgk-form_wrapper {
	margin: 0 !important;
	color: var(--lgk-ink);
	color-scheme: dark;                                  /* Dark native UI (resize grip, autofill) */
	--gf-form-spinner-fg-color: #fff;                    /* GF Orbital / 3.0 spinner */
	--gf-form-spinner-bg-color: rgba(255, 255, 255, .3);
}

body .gform_wrapper.lgk-form_wrapper ::selection {
	background: rgba(234, 0, 38, .45);
	color: #fff;
}

/* Every field is required – hide the "(Required)" text and the legend line */
body .gform_wrapper.lgk-form_wrapper .gfield_label .gfield_required,
body .gform_wrapper.lgk-form_wrapper .gform_required_legend {
	display: none !important;
}

/* Optional heading – enable title/description on the shortcode or block */
body .gform_wrapper.lgk-form_wrapper .gform_heading {
	margin: 0 0 clamp(26px, 3.2vw, 40px) !important;
	padding: 0 56px 0 0 !important;                      /* Keeps text clear of the close button */
}

body .gform_wrapper.lgk-form_wrapper .gform_title {
	margin: 0 0 12px !important;
	color: #fff !important;
	font-size: clamp(30px, 3.4vw, 46px) !important;
	font-weight: 800 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.025em !important;
	text-wrap: balance;
}

body .gform_wrapper.lgk-form_wrapper .gform_description {
	max-width: 46ch;
	margin: 0 !important;
	color: rgba(255, 255, 255, .62) !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
}

/* 4) Layout  */
body .gform_wrapper.lgk-form_wrapper .gform_fields {
	row-gap: var(--lgk-gap-y) !important;
	column-gap: var(--lgk-gap-x) !important;
}

body .gform_wrapper.lgk-form_wrapper .gfield {
	position: relative;                                  /* Anchor for floating labels */
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Name field: First / Last side by side */
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--lgk-gap-y) var(--lgk-gap-x) !important;
	margin: 0 !important;
	padding: 0 !important;
}

body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > .gf_clear {
	display: none !important;
}

/* The complex-field legend stays for screen readers only */
body .gform_wrapper.lgk-form_wrapper legend.gfield_label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

/* 5) Field boxes (text-like fields + name sub-inputs) ----------------------- */
body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > .ginput_container,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span {
	position: relative;
	display: block !important;
	width: auto !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding: var(--lgk-label-space) 0 0 !important;
}

/* Hairline – GSAP draws it in on open via --lgk-draw (fully drawn by default) */
body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > .ginput_container::before,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: var(--lgk-rule);
	transform: scaleX(var(--lgk-draw, 1));
	transform-origin: 0 50%;
	transition: background-color .3s ease;
	pointer-events: none;
}

/* Focus line – red stroke draws from the left */
body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > .ginput_container::after,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 2px;
	background: var(--lgk-red);
	transform: scaleX(0);
	transform-origin: 0 50%;
	transition: transform .6s var(--lgk-ease);
	pointer-events: none;
}

@media (hover: hover) {
	body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > .ginput_container:hover::before,
	body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span:hover::before {
		background: var(--lgk-rule-hover);
	}
}

body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > .ginput_container:focus-within::after,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span:focus-within::after {
	transform: scaleX(1);
}

/* 6) Inputs  */
body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number, .gfield--type-name) :is(input:not([type="hidden"]), textarea) {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: var(--lgk-pad-y) 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--lgk-ink) !important;
	caret-color: var(--lgk-red);
	font-family: inherit !important;
	font-size: var(--lgk-fs) !important;
	font-weight: 400 !important;
	line-height: var(--lgk-lh) !important;
	letter-spacing: normal !important;
}

/* The label does the placeholder's job, so the native placeholder stays invisible */
body .gform_wrapper.lgk-form_wrapper .gfield input::placeholder,
body .gform_wrapper.lgk-form_wrapper .gfield textarea::placeholder {
	color: transparent !important;
	opacity: 0 !important;
}

/* Comments: three lines tall, grows with content where supported */
body .gform_wrapper.lgk-form_wrapper .gfield--type-textarea > .ginput_container > textarea {
	height: calc(var(--lgk-fs) * var(--lgk-lh) * 3 + var(--lgk-pad-y) * 2) !important;
	min-height: calc(var(--lgk-fs) * var(--lgk-lh) * 3 + var(--lgk-pad-y) * 2) !important;
	max-height: 320px;
	overflow: auto;
	resize: vertical !important;
}

@supports (field-sizing: content) {
	body .gform_wrapper.lgk-form_wrapper .gfield--type-textarea > .ginput_container > textarea {
		height: auto !important;
		field-sizing: content;
		resize: none !important;
	}
}

/* Chrome / Safari autofill: keep the dark field instead of the pale fill */
body .gform_wrapper.lgk-form_wrapper .gfield input:-webkit-autofill,
body .gform_wrapper.lgk-form_wrapper .gfield input:-webkit-autofill:hover,
body .gform_wrapper.lgk-form_wrapper .gfield input:-webkit-autofill:focus,
body .gform_wrapper.lgk-form_wrapper .gfield textarea:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px var(--lgk-surface) inset !important;
	box-shadow: 0 0 0 1000px var(--lgk-surface) inset !important;
	-webkit-text-fill-color: var(--lgk-ink) !important;
	caret-color: var(--lgk-red);
	transition: background-color 600000s 0s, color 600000s 0s;
}

/* 7) Floating labels ----------                   */
body .gform_wrapper.lgk-form_wrapper :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-website, .gfield--type-number) > label.gfield_label,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span > label {
	position: absolute !important;
	top: calc(var(--lgk-label-space) + var(--lgk-pad-y)) !important;
	right: auto !important;
	bottom: auto !important;
	left: 0 !important;
	z-index: 1;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	clip: auto !important;                               /* Undo GF "hidden label" / screen-reader styles */
	clip-path: none !important;
	border: 0 !important;
	color: var(--lgk-label-float) !important;
	font-family: inherit !important;
	font-size: var(--lgk-fs) !important;
	font-weight: 400 !important;
	line-height: var(--lgk-lh) !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	white-space: nowrap !important;
	transform: translateY(calc(-1 * (var(--lgk-label-space) + var(--lgk-pad-y)))) scale(var(--lgk-float));
	transform-origin: 0 0;
	transition: transform .45s var(--lgk-ease), color .25s ease;
	pointer-events: none;                                /* Clicks fall through to the input */
}

@supports selector(:has(*)) {
	/* Resting position: empty + unfocused */
	body .gform_wrapper.lgk-form_wrapper .gfield:has(> .ginput_container > :is(input, textarea):placeholder-shown:not(:focus)) > label.gfield_label,
	body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span:has(> input:placeholder-shown:not(:focus)) > label {
		transform: none;
	}

	/* Resting colour (error fields keep their red label) */
	body .gform_wrapper.lgk-form_wrapper .gfield:not(.gfield_error):has(> .ginput_container > :is(input, textarea):placeholder-shown:not(:focus)) > label.gfield_label,
	body .gform_wrapper.lgk-form_wrapper .gfield--type-name:not(.gfield_error) .ginput_complex > span:has(> input:placeholder-shown:not(:focus)) > label {
		color: var(--lgk-label-rest) !important;
	}
}

/* Focused field: label turns red */
body .gform_wrapper.lgk-form_wrapper .gfield:focus-within > label.gfield_label,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex > span:focus-within > label {
	color: var(--lgk-red-text) !important;
}

/* 8) Validation ------------------------------------------------------------- */
body .gform_wrapper.lgk-form_wrapper .gfield.gfield_error > label.gfield_label,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name.gfield_error .ginput_complex > span > label {
	color: var(--lgk-red-text) !important;
}

body .gform_wrapper.lgk-form_wrapper .gfield.gfield_error > .ginput_container::before,
body .gform_wrapper.lgk-form_wrapper .gfield--type-name.gfield_error .ginput_complex > span::before {
	background: var(--lgk-red-text);
}

body .gform_wrapper.lgk-form_wrapper .gfield_validation_message,
body .gform_wrapper.lgk-form_wrapper .gfield .validation_message {
	margin: 10px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: var(--lgk-red-text) !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
}

/* Summary box at the top after a failed submit */
body .gform_wrapper.lgk-form_wrapper .gform_validation_errors {
	margin: 0 0 var(--lgk-gap-y) !important;
	padding: 14px 18px !important;
	border: 1px solid rgba(234, 0, 38, .45) !important;
	border-radius: 14px !important;
	background: rgba(234, 0, 38, .08) !important;
	box-shadow: none !important;
}

body .gform_wrapper.lgk-form_wrapper .gform_validation_errors > h2 {
	display: flex !important;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	color: #ffd6dc !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
}

body .gform_wrapper.lgk-form_wrapper .gform_validation_errors .gform-icon {
	position: static !important;
	flex: none;
	border-color: currentColor !important;
	color: var(--lgk-red-text) !important;
}

body .gform_wrapper.lgk-form_wrapper .gform_validation_errors :is(ol, ul, li) {
	color: #ffd6dc !important;
	font-size: 14px !important;
}

body .gform_wrapper.lgk-form_wrapper .gform_validation_errors a {
	color: #fff !important;
	text-decoration: underline;
}

/* 9) Submit button -------- */
body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer) {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 18px;
	margin: clamp(30px, 3.4vw, 44px) 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]) {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	min-height: 58px !important;
	margin: 0 !important;
	padding: 0 34px !important;
	border: 0 !important;
	border-radius: 999px !important;
	outline: 0 !important;                               /* GF focus ring off – :focus-visible ring below */
	background-color: var(--lgk-red) !important;
	background-image: linear-gradient(#fff, #fff) !important;   /* White fill that wipes in on hover */
	background-position: 0 50% !important;
	background-repeat: no-repeat !important;
	background-size: 0% 100% !important;
	box-shadow: 0 14px 34px -14px rgba(234, 0, 38, .75) !important;
	color: #fff !important;
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: .01em !important;
	text-decoration: none !important;
	text-transform: none !important;
	cursor: pointer;
	transition: background-size .55s var(--lgk-ease), color .25s ease .08s, box-shadow .3s ease, transform .2s ease;
}

@media (hover: hover) {
	body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]):hover {
		background-size: 100% 100% !important;
		box-shadow: 0 18px 44px -16px rgba(255, 255, 255, .35) !important;
		color: #0b0b0b !important;
	}
}

body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]):active {
	transform: scale(.98);
}

body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]):focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 4px !important;
}

/* While submitting (GF 3.0 adds .gform-has-spinner): stay red so the white spinner shows */
body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]):is(.gform-has-spinner, :disabled) {
	background-size: 0% 100% !important;
	color: #fff !important;
	cursor: progress;
}

body .gform_wrapper.lgk-form_wrapper .gform-loader {
	--gf-form-spinner-fg-color: #fff;
	--gf-form-spinner-bg-color: rgba(255, 255, 255, .3);
}

body .gform_wrapper.lgk-form_wrapper .gform_ajax_spinner {
	filter: invert(1) brightness(1.6);                   /* GF 2.x image spinner on dark */
}

/* 10) Confirmation message ------ */
body :is(.lgk-form_wrapper, .lgk-form_confirmation_wrapper, .tve_p_lb_content.lgk-lb) .gform_confirmation_message {
	position: relative;
	margin: 0 !important;
	padding: 68px 0 4px !important;
	border: 0 !important;
	background: none !important;
	color: #fff !important;
	font-size: clamp(22px, 2.4vw, 30px) !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em;
}

body :is(.lgk-form_wrapper, .lgk-form_confirmation_wrapper, .tve_p_lb_content.lgk-lb) .gform_confirmation_message::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--lgk-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 22px no-repeat;
}

body :is(.lgk-form_wrapper, .lgk-form_confirmation_wrapper, .tve_p_lb_content.lgk-lb) .gform_confirmation_message p {
	margin: 0 0 .5em !important;
	color: inherit !important;
	font: inherit !important;
}

body :is(.lgk-form_wrapper, .lgk-form_confirmation_wrapper, .tve_p_lb_content.lgk-lb) .gform_confirmation_message p:last-child {
	margin-bottom: 0 !important;
}

/* 11) Mobile (max-width: 767px) -- */
@media (max-width: 767px) {
	:root {
		--lgk-label-space: 20px;
		--lgk-float: .74;                                /* Keeps the floated label readable */
	}

	.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) {
		padding: 26px 20px 28px !important;
		border-radius: 20px !important;
	}

	.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close {
		top: 12px !important;
		right: 12px !important;
		width: 38px !important;
		height: 38px !important;
	}

	body .gform_wrapper.lgk-form_wrapper .gform_heading {
		padding-right: 44px !important;
	}

	body .gform_wrapper.lgk-form_wrapper .gfield--type-name .ginput_complex {
		grid-template-columns: 1fr;                      /* Stack First / Last */
	}

	body .gform_wrapper.lgk-form_wrapper :is(.gform_footer, .gform_page_footer, .gfield--type-submit) :is(input[type="submit"], button[type="submit"]) {
		width: 100% !important;
	}
}

/* 12) Fallbacks & accessibility --- */

/* Safety net for browsers without :has(): the form gets its own dark panel */
@supports not selector(:has(*)) {
	body .gform_wrapper.lgk-form_wrapper {
		padding: 28px !important;
		border-radius: 16px;
		background: var(--lgk-surface);
	}
}

@media (prefers-reduced-motion: reduce) {
	body .gform_wrapper.lgk-form_wrapper *,
	body .gform_wrapper.lgk-form_wrapper *::before,
	body .gform_wrapper.lgk-form_wrapper *::after,
	.tve_p_lb_content:is(.lgk-lb, :has(.lgk-form_wrapper, .lgk-form_confirmation_wrapper)) .tve_p_lb_close {
		transition: none !important;
	}
}

/* Windows High Contrast: pseudo-element lines disappear, so use real borders/outlines */
@media (forced-colors: active) {
	body .gform_wrapper.lgk-form_wrapper .gfield :is(input:not([type="hidden"]), textarea) {
		border-bottom: 1px solid CanvasText !important;
	}

	body .gform_wrapper.lgk-form_wrapper .gfield :is(input:not([type="hidden"]), textarea):focus {
		outline: 2px solid Highlight !important;
		outline-offset: 2px !important;
	}
}