/***** Global Settings *****/

* {
	margin: 0; 
}

html, body {
border:0;
margin:0;
padding:0;
	height: 100%;
}

body {
font:.9em/1.5em arial, helvetica, sans-serif;
background: url(../images/back.png) repeat-x #fff;
color: #474747;
}

.home {
background: url(../images/back-home.png) repeat-x #fff;
}

/***** Common Formatting *****/

h1, h2, h3, h4, h5, h6 {
margin:0;
padding:0;
font-weight:normal;
color: #23ACE9;
}

h1 {
padding:5px 0 5px 12px;
letter-spacing:-1px;
font:1.7em arial, helvetica, sans-serif;
width: 492px;
height: 39px;
background: url(../images/h1-sub.png) no-repeat top center;
color: #fff;
margin: 18px 0 13px 0;
}

h2 {
padding:20px 0 10px 0;
letter-spacing:-1px;
font:2em arial, helvetica, sans-serif;
}

h3 {
font:1.2em arial, helvetica, sans-serif;
font-weight:bold;
padding: 5px 0;
}

p, ul, ol {
margin:0;
padding:0 0 18px 0;
font-style: normal;
}

ul, ol {
list-style:disc;
padding:0 0 18px 40px;
}

blockquote {
margin:22px 40px;
padding:0;
}

small {
font-size:0.85em;
}

img {
border:0;
}

sup {
position:relative;
bottom:0.3em;
vertical-align:baseline;
}

sub {
position:relative;
bottom:-0.2em;
vertical-align:baseline;
}

acronym, abbr {
cursor:help;
letter-spacing:1px;
border-bottom:1px dashed;
}

/***** Links *****/

a, a:visited {
text-decoration:underline;
color: #474747;
}

a:hover {
text-decoration: none;
}


/***** Forms *****/

form {
margin:0;
padding:0;
display:inline;
}

input, select, textarea {
font:1em arial, helvetica, sans-serif;
}

textarea {
line-height:1.25;
}

label {
cursor:pointer;
}

/***** Tables *****/

table {
border:0;
margin:0 0 18px 0;
padding:0;
}

	table tr td {
	padding:2px;
	}

/***** Wrapper *****/

#wrap {
width:968px;
margin:0 auto;
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -131px; /* the bottom margin is the negative value of the footer's height */
}

/***** Header area *****/

#header h1 {
float:left;
display:block;
padding: 0 0 0 0;
text-indent:-2000px;
background: none;
margin: 0;
	width:262px;
}
	
	#header h1 a {
	width:262px;
	height:152px;
	display:block;
	background:url(../images/logo.png) no-repeat;
	}
	
	.home #header h1 a {
	background:url(../images/logo-home.png) no-repeat;
	}
	
#navigation {
float: right;
display: block;
padding: 132px 4px 30px 0;
color: #999999;
text-transform: lowercase;
font-size: 1.2em;
}

#navigation a {
color: #999999;
text-decoration: none;
}

#navigation ul {
list-style: none;
margin: 0;
padding: 0;
}

#navigation li {
float: left;
display: block;
}

#navigation li a {
margin: 0 10px;
padding: 0 10px 7px 10px;
}

#navigation li a:hover {
border-bottom: 5px solid #E2E2E2;
color: #C5C5C5;
}

/***** Homepage Content *****/

#hometext {
float: left;
display: block;
width: 504px;
margin: 0 0 0 4px;
font-size: 1.3em;
line-height: 1.5em;
}

#hometext a {
text-decoration: none;
}

#hometext a:hover {
text-decoration: underline;
}

#bannerhome {
float: right;
display: block;
width: 391px;
height: 292px;
background: url(../images/bannerhome.png) no-repeat top center;
_background: url(../images/bannerhome-ie.png) no-repeat top center;
margin: 0 0 40px 0;
overflow: hidden;
}

#hometext h1 {
padding:5px 0 5px 12px;
letter-spacing:-1px;
font:1.4em arial, helvetica, sans-serif;
width: 492px;
height: 39px;
background: url(../images/h1-home.png) no-repeat top center;
color: #fff;
margin: 18px 0 13px 0;
}

#homecolumn1 {
float: left;
display: block;
width: 290px;
margin: 0 37px 0 0;
}

#homecolumn2 {
float: left;
display: block;
width: 306px;
}

#homecolumn3 {
float: right;
display: block;
width: 306px;
*margin-bottom: 10px;
}

#homecolumn1 img {
vertical-align: middle;
}

#homecolumn1 a, #homecolumn2 a, #homecolumn3 a {
color: #23ACE9;
text-decoration: none;
}

#homecolumn1 a:hover, #homecolumn2 a:hover, #homecolumn3 a:hover {
color: #444;
}

/***** New Homepage Content *****/

#hometext2 {
float: left;
display: block;
width: 604px;
margin: 0 0 0 4px;
font-size: 1.3em;
line-height: 1.5em;
}

#hometext2 a {
text-decoration: none;
}

#hometext2 a:hover {
text-decoration: underline;
}

#hometext2 h1 {
padding:5px 0 5px 12px;
letter-spacing:-1px;
font:1.4em arial, helvetica, sans-serif;
width: 592px;
height: 39px;
background: url(../images/h1-home2.png) no-repeat top center;
color: #fff;
margin: 18px 0 13px 0;
}

#bannerhome2 {
float: right;
display: block;
width: 279px;
height: 274px;
background: url(../images/computer2.png) no-repeat top center;
margin: 0 10px 40px 0;
padding: 15px 0 0 14px;
overflow: hidden;
}

#homecolumn1 h2 {
padding-bottom: 21px;
}

#homecolumn1 h3 {
font-size: 1.2em;
color: #474747;
font-weight: normal;
padding: 0 0 15px 0;
margin: 0 0 15px 0;
border-bottom: 1px solid #d7d7d7;
}

#homecolumn1 h3 a {
color: #474747;
}

#homecolumn1 h3 a:hover {
color: #23ACE9;
}

#homecolumn3 a {
color: #474747;
text-decoration: none;
}

#homecolumn3 a:hover {
color: #23ACE9;
}

#homecolumn3 ul {
list-style: none;
margin: 0;
padding: 0;
}

#homecolumn3 li {
border-bottom: 1px solid #d7d7d7;
padding: 3px 0;
}

/***** Subpage Content *****/

#subtext {
float: left;
display: block;
margin: 0 0 0 4px;
width: 503px;
}

#subimage {
float: right;
display: block;
margin: 18px 4px 0 0;
background: url(../images/subimage.jpg) no-repeat;
width: 343px;
height: 252px;
padding: 12px;
}

/***** Services Content *****/

.servicespage h3 a {
text-decoration: none;
color: #23ACE9;
}

.servicespage h3 a:hover {
text-decoration: none;
color: #444;
}

.servicespage h3 {
border-top: 3px solid #eee;
padding-bottom: 10px;
}

#servicesmenu {
padding: 2px 5px;
width: 493px;
background: #eee;
font-size: .9em;
margin: 0 0 18px 0;
color: #666666;
}

#servicesmenu a {
color: #666666;
text-decoration: none;
}

#servicesmenu a:hover {
color: #000;
}

/***** Portfolio Content *****/

.port-nav {
font-size: 1.1em;
}

.port-nav img {
vertical-align: middle;
}

#subimage2 {
float: right;
display: block;
margin: 0 4px 0 0;
width: 343px;
padding: 6px 12px 12px 12px;
}

#loader {
    color: #fff;
    display: block;
    float: left;
width: 499px;
    overflow: hidden;
    position: relative;
    text-align: center;
    margin: 0 0 10px 0;
    background: #fff;
    padding: 2px;
    border: none;
}

#loader img {
    width: 499px;
    height: 365px;
}

#loaderimage {
border: none;
}

.loading {
    background: url(images/loadingIcon.gif) no-repeat 50% 50%;
    height: 100%;
    width: 100%;
}


#imageOptions {
    width: 343px;
    padding: 0 0 30px 0;
    min-height: 450px;
    cursor: pointer;
}

#imageOptions li {
display: block;
float: left;
list-style: none;
padding-bottom: 4px;
}

#imageOptions img {
width: 75px;
height: 55px;
padding: 3px;
margin: 1em 1em 0 0;
_margin: .9em .5em 0 0;
display: block;
float: left;
border: #DCDCDC solid 1px;
list-style: none;
cursor: pointer;
}

#imageOptions img:hover {
border: solid 1px #A1A1A1;
}

#loader h3 {
    line-height: 480px;
}

.hiddentext {
font-style: normal;
}

/***** Contact Content *****/

#quoterequest {
padding: 5px 10px;
background: #eee;
border: 1px solid #ccc;
font-size: 1.2em;
-moz-border-radius: 5px; -webkit-border-radius: 5px;
text-decoration: none;
}

#quoterequest:hover {
color: #fff;
background: #444;
border: 1px solid #444;
}

#twitter_div {
margin: 0 0 0 0;
}

#twitter_div ul {
list-style: none;
margin: 0;
padding: 0;
}

#twitter_div li {
padding: 5px 0;
border-bottom: 1px solid #ddd;
}

/***** Contact Form *****/

#contactform {
position: relative;
display: block;
}

#contactform input {
padding: 5px;
}

#contactform .inputbg {
position: relative;
width: 100%;
}

#contactform label.error {
	position: absolute;
	display: block;
	top: -25px;
	right: 78px;
	padding: 3px;
	color: #da3939;
	font-size: .9em;
	text-align: right;
	font-weight: normal;
}

.contactsocial a {
text-decoration: none;
}

.contactsocial a:hover {
text-decoration: underline;
}

.contactsocial img {
vertical-align: middle;
}

/***** Footer *****/

.push {
height: 131px;
margin: 30px 0 0 0;
}

#footer {
height: 109px;
background: url(../images/footer.jpg) repeat-x;
width: 100%;
color: #023c55;
padding: 22px 0 0 0;
font-size: .9em;
}

#footer a {
color: #023c55;
text-decoration: none;
}
#footer a:hover {
color: #7bd0f6;
}

#footerwrap {
margin: 0 auto;
width: 960px;
}

#footer img {
vertical-align: middle;
margin: 0 0 10px 0;
}

/***** Global Classes *****/

.clear 			{ clear:both; }

.float-left 	{ float:left; }
.float-right 	{ float:right; }

.text-left 		{ text-align:left; }
.text-right 	{ text-align:right; }
.text-center 	{ text-align:center; }
.text-justify 	{ text-align:justify; }

.bold 			{ font-weight:bold; }
.italic 		{ font-style:italic; }
.underline 		{ border-bottom:1px solid; }
.highlight 		{ background:#ffc; }

.wrap 			{ width:960px;margin:0 auto; }

.img-left 		{ float:left;margin:4px 10px 4px 0; }
.img-right 		{ float:right;margin:4px 0 4px 10px; }

.nopadding 		{ padding:0; }
.noindent 		{ margin-left:0;padding-left:0; }
.nobullet 		{ list-style:none;list-style-image:none; }