/*********************************************************************************/
/** Default Styles
/**
/** This section sets/resets the most common elements needed and constructs a
/** solid foundation on which to begin building a site.  
/*********************************************************************************/

html, body, ul, ol, li, dl, p, pre, dd, blockquote, 
h1, h2, h3, h4, h5, h6, a, form, label, fieldset, address {
	margin:0;
	padding:0;
	border:0;
}

/** Font size set to 100.01% to correct several browser bugs **/
html {
	font-size:100.01%;
}

body {
	font-family:"Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", LucidaGrande, Geneva, Arial, Verdana, sans-serif;
	/*font-family:Verdana, Arial, Helvetica, sans-serif;*/
	font-size:0.75em;
	color:#434242;
	background:#313131;
	padding:1em;
	line-height:1.6; /* Unitless is important here */
}

a:link { color:#1067ca; text-decoration: none; }
a:visited { color:#1067ca; text-decoration: none; }
a:hover { color:#1067ca; text-decoration: underline; }
	
img {
	border:0;
}
	
h1, h2, h3, h4, h5, h6 {
	padding:0;
	font-weight:normal;
	margin-top:0px;
	font-weight:bold;
	clear:both;
	font-family:Tahoma, Verdana, sans-serif;
}

h1 {
	font-size:1.7em;
	color:#fff;
	
}

h2 {
	font-size:1.5em;
}

h3 {
	font-size:1.25em;
}

p {
	margin-bottom:1.4em;
	overflow:hidden;
	clear:both;
}

blockquote {
	background:url(lib/template/img/icons/quotes.gif) no-repeat;
	padding-left:30px;
}

small {
	font-size:.8em;
}

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

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

pre {

}

code {
	font-family:"Courier New", Courier, monospace;        
	font-size:1em;
	border:1px dashed #CDCDCD;
	background:#F2F2F2;
	padding:1em;
	display:block;
}

address {
	font-style:normal;
	border:none;
}

abbr {
	cursor:help;
	border-bottom:1px dashed;
}

/** Lists **/

ul, ol {
	margin-bottom:1.5em;
	padding-left:0;
}

ul {
	list-style-type:none;
	margin-left:0;
}	

	ul li {
		padding-left:1em;
		margin-bottom:.6em;
		background:url(lib/template/img/icons/bullets/gt.gif) left .6em no-repeat;
		vertical-align:top;
	}

	ul.bulletless li {
		padding-left:0;
		background:none;
	}
	
ul.horizontal {
	display:inline;
	margin:0;
	padding:0;
	overflow:hidden;
	zoom:1;
}
	
	ul.horizontal li {
		float:left;
		margin-right:1em;
		display:inline;
	}
	
ol {
	list-style-type:decimal;
	margin-left:2em;
}	

	ol li {
		padding-left:0;
		margin-bottom:.6em;
	}	
	
/** Tables **/

table {
	width:100%;
	border:none;
	border-collapse:collapse;
}

/** Table used for data representation **/
table.data {
	margin-bottom:1.5em;
	width:100%;
}
	table.data thead tr{
		background:#282d31;
		color:#dcdcdc;
		font-weight:bold;
	}
	
	table.data td {
		vertical-align:top;
		padding:.5em;
	}
	
	table.data tr.odd td {
		background:#ebf1f9;
		border-top:1px solid #cad6e6;
		border-bottom:1px solid #cad6e6;
	}

/** Forms **/	

form {
	padding:0;
	margin:0;
	margin-bottom:1.5em;
}

	form.framed, form .framed {
		background:#F8F8F8;
		border:1px solid #ccc;
		padding:1em;
	}

	form p.row {
		margin-bottom:1em;
	}
	
	form p.row.error {
		background:#FFD8D1 none repeat scroll 0% 50%;
		border:1px solid #FF6242;
		padding:.4em;
	}

fieldset {
	border:1px solid #c2c2c2;
	padding:.5em;
	width:35em;
}
	
legend {
	background:none;
	border:none;
	font-weight:bold;
	padding:.5em;
}

label {
	display:block;
	margin-bottom:.3em;
	font-weight:bold;
}

	label.inline {
		display:inline;
		margin:0;
		padding-right:1em;
	}
	
	label.required .tag {
		font-weight:normal;
		font-size:.9em;
	}

input, input.text, textarea, select {
	font-family:"Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", LucidaGrande, Geneva, Arial, Verdana, sans-serif;
	font-size:1em;
	padding:.2em;
	color:#999;
}

input.text {
	border:1px solid #999;
	width:30em;
}

	.aside input.text {
		width:15em;
	}

input.checkbox {
	margin:0;
	padding:0;
}

input.radio {
	margin:0;
	padding:0;
}
	
textarea {
	border:1px solid #999;
	width:30em;
	height:10em;
}

select {
	border:1px solid #999;
	width:30em;
}

	select optgroup {
		font-weight:bold;
		font-style:normal;	
	}

input.button {
	font-family:"Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", LucidaGrande, Geneva, Arial, Verdana, sans-serif;
	font-size:.9em;
	background:#d2d2d2 url(lib/template/img/buttons/grey/bg.jpg) top left repeat-x;
	border:3px double #bbb;
	padding:0.4em 0.9em;
	color:#44464B;
}

/** Special links **/

a.pdf {
	padding:5px 0 5px 20px;
	background:transparent url(lib/template/img/icons/filetypes/pdf.gif) no-repeat center left;
	line-height:1.7em;
}

a.word {
	padding:5px 0 5px 20px;
	background:transparent url(lib/template/img/icons/filetypes/word.gif) no-repeat center left;
	line-height:1.7em;
}

a.excel {
	padding:5px 0 5px 20px;
	background:transparent url(lib/template/img/icons/filetypes/excel.gif) no-repeat center left;
	line-height:1.7em;
}

a.txt {
	padding:5px 0 5px 20px;
	background:transparent url(lib/template/img/icons/filetypes/txt.gif) no-repeat center left;
	line-height:1.7em;
}

a.zip {
	padding:5px 0 5px 20px;
	background:transparent url(lib/template/img/icons/filetypes/zip.gif) no-repeat center left;
	line-height:1.7em;
}

a.external {
	padding:5px 13px 5px 0px;
	background:transparent url(lib/template/img/icons/external_link.gif) no-repeat center right;
}

a.previous {
	padding:5px 13px 5px 0px;
	background:transparent url(lib/template/img/icons/arrow_left.gif) no-repeat center right;
	line-height:1.7em;
}

a.next {
	padding:5px 13px 5px 0px;
	background:transparent url(lib/template/img/icons/arrow_right.gif) no-repeat center right;
	line-height:1.7em;
}

a.email {
	padding:5px 13px 5px 0px;
	background:transparent url(lib/template/img/icons/email.gif) no-repeat center right;
	line-height:1.7em;
}

a.magnifier {
	padding:5px 13px 5px 0px;
	background:transparent url(lib/template/img/icons/magnifier.gif) no-repeat center right;
	line-height:1.7em;
}

/** Errors **/	

.alert {
	padding:1em 2em .5em 4.5em;
	margin-bottom:1.4em;
}

	.alert ul {
		margin-bottom:0;
	}

		.alert ul li {
			background:url(lib/template/img/icons/bullets/gt.gif) left .6em no-repeat;
		}

	.alert.error {
		border-top:1px solid #ecd757;
		border-bottom:1px solid #ecd757;
		background:#fcf6d0 url(lib/template/img/icons/alerts/error_m.gif) 1.5em 50% no-repeat;
	}
	
	.alert.info {
		border-top:1px solid #ecd757;
		border-bottom:1px solid #ecd757;
		background:#fcf6d0 url(lib/template/img/icons/alerts/info_m.gif) 1.5em 50% no-repeat;
	}
	
	.alert.confirm {
		border-top:1px solid #ecd757;
		border-bottom:1px solid #ecd757;
		background:#fcf6d0 url(lib/template/img/icons/alerts/confirmation_m.gif) 1.5em 50% no-repeat;
	}
	
	.alert.warn {
		border-top:1px solid #ecd757;
		border-bottom:1px solid #ecd757;
		background:#fcf6d0 url(lib/template/img/icons/alerts/warn_m.gif) 1.5em 50% no-repeat;
	}


/** Positioning **/

.float_left {
	float:left;
	margin-right:5px;
}

.float_right {
	float:right;
	margin-left:5px;
}

.float_wrap {
	overflow:hidden;
	zoom:1;
}

/** Structure **/

.column {
	float:left;
	margin-right:2em;
}

	.column.last {
		margin-right:0;
	}

/*********************************************************************************/
/** Site-Specific Styles
/**
/** This section comtains styles specific to a site and that will most likely be
/** different from site to site.
/*********************************************************************************/

/** Structure **/

#wrapper {
	width:615px;
	margin:2em auto 1em auto;
	background:#f7f6f0;
}

	.column {
		padding:30px;
	}
	
	.column.left {
		margin-right:0;
	}
	
	.column.last {
		padding-left:0;
	}
	
	.column.services {
		font-size:1.35em;
	}
	
	.column.services ul {
		background:#edeadf;
		padding:1.6em 1em 1em 1em;
		margin:0;
		border:1px solid #dad5c2;
	}

#contact {
	clear:both;
	background:#ed7b00 url(../../../img/address_bg.jpg) repeat-y right;
	color:#f7f6f0;
	margin-bottom:1em;
	padding:10px 30px;
}

#footer {
	color:#d9d6cc;
	text-align:center;
	margin:0 auto;
	width:615px;
}