/* --- global settings --- */

html, body, div, img, form          { margin: 0; padding: 0; border: 0; }
table, tr, td                       { text-align: left; vertical-align: top; margin: 0; padding: 0; border: 0; }
html, body                          { color: #767565; font: normal 13px/20px Arial, Helvetica, sans-serif; }

p, ul, ol, li                       { padding: 0; margin: 0; }
p                                   { margin-bottom: 20px; }
ul, ol                              { padding: 0; margin: 0 0 15px 0; list-style-position: outside; }
li                                  { padding: 0; margin: 0 0 0 20px; }

a                                   { color: #57852b; text-decoration: none; }
a:hover                             { color: #57852b; text-decoration: underline; }

a:focus, input:focus                { outline: none; }

h1, h2, h3, h4, h5, h6              { color: #7a5d89; margin: 0; padding: 0; }
h1                                  { font: normal 30px/30px Arial, Helvetica, sans-serif; margin-bottom: 15px; }
h2                                  { font: normal 20px/20px Arial, Helvetica, sans-serif; margin-bottom: 6px; }
h3                                  { font: normal 18px/18px Arial, Helvetica, sans-serif; margin-bottom: 6px; }
h4                                  { font: normal 16px/16px Arial, Helvetica, sans-serif; margin-bottom: 4px; }
h5                                  { font: normal 15px/15px Arial, Helvetica, sans-serif; margin-bottom: 4px; }
h6                                  { font: normal 13px/13px Arial, Helvetica, sans-serif; margin-bottom: 4px; }

body								{ background: #b7ae9b; min-width: 900px; }

.cell								{ width: 920px; margin: 0 auto; }

#iqcontent_home						{ width: 100%; background: #cfccb4 url(/images/header_home_tile.jpg) center top repeat-x; }
	#iqcontent_home .cell			{ background: url(/images/content.jpg) center top repeat-y; display: table; }
	#header_home					{ width: 100%; background: url(/images/header_home.jpg) center top no-repeat; display: table; }
    
#iqcontent							{ width: 100%; background: #cfccb4 url(/images/header_tile.jpg) center top repeat-x; }
	#iqcontent .cell				{ background: url(/images/content.jpg) center top repeat-y; display: table; }
    #header							{ width: 100%; background: url(/images/header.jpg) center top no-repeat; display: table; }

#footer								{ width: 100%; background: url(/images/footer_tile.jpg) center top repeat-x; }
	#footer .cell					{ height: 150px; background: url(/images/footer.jpg) center top no-repeat; margin-bottom: 50px; }

#banners							{ width: 898px; height: 281px; margin: 0 10px 0 12px; background: url(/images/banners.jpg) center top no-repeat; clear: both; } 

#james_ponds						{ float: left; width: 240px; height: 100px; margin: 0 0 4px 10px; display: block; }

ul#topnav							{ width: 338px; height: 20px; float: right; list-style: none; padding: 81px 0 0 0; margin: 0; }
    #topnav li						{ display: inline; float: left; text-indent: -9090px; padding: 0; margin: 0; }
    #topnav li a:hover,
    #topnav li a:active				{ background-position: bottom left; }
    
    li.sep							{ width: 3px; height: 20px; background: url(/images/nav_sep.jpg) center top no-repeat; }

    li#nav_home a					{ display: block; width: 51px; height: 20px; background: url(/images/nav_home.jpg) top left no-repeat; } 
    li#nav_about a					{ display: block; width: 76px; height: 20px; background: url(/images/nav_about.jpg) top left no-repeat; } 
    li#nav_port a					{ display: block; width: 69px; height: 20px; background: url(/images/nav_port.jpg) top left no-repeat; } 
    li#nav_blog a					{ display: block; width: 48px; height: 20px; background: url(/images/nav_blog.jpg) top left no-repeat; } 
    li#nav_contact a				{ display: block; width: 82px; height: 20px; background: url(/images/nav_contact.jpg) top left no-repeat; } 

ul#footernav						{ width: 100px; height: 100px; float: left; display: inline; margin-top: 60px; }
	#footernav li					{ list-style: none; color: #5f5541; font: normal 12px/16px Arial, Helvetica, sans-serif; }
    #footernav li a,
    #footernav li a:hover			{ color: #5f5541; }
    
#copyright							{ width: 200px; height: 30px; float: right; display: inline; text-align: right; color: #fff; font: normal 11px/13px Verdana, sans-serif; margin: 110px 10px 0 0; }

#sidebar_table						{ width: 898px; clear: both; }

#sidebar_left						{ width: 635px; }
	#sidebar_left .margins			{ width: 550px; margin: 0 0 40px 40px; padding-left: 45px; }
	#header_home #sidebar_left		{ padding-top: 55px; }
    #header_home #sidebar_left h1	{ font-size: 0; line-height: 0; width: 0; height: 0; margin: 0; padding: 0; display: none; visibility: hidden; }
    #header #sidebar_left			{ padding-top: 35px; }
    #header #sidebar_left h1		{ margin-left: -45px; }

#sidebar_right						{ width: 263px; }
	#sidebar_right .margins			{ width: 200px; margin: 0 3px 20px 60px; }
	#header_home #sidebar_right		{ padding-top: 55px; }
    #header_home #sidebar_right	h2	{ font-size: 0; line-height: 0; width: 0; height: 0; margin: 0; padding: 0; display: none; visibility: hidden; }
    #header #sidebar_right			{ padding-top: 42px; }
    #header #sidebar_right h2		{ font: normal 24px/24px Arial, Helvetica, sans-serif; }

.h150								{ min-height: 150px; height: auto !important; height: 150px; }
.h350								{ min-height: 350px; height: auto !important; height: 350px; }


/* --- generic CMS styles --- */

.back_to_top                        { padding: 5px 0 10px 0; text-align: center; }
.click_to_enlarge                   { text-align: center; font-size: 10px; text-decoration: none; font-style: italic; }
.required_icon                      { color: #98171b; margin-right: 5px; }


/* --- S01 styles (About Us) --- */

.s01_table                          { display: table; }
    .s01_image_holder               { padding: 10px; font-size: 11px; margin: 0 10px 5px 0; text-align: center; background: #f2f2e8; border: 1px #cfccb4 solid; display: table; width: 150px; }
    .s01_image_holder_center        { padding: 10px; text-align: center; }
    .s01_image_caption				{ text-align: center; width: 100%; }
    .s01_photo                      { margin-bottom: 5px; border: 0; }
    .s01_main_image                 { border: 0; }
    .s01_main_photo                 { border: 0; }
    .s01_jumplinks                  { margin: 10px 0px; padding: 10px 20px; clear: both; background: #f2f2e8; border: 1px #cfccb4 solid; }
        .s01_jumplinks ul           { margin: 0; list-style: none; }
        .s01_jumplinks ul li        { margin: 0; }
    .s01_text                       { padding-top: 10px; clear: both; }
    .s01_photo                      { margin-bottom: 5px; border: 0; }
    .s01_files                      { margin-left: 20px; }
        .s01_files ul li            { list-style: inside url(/images/fileicon.jpg); }


/* --- S03 styles (Contact Us) --- */

.s03_image                          { float: left; margin: 0 10px 5px 0; }

#contact_form fieldset              { width: 500px; border: none; padding: 15px 0; clear: both; }
#contact_form legend                { font-style: italic; padding: 0 10px; text-align: right; }
#contact_form fieldset .form_row    { width: 470px; text-align: center; min-height: 20px; padding-bottom: 5px; clear: both; }
#contact_form fieldset label        { width: 150px; text-align: right; margin-right: 15px; float: left; }
#contact_form fieldset input,
#contact_form fieldset textarea,
#contact_form fieldset select       { width: 300px; border: #b7ae9b solid 1px; float: left; font-family: Arial, Helvetica, sans-serif; font-size: 13px; padding: 2px 0 0 2px; }
#contact_form fieldset textarea     { width: 300px; height: 100px; }
#contact_form fieldset #submit      { margin: 5px 0 0 165px; width: 100px; }
#contact_form fieldset #required    { font-size: 10px; margin-top: 15px; margin-left: 90px; }
#contact_form .req                  { color: #d00; font-size: 16px; font-weight: bold; }
#contact_form label.error           { width: 470px; color: #D00; text-align: right; padding: 0 0 5px 0; }


a#sidebar_submit					{ width: 80px; height: 67px; float: right; display: inline; background: url(/images/sammy_the_submit_fish.jpg) center top no-repeat; margin-right: 5px; }

#sidebar_blurb						{ width: 200px; color: #505050; margin-top: 50px; } 

#sidebar_form						{ }
#sidebar_form .form_row    			{ width: 230px; display: table; padding-bottom: 2px; }
#sidebar_form input        			{ width: 200px; height: 20px; color: #5e5e5e; padding: 2px 0 0 2px; border: 1px #a4a39e solid; font: normal 13px/20px Arial, Helvetica, sans-serif; background: #f8f7f2; }


/* --- Portfolio styles --- */

.thumb_row							{ margin: 0 auto; }
.thumb_row td						{ width: 50px; padding: 5px; text-align: center; cursor: pointer; }

.project_row						{ margin: 0 auto; }
.project_row td						{ width: 182px; text-align: center; cursor: pointer; }

.image_title						{ text-align: center; color: #7a5d89; font-weight: bold; }
    .image_title a,
    .image_title a:hover			{ color: #7a5d89; }

#portfolio_jumplinks				{ margin: 10px 0px; padding: 10px 20px; clear: both; background: #f2f2e8; border: 1px #cfccb4 solid; text-align: center; }

#project_images						{ width: 550px; margin-top: 20px; display: table; }
.project_main						{ display: none; }
	.project_main h3				{ color: #cfccb4; font-size: 14px; text-indent: 50px; }
	.project_image_holder			{ text-align: center; height: 300px; margin: 0 auto; padding-bottom: 25px; }
    
#project_area						{ background: #5F5E53; width: 550px; margin: 0 auto; padding-bottom: 25px; }
