Once you click to forward an email to someone, your email application takes control over the look and layout. Each application will re-interpret and even re-write the email code in their own different way.
This is because they all have different ways of creating emails, and what you’re doing when you forward an email is essentially creating a new email in that application.
Some parts of your code will hang on, others will be stripped out. Some parts will be changed – links often change colour and text can change size – this is generally down to whatever that application regards as its defaults, and different ways to size text.
Big gaps or extra spacing are often the first clue that an email has been forwarded. Email applications may set default line spacing or padding on text for legibility in “regular” emails, ignoring what has been set in your code.
One great way around this is to grab the View Online link for your email and forward that instead, knowing your email will be seen in all its glory.