This site uses Cascading Style Sheets(CSS) to create a "theme" for the presentation of the site. This was one of those architecture decisions that I have benefited from for years. This allows me to make site wide changes on how an "H3" tag is displayed by adjusting one page. Much better than going to hundreds of pages to adjust. In addition CSS gives me more properties(options) on exactly how the information is displayed. I have promoted CSS since I first saw it in a beta release of Internet Explorer V3. CSS was awesome and I just keep finding more value...
By extending CSS with script you can create the ability to create dynamic themes for your site. This site uses this simplistic architecture. The user of this site can choose from one of several predefined themes. The site changes in real time based on the selected theme. Not just one page but every page in the site adjusts automatically. There is no duplicated pages. Simple but elegant.
To create a new theme I just copy one of the current themes, adjust appropriately, save it as a new file and add it to the themes list. Usually takes around 10 minutes. I could have hundreds of themes, or even allow override customization of each item by the user. Just think, the user could select one of the predefined theme templates then change the color of "H3" tags or change the background of the theme.
You can use CSS to dynamically change graphics as well if you get fancy. You could also use script to create one dynamic CSS file but I tend to change everything so it provides little value and would noticeably increase download requirements(but that is my case).
Of course I think every site should have at least the customization options I provide here. After all, I am just one person doing this in my spare time. Corporate sites have many people working fulltime.