Forget efficient. Forget smart. Forget maintainable. This is HTML mail we're talking about.
HTML mail and Webmail clients are extremely limited, partly for security reasons but mainly because they're just rubbish.
External style sheets almost certainly won't work. HTML-embedded style sheets probably won't work. Inline style="..."
attribute on every damn element... has a much better chance of working, but still, don't be surprised when many users can't see styles at all, or some styles don't work, or some basic HTML doesn't work, and the content ends up looking like a 1997 browser threw up all over it.
HTML mail is an exercise in unpleasantness. I hate to receive it. I hate even more to author it. The sanest route for everyone is to forget HTML mail and just send a plain text message including a link to a full web page, where you can have as much CSS, JavaScript and Flash loveliness as you like.