#submissionforms_module.cms_form {
	tr[data-hidden="true"] {
		display: none !important;
	}

	.cms_hint,
	.cms_date_hint {
		display: block;
	}

	.cms_date_hint {
		left: 0;
	}

	.sigPad {
		.cms_hint {
			display: block !important;
			float: left;
			width: 50%;
		}

		.sigNav {
			float: right;
			width: 50%;
			height: 1.75em;

			a {
				padding-right: 0;

				&:hover {
					background-color: transparent;
				}
			}

			.clearButton {
				left: auto;
				right: 0;
			}
		}

		.sigWrapper {
			width: 300px;
		}

		.signatureControls {
			clear: both;
			width: 300px;
			overflow: hidden;
		}
	}

	.cms_field input {
		&.hasDatepicker[type="text"] {
			vertical-align: inherit;
		}

		&.hasDatepicker[size="60"][type="text"] {
			display: inline-block;
			width: calc(100% - 20px);
		}
	}
}

.ui-datepicker {
	z-index: 100;
}

button.ui-datepicker-current {
	display: none;
}

.ui-datepicker-month,
.ui-datepicker-year {
	display: inline-block;
	padding: 0;
	height: auto;
	line-height: normal;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.module-forms.confirmation pre {
	font-family: inherit !important;
	font-size: inherit !important;
	white-space: pre-wrap !important;
	margin-top: 0;
	margin-bottom: 0;
}

/* Begin Type Only Date Fields */
#submissionforms_module {
	.inline-field-spacer {
		padding: 0 5px 0 5px !important;
	}

	&.cms_form {
		.date-field {
			display: inline;
			text-align: center;
		}

		.date-field.small {
			width: 60px !important;
		}

		.date-field.medium {
			width: 100px !important;
		}

		.date-field.large {
			width: 150px !important;
		}
	}
}
/* End Type Only Date Fields */

.related-document {
	margin-bottom: 7px;

	.related-document-icon {
		vertical-align: middle;
		margin-right: 5px;
	}
}

@media screen and (max-width: 991px) {
	/* Circle Steps */
	#submissionforms_module.cms_form {
		.desktop-steps {
			display: none;
		}

		.mobile-steps {
			display: block;

			.step-link {
				display: block;
				text-decoration: none;
			}

			.step-mobile-wrapper {
				display: flex;
				flex-direction: column;
				width: 100%;
				padding-bottom: 0;

				.step-mobile-inner-wrapper {
					display: flex;
					column-gap: 12px;
					justify-content: flex-start;
					align-items: center;
					width: 100%;
					padding: 0;
					margin-left: auto;
					margin-right: auto;
					color: #222222;
					border-radius: 5px;
					text-align: left;
					background-color: rgb(255, 255, 255);
					cursor: pointer;
					text-decoration: none;
					user-select: none;
					position: relative;

					&.active {
						background-color: rgb(26, 66, 138);
					}

					.step-mobile {
						display: flex;
						column-gap: 20px;
						width: 100%;
						justify-content: flex-start;
						align-items: center;
						padding-top: 24px;
						padding-bottom: 24px;
						padding-left: 24px;

						.step-mobile-marker-wrapper {
							display: flex;
							position: relative;
							padding-top: 0;
							text-align: center;
							border-radius: 20px;
							flex-direction: column;
							align-items: center;
							transition: all 0.2s cubic-bezier(0.23, 1, 0.32, 1);
							background-color: #f3f6f9;

							.step-mobile-marker {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 24px;
								height: 24px;
								overflow: hidden;
								border: 2px solid #1a428a;
								border-radius: 20px;
								border-style: none;
								background-color: #f3f6f9;

								.step-mobile-marker-text {
									color: #1a428a;
									font-family: Arial, sans-serif;
									font-size: 0.75rem;
									font-weight: bold;
								}
							}
						}

						.step-mobile-title {
							color: rgb(24, 31, 37);
							font-family: filson-pro, sans-serif;
							position: static;
							text-align: left;
							font-size: 20px;
							font-weight: 400;

							&.active {
								color: rgb(255, 255, 255);
							}
						}
					}
				}
			}

			.step-fields-wrapper {
				width: 100%;
				max-width: 100%;
				padding-top: 26px;
				padding-bottom: 0;
				padding-left: 32px;
				margin-bottom: 15px;
				column-gap: 0.5rem;
				row-gap: 0.5rem;
				justify-content: flex-start;
				align-items: stretch;
			}
		}

		.buttons-wrapper {
			max-width: none;
			justify-content: space-between;
			align-items: center;

			&.is-first-step.multi-step-form-with-one-step {
				justify-content: initial;
				margin-left: 25%;
			}
		}
	}
}

@media (max-width: 767px) {
	#submissionforms_module.homepage_contentbox .cms_label em {
		display: none;
	}

	#submissionforms_module tr[data-required="true"] .cms_label::after {
		content: "*";
		color: #ee0000;
		padding-left: 5px;
	}

	/* Amount - Begin */
	#submissionforms_module.cms_form .cms_field.currency,
	.responsive #submissionforms_module.cms_form .cms_field.currency {
		position: relative;
	}

	#submissionforms_module.cms_form .cms_field.currency:before,
	.responsive #submissionforms_module.cms_form .cms_field.currency:before {
		content: '$';
		position: absolute;
		transform: translate(0, -50%);
		top: 50%;
		left: 8px;
	}

	#submissionforms_module.cms_form .cms_field.currency input[type="text"],
	.responsive #submissionforms_module.cms_form .cms_field.currency input[type="text"] {
		text-indent: 5px;
		margin: 0 !important;
	}
	/* Amount - End */

	#submissionforms_module.cms_form {
		.cms_buttons {
			margin-left: 0;
		}

		.cms_label {
			display: block;
			width: 100%;
			text-align: left;
		}

		.cms_required {
			display: none;
		}

		.cms_field {
			display: block;
			width: 100%;
			padding-left: 0;
		}

		input[type="text"]:not(.hasDatepicker):not(.date-field),
		input[type="tel"],
		textarea,
		select {
			width: 100%;
		}

		input.hasDatepicker {
			display: inline-block;
			width: calc(100% - 20px);
		}

		input[type=file] {
			width: 100%;
		}

		.ui-datepicker-trigger {
			left: 5px;
			top: 0;
		}

		.checkbox_wrapper > table > tbody > tr > td {
			display: block;
			width: 100% !important;
		}

		.radio_wrapper > table > tbody > tr > td {
			display: block;
			width: 100% !important;
		}

		.paragraph-text {
			width: 100%;
		}

		.formSection {
			width: 100%;
		}

		.cms_field_note {
			width: 100%;
		}

		.formBreak {
			width: 100%;
		}

		.checkbox-cell,
		.radio-cell {
			margin-bottom: 0.5em;
		}

		.date-field.medium {
			width: 75px;
		}

		/* Tab Steps */
		.cms_steps_wrapper {
			padding-bottom: 1.5rem;
			display: flex;
			float: none;
			flex-direction: column;

			.cms_step.inactive,
			.cms_step_first,
			.cms_step_last {
				height: auto;
				text-align: center;
				border-bottom: 1px solid #d1d0ce;
			}

			.cms_step.active,
			.cms_step_first.active,
			.cms_step_last.active {
				display: block;
				height: auto;
				border-radius: 0;
				width: 100%;
			}

			.cms_step_last,
			.cms_step_first.active,
			.cms_step_first.inactive {
				border-radius: 0;
			}

			.cms_step span,
			.cms_step_first span,
			.cms_step_last span {
				padding: 5px 10px;
				width: 100%;
				text-align: left;
				justify-content: flex-start;
			}

			span strong {
				width: 100%;
				display: flex;
				justify-content: flex-start;
				text-align: left;
			}

			.cms_step span a,
			.cms_step_first span a,
			.cms_step_last span a {
				width: 100%;
				text-decoration: underline;
			}

			.inactive:before,
			.inactive:after,
			.active:before,
			.active:after {
				content: none;
			}
		}

		/* Signature Field */
		.sigPad {
			.sigWrapper {
				display: block !important;
				width: 100%;

				.pad {
					width: 100%;
					height: 100%;
				}
			}

			.signatureControls {
				width: 100%;
			}
		}

		.buttons-wrapper.is-first-step.multi-step-form-with-one-step {
			justify-content: flex-start;
			margin-left: 0;
		}
	}

	.module-forms {
		.formSection,
		.formBreak {
			width: 100%;
		}
	}

	/* Confirmation */
	.module-forms.confirmation .value-cell {
		word-break: break-word;
	}
}

@media (max-width: 479px) {
	#submissionforms_module.cms_form {
		/* Tab Steps */
		.cms_steps_wrapper {
			.cms_step_last:before {
				content: none !important;
			}

			.cms_step_last:after {
				content: none !important;
			}
		}

		/* Circle Steps */
		.mobile-steps {
			.step-mobile-wrapper {
				.step-mobile-inner-wrapper {
					.step-mobile {
						padding-top: 1rem;
						padding-bottom: 1rem;
						padding-left: 1rem;
					}
				}
			}

			.step-fields-wrapper {
				padding: 24px;
			}
		}

		.buttons-wrapper {
			margin-top: 0.5rem;
		}
	}
}

@media (max-width: 380px) {
	/* Date Field */
	#submissionforms_module.cms_form {
		input[size="35"].hasDatepicker {
			width: calc(100% - 20px);
		}
	}
}