.checkbox-field {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .checkbox-field + label {
    font-size: 16px;
    line-height: 130%;
    user-select: none;
    cursor: pointer;
    display: inline-flex;
    column-gap: 8px; }
    .checkbox-field + label:before {
      content: '';
      width: 20px;
      height: 20px;
      background: url(/images/redesign/checkbox.svg) no-repeat center top/20px auto;
      flex-shrink: 0; }
  .checkbox-field:checked + label:before {
    background-position: bottom; }
  .checkbox-field:disabled + label {
    opacity: 0.4; }

.radio-field {
  position: absolute;
  z-index: -1;
  opacity: 0; }
  .radio-field + label {
    font-size: 16px;
    line-height: 130%;
    user-select: none;
    cursor: pointer;
    min-height: 58px;
    background: #e8ebed;
    border-radius: 10px;
    display: flex;
    column-gap: 8px; }
  .radio-field:checked + label {
    background: #e8441f; }
  .radio-field:disabled + label {
    opacity: 0.4; }

.input-field {
  font: 400 14px 'Ubuntu', 'PT Sans', sans-serif;
  color: #2f2e2f;
  width: 100%;
  height: 44px;
  padding: 0 12px;
  background: #fff;
  border: 1px solid #a6b1b8;
  border-radius: 4px; }

.textarea-field {
  font: 400 14px 'Ubuntu', 'PT Sans', sans-serif;
  color: #2f2e2f;
  width: 100%;
  min-height: 88px;
  padding: 12px;
  background: #fff;
  border: 1px solid #a6b1b8;
  border-radius: 4px;
  resize: none; }

.has-error .input-field {
  border: 1px solid red; }
