.gform_wrapper.gravity-theme:not(.newsletterForm_wrapper):not(
		.donateSteps_wrapper
	) {
	.gform_heading {
		margin-bottom: 0;
		.gform_title {
			color: $ui-foreground-primary-text-body-text;
			margin: 0;
			padding: 0;
			text-align: left;
		}
		.gform_description {
			color: $ui-foreground-primary-text-body-text;
			display: block;
			margin: 0 0 10px 0;
			padding: 0;
			text-align: left;
			width: 100%;
		}
		.gform_required_legend {
			display: none;
		}
	}

	form {
		margin-top: 0;
		.gform_body {
			margin-top: 0;
			.gform_fields .gfield {
				padding-left: 0;
				margin-top: 0;
				/*
        * Custom Classes
        */
				&.hide-field {
					visibility: hidden;
					margin: 0;
					height: 0;
				}
				&.hide-label {
					legend.gfield_label {
						visibility: hidden;
						margin: 0;
						height: 0;
					}
				}
				/*
        * Label Fields
        */
				.top_label .gfield_label {
					@include font-heading;
					color: $ui-foreground-primary-text-headings;
					font-size: px-to-rem(20px);
					text-align: left;
					text-transform: none;
				}

				/*
        * Radio Button 
        */
				.ginput_container_radio {
					margin-top: 6px;
					.gfield_radio {
						.gchoice {
							//margin-bottom: 5px;
							input {
								cursor: pointer;
								height: 100%;
								opacity: 0;
								position: absolute;
								width: 100%;
								z-index: 1;
							}
							[type="radio"]:checked + label,
							[type="radio"]:not(:checked) + label {
								@include font-heading;
								color: $ui-foreground-primary-text-headings;
								cursor: pointer;
								display: inline-block;
								margin: 0 auto;
								max-width: 100%;
								padding: 2px 0 2px 26px;
								position: relative;
								vertical-align: middle;
								z-index: 1;
								&::after {
									content: "";
									background: $ui-base-white;
									border-color: $ui-foreground-primary-accent-01;
									border-radius: 50%;
									border-style: solid;
									border-width: px-to-rem(6px);
									height: 20px;
									left: 0;
									position: absolute;
									top: 1px;
									transition: all 0.2s ease;
									width: 20px;
									z-index: -1;
								}
							}
							[type="radio"]:checked + label {
								&::before {
									content: "";
									color: $ui-base-white;
									font-size: px-to-rem(14px);
									left: 3px;
									position: absolute;
									top: 3px;
								}
							}
							[type="radio"]:checked,
							[type="radio"]:not(:checked) {
								position: fixed;
								left: -9999px;
								margin: 0;
							}
							[type="radio"]:not(:checked) + label:after {
								content: "";
								background: transparent;
								border-width: px-to-rem(1.7px);
								border-color: $ui-border-bounds;
							}
						}
					}
				}
				/*
        * Checkbox & Consent
        */

				.ginput_container_checkbox {
					margin-top: 6px;
					.gfield_checkbox {
						.gchoice {
							&:last-of-type {
								margin-bottom: 0;
							}
						}
					}
				}
				.ginput_container_consent,
				.ginput_container_checkbox .gfield_checkbox .gchoice {
					margin-bottom: 5px;
					input {
						cursor: pointer;
						height: 100%;
						opacity: 0;
						position: absolute;
						width: 100%;
						z-index: 1;
					}
					[type="checkbox"]:checked + label,
					[type="checkbox"]:not(:checked) + label {
						@include font-heading;
						color: $ui-foreground-primary-text-headings;
						cursor: pointer;
						display: inline-block;
						margin: 0 auto;
						min-height: 30px;
						padding: 0 0 0 30px;
						position: relative;
						text-align: left;
						text-transform: none;
						vertical-align: middle;
						z-index: 1;
						&::after {
							content: "";
							background: $ui-foreground-primary-accent-01;
							border-color: $ui-foreground-primary-accent-01;
							border-radius: 4px;
							border-style: solid;
							border-width: px-to-rem(1.7px);
							box-shadow: none;
							height: 20px;
							left: 0;
							position: absolute;
							top: 0;
							transition: all 0.2s ease;
							width: 20px;
							z-index: -1;
						}
					}
					[type="checkbox"]:checked,
					[type="checkbox"]:not(:checked) {
						position: fixed;
						left: -9999px;
						margin: 0;
					}
					[type="checkbox"]:checked + label {
						&::before {
							content: "";
							background-image: url("data:image/svg+xml,%3Csvg width='11' height='9' viewBox='0 0 11 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5.16484L4.10757 8L10 1' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
							background-size: px-to-rem(14px);
							background-repeat: no-repeat;
							background-position: center;
							width: 20px;
							height: 20px;
							left: 0;
							position: absolute;
							top: 0;
						}
					}
					[type="checkbox"]:not(:checked) + label:after {
						content: "";
						background: transparent;
						border-color: $ui-border-bounds;
					}
				}
				/*
				* Address 
				*/
				.ginput_container_address {
					.address_country {
						select {
							line-height: 1.2;
						}
					}
				}

				/*
				* Fileupload
				*/
				.ginput_container_fileupload {
					input::file-selector-button {
						@include font-body;
						font-size: 12px;
						font-weight: 700;
						line-height: 14.4px;
						letter-spacing: 1px;
						text-align: left;
						background-color: $ui-base-black;
						color: white;
						border: none;
						padding: 6px 18px;
						border-radius: 100px;
						text-transform: uppercase;
						cursor: pointer;
					}

					.gform_fileupload_rules {
						@include font-body;
						font-size: px-to-rem(12px);
						line-height: 1.2em;
					}
				}
			}
		}

		.gform_footer {
			display: inline-block;
			margin: 30px 0 0 0;
			padding: 0;
			position: relative;
			width: auto;
			input[type="submit"],
			input.button {
				@include cta;
			}
		}
	}

	/*
  *  Error Form Properties
  */
	.gform_validation_errors {
		background-color: $ui-base-controls-input-warning;
		border: none;
		padding: 10px;
		margin: 0 0 10px;
		box-shadow: none;

		&:focus,
		&:focus-visible {
			box-shadow: none;
			border: none;
			outline: none;
		}

		h2 {
			@include font-body;
			color: $ui-border-system-warning;
			margin-bottom: 0;

			.gform-icon {
				color: $ui-base-white;
				background-color: $ui-border-system-warning;
				font-size: px-to-rem(35px);
				position: relative;
				width: 16px;
				height: 16px;
				border-radius: 50%;
				margin-right: 8px;
				top: 3px;
				left: unset;
				display: inline-block;
				background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23ff0000'/%3E%3Cpath d='M6 6L10 10M10 6L6 10' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");

				&::before {
					content: none;
				}
			}
		}
	}
	.gfield_required,
	.gfield_error legend,
	.gfield_error label {
		color: $ui-border-system-warning;
	}
	.gfield_error [aria-invalid="true"] {
		background-color: rgba($color: #fff, $alpha: 0);
		color: $ui-foreground-primary-text-body-text;
		border: 1px solid $ui-border-system-warning;
		&::-webkit-input-placeholder {
			color: $ui-border-system-warning;
			opacity: 1;
		}
		&::-moz-placeholder {
			color: $ui-border-system-warning;
			opacity: 1;
		} /* firefox 19+ */
		&:-ms-input-placeholder {
			color: $ui-border-system-warning;
			opacity: 1;
		} /* ie */
	}
	.gfield.gfield_error.gfield_contains_required div.gfield_description {
		@include font-body;
		background-color: $ui-border-system-warning;
		border-radius: 0;
		color: $ui-base-white;
		border: none;
		padding: 1.5rem;
	}
	&.gform_validation_error {
		.gform_body .gform_fields .gfield {
			padding-right: 0;
			margin-top: 5px;
		}
	}
	.gfield_validation_message,
	.validation_message {
		@include font-body;
		display: inline;
		margin-top: 0;
		background-color: $ui-border-system-warning;
		border-radius: 0;
		color: $ui-base-white;
		border: none;
		padding: 1.5rem;
		text-align: left;
	}
}

/*
*  Confirmation Default Message
*/
.gform_confirmation_wrapper {
	// border: 1px solid rgba(217, 217, 217, 0.418324);
	// padding: 100px 30px;
	// width: 420px;
	.gform_confirmation_message {
		@include font-heading;
		color: $ui-foreground-primary-text-body-text;
		display: flex;
		flex-direction: column;
		padding: 0;
		position: relative;
		row-gap: 33px;
	}
}

/*
*  Global Styles Gform
*/

.gform_wrapper .hidden_label input {
	margin-top: 0;
}
.gfield_html {
	@include font-heading;
	font-size: px-to-rem(14px);
}
.gfield_html_formatted {
	margin-top: 30px;
}

.gform_wrapper.gravity-theme:not(.donateSteps_wrapper) {
	.gsection .gsection_title {
		font-size: px-to-rem(30px);
	}
	.ginput_complex label {
		font-size: px-to-rem(20px);
		margin-bottom: 0;
	}
	.field_sublabel_above .gfield_description {
		padding-top: 5px;
		margin-top: 0;
	}
	.gfield.field_sublabel_above.field_description_below + .gfield {
		margin-top: 0;
	}
	.gfield.gfield_error.gfield_contains_required div.ginput_container,
	.gform_wrapper
		.gfield.gfield_error.gfield_contains_required
		label.gfield_label {
		margin-top: 5px;
		margin-bottom: 5px;
	}

	input:not([type="submit"]),
	textarea,
	select {
		@include font-heading;

		border-radius: $input-border-radius;
		border: 1px solid $ui-border-bounds;
		box-shadow: none;
		color: $ui-foreground-primary-text-body-text;
		min-height: 50px;
		padding: 10px 15px;
		&::-webkit-input-placeholder {
			color: $ui-foreground-primary-text-body-text;
			opacity: 1;
		}
		&::-moz-placeholder {
			color: $ui-foreground-primary-text-body-text;
			opacity: 1;
		} /* firefox 19+ */
		&:-ms-input-placeholder {
			color: $ui-foreground-primary-text-body-text;
			opacity: 1;
		} /* ie */
		&:active,
		&:focus {
			box-shadow: none;
			border-color: $ui-foreground-primary-text-body-text;
			outline: none;
			color: $ui-foreground-primary-text-body-text;
			&::-webkit-input-placeholder {
				color: $ui-foreground-primary-text-body-text;
				opacity: 1;
			}
			&::-moz-placeholder {
				color: $ui-foreground-primary-text-body-text;
				opacity: 1;
			} /* firefox 19+ */
			&:-ms-input-placeholder {
				color: $ui-foreground-primary-text-body-text;
				opacity: 1;
			} /* ie */
		}
	}

	select {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		line-height: 1.2;
		padding: 14px 10px;
		transition: all 0.4s ease;
		color: $ui-foreground-primary-text-body-text;
		option {
			color: $ui-foreground-primary-text-body-text;
		}
		&:focus,
		&:active {
			transition: all 0.4s ease;
			color: $ui-foreground-primary-text-body-text;
		}
		&:active {
			border-color: $ui-border-input-controls-active;
		}
		&:focus {
			border-color: $ui-border-input-controls-focus;
		}
	}

	textarea {
		height: 100px;
		resize: none;
		max-width: 100%;
	}

	input[type="checkbox"],
	input[type="radio"] {
		height: 30px;
	}

	.gfield_label,
	label,
	legend {
		@include font-heading;
		color: $ui-foreground-primary-text-headings;
		display: block;
		font-size: px-to-rem(20px);
		margin-bottom: 8px;
		text-align: left;
		text-transform: none;
		float: none;
		span.gfield_required,
		* > * {
			color: $ui-foreground-primary-text-headings;
			font-size: px-to-rem(20px);
			padding: 0;
			position: relative;
			&.gfield_required_custom {
				&::after {
					content: "*";
					@include font-heading;
					color: initial;
					display: inline-block;
					font-style: normal;
					font-size: px-to-rem(20px);
					font-weight: initial;
					line-height: 0;
					&::selection {
						background-color: $selector_color;
						color: white;
					}
				}
				&::selection {
					background-color: $selector_color;
					color: white;
				}
			}
		}
		a {
			color: $ui-foreground-primary-text-links;
			text-decoration: underline;
		}
	}
}

.gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label,
.gform_wrapper
	.top_label
	.gfield.gf_left_half
	.ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(
		.gfield_time_ampm
	):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(
		.gfield_signature_container
	),
.gform_wrapper
	.top_label
	.gfield.gf_right_half
	.ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(
		.gfield_time_ampm
	):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(
		.gfield_signature_container
	) {
	margin-bottom: 5px;
	&::selection {
		background-color: $selector_color;
		color: white;
	}
}
.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container {
	input[type="text"],
	select {
		margin-bottom: 0;
	}
	&.has_street,
	&.has_city,
	&.has_state,
	&.has_zip,
	&.has_country,
	&.ginput_container_address {
		input[type="text"],
		select {
			margin-bottom: 10px;
		}
	}
}
