
.form-control-custom-placeholder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 5px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-family: TTNormsPro;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
  min-height: 64px;
  padding: 16px 13px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 1150px) {
  .form-control-custom-placeholder {
    font-size: 21px;
  }
}
@media (max-width: 950px) {
  .form-control-custom-placeholder {
    font-size: 16px;
  }
}
@media (max-width: 1150px) {
  .form-control-custom-placeholder {
    min-height: 56px;
    padding: 13px 12px;
  }
}
@media (max-width: 950px) {
  .form-control-custom-placeholder {
    min-height: 42px;
    padding: 9px 10px;
  }
}
.form-control-custom-placeholder__suggestion {
  pointer-events: none;
  font-size: 18px;
  color: #A3A7AA;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 1150px) {
  .form-control-custom-placeholder__suggestion {
    font-size: 14px;
  }
}

.form-control-custom-wrap {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  cursor: text;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.form-control-custom-wrap--filled .form-control-custom-placeholder, .form-control-custom-wrap--focused .form-control-custom-placeholder {
  display: none;
}


.file-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.file-control__hidden {
  position: absolute;
  margin-left: -1px;
  width: 1px;
  height: 1px;
  -webkit-clip-path: inset(2px);
          clip-path: inset(2px);
}
.file-control__hidden:focus-visible ~ .file-control__visible, .file-control__hidden :focus ~ .file-control__visible {
  outline: ridge;
  outline-offset: -2px;
  outline-color: #F6E200;
}
.file-control__btn {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 15px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
  width: 55px;
  height: 64px;
  color: #A3A7AA;
}
@media (max-width: 1150px) {
  .file-control__btn {
    width: 50px;
    height: 56px;
  }
}
@media (max-width: 950px) {
  .file-control__btn {
    height: 42px;
    width: 38px;
  }
}
.file-control__btn .icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  height: 30px;
  fill: #A3A7AA;
}
@media (max-width: 950px) {
  .file-control__btn .icon {
    width: 24px;
    height: 24px;
  }
}
.file-control__btn .icon-x {
  display: none;
  stroke: #A3A7AA;
}
.file-control__visible {
  display: block;
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #A3A7AA;
  border-radius: 0;
  font-family: TTNormsPro;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
  min-height: 64px;
  padding: 16px 13px;
  min-height: 64px;
  padding: 16px 13px;
  padding-left: 55px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  max-width: 100%;
  background-color: #F5F5F5;
}
@media (max-width: 1150px) {
  .file-control__visible {
    font-size: 21px;
  }
}
@media (max-width: 950px) {
  .file-control__visible {
    font-size: 16px;
  }
}
@media (max-width: 1150px) {
  .file-control__visible {
    min-height: 56px;
    padding: 13px 12px;
  }
}
@media (max-width: 950px) {
  .file-control__visible {
    min-height: 42px;
    padding: 9px 10px;
  }
}
.file-control__visible::-webkit-input-placeholder {
  opacity: 1;
  color: #050505;
}
.file-control__visible::-moz-placeholder {
  opacity: 1;
  color: #050505;
}
.file-control__visible:-ms-input-placeholder {
  opacity: 1;
  color: #050505;
}
.file-control__visible::-ms-input-placeholder {
  opacity: 1;
  color: #050505;
}
.file-control__visible::placeholder {
  opacity: 1;
  color: #050505;
}
.file-control__visible:focus, .file-control__visible :focus-visible {
  outline: ridge;
  outline-offset: -2px;
  outline-color: #F6E200;
}
@media (max-width: 1150px) {
  .file-control__visible {
    min-height: 56px;
    padding: 13px 12px;
  }
}
@media (max-width: 950px) {
  .file-control__visible {
    min-height: 42px;
    padding: 9px 10px;
  }
}
.file-control__visible .suggestion {
  color: #A3A7AA;
  font-size: 18px;
}
@media (max-width: 1150px) {
  .file-control__visible {
    padding-left: 50px;
  }
  .file-control__visible .suggestion {
    color: #A3A7AA;
    font-size: 14px;
  }
}
@media (max-width: 950px) {
  .file-control__visible {
    padding-left: 38px;
  }
}
.file-control.is-selected .file-control__btn > .icon-paper-clip {
  display: none;
}
.file-control.is-selected .file-control__btn > .icon-x {
  display: block;
}

/**/

.form-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}
.form-checkbox__label {
  color: #050505;
  font-family: TTNormsPro;
  font-size: 16px;
  font-weight: 500;
  line-height: 100%;
}
@media (max-width: 1150px) {
  .form-checkbox__label {
    padding: 10px 15px;
    font-size: 13px;
  }
}
.form-checkbox__fake {
  width: 27px;
  height: 27px;
  background-color: transparent;
  border: 1px solid #F6E200;
  margin-right: 10px;
}
@media (max-width: 1150px) {
  .form-checkbox__fake {
    width: 20px;
    height: 20px;
  }
}
.form-checkbox input {
  display: none;
}
.form-checkbox input:checked + .form-checkbox__fake {
  background-color: #F6E200;
  border-color: #F6E200;
  position: relative;
}
.form-checkbox input:checked + .form-checkbox__fake::after {
  content: "";
  display: inline-block;
  width: 15px;
  height: 8px;
  border-bottom: 2px solid #050505;
  border-left: 2px solid #050505;
  position: absolute;
  -webkit-transform: rotate(-45deg) translate(-50%, -50%);
      -ms-transform: rotate(-45deg) translate(-50%, -50%);
          transform: rotate(-45deg) translate(-50%, -50%);
  left: 50%;
  top: 20%;
}
@media (max-width: 1150px) {
  .form-checkbox input:checked + .form-checkbox__fake::after {
    width: 10px;
    height: 6px;
  }
}
.form-checkbox--s .form-checkbox__fake {
  width: 14px;
  height: 14px;
}
.form-checkbox--s .form-checkbox__label {
  font-family: TTNormsPro;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
  font-size: 14px;
}
@media (max-width: 1150px) {
  .form-checkbox--s .form-checkbox__label {
    font-size: 21px;
  }
}
@media (max-width: 950px) {
  .form-checkbox--s .form-checkbox__label {
    font-size: 16px;
  }
}
.form-checkbox--s input:checked + .form-checkbox__fake::after {
  width: 8px;
  height: 5px;
}
.form-checkbox--l .form-checkbox__fake {
  width: 30px;
  height: 30px;
}
.form-checkbox--l .form-checkbox__label {
  font-family: TTNormsPro;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
}
@media (max-width: 1150px) {
  .form-checkbox--l .form-checkbox__label {
    font-size: 21px;
  }
}
@media (max-width: 950px) {
  .form-checkbox--l .form-checkbox__label {
    font-size: 16px;
  }
}
.form-checkbox--border-color .form-checkbox__fake {
  border-color: #A3A7AA;
}

/**/
.callback-form .form-control:not(.jqselect) {
    display: block;
    width: 100%;
    background-color: #ffffff;
    border: 1px solid #A3A7AA;
    border-radius: 0;
    font-family: TTNormsPro;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3;
    min-height: 64px;
    padding: 16px 13px;
}

.callback-form textarea.form-control,
.callback-form textarea.form-control:not(.jqselect) {
    min-height: 340px;
}