.pffs-lgf {
	--pffs-lgf-green: #137A5D;
	--pffs-lgf-green-dark: #0E6049;
	--pffs-lgf-text: #111;
	--pffs-lgf-muted: #5f6b66;
	--pffs-lgf-border: #dfe8e4;
	--pffs-lgf-soft: #f6faf8;
	--pffs-lgf-error: #b42318;
	--pffs-lgf-error-bg: #fff3f1;
	--pffs-lgf-success: #137A5D;
	--pffs-lgf-success-bg: #effaf5;
	font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.5 !important;
	color: var(--pffs-lgf-text);
	isolation: isolate;
}

.pffs-lgf *,
.pffs-lgf *::before,
.pffs-lgf *::after {
	box-sizing: border-box;
}

.pffs-lgf :where(input, select, textarea, button, label, legend, p, h2, div, span, small) {
	font-family: inherit !important;
	line-height: inherit !important;
}

.pffs-lgf__shell {
	width: min(100%, 980px);
	margin-inline: auto;
	background: #fff;
	border: 1px solid var(--pffs-lgf-border);
	border-radius: 8px;
	box-shadow: 0 14px 36px rgba(0, 0, 0, .08);
	overflow: hidden;
}

.pffs-lgf--compact .pffs-lgf__shell {
	width: min(100%, 860px);
	box-shadow: 0 10px 26px rgba(0, 0, 0, .07);
}

.pffs-lgf__intro {
	padding: 22px 24px 18px;
	background: linear-gradient(135deg, var(--pffs-lgf-green), #168a69);
	color: #fff;
}

.pffs-lgf__compact-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid var(--pffs-lgf-border);
	background: var(--pffs-lgf-soft);
}

.pffs-lgf__compact-title {
	margin: 0;
	color: var(--pffs-lgf-green);
	font-size: 1.22rem !important;
	font-weight: 800;
	letter-spacing: 0;
}

.pffs-lgf__compact-head p {
	margin: 0;
	color: var(--pffs-lgf-muted);
	font-size: .92rem !important;
	font-weight: 650;
}

.pffs-lgf__eyebrow {
	margin: 0 0 6px;
	font-size: .84rem !important;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
	opacity: .9;
}

.pffs-lgf__title {
	margin: 0;
	color: #fff;
	font-size: clamp(1.45rem, 2vw, 2rem) !important;
	font-weight: 800;
	letter-spacing: 0;
}

.pffs-lgf__subtitle {
	margin: 8px 0 0;
	max-width: 62ch;
	color: rgba(255, 255, 255, .92);
	font-size: 1rem !important;
}

.pffs-lgf__form {
	padding: 24px;
	display: grid;
	gap: 18px;
}

.pffs-lgf--compact .pffs-lgf__form {
	padding: 18px;
	gap: 14px;
}

.pffs-lgf__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

.pffs-lgf--compact .pffs-lgf__grid {
	grid-template-columns: 1fr;
	gap: 12px;
}

.pffs-lgf__field {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.pffs-lgf__field label,
.pffs-lgf__field legend {
	margin: 0;
	color: var(--pffs-lgf-text);
	font-size: .94rem !important;
	font-weight: 750;
}

.pffs-lgf__field label span,
.pffs-lgf__field legend span {
	color: var(--pffs-lgf-green);
}

.pffs-lgf__field input,
.pffs-lgf__field select,
.pffs-lgf__field textarea {
	width: 100%;
	min-height: 46px;
	margin: 0;
	padding: 11px 13px;
	border: 1px solid var(--pffs-lgf-border);
	border-radius: 6px;
	background: #fff;
	color: var(--pffs-lgf-text);
	font-size: 1rem !important;
	box-shadow: none;
	outline: none;
	transition: border-color .16s ease, box-shadow .16s ease;
}

.pffs-lgf--compact .pffs-lgf__field input,
.pffs-lgf--compact .pffs-lgf__field select {
	min-height: 42px;
	padding: 9px 11px;
	font-size: .95rem !important;
}

.pffs-lgf__field textarea {
	min-height: 128px;
	resize: vertical;
}

.pffs-lgf__field select {
	appearance: auto;
}

.pffs-lgf__field input::placeholder,
.pffs-lgf__field textarea::placeholder {
	color: #87938e;
	opacity: 1;
}

.pffs-lgf__field input:focus,
.pffs-lgf__field select:focus,
.pffs-lgf__field textarea:focus {
	border-color: var(--pffs-lgf-green);
	box-shadow: 0 0 0 3px rgba(19, 122, 93, .14);
}

.pffs-lgf__field small {
	color: var(--pffs-lgf-muted);
	font-size: .86rem !important;
}

.pffs-lgf__radios {
	margin: 0;
	padding: 0;
	border: 0;
}

.pffs-lgf__radio-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.pffs-lgf__radio {
	position: relative;
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid var(--pffs-lgf-border);
	border-radius: 6px;
	background: var(--pffs-lgf-soft);
	cursor: pointer;
}

.pffs-lgf__radio input {
	width: 17px;
	height: 17px;
	margin: 0;
	accent-color: var(--pffs-lgf-green);
	flex: 0 0 auto;
}

.pffs-lgf__radio span {
	color: var(--pffs-lgf-text);
	font-size: .96rem !important;
	font-weight: 650;
}

.pffs-lgf__captcha {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 14px;
}

.pffs-lgf--compact .pffs-lgf__captcha {
	grid-template-columns: 1fr;
	padding-top: 2px;
}

.pffs-lgf--compact.is-pffs-lgf-js .pffs-lgf__captcha--deferred .pffs-lgf__captcha-field {
	display: none;
}

.pffs-lgf--compact.is-pffs-lgf-js.is-pffs-lgf-ready .pffs-lgf__captcha--deferred .pffs-lgf__captcha-field {
	display: grid;
}

.pffs-lgf__submit {
	min-height: 48px;
	padding: 12px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--pffs-lgf-green);
	color: #fff;
	font-size: 1rem !important;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 10px 24px rgba(19, 122, 93, .24);
	transition: transform .16s ease, background .16s ease, box-shadow .16s ease;
	white-space: nowrap;
}

.pffs-lgf__submit:hover,
.pffs-lgf__submit:focus {
	background: var(--pffs-lgf-green-dark);
	box-shadow: 0 12px 26px rgba(14, 96, 73, .28);
	transform: translateY(-1px);
}

.pffs-lgf__submit:focus {
	outline: 2px solid var(--pffs-lgf-green-dark);
	outline-offset: 3px;
}

.pffs-lgf__notice {
	margin: 18px 24px 0;
	padding: 12px 14px;
	border-radius: 6px;
	font-weight: 650;
}

.pffs-lgf__notice ul {
	margin: 0;
	padding-left: 18px;
}

.pffs-lgf__notice--success {
	border: 1px solid rgba(19, 122, 93, .25);
	background: var(--pffs-lgf-success-bg);
	color: var(--pffs-lgf-success);
}

.pffs-lgf__notice--error {
	border: 1px solid rgba(180, 35, 24, .2);
	background: var(--pffs-lgf-error-bg);
	color: var(--pffs-lgf-error);
}

.pffs-lgf__trap {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

@media (max-width: 767.98px) {
	.pffs-lgf__intro,
	.pffs-lgf__form {
		padding-inline: 18px;
	}

	.pffs-lgf__grid,
	.pffs-lgf--compact .pffs-lgf__grid,
	.pffs-lgf__radio-grid,
	.pffs-lgf__captcha {
		grid-template-columns: 1fr;
	}

	.pffs-lgf__compact-head {
		align-items: flex-start;
		flex-direction: column;
		padding-inline: 18px;
	}

	.pffs-lgf__submit {
		width: 100%;
		white-space: normal;
	}
}

@media (max-width: 359.98px) {
	.pffs-lgf {
		font-size: 15px !important;
	}

	.pffs-lgf__intro,
	.pffs-lgf__form {
		padding-inline: 14px;
	}
}
