.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  select {
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 2px;
  color: #333;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  display: block;
  float: none;
  font-size: 16px;
  border: 1px solid #ccc;
  padding: 6px 10px;
  height: 38px;
  width: 100%;
  line-height: 1.3;
}

.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-check {
  padding-left: 1.5em !important;
  line-height: 1.5rem;
}
.wpforms-container.sfwf_bootstrap {
  --sfwf-bs-body-font-size: 16px;
  --sfwf-bs-body-line-height: 1.5;
  font-size: var(--sfwf-bs-body-font-size);
  line-height: var(--sfwf-bs-body-line-height);
}
div.wpforms-container.sfwf_bootstrap .wpforms-form .wpforms-field-label,
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="date"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="datetime"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="datetime-local"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="email"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="month"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="number"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="password"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="range"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="search"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="tel"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="text"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="time"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="url"],
div.wpforms-container.sfwf_bootstrap .wpforms-form input[type="week"],
div.wpforms-container.sfwf_bootstrap .wpforms-form select,
div.wpforms-container.sfwf_bootstrap .wpforms-form textarea,
.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-check-label {
  font-size: var(--sfwf-bs-body-font-size);
  line-height: var(--sfwf-bs-body-line-height);
}

.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-switch.form-check {
  padding-left: 2.5em !important;
}
.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-check-input {
  margin-top: 0.25em;
  width: 1em;
  height: 1em;
}
.wpforms-container
  .wpforms-field-container
  .form-check.form-switch
  .form-check-input {
  width: 2em;
}

.wpforms-container.sfwf_bootstrap
  input[type="checkbox"].form-check-input:checked::before {
  content: none;
}

.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-check {
  font-size: 1rem;
}

.wpforms-container.sfwf_bootstrap
  .wpforms-field-container
  .wpforms-field
  .form-check-label {
  font-size: 1rem;
}

.wpforms-container
  .wpforms-field-container
  .wpforms-field
  li
  label.custom-control-label,
.wpforms-container
  .wpforms-field-container
  .wpforms-field-payment-multiple
  li
  label.custom-control-label {
  display: inline-block;
  vertical-align: unset;
  line-height: 1.5rem;
}
.wpforms-container .wpforms-field-container .custom-file-input,
.wpforms-container .wpforms-field-container .custom-file,
.wpforms-container
  .wpforms-field-container
  .wpforms-field-label.custom-file-label {
  height: 38px;
  line-height: 1.5;
}

.wpforms-container .wpforms-field-container .wpforms-field.custom-file {
  padding-top: 0px;
  margin: 10px 0px;
}
.wpforms-container
  .wpforms-field-container
  .wpforms-field-label.custom-file-label {
  padding: 6px 12px;
}
.wpforms-container .wpforms-field-container .custom-file-label::after {
  height: 36px;
  padding: 6px 12px;
}

.wpforms-container .wpforms-submit-container button[type="submit"].btn-primary,
.wpforms-container .wpforms-submit-container .btn-primary.wpforms-page-button,
.wpforms-container .wpforms-submit-container input[type="submit"].btn-primary {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wpforms-container .wpforms-submit-container button[type="submit"].btn,
.wpforms-container .wpforms-submit-container .btn.wpforms-page-button,
.wpforms-container .wpforms-submit-container input[type="submit"].btn {
  line-height: 1.5;
  padding: 0.375rem 0.75rem;
}

.wpforms-container
  .wpforms-submit-container
  button[type="submit"].btn-primary:hover,
.wpforms-container
  .wpforms-submit-container
  .wpforms-page-button.btn-primary:hover,
.wpforms-container
  .wpforms-submit-container
  input[type="submit"].btn-primary:hover {
  color: #fff;
  background-color: #0a58ca;
  border-color: #0a58ca;
}

/* errors */
div.wpforms-container-full.sfwf_bootstrap
  .wpforms-form
  .wpforms-field
  input.form-control.wpforms-error:focus,
div.wpforms-container-full.sfwf_bootstrap
  .wpforms-form
  .wpforms-field
  textarea.form-control.wpforms-error:focus,
div.wpforms-container-full.sfwf_bootstrap
  .wpforms-form
  .wpforms-field
  select.form-control.wpforms-error:focus {
  box-shadow: 0 0 0 3.2px rgba(220, 53, 69, 0.25) !important;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
  border-color: #dc3545 !important;
}

div.wpforms-container-full
  .wpforms-form
  .wpforms-has-error
  .custom-checkbox
  .custom-control-label,
div.wpforms-container-full
  .wpforms-form
  .wpforms-has-error
  .custom-radio
  .custom-control-label {
  color: #dc3545;
}
.wpforms-container
  .wpforms-field-container
  .wpforms-has-error
  .custom-control-input:focus
  ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}
.wpforms-container
  .wpforms-field-container
  .wpforms-has-error
  .custom-checkbox
  .custom-control-label::before,
.wpforms-container
  .wpforms-field-container
  .wpforms-has-error
  .custom-radio
  .custom-control-label::before {
  background: #fff;
  border: 1px solid #dc3545 !important;
}

div.wpforms-container.wpforms-container-full .wpforms-form label.wpforms-error {
  color: #dc3545;
  margin-top: 5px;
}

/* hide wpforms radio when choice switch in enabled */

div.wpforms-container.wpforms-container-full.sfwf_bootstrap
  .form-check
  input[type="radio"]::after,
div.wpforms-container.wpforms-container-full.sfwf_bootstrap
  .form-check
  input[type="radio"]::before,
div.wpforms-container.wpforms-container-full.sfwf_bootstrap
  .form-check
  input[type="checkbox"]::after,
div.wpforms-container.wpforms-container-full.sfwf_bootstrap
  .form-check
  input[type="checkbox"]::before {
  content: none;
}
