.questionnaire {
  .codedropz-upload-handler {
    border: 2px dashed var(--gray);
  }

  .questionnaire__submit{
    width: auto;
  }
}

.questionnaire__main-title {
  font-size: 1.5em;
  margin-top: 50px;
}

.questionnaire__big-title {
  font-size: 1.75em;
  font-weight: 600;
  margin: 28px 0;
}

.questionnaire__title {
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
  margin: 10px 0 50px;
}

.questionnaire__small {
  display: block;
  margin-bottom: 30px;
}

.questionnaire__p {
  font-size: 1em;
  line-height: 1.25;
  font-weight: 300;
  margin-bottom: 40px;
}

.questionnaire__fields {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  column-gap: 40px;
}

.questionnaire__field {
  margin-bottom: 40px;
  flex-basis: 100%;
}

.questionnaire__field--50 {
  flex-basis: calc(50% - 20px);
}

.questionnaire__field--25 {
  flex-basis: calc(25% - 30px);
}

.questionnaire__field--3 {
  flex-basis: calc(33.3333333333% - 26.6666666667px);
}

.questionnaire__select {
  max-width: none;
  .wpcf7-form-control-wrap {
    width: 100%;
  }
}

.questionnaire__people-buttons {
  position: absolute;
  bottom: 5px;
  left: 0;
}

.questionnaire__remove {
  margin-right: 10px;
}

.questionnaire__label {
  font-weight: 400;
  display: block;
}

.questionnaire__input {
  outline: none;
  color: var(--gray);
  font-weight: 300;
  display: block;
  width: 100%;
  height: 48px;
  padding: 14px 1rem 14px 0;
  border: none;
  border-bottom: 1px solid var(--gray);
}

.questionnaire__input:focus {
  border-color: var(--blue-dark);
}

.questionnaire__input--disabled {
  margin-bottom: 10px;
}

.questionnaire__block-title {
  flex-basis: 100%;
  margin-bottom: 10px;
}

.questionnaire__block-title--light {
  font-weight: 300;
}

.questionnaire__checkboxes {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 30px;

  .wpcf7-list-item {
    display: initial;
    margin: 0;
    padding: 0;
  }

  label {
    display: block;
    margin-bottom: 10px;    

    input {
      display: none;
    }

    input:checked + span::before {
      border-color: var(--accent-secondary);
    }

    input:checked + span::after {
      opacity: 1;
    }

    & > span {
      position: relative;
      font-weight: 300;
      display: flex;
    }
    
    & > span::before {
      content: "";
      flex: 20px 0 0;
      width: 20px;
      height: 20px;
      margin-right: 7px;
      border: 2px solid #8795a6;
      border-radius: 2px;
      transition-duration: 0.2s;
    }
    
    & > span::after {
      content: "";
      opacity: 0;
      position: absolute;
      top: 6px;
      left: 6px;
      width: 8px;
      height: 8px;
      transition-duration: 0.2s;
      background: var(--accent-secondary);
    }

  }

  .wpcf7-form-control-wrap {
    width: 100%;
  }
}

.questionnaire__checkboxes--radio {
  label {
    
    & > span::before {
      border-radius: 50%;
    }
    
    & > span::after {
      border-radius: 50%;
    }
  
  }
}

.questionnaire__checkboxes:not(:has(.last input:checked)) ._input {
  pointer-events: none;
  background-color: var(--bg-second);
}


.questionnaire__checkboxes--row {
  flex-direction: row;
  flex-wrap: wrap;
  column-gap: 20px;
    
  .wpcf7-radio {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 20px;
  }

  .wpcf7-form-control-wrap {
    width: auto;
  }
}

.questionnaire__checkboxes--options:not(:last-child) {
  margin-bottom: 10px;
}

.questionnaire__file {
  font-weight: 300;
  margin-bottom: 50px;
}

.questionnaire__submit {
  margin-bottom: 40px;
}

@media (min-width: 1199.95px) {
  .questionnaire__main-title {
    font-size: 2em;
  }
}

@media (max-width: 991.95px) {
  .questionnaire__main-title {
    margin-top: 40px;
  }

  .questionnaire__field {
    flex-basis: 100%;
  }
}
