In the quote below, please see the sentence that begins with the word "None." I have a question about the second half of this sentence. To understand it better, I paraphrased it to "none are so poor with a smile but they are richer for its benefits." I feel that the conjunction but is incorrect because it is not introducing an opposing idea. I think that and would be more preferable. I'm sure that the author knew English better than I do, so my thinking must be wrong. Would you please help me understand why I am wrong?
The value of a smile... It costs nothing, but creates much. It enriches those who receive, without impoverishing those who give. It happens in a flash and the memory of it sometimes lasts forever. None are so rich they can get along without it, and none so poor but are richer for its benefits. It creates happiness in the home, fosters good will in a business, and is the countersign of friends.
—Dale Carnegie (2016), How to Win Friends and Influence People, p. 67, Diamond Pocket Books Pvt Ltd.