/* MAIN STYLES
-------------------------------------------*/
* { margin: 0; padding: 0; }

body,html {
	font-weight:normal;
	font-family: 'Lucida Grande', Helvetica, Arial, sans-serif;
	font-size:12px;
	color:#000000;
	margin:0;
	padding:0;
	background:url(images/bk_body.jpg);
	line-height:175%;
}

ul {
	list-style:none;
}

a {
	color:#000;
}

a:hover {
	text-decoration:none;
}

a:focus {
	outline:none;
}

p {
	margin:1em 0;
}

h2, h3 {
	padding:10px 0 5px;
	line-height:120%;
	
}

h2 {
	margin:15px 0 5px;
	padding:5px 0;
	color:#000000;
	font-size:20px;
	font-weight:normal;
}

h1 {
	font-size:30px;
	line-height:100%;
	font-weight:normal;
	font-style: none;
	color:#000000;
	display:block;
	padding-bottom:5px;
	
}

h1 a {
	text-decoration:none;
}

h1 a:hover {
	text-decoration:underline;
}



 /* LAYOUT STRUCTURE
--------------------------------------------------*/
#mainWrapper {
	background:url(images/bk_mainwrapper.jpg) 0 0;
	background-repeat:repeat;



}

#wrapper {
	margin:0 auto;
	width:820px;
	background-color:#FFF;
}


#header {
	height:180px;
	margin:0px 0 0 0;
	position:relative;
	z-index:99; 
	 
}

#content {
	padding:60px 30px 25px;
	margin:10px auto;	

}

#colLeft{
	width:505px;
	float:left;	
}

#colRight {
	width:220px;
	float:left;	
	padding-left:35px;
	position:relative;
}

#footer {

	border-top:0px dotted #333;
	padding:20px 0 10px 0;
	width:760px;
	height:80px;
	margin:1px auto;
	color:#666;
	position:relative;
}

/* HEADER ELEMENTS 
--------------------------------------------------*/
/* -- logo --*/
#logo {
	margin:0 0 0 0;
	top:0px;
	left:0px;

}

#logo a img{
	border:none;
}


/* top menu */

#topMenu {

	position:absolute;
	left:0;
	top:180px;
	padding-top: 0px;
	width:100%;
	height:35px;
	border-bottom:1px dotted #999;

}

.sf-menu li {
	position: relative;
	float: left;
	line-height: 30px;
	padding: 10px 1px 5px 0;
	text-align: center;
	height:35px;
}
.sf-menu li a {
	display: block;
	float: left;
	text-decoration: none;
	text-transform: none;
	font-size:12px;
	padding:0 10px;
	position:relative;
	color:#666;
	border-left:0px dotted #333;
	line-height:100%;
}
#topMenu ul.sf-menu li a:hover {
	color:#000;
}
#topMenu ul.sf-menu li ul.children {
	background:#666;
}
#topMenu ul.sf-menu li ul.children li,#topMenu ul.sf-menu li.page_item ul li  {
	background: #FFFFFF;
	line-height:100%;
	width:195px;
	height:22px;
	border-bottom:1px dotted #999;
}
#topMenu ul.sf-menu li ul.children li a, #topMenu ul.sf-menu li.page_item ul li a {
	color: #666;
	text-decoration: none;
	display:block;
	padding-top:4px;
	line-height:100%;
	border:none;
}
#topMenu ul.sf-menu li ul.children li a:hover, #topMenu ul.sf-menu li.page_item ul li a:hover{
	text-decoration: none;
	background: none;
	border:none;
	line-height:100%;
	display:block;
	padding-top:4px;
	
}
#topMenu ul.sf-menu li ul.children li ul.children {
	border: none;

}
#topMenu ul.sf-menu li ul.children li ul.children li {
	background:#fff;
}
#topMenu ul.sf-menu li ul.children li ul.children a {
	text-decoration: none;
	position:relative;
	border:none;
}
#topMenu ul.sf-menu li ul.children, #topMenu ul.sf-menu li.page_item ul
{
	margin:6px 0 0 0;
	
}
#topMenu ul.sf-menu li ul.children ul.children
{
	margin:0 0 0 58px;
}

#topMenu ul li ul li a, #topMenu ul li:hover ul li a,  #topMenu ul li:hover ul li a, #topMenu ul li:hover ul li a:hover {
	background:none;
	border:none;
	color:#000;
	line-height:100%;
	text-transform:none;
	padding-top:5px;
	height:27px;
}


.twitter {
	position:absolute;
	top:42px;
	right:130px;
	background:url(images/twitter_top.gif) 0 0 no-repeat;
	z-index:99;
}

.twitter a {
	display:block;
	width:139px;
	height:55px;
	text-indent:-9999px;
}

.rss {
	position:absolute;
	height:28px;
	padding-right:34px;
	line-height:28px;
	top:55px;
	right:0;
	background:url(images/rss.gif) 100% 50% no-repeat;
}


/* CONTENT ELEMENTS
----------------------------------------------*/

.alignleft {
	float:left;
	margin:5px 15px 5px 0;
}

.alignright {
	float:right;
	margin:5px 0 5px 15px;
}

ul.homeColumns {
	display:block;
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding-bottom:25px;
	margin-top:20px;
}

ul.homeColumns li h2 {
	margin:15px 0 5px;
	background:#333;
	padding:5px 7px;
	color:#ccc;
	font-size:14px;
	font-weight:normal;
	text-transform:uppercase;
}

ul.lastRow {
	background:none;
}

ul.homeColumns li {
	float:left;
	background:url(images/bk_dotted_vert.gif) 100% 0 repeat-y;
	padding:0 18px 0 0;
	margin-right:20px;
	width:294px;
	position:relative;
}


ul.homeColumns li img {
	border:none;
}

ul.homeColumns li.last {
	margin-right:0;
	background:none;
	padding-right:0;
}

ul.homeColumns li h2 {
	margin-top:0;
}

ul.homeColumns li ul {
	margin:0;
}

ul.homeColumns li ul li {
	padding-bottom:1px;
	background:none;
	border-bottom:1px dotted #666;
	margin:0;
	padding-right:0;
		
}

ul.homeColumns li ul li a{
	display:block;
	padding:7px 0;
	background:url(images/bullet_blue.jpg) 3px 10px no-repeat;
	padding-left:25px;
	padding-right:0;
	text-decoration:none;	
	
}

.catTitle {
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding:9px 0 ;
	margin-bottom:10px;
	color:#666;
	font-size:14px;
}

.blogItem, .archiveItem  {
	margin-bottom:15px;
	padding-bottom:15px;
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
}

.archiveItem  {
	padding-bottom:0;
}

.blogItem span.posted, .archiveItem span.posted {
	
	padding:5px 0 0;
	font-size:11px;
	color:#999;
	display:block;
}

.blogItem .metadata, .archiveItem .metadata  {
	position:absolute;
	top:3px;
	left:0;
	width:47px;
	height:48px;
	background:url(images/bk_metadata.jpg) 0 0 no-repeat;
	text-align:center;
	clear:both;
}

.blogItem .metadata .month, .archiveItem .metadata .month {
	color:#fff;
	font-size:10px;
	text-transform:uppercase;
	padding-bottom:10px;
}

.blogItem .metadata .day, .archiveItem .metadata .day {
	font-size:20px;
	color:#fff;
	font-weight:bold;
}

.blogItem div.details, .archiveItem div.details  {
	padding-left:57px;
	position:relative;
	clear:both;
}

.blogItem div.details h1, .archiveItem div.details h2 {
	padding:0;
	background:none;
	margin:0;
}

*html .blogItem div.details, *html .archiveItem div.details  {
	height:1%;
}


.blogItem .meta, .archiveItem .meta{
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	margin-bottom:15px;
	padding-bottom:10px;
}

.archiveItem .meta{ 
	background:none;
}



.blogItem a.more-link {
	display:block;
	clear:both;
	background:url(images/bk_readmore.jpg) 0 0 no-repeat;
	width:120px;
	height:28px;
	text-indent:-9999px;
	margin-top:10px;
}

#colLeft .portfolioItem {
	float:left;
	width:304px;
	margin-right:20px;
	margin-bottom:10px;
	margin-top:15px;
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding-bottom:10px;
}

#colLeft .portfolioItem h2 {
	font-size:14px;
	line-height:100%;
	margin:0;
	padding:8px 0;
}

*html #colLeft .portfolioItem{
	margin-right:20px;
	width:300px;
}

#colLeft a img{
	border:none;
	padding:0px;
	background:#fff;
	
	
}


#colLeft img {
	border:none;
	padding:0px;
	background:#fff;
}


#colLeft ul {
	list-style:square;
	list-style-position:inside;
}

/* colRight */


#colRight h2.sponsors {
	background-color:#fdd118;
	color:#000;
	font-style: italic;

}


#colRight ul li {
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding-bottom:1px;
	position:relative;
}

#colRight ul li a{
	display:block;
	padding:8px 0;
	background:url(images/bullet_blue.jpg) 3px 10px no-repeat;
	padding-left:25px;
	color:#666;
	text-decoration:none;
}

#colRight ul li a:hover{
	background:#F5F5F5 url(images/bullet_green.jpg) 3px 10px no-repeat;
}

#colRight #ads {
	clear:both;
	padding:8px 0 10px;
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
} 

#colRight #ads a {
	float:left;
	margin:0 10px 10px 0;
}

#colRight #ads img {
	border:none;
}

#colRight h2 {
	margin:15px 0 5px;
	background-color:#fead29;
	padding:2px 7px;
	color:#000;
	font-size:10px;
	font-weight:normal;
	text-transform:none;
}

#ads_msg {
	padding:8px 8px 2px;
	background:#f4f4f4;
	border:1px dotted #ccc;
	float:left;
	line-height:100%;
	width:243px;
	height:22px;
}

#ads_msg a {
	color:#666;
}

#colLeft .social {
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding-bottom:10px;
}

#colLeft .social a img {
	padding:5px;
}

#colLeft .social a:hover img {
	border:none;
	border-left:1px solid #ddd;
	border-top:1px solid #ddd;
}

#colLeft .social strong {
	color:#00C1F2;
}

/*COMMENTS
---------------------------------------------*/
#colLeft ul.commentlist {
	margin-bottom:10px;
	list-style-type:none;
}

#colLeft ul.commentlist li {
	background:none;
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding:10px 0;
	padding-left:40px;
}

#colLeft ul.commentlist li .avatar {
	float:left;
	width:32px;
	margin-left:-40px;
}

* html #colLeft ul.commentlist li .avatar {
	margin-bottom:-20px;
}


#colLeft ul.commentlist li .commentmetadata {
	font-size:11px;
	color:#00A4CC;
}




/* HOME SLIDER
-----------------------------------------------*/

#slider {
	padding-bottom:15px;
	border-bottom:2px solid #333;
	height:340px;
}

.panel .text {
	color:#666;
	height:60px;
	padding-right:32px;
	padding-bottom:10px;
	float:left;
	width:300px;
	font-size:14px;
}

.panel .text p {
	display:block;
	background:url(images/bk_dotted.gif) 0 0 repeat-x;
	padding-top:15px;
}

.panel .text h1, .panel .text h1 a {
	color:#00A4CC;
	font-size:28px;
	font-weight:normal;
	margin-bottom:0;
	line-height:110%;
}

.panel img {
	float:left;
}

.panel .label {
	position:absolute;
	top:0;
	left:313px;
	height:340px;
	width:18px;
}

.panel .post {
	background:#00CCFF url(images/label_post.jpg) 0 0 no-repeat;
}

.panel .project {
	background:#F78B21 url(images/label_project.jpg) 0 0 no-repeat;
}


/* CAROUSEL
---------------------------------------------*/

.stepcarousel{
	float:left;
	position: relative; /*leave this value alone*/
	overflow: hidden; /*leave this value alone*/
	width: 100%; /*Width of Carousel Viewer itself*/
	height: 340px; /*Height should enough to fit largest content's height*/;
}

.stepcarousel span.featured {
	color:#666;
	font-size:11px;
	display:block;
	border-bottom:1px dotted #666;
	padding-bottom:5px;
	width:270px;
}

.stepcarousel .belt{
	position: absolute; /*leave this value alone*/
	left:0;
	top: 0;
}

.stepcarousel .panel{
	float: left; /*leave this value alone*/
	overflow: hidden; /*clip content that go outside dimensions of holding panel DIV*/
	width: 960px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
	position:relative;
}

/* FORMS
---------------------------------------------------*/

/* search form */

#searchform {
	background:url(images/bk_dotted.gif) 0 100% repeat-x;
	padding-bottom:10px;
	padding-top:10px;
}

#searchform #s {
	width:160px;
	height:21px;
	border:0px solid #fff;
	background:#ddd;
	font-size:11px;
	padding:0px 0px;
	margin-left:0px;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
}

#searchform #searchsubmit {
	background:#fead29;
	border:0px solid #48DBFF;
	color:#000;
	padding:3px 0;
	text-align:center;
	width:54px;
	height:21px;
	font-size:10px;
	font-family: 'Lucida Grande', Helvetica, Arial, sans-serif;
}

/* post comment */

#commentform label {
	display:block;
	padding:5px 0 2px;
}

#commentform input, #commentform textarea {
	border:1px solid #fff;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
	padding:5px;
	font-size:12px;
	font-family:Arial, Helvetica, sans-serif;
	color:#666;
	width:300px;
}


#commentform textarea {
	width:500px;
}

#commentform input#submit{
	border:none;
	width:120px;
	height:28px;
	text-align:center;
	padding-top:4px;
	margin-top:5px;
	background:url(images/bk_postcomment.jpg) 0 0 no-repeat;
	font-size:11px;
}

/* contact */

#contact label {
	display:block;
	padding:8px 0 2px;
}

#contact input, #contact textarea {
	border:1px solid #fff;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
	padding:5px;
	font-size:12px;
	font-family:Arial, Helvetica, sans-serif;
	color:#666;
	width:300px;
}

#contact textarea {
	width:500px;
}

#contact input.submit {
	border:none;
	width:120px;
	height:28px;
	text-align:center;
	padding-top:4px;
	margin-top:15px;
	background:url(images/bk_sendmsg.jpg) 0 0 no-repeat;
}

.errormsg, .successmsg{
	background:#FEF4F1;
	border:1px solid #F7A68A;
	color:#DA4310;
	padding:10px;
}

.successmsg {
	background:#F5FAF1;
	border:1px solid #C2E1AA;
	color:#8FA943;
}


/* CLEARING
---------------------------------------------------*/
.clearfix:after {
    content: "."; 
    display:block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix {
	display: block;
}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.clear {
	clear: both;
}

.noclear {
	clear: none;
}


