.error_form input,
.error_form select,
.error_form textarea,
.error_form.checkbox label::before,
.error_form .select2-container--default .select2-selection--single .select2-selection__rendered,
.error_form .departure-city__input__wrapper,
.error_form .receiving-city__input__wrapper {
  border: 1px solid red;
}

[data-type] {
  display: none;
}

[data-type].active {
  display: block;
}

.calculator-block h1 {
  color: #000;
  font-family: Montserrat;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  text-transform: uppercase;
  margin: 40px 0px;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
  background-image: unset !important;
  position: absolute;
}

.calculator__header {
  border-radius: 20px 20px 0px 0px;
  background: #f39224;
  color: #fff;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  padding: 25px 40px;
}

.calculator__fields {
  border-radius: 0px 0px 30px 30px;
  border-right: 1px solid #f39224;
  border-bottom: 1px solid #f39224;
  border-left: 1px solid #f39224;
  background: #fff;
  padding: 40px;
}

.select2-container {
  width: 100% !important;
}

.select2-container--default .select2-selection--single {
  border: unset;
}

.select2-container--default .select2-selection--single {
  height: 60px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.departure-city__input__wrapper,
.receiving-city__input__wrapper {
  padding: 20px 26px;
  border-radius: 20px;
  border: 1px solid #dbdbdb;
  background: #fff;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  font-size: 14px;
  line-height: normal;
}

.select2-results__options {
  display: flex;
  flex-direction: column;
}

.departure-city__input,
.receiving-city__input {
  display: inline-block;
  font-size: 14px;
  color: rgb(0 0 0 / 50%);
  max-width: 145px;
  width: 100%;
}

.departure-city__select {
  display: none;
}

.select2-dropdown {
  padding: 10px 15px;
  border-radius: 0 0 20px 20px;
  border: 1px solid #dbdbdb;
  background: #fff;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  display: inline-block;
  width: 13px;
  height: 13px;
  background: #fff url("/local/templates/main-new/img/icons/lower.svg") no-repeat center;
  position: absolute;
  top: 25px;
  right: 20px;
}

.select2-container--open .select2-selection__arrow {
  transform: rotate(180deg)
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background: unset;
  opacity: .5;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none;
}

.select2-container--open .select2-selection--single .select2-selection__rendered {
  border-radius: 20px 20px 0 0;
}

.calculator__fields-city {
  display: grid;
  grid-template-columns: 1fr 15px 1fr;
  gap: 20px;
}

.calculator__fields-city__arrows {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 15px;
  cursor: pointer;
}

.calculator__fields-city__checkboxes {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.checkbox input[type="radio"],
.checkbox input[type="checkbox"] {
  display: none;
}

.checkbox label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  color: rgb(0 0 0);
}

.checkbox label:before {
  content: "";
  flex-shrink: 0;
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 2px;
  border: 1px solid #d9d9d9;
  margin-right: 8px;
  cursor: pointer;
  background: #fff;
  transition: background-color 0.5s ease, border 0.5s ease;
}

.checkbox input[type="radio"]:checked+label::before,
.checkbox input[type="checkbox"]:checked+label::before {
  background: #fff url("/local/templates/main-new/img/icons/check.svg") no-repeat center;
  border: 1px solid #565656;
}

.watershed {
  opacity: 0.1;
  background: #000;
  height: 1px;
  width: 100%;
  margin: 40px 0;
}

.calculator__fields-params__input {
  padding: 20px 60px;
  border-radius: 20px;
  border: 1px solid #dbdbdb;
  background: #fff;
  width: 100%;
  box-sizing: border-box;
  color: rgb(0 0 0);
  font-size: 14px;
}

.calculator__fields-params__input::placeholder {
  color: rgb(0 0 0 / 50%);
}

.calculator__fields-params {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}

.calculator__fields-params__wrapper {
  position: relative;
}

.calculator__fields-params__icon {
  position: absolute;
  top: 20px;
  left: 26px;
}

.calculator__fields-params__measure {
  position: absolute;
  top: 20px;
  right: 26px;
  color: rgb(0 0 0 / 50%);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
}

.total {
  display: flex;
  gap: 10px;
}

.total .total__header {
  color: rgb(0 0 0 / 50%);
  font-size: 16px;
}

.total .total__price,
.total .total__currency {
  color: #000;
  font-size: 26px;
}

.calculate,
.application-form {
  margin-bottom: 40px;
}

.calculator__fields__group__header {
  color: #000;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 20px;
}

.calculator__fields__group__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 25px;
}

.calculator__fields__group__input {
  border-radius: 20px;
  border: 1px solid #dbdbdb;
  background: #fff;
  padding: 20px 26px;
  box-sizing: border-box;
  width: 100%;
  font-size: 14px;
}

.calculator__fields__group__input::placeholder {
  color: rgb(0 0 0 / 50%);
}

/* .calculator__fields__group__item:last-child {
  grid-column-start: 1;
  grid-column-end: 3;
} */

.calculator__fields__group__item__wrapper textarea {
  padding: 20px 26px;
  height: 124px;
  border-radius: 20px;
  border: 1px solid #dbdbdb;
  background: #fff;
  width: 100%;
  font-size: 14px;
  color: rgb(0 0 0 / 50%);
  height: 124px;
  box-sizing: border-box;
}

.policy {
  margin: 40px 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.policy .checkbox label {
  color: rgb(0 0 0 / 50%);
  font-size: 14px;
}

.calculator_bottom {
  display: flex;
  gap: 40px;
  align-items: center;
  flex-wrap: wrap;
}

.calculator_bottom .calculator_submit {
  border-radius: 200px;
  background: linear-gradient(90deg, #f29224 0%, #f2b136 100%);
  color: #fff;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  text-transform: uppercase;
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
}

.form_info {
  margin-top: 30px;
  font-size: 12px;
  color: rgb(0 0 0 / 50%);
}

.form_info a {
  color: #f29224;
}

.form_info a:hover {
  text-decoration: underline;
}

#error-calc-response {
  margin-bottom: 40px;
}

@media screen and (max-width: 1200px) {
  .calculator__fields-params {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 680px) {
  .calculator__fields-params {
    grid-template-columns: 1fr;
  }

  .calculator__fields-city {
    grid-template-columns: 1fr;
  }

  .calculator__fields-params {
    grid-template-columns: 1fr;
  }

  .calculator-block h1 {
    font-size: 20px;
  }

  .calculator__header {
    font-size: 16px;
    padding: 25px;
  }

  .calculator__fields {
    padding: 35px 25px;
  }

  .total .total__header {
    font-size: 14px;
  }

  .total .total__price,
  .total .total__currency {
    font-size: 22px;
  }

  .calculator__fields__group__header {
    font-size: 16px;
  }

  .calculator_bottom {
    gap: 25px;
  }
}


.calc-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
}

.calc-modal__content {
  background-color: #fff;
  margin: 10% auto;
  padding: 20px;
  border-radius: 8px;
  width: 90%;
  max-width: 750px;
  position: relative;
}

.calc-modal__close {
  position: absolute;
  top: 0px;
  right: 0;
  background: none;
  border: none;
  cursor: pointer;
  width: 60px;
  padding: 0;
}

#modal-form-calc {
  margin-bottom: 20px;
}

.select2-dropdown {
  z-index: 9999 !important;
}

.calc-modal .jq-selectbox__select {
  display: none !important;
}

button.select2-selection__clear {
  top: -9999px;
}

.calculator_bottom-btns {
  display: flex;
  gap: 10px;
}

.calculator_exit {
  border-radius: 200px;
  border: 1px solid #f2b136;
  background: unset;
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  text-transform: uppercase;
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
}

.calculator_exit svg {
  transform: rotate(180deg);
}