@keyframes spin {
	0% {
		transform: rotate(0deg)
	}

	to {
		transform: rotate(360deg)
	}
}

.nxt-form-layout {
	border: 0;
	padding: 20px 0 0
}

.form-nxt-style-1,.nxt-simple-contact-form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%
}

.nxt-form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: end
}

.nxt-check-box,.nxt-check-box-container,.nxt-radio-box {
	display: flex;
	flex-direction: column;
	gap: 8px
}

.nxt-message-input,.nxt-option-container {
	display: flex;
	flex-direction: column
}

.nxt-check-box,.nxt-radio-box {
	padding-top: 8px
}

.nxt-check-title-label,.nxt-email-label,.nxt-message-label,.nxt-name-label,.nxt-number-label,.nxt-option-label,.nxt-radio-title-label {
	font-size: 16px;
	font-weight: 600;
	color: #333;
	transition: all .3s ease-in-out
}

.nxt-input-container {
	border: 1px solid #ccc;
	border-radius: 4px;
	display: flex;
	align-items: center;
	width: 100%;
	gap: 8px;
	transition: all .3s ease-in-out
}

.nxt-email-input .nxt-input-container .nxt-email-richtext,.nxt-name-input .nxt-input-container .nxt-name-richtext,.nxt-number-field .nxt-number-input .nxt-number-richtext {
	padding: 0;
	font-size: 14px;
	line-height: 1.6;
	margin-left: 0;
	margin-right: 0;
	border-radius: 4px;
	border-width: 0;
	background-color: #fff;
	width: 100%;
	transition: all .3s ease-in-out;
	background: 0 0;
	min-height: 0px;
}

.nxt-email-input .nxt-input-container .nxt-email-richtext,.nxt-email-input .nxt-input-container .nxt-email-richtext:focus,.nxt-name-input .nxt-input-container .nxt-name-richtext:focus {
	outline: 0;
	border: 0;
	box-shadow: none
}

.nxt-message-input .nxt-message-richtext {
	padding: 10px;
	font-size: 14px;
	border: 1px solid #8f8f8fa6;
	border-radius: 4px;
	transition: all .3s ease-in-out;
	min-height: 100px;
	resize: vertical;
	background-color: #fff
}

.nxt-input-wrapper {
	border: 1px solid #8f8f8fa6;
	display: flex;
	border-radius: 4px;
	position: relative
}

.nxt-submit-button.nxt-btn-inline .nxt-submit {
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 5px;
	box-sizing: border-box;
	padding: 8px 16px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	flex: 1;
	transition: all .3s ease-in-out;
	width: 100%;
	min-width: 0px;
}

.nxt-submit,.nxt-submit:disabled {
	border: 0;
	color: #fff;
	border-radius: 5px;
	font-size: 16px;
	cursor: pointer;
	opacity: 1;
	position: relative;
	text-align: center;
	min-width: 110px;
	justify-content: center;
	align-items: center;
	display: flex;
	padding: 0px;
	background-color: #162d9e;
	column-gap: 5px;
}

.nxt-submit:focus,.nxt-submit:hover {
	background-color: #162d9e
}

.nxt-placeholder-icon {
	padding-left: 8px;
	transition: all .3s ease-in-out
}

.nxt-button-icon {
	position: relative;
	display: inline-flex;
	justify-content: center
}

.nxt-checkbox-list,.nxt-name-label-wrapper,.nxt-placeholder-icon .nxt-inner-icon-wrap,.nxt-radio-list {
	display: flex;
	align-items: center;
	transition: all .3s ease-in-out
}

.nxt-label-container,.nxt-name-label-wrapper {
	position: relative
}

.nxt-inner-icon {
	font-size: 18px;
	height: 18px
}

.nxt-name-richtext {
	flex: 1;
	padding: 8px 12px;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 4px;
	outline: 0;
	color: #333;
	width: 100%;
	box-sizing: border-box
}

.nxt-icon {
	width: 18px;
	height: 18px;
	object-fit: contain
}

.nxt-label-container {
	display: flex;
	align-items: center;
	gap: 4px
}

.nxt-message-richtext::placeholder {
	opacity: 1;
	font: 400 1em Arial,sans-serif
}

.nxt-check-title-label.required::after,.nxt-email-label.required::after,.nxt-message-label.required::after,.nxt-name-label.required::after,.nxt-number-label.required::after,.nxt-option-label.required::after,.nxt-radio-title-label.required::after {
	content: "";
	color: red;
	margin-left: 4px
}

.nxt-error-checkbox,.nxt-error-email,.nxt-error-number,.nxt-error-radiobox,.nxt-error-show,.nxt-message-error {
	color: red;
	font-size: 14px
}

.nxt-number-field .nxt-number-input .nxt-number-richtext:focus {
	border: 0;
	box-shadow: none;
	outline: 0
}

.nxt-message-richtext:focus,.nxt-option-container .nxt-option-field:focus,.nxt-radio-box input[type=radio] {
	box-shadow: none;
	outline: 0;
	background-image: none
}

.nxt-radio-box input[type=radio]:checked:focus {
	box-shadow: none;
	outline: 0;
	background-image: none
}

.nxt-number-richtext:focus {
	outline-width: 0;
	outline-style: none
}

.nxt-style-1 .nxt-message-input .nxt-message-richtext:focus {
	outline: 0;
	box-shadow: none
}

.nxt-help-text {
	display: block;
	width: -webkit-fill-available
}

.nxt-phone-icon {
	position: absolute;
	z-index: 10;
	top: 12px;
	left: 15px
}

.nxt-submit-button {
	display: inline-block;
	text-align: center;
	position: relative;
	width: 100%;
	flex: 1 1 100%
}

.nxt-loader {
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 24px;
	height: 24px;
	z-index: 10
}

.nxt-loader::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: 3px solid transparent;
	border-top: 3px solid #fff;
	border-radius: 50%;
	animation: spin 1s linear infinite
}

.nxt-check-label,.nxt-radio-label {
	color: #000;
	margin-bottom: 0;
	display: inline-flex;
	align-items: center;
	transition: all .3s ease-in-out
}

.nxt-radio-box .nxt-radio-richtext {
	width: 20px;
	height: 20px;
	padding: 0;
	font-size: 16px;
	border: 1px solid #8f8f8fa6;
	border-radius: 50%;
	margin-right: 6px;
	appearance: none;
	display: inline-block;
	position: relative;
	cursor: pointer
}

.nxt-radio-box input[type=radio]:checked,.nxt-radio-box input[type=radio]:checked:focus,.nxt-radio-box input[type=radio]:checked:hover {
	border: 1px solid #8f8f8fa6;
	background-color: #fff
}

.nxt-radio-box .nxt-radio-richtext::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	background-color: #162d9e;
	border: 1px solid #8f8f8fa6;
	transform: translate(-50%,-50%) scale(0);
	width: 12px;
	height: 12px;
	border-radius: 50%;
	opacity: 0;
	transition: all .3s cubic-bezier(.12,.4,.29,1.46)
}

.nxt-radio-box .nxt-radio-richtext:checked::after {
	transform: translate(-50%,-50%) scale(1);
	opacity: 1
}

.nxt-check-box input[type=checkbox]:checked::before,.nxt-radio-box .nxt-radio-richtext:checked::before {
	content: none
}

.nxt-check-label input[type=checkbox] {
	margin-right: 8px
}

.nxt-check-box>div .nxt-check-richtext {
	width: 20px;
	height: 20px;
	padding: 0;
	font-size: 16px;
	border: 1px solid #8f8f8fa6;
	border-radius: 4px;
	appearance: none;
	display: inline-block;
	position: relative;
	margin: 0 10px 0 0;
	transition: all .3s ease-in-out
}

.nxt-check-box>div .nxt-check-richtext::after {
	content: "";
	position: absolute;
	top: 40%;
	left: 50%;
	border: solid #fff;
	border-width: 0 3px 3px 0;
	width: calc(20px - 70%);
	height: calc(20px - 45%);
	transform: translate(-50%,-50%) rotate(45deg) scale(0);
	opacity: 0;
	transition: transform .3s cubic-bezier(.12,.4,.29,1.46),opacity .3s ease
}

.nxt-check-box>div .nxt-check-richtext:checked::after {
	transform: translate(-50%,-50%) rotate(45deg) scale(1);
	opacity: 1
}

.nxt-check-box>div .nxt-check-richtext:focus {
	outline-width: 0;
	outline-style: none
}

.nxt-check-box>div .nxt-check-richtext:checked:focus,.nxt-check-box>div .nxt-check-richtext:checked:hover,.tp-form-checkbox-button .nxt-check-box>div .nxt-check-richtext:checked {
	background-color: #162d9e;
	background-image: none;
	outline-width: 0;
	outline-style: none
}

.nxt-check-box>div .nxt-check-richtext:not(:checked)::after {
	transform: translate(-50%,-50%) rotate(45deg) scale(0);
	opacity: 0;
	transition: none
}

.nxt-option-container .nxt-option-field {
	background-image: url("data:image/svg+xml;utf8,<svg fill='%23666' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 16px;
	padding: 10px;
	appearance: none;
	line-height: 1.6;
}

.nxt-check-box.horizontal,.nxt-radio-box.horizontal {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 5px
}

.nxt-radio-box.vertical {
	flex-direction: column;
	gap: 8px;
	margin-top: 5px
}

.nxt-option-field:focus {
	outline-width: 0;
	outline-style: none
}

.nxt-form-option .nxt-option-container .nxt-option-field:hover {
	color: currentColor
}

.nxt-check-box.round .nxt-checkbox-list .nxt-check-richtext {
	border-radius: 50%
}

.nxt-radio-box.square .nxt-checkbox-list .nxt-radio-richtext,.nxt-radio-box.square .nxt-radio-list .nxt-radio-richtext,.nxt-radio-box.square .nxt-radio-richtext:checked::after {
	border-radius: 4px
}

.tp-form-block input:-webkit-autofill,.tp-form-block input:-webkit-autofill:focus,.tp-form-block input:-webkit-autofill:hover {
	box-shadow: 0 0 0 1000px transparent inset!important;
	transition: background-color 9999s ease-in-out 0s!important
}

.nxt-message-richtext::-webkit-scrollbar {
	opacity: 0;
	visibility: hidden;
	width: 8px
}

.nxt-message-richtext::-webkit-scrollbar-thumb {
	background: gray;
	border-radius: 10px
}

.nxt-submit-button .nxt-submit,.nxt-btn-inline .nxt-submit {
	font-size: 14px
}

.nxt-button-svg {
	display: flex;
	align-items: center;
}

.nxt-submit .nxt-button-svg svg ,.nxt-submit .tpgb-draw-svg {
	width: 20px;
	height: 20px;
	display: flex
}

.nxt-submit-button .nxt-submit {
	line-height: 3
}

.nxt-btn-inline .nxt-submit {
	line-height: 2
}

.nxt-not-inline {
	flex: 1 1 100%
}

.nxt-form-option:has(.nxt-error-select:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit),.nxt-number-field:has(.nxt-error-number:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit),.tp-form-email-field:has(.nxt-error-email:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit),.tp-form-message-field:has(.nxt-message-error:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit),.tp-form-name-field:has(.nxt-error-show:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit) {
	margin-bottom: 30px
}

.nxt-number-field:has(.nxt-number-input>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-error-number:not(:empty)))+.nxt-submit-button.nxt-btn-inline,.tp-form-checkbox-button:has(.nxt-check-box>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-error-checkbox:not(:empty)))+.nxt-submit-button.nxt-btn-inline,.tp-form-email-field:has(.nxt-email-input>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-error-email:not(:empty)))+.nxt-submit-button.nxt-btn-inline,.tp-form-message-field:has(.nxt-message-input>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-message-error:not(:empty)))+.nxt-submit-button.nxt-btn-inline,.tp-form-name-field:has(.nxt-name-input>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-error-show:not(:empty)))+.nxt-submit-button.nxt-btn-inline {
	margin-bottom: 40px
}

.nxt-form-option:has(.nxt-error-select:not(:empty)):has(.nxt-option-container>.nxt-help-text:nth-child(3):not(:empty))+.nxt-submit-button.nxt-btn-inline,.nxt-number-field:has(.nxt-error-number:not(:empty)):has(.nxt-number-input>.nxt-help-text:nth-child(3):not(:empty))+.nxt-submit-button.nxt-btn-inline,.tp-form-email-field:has(.nxt-error-email:not(:empty)):has(.nxt-email-input>.nxt-help-text:nth-child(3):not(:empty))+.nxt-submit-button.nxt-btn-inline,.tp-form-message-field:has(.nxt-message-error:not(:empty)):has(.nxt-message-input>.nxt-help-text:nth-child(3):not(:empty))+.nxt-submit-button.nxt-btn-inline,.tp-form-name-field:has(.nxt-error-show:not(:empty)):has(.nxt-name-input>.nxt-help-text:nth-child(3):not(:empty))+.nxt-submit-button.nxt-btn-inline {
	margin-bottom: 62px
}

.tp-form-checkbox-button:has(.nxt-check-box>.nxt-help-text:nth-child(2):not(:empty)):not(:has(.nxt-error-checkbox:not(:empty)))+.nxt-submit-button.nxt-btn-inline,.tp-form-radio-button:has(.nxt-radio-box>.nxt-help-text:nth-child(2):not(:empty)):not(:has(.nxt-error-radiobox:not(:empty)))+.nxt-submit-button.nxt-btn-inline {
	margin-bottom: 35px!important
}

.tp-form-checkbox-button:has(.nxt-error-checkbox:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit),.tp-form-radio-button:has(.nxt-error-radiobox:not(:empty))+.nxt-submit-button.nxt-btn-inline:has(.nxt-submit) {
	margin-bottom: 22px
}

.tp-form-checkbox-button:has(.nxt-error-checkbox:not(:empty)):has(.nxt-check-box>.nxt-help-text:nth-child(2):not(:empty))+.nxt-submit-button.nxt-btn-inline,.tp-form-radio-button:has(.nxt-error-radiobox:not(:empty)):has(.nxt-radio-box>.nxt-help-text:nth-child(2):not(:empty))+.nxt-submit-button.nxt-btn-inline {
	margin-bottom: 56px
}

.nxt-form-option:has(.nxt-option-container>.nxt-help-text:nth-child(3):not(:empty)):not(:has(.nxt-error-select:not(:empty)))+.nxt-submit-button.nxt-btn-inline {
	margin-bottom: 30px
}
.tp-form-block textarea:-webkit-autofill,.tp-form-block textarea:-webkit-autofill:focus,.tp-form-block textarea:-webkit-autofill:hover {
	box-shadow: 0 0 0 1000px transparent inset !important;
	transition: background-color 9999s ease-in-out 0s !important;
}