The general answer is yes, a business reserves the right to refuse business to anyone. The more specific answer is there are exceptions. You can’t refuse service based on race, sex, religion, creed or age. Should you be able to? Maybe, but by federal law you can’t. So the real question is whether discrimination by sexual orientation is enough like discrimination by race, religion or creed as to warrant the same legal treatment. I tend to think it is.