Small UX suggestion.
I think only having placeholders as labels is generally considered not-great from a UX perspective. Because once someone starts typing, they lose context of what that field is supposed to be filled in with.
Related: I think you should either have required or optional in parentheses, not both. My suggestion: reduce required to a red star on the newly added label and keep "(optional") next to last name.