Hello @GrahamCox,
So I got to see your website on the designer using your link. So the problems with the circular div was that the text next to it was pushing it to the div borders and thus creating the oval effect. I change the size of the other text and the problem got corrected.
So to fix your layout, create three div blocks with a 10 margin on both sides for the middle div.
Then give the first div the same height and width and set the radius to 50%, and add the text that you want on the other divs.
I think that would help your issue. Keep in mind that sometimes is better to set a width in px or % rather than using auto. Good Luck with your website. Let me know if you have more questions.