main.content-wrap label {
  display: block;
  margin-bottom: 8px;
  font-size: var(--fs-label);
  font-weight: var(--fw-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primary);
}

main.content-wrap label .required,
main.content-wrap label abbr {
  color: #dc2626;
  text-decoration: none;
}

.form-control,
input[type=email],
input[type=text] {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid #d1d5db;
  border-radius: var(--radius-sm);
  background: var(--white);
  font-family: inherit;
  font-size: var(--fs-body);
}

.form-control:focus,
input:focus {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.form-control::placeholder,
input::placeholder {
  color: #9ca3af;
}

.frame-type-form_formframework header {
  margin-bottom: 14px;
}

.frame-type-form_formframework .form-group {
  margin-bottom: 20px;
}

.frame-type-form_formframework .actions {
  margin-top: 20px;
}

@media (max-width: 640px) {
  .form-control,
  input[type=email],
  input[type=text] {
    padding: 14px 16px;
  }

  button[type=submit] {
    width: 100%;
    padding: 14px 24px;
  }
}
