@charset "UTF-8";

/* GENERAL COMMON STYLES*/

* {
	margin: 0px;
	padding: 0px;
}
body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #666;
	background-color: #D5E6ED;
}
h1, h2 {
	color: #999;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-weight:normal;
}
h1 {
	font-size:36px;
	line-height:1em;
	letter-spacing:-2px;
}
h1.page-title {
	font-size:38px;
	line-height:1em;
	letter-spacing:-2px;
	margin-bottom:0em;
	color:#C60;
}
h2 {
	font-size:21px;
	line-height:1.2em;
	letter-spacing:-1px;
}
h1 {
	margin-bottom: .4em;
}
h2 {
	margin-bottom: .5em;
}
h3, h4, h5, h6, p {
	margin-bottom: 1.2em;
}
h3 {
	font-weight: bold;
	font-size: 12px;
	margin-bottom: 0px;
}
h6 {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-weight: normal;
	font-size: 16px;
	color:#CC6600;
	line-height: 1em;
	margin-bottom: .6em;
}

img {
	border: none;	
}
a:link, a:visited {
	color: #CC6600;
	text-decoration: none;
}
a:hover, a:active {
	text-decoration: underline;
}
sup {
	font-size:10px;
}
a:focus { 
    outline: none; 
}
button::-moz-focus-inner {
  border: 0;
}







/* MISC CUSTOM CLASSES*/

.clear {
	clear: both;
	height: 0px;
	font-size: 0px;
	line-height: 0px;
}
.tight {
	margin-bottom: 0.2em;
}
.nobreak {
        white-space: nowrap;
}
.rule {
	background-color: #CCCCCC;
	height: 1px;
	margin-top: 15px;
	margin-bottom: 15px;
	clear: both;
	font-size: 0px;
}
.rule2 {
	background-color: #CCCCCC;
	height: 1px;
	margin-top: 0px;
	margin-bottom: 15px;
	clear: both;
	font-size: 0px;
}





/* HEADER */

#wrapper_header {
	background-color: #1C1B1B;
	background-image: url(../images/bg-header.gif);
	background-repeat: repeat-x;
	height: 106px;
}
#header {
	height: 106px;
	width: 900px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
#wrapper_content {
	background-color: #FFFFFF;
	background-image: url(../images/bodyBG_spacer.jpg);
	background-repeat: repeat-x;
}
#header .logo {
	position: absolute;
	left: 0px;
	top: 0px;
}




/* NAVIGATION */

#navigation {
	position: absolute;
	right: 0px;
	bottom: 20px;
	height: 45px;
	width: 685px;
}
#navigation ul {
	list-style-type: none;
}
#navigation li {
	display: inline;
}
#navigation a {
	display: block;
	height: 45px;
	float: left;
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
#navigation span {
	display:none;
}

#about a {
	background-image: url(../images/btn-about.gif);
	width: 110px;	
}
#services a {
	background-image: url(../images/btn-services.gif);
	width: 125px;
}
#portfolio a {
	background-image: url(../images/btn-portfolio.gif);
	width: 107px;
}
#news a {
	background-image: url(../images/btn-news.gif);
	width: 119px;
}
#clients a {
	background-image: url(../images/btn-clients.gif);
	width: 119px;
}
#contact a {
	background-image: url(../images/btn-contact.gif);
	width: 105px;
}
#navigation a:hover,
body.about #about a,
body.services #services a,
body.portfolio #portfolio a,
body.news #news a,
body.blog #blog a,
body.clients #clients a,
body.contact #contact a {
	background-position: 0px -45px;
}







/* CONTENT FRAMEWORK*/

#content {
	width: 900px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 15px;
	min-height: 500px;
}
body.home #content {
	padding-top: 5px;
}




/* CONTENT - LEFT*/

#columnL {
	float: left;
	width: 590px;
	line-height:1.5em;
	padding-bottom:30px;
}




/* CONTENT - RIGHT */

#columnR {
	float: right;
	width: 260px;
	padding-bottom: 20px;
	line-height: 1.3em;
	font-size: 11px;
}
.spotlight {
	line-height: 14px;
	width: 260px;
}
.spotlight img {
	float: left;
	margin-right: 8px;
	margin-top:-2px;
	margin-bottom:15px;
}
.spotlight p {
	float:left;
}





/*SUB NAV*/

#subnav {
	height: 34px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #CCCCCC;
	margin-left: 0px;
	margin-bottom: 15px;
	background-image: url(../images/border_1px.gif);
	background-repeat: repeat-x;
	background-position: left bottom;
	font-size:10px;
	font-weight:bold;
	text-transform:uppercase;
	line-height:16px;
}
#subnav ul {
	list-style-type: none;
}
#subnav li {
	display: inline;
}
#subnav a {
	display: block;
	float: left;
	padding: 9px 15px 6px 15px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #CCCCCC;
	border-right-color: #CCCCCC;
	color: #666666;
	*padding-bottom: 7px; /*this is an IE 7 and lower hack*/
}
#subnav a:hover {
	color: #CC6600;
	text-decoration: none;
	background-image: url(../images/subnav_accent.gif);
	background-repeat: repeat-x;
	background-position: 0px 0px;
}
#subnav ul.subnav01 #subnav01 a,
#subnav ul.subnav02 #subnav02 a,
#subnav ul.subnav03 #subnav03 a,
#subnav ul.subnav04 #subnav04 a,
#subnav ul.subnav05 #subnav05 a,
#subnav ul.subnav06 #subnav06 a,
#subnav ul.subnav07 #subnav07 a,
#subnav ul.subnav08 #subnav08 a{
	color: #CC6600;
	background-image: url(../images/subnav_accent.gif);
	background-repeat: repeat-x;
	background-position: 0px 0px;
	padding-bottom: 8px;
	*padding-bottom: 8px; /*this is an IE 7 and lower hack*/	
}







/* PORTFOLIO PAGES */

body.portfolio #columnL {
	width: 629px;
	margin-top: 20px;
	margin-left: 10px;
	padding-bottom: 25px;
}
body.portfolio #columnR {
	float: right;
	width: 205px;
	padding-bottom: 0px;
	padding-top: 18px;
	margin-top: 20px;
	margin-right: 5px;
	background-image: url(../images/panel-thumbnails.jpg);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	padding-left: 20px;
	margin-bottom: 25px;
}
#columnL_portfolioHome {
	float: left;
	width: 400px;
	margin-top: 35px;
	margin-left: 20px;
}
#columnR_portfolioHome {
	float: right;
	width: 450px;
	padding-top: 15px;
	padding-bottom: 20px;
}
body.portfolio h4 {
	font-size: 26px;
	font-weight: normal;
	color: #979797;
	margin-bottom: .7em;
	line-height: 0.9em;
}
body.portfolio h3 {
	font-size: 17px;
	font-weight: normal;
	margin-bottom: .2em;
}




/* PORTFOLIO STYLES */

body.portfolio #body_copy {
	padding-right: 20px;
	padding-left: 40px;
}
#columnL_portfolioHome ul {
	list-style-type: none;
	font-family: Arial, Helvetica, sans-serif;
}
#columnL_portfolioHome a {
	display: block;
	width: 285px;
	padding-top: 15px;
	padding-right: 5px;
	padding-bottom: 10px;
	padding-left: 37px;
	background-repeat: no-repeat;
	background-position: 0px 5px;
	color: #666666;
	border: 1px solid #CCCCCC;
	margin-bottom: 7px;
	font-weight: bold;
}
#columnL_portfolioHome a:hover {
	text-decoration: none;
	background-color: #f0f0f0;
	color: #CC6600;
}
#columnL_portfolioHome #print a {
	background-image: url(../images/icon_print.gif);
	background-position: 7px 7px;
}
#columnL_portfolioHome #web a {
	background-image: url(../images/icon_web.gif);
	background-position: 7px 7px;
}
#columnL_portfolioHome #logo a {
	background-image: url(../images/icon_logo.gif);
	background-position: 7px 7px;
}














/* SERVICE ICONS */


#service_icons {
	height: 58px;
	width: 555px;
}
#service_icons ul {
	list-style-type: none;
}
#service_icons li {
	display: inline;
}
#service_icons a {
	height: 43px;
	float: left;
	display: block;
	color: #666666;
	padding-left: 55px;
	padding-right:40px;
	padding-top: 15px;
	background-repeat: no-repeat;
	background-position: 10px 5px;
	text-transform:uppercase;
	font-weight:bold;
}
#service_icons a:hover {
	color: #CC6600;
	text-decoration: none;
}
#service_icons #print a {
	background-image: url(../images/icon-graphic-design.gif);
}
#service_icons #web a {
	background-image: url(../images/icon-web-design.gif);
}
#service_icons #logo a {
	background-image: url(../images/icon-logo-design.gif);
	padding-right:0px;
}







/*LISTS*/

ul.list {
	margin-bottom: 2em;
	margin-left: 25px;
}
.list li {
	margin-bottom: 0.5em;
}
ul.list ul {
	margin-left: 30px;
}











/* FOOTER */

#footer_wrapper {
	background-image: url(../images/footer_shadow.gif);
	background-repeat: repeat-x;
	background-position: 0px 0px;
}
#footer {
	width: 900px;
	margin-right: auto;
	margin-left: auto;
	color: #3399cc;
	padding-bottom: 15px;
	font-size: 10px;
	font-family: Arial, Helvetica, sans-serif;
}
#footer .invis,
#footer .invis a,
#footer .invis a:link,
#footer .invis a:hover {
	color: #D5E6ED;
}
#footerL {
	float: left;
	width: 500px;
	padding-top: 15px;
}
#footerR {
	float: right;
	width: 375px;
	text-align: right;
}
#footer a {
	color: #3399cc;
}







/* MISC TEXT STYLES */
.subhead_blue {
	font-weight: bold;
	color: #3399cc;
}

hr {
	margin-top: 25px;
	margin-bottom: 25px;
}







/* FORMS */

form {
	font-size:11px;	
}
#contact-main {
	font-size:12px;	
}

input.field {
	border: 1px solid #42A0CF;
	padding: 4px;
	font-family: Arial, Helvetica, sans-serif;
	color: #666666;
	font-size: 12px;
	width: 200px;
}
#contact-main input.field {
	width: 200px;
}

#planner input.field {
	width: 300px;
}
textarea.comments, textarea.answer {
	border: 1px solid #42A0CF;
	padding: 5px;
	font-family: Arial, Helvetica, sans-serif;
	color: #666666;
	font-size: 12px;
	width: 200px;
}
#contact-main textarea.comments {
	width: 350px;
}
#planner textarea.answer {
	width: 450px;
}
select {
	font-family: Arial, Helvetica, sans-serif;
	color: #666666;
	width: 110px;
	font-size: 12px;
}
fieldset {
	margin-bottom: 25px;
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}





#newsletter {
	line-height:1.1em;
}






/* TOP WRAPPER FOR SEO*/

h1.seo {
	font-size: 20px;
	color: #303436;
	position:absolute;
	top:-9999px;
	left:-9999px;
}







/* CAROUSEL JQUERY CORE STYLES */

/**
 * This <div> element is wrapped by jCarousel around the list
 * and has the classname "jcarousel-container".
 */
.jcarousel-container {
    position: relative;
}

.jcarousel-clip {
    z-index: 2;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}

.jcarousel-list {
    z-index: 1;
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
}
#mycarousel ul {
	list-style-type: none;
}
.jcarousel-list li,
.jcarousel-item {
    float: left;
    list-style: none;
    /* We set the width/height explicitly. No width/height causes infinite loops. */
    width: 565px;
    height: 367px;
}

/**
 * The buttons are added dynamically by jCarousel before
 * the <ul> list (inside the <div> described above) and
 * have the classnames "jcarousel-next" and "jcarousel-prev".
 */
.jcarousel-next {
    z-index: 3;
    display: none;
}

.jcarousel-prev {
    z-index: 3;
    display: none;
}


/* CAROUSEL THUMBNAIL GRID */
.jcarousel-control {
}
.jcarousel-control ul {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
.jcarousel-control li {
	display: inline;
}
.jcarousel-control a {
	width:55px;
	height:55px;
}
.jcarousel-control a img {
	margin-right:6px;
	margin-bottom: 6px;
}



/* CAROUSEL CONTAINER */
.jcarousel-skin-tango .jcarousel-container-horizontal {
    width: 565px;
	padding-left:37px; padding-right:37px;
}
.jcarousel-skin-tango .jcarousel-clip-horizontal {
    width:  565px;
    height: 367px;
}
.jcarousel-skin-tango .jcarousel-item {
    width: 565px;
    height: 367px;
}

/* CAROUSEL HORIZONTAL BUTTONS */
.jcarousel-skin-tango .jcarousel-next-horizontal {
	position: absolute;
	top: 0px;
	right: 5px;
	width: 32px;
	height: 323px;
	cursor: pointer;
	background-color: transparent;
	background-image: url(../images/portfolio/arrow_next.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
}
.jcarousel-skin-tango .jcarousel-next-disabled-horizontal,
.jcarousel-skin-tango .jcarousel-next-disabled-horizontal:hover,
.jcarousel-skin-tango .jcarousel-next-disabled-horizontal:active {
    cursor: default;
    background-position: -32px 0;
}
.jcarousel-skin-tango .jcarousel-prev-horizontal {
	position: absolute;
	top: 0px;
	left: 5px;
	width: 32px;
	height: 367px;
	cursor: pointer;
	background-color: transparent;
	background-image: url(../images/portfolio/arrow_prev.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
}
.jcarousel-skin-tango .jcarousel-prev-disabled-horizontal,
.jcarousel-skin-tango .jcarousel-prev-disabled-horizontal:hover,
.jcarousel-skin-tango .jcarousel-prev-disabled-horizontal:active {
    cursor: default;
    background-position: -32px 0;
}
.hidden {
	visibility: hidden;
	position: absolute;
}
#quick-contact {
	padding-left: 20px;
}






/* BLOG */

#menu {
	margin-top:80px;	
}
#menu ul, #menu li {
	list-style-image: none;
	list-style-type: none;
	margin-bottom:5px;
}
#menu h2 {
	margin-bottom:5px;
	font-weight:bold;
	font-size:12px;
	text-transform:uppercase;
}
#the-loop h6 {
	font-size:10px;
	color:#999;
	text-transform: uppercase;
	letter-spacing: .2em;
	font-family: Arial, Helvetica, sans-serif;
}
#the-loop h1 {
	font-size:18px;
	margin-bottom:.1em;
	letter-spacing:normal;
}
#body_copy ul h1 {
	font-size: 10px;
	letter-spacing: 0em;
	font-family: Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	font-weight: bold;
}
td.pullquote {
	background-color: #ebebeb;
	padding: 15px;
	font-size: 11px;
	line-height: 1.3em;
}
.credit {
	font-size: 10px;
	font-style: italic;
	line-height: 1.2em;
}






/* THUMBNAIL GALLERY */

.thumbnail_strip ul {
	list-style-type: none;
}
.thumbnail_strip li {
	display: inline;
}
.thumbnail_strip a {
	display: block;
	float: left;
	height: 120px;
	width: 180px;
	margin-right: 5px;
	margin-bottom:5px;
}



/* SOCIAL MEDIA */

#social-media-marketing {
	background-image: url(../images/bg-social-media-marketing.jpg);
	background-repeat: no-repeat;
	background-position: 300px 10px;
	height: 190px;
	margin-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	padding-top: 10px;
	padding-right: 305px;
}
#social-media {
	margin-bottom:20px;	
}
#banner {
	margin-left: -30px;
	width: 639px;
	margin-bottom: 10px;
}

h2.featured-design {
	margin-bottom:.7em;
}



/* CMS */

#content-management-systems {
	position: relative;
	padding-right: 250px;
}
#content-management-systems img {
	position: absolute;
	top: 10px;
	right: 50px;
}




/* ACCORDION MENU */

.accordionButton a {
	display:block;
	color:#666;
	 padding:10px 10px 3px 10px;
	 background-color:#e1e1e1;
	 font-size:11px;
	 border-bottom:solid 1px #FFF;
}
.accordionButton a:hover {
	 text-decoration:none;
	 background-color:#ccc;
}
.accordionButton h2 {
	text-transform:uppercase;
	font-weight:bold;
	color:#666;
	font-family:Arial, Helvetica, sans-serif;
	font-size:11px;
	letter-spacing:0px;
}
.accordionContent {
	display:none;
	padding:20px 40px 10px 20px;
	background-image:url(../images/gradient-bottom.gif);
	background-position:left bottom;
	background-repeat: repeat-x;
	background-color:#f5f5f5;
	font-size:11px;
	margin-bottom:15px;
}
.tagline {
	font-size: 10px;
	font-weight: bold;
	font-style: italic;
}
.clients #columnL p {
	margin-bottom: 1.7em;
}

