Validate the structure first — it settles nothing on its own
The first step to validate email address input is splitting the local part before the @ from the domain after it, normalising case, and rejecting shapes the parser cannot use: missing domains, stray whitespace pasted into the middle, illegal characters, doubled separators.
Structure is cheap and proves nothing about delivery. Any plausible string passes it. You can validate the shape perfectly and still be holding a mailbox that was closed two years ago, which is why we do not stop here — a tool that only claims to validate format is not really validating much.