Really? That's interesting. Still, the sites all work, look fine, the clients are happy and none of that stuff actually affects what you're seeing does it? I'm not arguing that the nuts and bolts could be improved, but it works for me. I never said it was perfect.
In what way is it 'not competitive'? Always willing to learn.
OK, I see that @dedwardp has answered a lot of this and I respect that your clients are happy and their websites are a visual point of reference and not SEO/Google beaters but I'll try and explain some stuff without sounding too much like a tw*t!
Looking at the home page of
Welcome to Eos Interiors as an example.
All the CSS styles are in the head tags. Most CSS websites will have an external stylesheet so that, 1. it can be cached and reused by the browser to lessen loading times and 2 any changes to styles on one page will affect all of those styles in the site. Say your client says 'I want h1 tags to be 16px and red'. One change in the CSS and they all are. The way yours is you'd have to hand do them.
You have a lot of inline styles as well such as
Code:
<div id="PageDiv" style="position:relative; min-height:100%; margin:auto; width:1050px">
This also is against the principals of modern web design as your content and styles are mixed. The goal is to take the stylesheet away and be left with a document that still makes sense.
You've used tables for layout which went out of fashion in 2004. Each tag in HTML has a specific purpose. Tables are for tabular data (think spreadsheet). This harks back to the days when the web was used by Tim Berners Lee and the guys at the UN to pass round the results of experiments in a universal language and format. Thus tables were fine. Then business wanted to use the web and layouts got more complex. Instead of using tables (and hacks) to make layouts the div was invented. So you are using the wrong tool for the job.
You have images in your layout called 'clear.gif'. Exactly what puspose do they serve other than to increase server calls and so download speed? Your content (images and text) should all have a meaning to the web page/document. Those gifs are simply there because a machine coded the website and didn't know how to create your layout correctly. Think about users who are partially sighted or blind and use screen readers. Will that image in the content make sense to them? No.
Which brings me neatly onto the content. The home page is the number one target page for getting your SEO spot on. Where is the HTML text? There isn't any. That means Search Engines see it is a blank page. You need to use header tags (h1 to h6) and paragraphs and have some actual text. You clearly want search engines to find the site as you have stuffed the head tags full of keywords but are those actually in the text? Well, no, because there isn't any.
You've also generated javascript rollovers for the menu but these won't work with javascript disabled and there is no text for the links so, again, a user with a screen reader has absolutely no idea what your links are or where they go! This should have been coded with an unordered list of links/text and maybe some CSS sprites for the rollover effect which would work with or without javascript enabled. No text in links also means the website owner misses out on some extra SEO 'grunt'.
I am also really curious about your work flow with this. If a customer wants a change do you have to redo the whole page?
Those are a few pointers anyway. The fact is that coding is as much an art form as the designing and you wouldn't let a machine do your designs would you? Code needs a human touch and a lot of understanding about what is good and bad practice and what makes a good website tick.
I'm sorry that I have probably gone on far too much and I don't want a 'crusade for good code' or anything like that. I think your designs are really striking and you have a fantastic eye for a layout. But that machine generated code really does suck.
Hope that helps