.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap;
}
/*
.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input,
.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea,
.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper,
.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
  flex-basis: 100%;
  max-width: 100%;
}
.elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input,
.elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
  flex-grow: 1;
}
*/

.elementor-field-group {
  flex-wrap: wrap;
  align-items: center;
}
.elementor-field-group.elementor-field-type-submit {
  align-items: flex-end;
}
.elementor-field-group .elementor-field-textual {
  width: 100%;
  max-width: 100%;
  border: 1px solid #818a91;
  background-color: #fff;
  color: #373a3c;
  vertical-align: middle;
  flex-grow: 1;
}
.elementor-field-group .elementor-field-textual:focus {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
  outline: 0;
}
.elementor-field-group .elementor-field-textual::placeholder {
  color: inherit;
  font-family: inherit;
  opacity: 0.6;
}
.elementor-field-group .elementor-field-textual input[type=file] {
  align-self: center;
}
.elementor-field-group .elementor-password-wrapper,
.elementor-field-group .elementor-select-wrapper {
  display: flex;
  position: relative;
  width: 100%;
}
.elementor-field-group .elementor-password-wrapper {
  overflow: hidden;
}
.elementor-field-group .elementor-password-wrapper ~ * {
  width: 100%;
}
.elementor-field-group .elementor-password-wrapper input::-ms-reveal {
  display: none;
}
.elementor-field-group .elementor-password-wrapper input[type=password] ~ .elementor-icon:last-child,
.elementor-field-group .elementor-password-wrapper input[type=text] ~ .elementor-icon:not(:last-child) {
  display: none;
}
.elementor-field-group .elementor-password-wrapper .elementor-icon,
.elementor-field-group .elementor-select-wrapper::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: var(--ce-field-color, #373a3c);
  font-size: 15px;
}
.elementor-field-group .elementor-password-wrapper .elementor-icon {
  inset-inline-end: 0;
  padding: 1em;
}
.elementor-field-group .elementor-select-wrapper select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-style: inherit;
  text-transform: inherit;
  letter-spacing: inherit;
  flex-basis: 100%;
  padding-inline-end: 20px;
}
.elementor-field-group .elementor-select-wrapper::before {
  inset-inline-end: 10px;
  content: '\e8ad';
  font-family: 'ceicons';
  pointer-events: none;
}
.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper::before {
  content: "";
}

/*
.elementor-field-subgroup {
  display: flex;
  flex-wrap: wrap;
}
.elementor-field-subgroup .elementor-field-option label {
  display: inline-block;
}
.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
  padding-right: 10px;
}
.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
  flex-basis: 100%;
}

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline;
}
*/
label.elementor-field-option {
	margin: 0;
	text-align: start;
}
.elementor-field-option input[type=radio],
.elementor-field-option input[type=checkbox],
.elementor-field-option .elementor-field-label {
	margin: 0;
	vertical-align: middle;
}
.elementor-field-option ~ em p {
	display: inline;
	color: inherit;
	font: inherit;
}

.elementor-field-label {
	text-align: start;
	overflow: hidden;
  cursor: pointer;
}
.elementor-mark-required .elementor-field-label::after {
  content: "*";
  color: red;
  padding-inline-start: 0.2em;
}

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 3px;
}
.elementor-field-textual.elementor-size-xs {
  font-size: 13px;
  min-height: 33px;
  padding: 4px 12px;
  border-radius: 2px;
}
.elementor-field-textual.elementor-size-md {
  font-size: 16px;
  min-height: 47px;
  padding: 6px 16px;
  border-radius: 4px;
}
.elementor-field-textual.elementor-size-lg {
  font-size: 18px;
  min-height: 59px;
  padding: 7px 20px;
  border-radius: 5px;
}
.elementor-field-textual.elementor-size-xl {
  font-size: 20px;
  min-height: 72px;
  padding: 8px 24px;
  border-radius: 6px;
}

.elementor-button-align-center .elementor-field-type-submit {
	justify-content: center;
}
.elementor-button-align-start .elementor-field-type-submit {
	justify-content: left;
}
.elementor-button-align-end .elementor-field-type-submit {
	justify-content: right;
}
.elementor-button-align-stretch .elementor-field-type-submit .elementor-button {
	flex-basis: 100%;
}
.elementor-button-align-center .elementor-field-type-submit .elementor-button,
.elementor-button-align-start .elementor-field-type-submit .elementor-button,
.elementor-button-align-end .elementor-field-type-submit .elementor-button {
	flex-basis: initial;
}
@media screen and (max-width: 1024px) {
	.elementor-tablet-button-align-center .elementor-field-type-submit {
		justify-content: center;
	}
	.elementor-tablet-button-align-start .elementor-field-type-submit {
		justify-content: left;
	}
	.elementor-tablet-button-align-end .elementor-field-type-submit {
		justify-content: right;
	}
	.elementor-tablet-button-align-stretch .elementor-field-type-submit .elementor-button {
		flex-basis: 100%;
	}
	.elementor-tablet-button-align-center .elementor-field-type-submit .elementor-button,
	.elementor-tablet-button-align-start .elementor-field-type-submit .elementor-button,
	.elementor-tablet-button-align-end .elementor-field-type-submit .elementor-button {
		flex-basis: initial;
	}
}
@media screen and (max-width: 767px) {
	.elementor-mobile-button-align-center .elementor-field-type-submit {
		justify-content: center;
	}
	.elementor-mobile-button-align-start .elementor-field-type-submit {
		justify-content: left;
	}
	.elementor-mobile-button-align-end .elementor-field-type-submit {
		justify-content: right;
	}
	.elementor-mobile-button-align-stretch .elementor-field-type-submit .elementor-button {
		flex-basis: 100%;
  	}
	.elementor-mobile-button-align-center .elementor-field-type-submit .elementor-button,
	.elementor-mobile-button-align-start .elementor-field-type-submit .elementor-button,
	.elementor-mobile-button-align-end .elementor-field-type-submit .elementor-button {
		flex-basis: initial;
	}
}

.elementor-error .elementor-field.elementor-field-textual {
	border-color: #d9534f;
}
.elementor-error .help-inline {
	color: #d9534f;
	font-size: 0.9em;
}

.elementor-message {
	margin: 10px 0;
	font-size: 1em;
	line-height: 1;
}
.elementor-message::before {
  content: "\e90e";
  display: inline-block;
  font-family: ceicons;
  font-weight: normal;
  font-style: normal;
  vertical-align: baseline;
  margin-inline-end: 5px;
}
.elementor-message.elementor-message-danger {
  color: #d9534f;
}
.elementor-message.elementor-message-danger::before {
  content: "\e829";
}
.elementor-message.elementor-message-success {
  color: #5cb85c;
}