.form-style {
  letter-spacing: -0.02rem !important;
}

.elementor-field-group-checkbox_custom [type="checkbox"],
.elementor-field-group-radio_custom [type="radio"] {
  position: absolute;
  visibility: hidden !important;
}

.form-style
  .elementor-field-group-checkbox_custom
  .elementor-field-option
  label,
.form-style .elementor-field-group-radio_custom .elementor-field-option label {
  display: inline-block;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  transition: 0.2s all;
  color: var(--e-global-color-3063222);
  background-color: rgba(191, 157, 249, 0.1);
  border-radius: 2rem;
  cursor: pointer;
  position: relative;
  z-index: 2;
  text-align: center;
}

.form-style
  .elementor-field-group-checkbox_custom
  .elementor-field-option
  label:hover,
.form-style
  .elementor-field-group-radio_custom
  .elementor-field-option
  label:hover,
.form-style
  .elementor-field-group-checkbox_custom
  .elementor-field-subgroup
  input:checked
  ~ label:hover,
.form-style
  .elementor-field-group-radio_custom
  .elementor-field-subgroup
  input:checked
  ~ label:hover {
  border-color: var(--e-global-color-primary);
  color: black !important;
  background-color: rgba(191, 157, 249, 1);
  transition: all 200ms ease-in;
}

.form-style :placeholder {
  color: rgb(26, 26, 39);
  letter-spacing: -0.02rem;
  opacity: 1;
}

.form-style
  .elementor-field-group-checkbox_custom
  .elementor-field-subgroup
  input:checked
  ~ label,
.form-style
  .elementor-field-group-radio_custom
  .elementor-field-subgroup
  input:checked
  ~ label {
  border-color: var(--e-global-color-b4169a1);
  color: var(--e-global-color-a044a95) !important;
  background-color: var(--e-global-color-b4169a1);
}

.form-style .elementor-field-subgroup {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.form-style
  .elementor-field-subgroup:not(.elementor-subgroup-inline)
  .elementor-field-option {
  flex-basis: auto !important;
  margin: 0.25rem 0 0 0.25rem !important;
}

.form-style .elementor-field-group-checkbox_custom .elementor-field-subgroup,
.form-style .elementor-field-group-radio_custom .elementor-field-subgroup {
  padding: 0.6rem;
}

.form-style .elementor-field-group-checkbox_custom,
.form-style .elementor-field-group-radio_custom {
  border-radius: 8px;
  margin: 0 calc(1rem / 4);
  padding: 0 !important;
  border: solid var(--e-global-color-5bb4178) 1px;
}

.form-style label[for="form-field-type"],
.form-style label[for="form-field-city"] {
  font-weight: 400;
  padding: 1rem 0 0.25rem;
  font-size: 1rem !important;
}

input[type="date"] {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

input[type="date"]:before {
  content: attr(placeholder) !important;
  margin-right: 0.5em;
}

input[type="date"]:focus:before,
input[type="date"]:valid:before {
  content: attr(placeholder);
}

.form-style a,
.privacy-policy-block a {
  color: #9d63ff !important;
  text-decoration: underline;
}

.form-style a:hover,
.privacy-policy-block a:hover {
  color: black !important;
}
.form-style .elementor-field-group-checkbox_custom .elementor-field-label,
.form-style .elementor-field-group-radio_custom .elementor-field-label {
  padding: 16px;
  font-size: 15px !important;
}

.elementor-field-group-privacy_check {
  line-height: 1.4;
  font-size: 16px;
  min-height: 40px;
}

.elementor-field-group-privacy_check [type="checkbox"] {
  display: none !important;
}

.elementor-field-group-privacy_check .elementor-field-option {
  width: fit-content !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.form-style .elementor-field-group-privacy_check .elementor-field-option label {
  position: relative;
  padding-left: 36px;
  line-height: 24px;
  min-height: 24px;
}

.form-style
  .elementor-field-group-privacy_check
  .elementor-field-option
  label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  border-radius: 6px;
  border: solid var(--e-global-color-5bb4178) 1px;
  transition: all 0.25s ease-out;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='23' stroke-width='30' fill='%239D63FF'%3E%3Cpath d='M382-240 154-468l57-57 171 171 367-367 57 57-424 424Z'/%3E%3C/svg%3E");
  background-position: 100% 24px;
  background-repeat: no-repeat;
}
.elementor-field-group-privacy_check input ~ label:hover:before {
  background-color: rgba(191, 157, 249, 0.5);
  border-color: rgba(191, 157, 249, 1) !important;
}
.elementor-field-group-privacy_check input:checked ~ label:before {
  background-color: rgba(191, 157, 249, 0.3);
  border-color: rgba(191, 157, 249, 0.6) !important;
  background-position: 100% !important;
}

.elementor-field-group-privacy_check::after {
  content: "";
  position: absolute;
  width: 0px;
  height: 0px;
  transition: 500ms;
}

body {
  touch-action: pan-y, pan-x;
}
.form-style-page {
  letter-spacing: -0.02rem !important;
}

.form-style-page .form-style-page [type="checkbox"]:checked,
.form-style-page [type="checkbox"]:not(:checked),
.form-style-page [type="radio"]:checked,
.form-style-page [type="radio"]:not(:checked) {
  position: absolute;
  visibility: hidden !important;
}

.form-style-page .elementor-field-type-radio .elementor-field-option label,
.form-style-page .elementor-field-type-checkbox .elementor-field-option label {
  display: inline-block;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  transition: 0.2s all;
  color: var(--e-global-color-3063222);
  background-color: rgb(191 157 249 / 10%);
  border-radius: 2rem;
  cursor: pointer;
  position: relative;
  z-index: 2;
  text-align: center;
}

.form-style-page .elementor-field-option label:hover,
.form-style-page .elementor-field-subgroup input:checked ~ label:hover {
  border-color: var(--e-global-color-primary);
  color: black !important;
  background-color: rgb(191 157 249 / 100%);
  transition: all 200ms ease-in;
}
.form-style-page ::placeholder {
  color: rgb(26, 26, 39);
  letter-spacing: -0.02rem;
  opacity: 1;
}

.form-style-page .elementor-field-subgroup input:checked ~ label {
  border-color: var(--e-global-color-b4169a1);
  color: var(--e-global-color-a044a95) !important;
  background-color: var(--e-global-color-b4169a1);
}
.form-style-page .elementor-field-subgroup {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.form-style-page
  .elementor-field-subgroup:not(.elementor-subgroup-inline)
  .elementor-field-option {
  flex-basis: auto !important;
  margin: 0.25rem 0 0 0.25rem !important;
}
.form-style-page .elementor-field-subgroup {
  padding: 0.6rem;
}
.form-style-page .elementor-field-type-radio {
  border-radius: 8px;
  margin-right: calc(1rem / 4);
  margin-left: calc(1rem / 4);
  padding: 0 !important;
  border: solid var(--e-global-color-5bb4178);
  border-width: 1px;
}

.form-style-page label[for="form-field-type"],
.form-style-page label[for="form-field-city"] {
  font-weight: 400;
  padding: 1rem;
  padding-bottom: 0.25rem;
  font-size: 1rem !important;
}

.elementor-field-type-submit {
  margin-top: 2rem;
}
.e-form__buttons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-content: flex-start !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px;
  color: black !important;
}
.e-form__buttons button {
  order: 2;
}
.e-form__buttons .privacy-policy {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1rem;
  letter-spacing: -0.02em;
  color: var(--e-global-color-3063222) !important;
}

.form-style-page .e-form__buttons .elementor-button {
  min-width: 180px;
  padding: 1rem;
}

.form-style-page .e-form__buttons .privacy-policy a {
  color: var(--e-global-color-04233e1) !important;
  text-decoration: underline;
}
.privacy-policy-block {
  max-width: 300px;
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
}
@media (max-width: 768px) {
  .e-form__buttons .elementor-button {
    min-width: 100% !important;
    order: 0;
  }
  .e-form__buttons {
    flex-direction: column !important;
  }
}
