
html
{
	background-image: url(../images/body_gradient_span.gif);	
	background-repeat:repeat-x;
	background-color:#DEE9F6;
	font: normal normal normal 1em/1.5em Helvetica,Arial,sans-serif;
	height: 100%;
}
*:first-child + html
{
	width: 100%;
}

body
{
	background: transparent url(/images/page_background.png) no-repeat top center;
	width: 100%;
	margin: 0;
	padding: 0;
}
*:first-child + html body
{
	width: 100%;
	position: relative;
}


#footer
{
	position: relative;
	margin: -7.5em auto 0 auto;
}
*:first-child + html #footer
{
	margin: -1.5em auto 0 auto;
}
*:first-child + html .interior #footer
{
	margin: 2.5em auto 0 auto;
}


#container
{
	margin-left: auto;
	margin-right: auto;
	width: 960px;
	display: block;
	position: relative;
	min-height: 100%;
}
* html #container
{
	height: 100%;
}

#logo
{
	background: transparent url(/images/logo.png) no-repeat 0 0;
	width: 243px;
	height: 95px;
	display: block;
	text-indent: -999em;
	margin-left: -22px;
}
#header
{
	height: 110px;
	position: relative;
	width: 959px;
}
#page
{
	background: url(/images/page_top.png) no-repeat scroll 0 0px;
	position: relative;
	padding-top: 10px;
	z-index: 1;
}

#nav-primary
{
	position: absolute;
	right: 0;
	top: 4em;
}
#nav-primary li
{
	display: block;
	float: left;
}
#nav-primary a
{
	display: block;
	float: left;
	margin-right: 1.4em;
	color: #fff;
	text-decoration: none;
}
#nav-primary .active
{
	font-weight: bold;
}
*:first-child + html #nav-primary
{
	width: 426px;
}
#nav-secondary
{
	background: transparent url(/images/nav_secondary_bg.png) repeat scroll left top;
	font-size: 0.825em;
	padding: 1em 1.5em 0.75em;
	position: absolute;
	right: 0;
	top: .5em;
}
*:first-child + html #nav-secondary
{
	width: 377px;
}
#nav-secondary li
{
	display: block;
	float: left;
	font-style: italic;
	color: #99ccff;
	margin: 0 0.5em;
}
#nav-secondary a
{
	font-style: normal;
	color: #99ccff;
	text-transform: uppercase;
	display: block;
	float: left;
	text-decoration: none;
	font-weight: bold;
}
#nav-secondary a:hover
{
	color: #fff;
}

h3.banner
{
	background: transparent url(/images/banner_blue.png) no-repeat scroll 0 0;
	color: #80bce5;
	height: 41px;
	left: -9px;
	top: 10px;
	padding-left: 40px;
	padding-top: 11px;
	position: absolute;
	text-transform: uppercase;
	width: 656px;
	z-index: 100;
}
*:first-child + html h3.banner
{
	position: relative;
	height: 41px;
	z-index: 20;
}
#aside-left
{
	background: #FFFFFF url(/images/home_banner_shadow.png) repeat-x scroll 0 0;
	float: left;
	height: 279px;
	margin-top: 34px;
	padding-top: 10px;
	width: 640px;
}
*:first-child + html #aside-left
{
	position: relative;
	z-index: 10;
	padding-top: 22px;
	margin-top: -30px;
	margin-bottom: 2px;
}

#aside-left img
{
	position: absolute;
	top: 0;
}
*:first-child + html #aside-left img
{
	top: -45px;
}
#aside-right
{
	background: #BCE9FF url(/images/page_aside_right.jpg) no-repeat scroll 0 0px;
	float: left;
	height: 324px;
	width: 319px;
}
*:first-child + html #aside-right
{
	position: relative;
	top: -55px;
	z-index: 5;
	height: 324px;
	clear: right;
}
h4.banner
{
	background: transparent url(/images/banner_white.png) no-repeat scroll left top;
	height: 47px;
	padding-left: 30px;
	padding-top: 11px;
	position: absolute;
	right: -8px;
	top: 23px;
	width: 298px;
	z-index: 90;
	color: #747679;
	text-transform: uppercase;
}
#aside-right h5
{
	color: #0078C9;
	font-family: Helvetica Neue, Helvetica, Arial, Arial Narrow, sans-serif;
	font-size: 1.8em;
	font-style: italic;
	font-weight: 100;
	margin-left: 30px;
	padding-bottom: 11px;
	padding-top: 65px;
}

*:first-child + html #aside-right h5
{
	padding-top: 20px;
}
#aside-right p
{
	font-size: 0.9em;
	line-height: 1.5em;
	margin-left: 30px;
	margin-right: 20px;
	color: #747679;
}
*:first-child + html h4.banner
{
	position: relative;
	padding-top: 10px;
	left: 0px;
}
#page-footer
{
	background: transparent url(/images/page_footer_bg.png) no-repeat scroll left top;
	clear: both;
	min-height: 252px;
	position: relative;
	top: -7px;
}
*:first-child + html #page-footer
{
	top: -62px;
	z-index: 100;
}
#testimonials
{
	float: left;
	width: 640px;
	margin-top: 10px;
	background: #f3f3f3 url(/images/page_footer_bg.png) no-repeat scroll 0 -10px;
	position: relative;
}
#testimonials h5
{
	padding-bottom: 15px;
	padding-left: 35px;
	padding-top: 26px;
	text-transform: uppercase;
	color: #acacac;
}
#testimonials blockquote
{
	background: transparent url(/images/quote.png) no-repeat scroll left top;
	font-size: 0.9em;
	line-height: 1.5em;
	margin-left: 35px;
	padding-left: 50px;
}
#testimonials img
{
	position: absolute;
	right: 5px;
	top: 25px;
}
#testimonials blockquote p
{
	color: #747679;
	padding-right: 250px;
}
#testimonials .author
{
	color: #0078CA;
	display: block;
	float: right;
	font-size: 1.05em;
	font-style: italic;
}
*:first-child + html #testimonials .author
{
	float: left;
	padding-left: 100px;
}
#press-releases
{
	float: left;
	width: 319px;
	font-size: 0.75em;
}
#press-releases h5
{
	color: #ACACAC;
	font-size: 1.3em;
	padding-left: 28px;
	padding-top: 36px;
	text-transform: uppercase;
}
#press-releases ul
{
	margin: 0px 30px;
}
#press-releases ul li
{
	color: #747679;
	margin: 1.4em 0;
}
#press-releases a
{
	color: #0078ca;
	line-height: 1.2em;
	text-decoration: none;
}
#press-releases p a
{
	font-weight: bold;
	margin-left: 30px;
	text-decoration: none;
}

#news .entry p
{
	margin-top: 1.2em;
	margin-bottom: .5em;
}
#news p.date
{
	margin-top: 0;
}
#news .entry a
{
	color: #0078C9;
}

#footer
{
	background: transparent url(/images/footer_shadow_bg.png) no-repeat scroll left top;
	width: 960px;
	clear: both;
	height: 204px;
	margin-top: -2em;
	margin-left: auto;
	margin-right: auto;
}
*:first-child + html #footer
{
	position: relative;
	top: -40px;
}
#about, #contact
{
	color: #fff;
}
#about
{
	float: left;
	width: 640px;
	display: block;
	margin-left: 30px;
	margin-top: 30px;
}
#about h6
{
	display: block;
	float: left;
	font-size: 0.92em;
	margin-bottom: 1em;
	margin-top: 0.5em;
	text-transform: uppercase;
	width: 640px;
}
#about p
{
	font-size: 0.875em;
	line-height: 1.5em;
	margin-right: 2.25em;
	margin-top: 1.2em;
	margin-bottom: .5em;
}
#about p + p
{
	font-size: 0.75em;
	margin-top: 0;
	color: #b5e6ff;
}

#contact
{
	margin-top: 30px;
	float: left;
	display: block;
}
#contact h6
{
	text-transform: uppercase;
	font-size: 0.9em;
	margin-top: 0.5em;
	text-transform: uppercase;
}
#contact address
{
	font-size: 0.875em;
	font-style: normal;
	line-height: 1.4em;
	margin-top: 1em;
}
#contact a
{
	display: block;
	padding-top: 1em;
	text-decoration: none;
	color: #bde8ff;
}

/* Interior */
h1.banner
{
	background: transparent url(/images/interior_banner.png) no-repeat scroll 0 0;
	color: #80BCE5;
	height: 30px;
	left: -8px;
	top: 10px;
	padding-left: 40px;
	padding-top: 11px;
	position: absolute;
	text-transform: uppercase;
	width: 950px;
	z-index: 100;
}
body.interior #page
{
	display: block;
	background-image: none;
	background-color: #fff;
	width: 960px;
	padding-top: 44px;
	color: #747679;
}
#page .navigation.section
{
	background: #dcdddd url(/images/interior_nav_shadow.png) repeat-x top left;
	clear: both;
	width: 100%;
	height: 30px;
}
#nav-tertiary
{
	display: block;
	margin-left: 35px;
}
#nav-tertiary li
{
	display: block;
	float: left;
}
#nav-tertiary a
{
	color: #0078C9;
	display: block;
	float: left;
	font-size: 87%;
	height: 30px;
	line-height: 30px;
	padding: 0 14px;
	text-decoration: none;
}
#footer
{
	margin-top: -1.5em;
	padding-bottom: 1em;
}
.interior #footer
{
	margin-top: 0;
}
#nav-tertiary a:hover, #nav-tertiary .active
{
	background: #eeeeee url(/images/interior_nav_active.png) repeat-x top left;
}
.article
{
	background: transparent url(/images/interior_gradient_bg.png) repeat-x bottom left;
	min-height: 375px;
}
.article h2
{
	margin-left: 32px;
	margin-bottom: 20px;
	margin-top: 25px;
	display: block;
	text-indent: -9999em;
}
#onebiz p
{
	background: url(/images/interior/onebiz_screens.jpg) no-repeat top right;
	padding-right: 610px;
}
#onebiz h2
{
	background: transparent url(/images/onebiz-logo.png) no-repeat top left;
	width: 151px;
	height: 36px;
}
#loyaltyclicks p
{
	background: url(/images/interior/loyaltyclicks_graphic.jpg) no-repeat top right;
	padding-right: 610px;
}
#loyaltyclicks h2
{
	background: transparent url(/images/loyaltyclicks-logo.png) no-repeat top left;
	width: 202px;
	height: 79px;
}
#imart p
{
	background: url(/images/interior/imart_screens.jpg) no-repeat top right;
	padding-right: 610px;
}
#imart h2
{
	background: transparent url(/images/imart-logo.png) no-repeat top left;
	width: 108px;
	height: 36px;
}
.article p
{
	font-size: 90%;
	line-height: 1.4em;
	margin-left: 32px;
	margin-top: 0;
	width: 300px;
}
.article em
{
	display: block;
	font-size: 110%;
	font-style: normal;
	font-weight: bold;
	line-height: 1.4em;
	margin-top: 4%;
}
.article a.button, #executive-message a.button, #leadership a.button
{
	background: transparent url(/images/button-orange.png) no-repeat scroll center top;
	color: #FFFFFF;
	display: inline-block;
	font-size: 12px;
	height: 46px;
	margin: 28px 0 0 14px;
	padding: 9px 5px 7px 0px;
	text-align: center;
	text-decoration: none;
	width: 195px;
}
.article a.button.blue, #executive-message a.button.blue, #leadership a.button.blue
{
	background: transparent url(/images/button-blue.png) no-repeat scroll center top;
	display: inline-block;
}

#executive-message a.button.orange
{
	margin-left: -15px;
	margin-top: 10px;
	top: 0px;
}
#executive-message a.button.blue
{
	margin-left: -15px;
	top: -40px;
}
#leadership a.button.blue
{
	left: -30px;
	padding-top: 6px;
	position: relative;
}

.column-2 .left, .column-2 .right
{
	margin-top: 20px;
}
.column-2 .left
{
	float: left;
	width: 46%;
	padding-left: 1%;
	padding-right: 3%;
	border-right: 1px solid #ccc;
}
.column-2 .right
{
	float: right;
	width: 47%;
	padding-right: 1%;
}
.column-2 .right .aside
{
	margin-right: 5%;
}
.layout
{
	font-size: .87em;
	line-height: 1.4em;
}
.layout h2
{
	margin-top: 1%;
	color: #0078C9;
	font-family: Helvetica Neue,Helvetica,Arial,Arial Narrow,sans-serif;
	font-size: 1.5em;
	font-weight: 500;
	padding-bottom: 15px;
}
.layout .aside
{
	margin: 0 0 5% 5%;
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
	line-height: 1.4em;
}
.layout ul
{
	margin: 1.5% 2% 0 0;
}
.layout ul li
{
	list-style-image: none;
	margin: 1% 2.5%;
}
.layout ul li span
{
	display: block;
	height: auto;
	margin-left: 15px;
	margin-top: -18px;
}
.aside.last
{
	border-bottom: 0px;
}
.sidebar .left
{
	float: left;
	margin-top: 20px;
	margin-left: 30px;
	width: 190px;
	padding-right: 20px;
}
.left a
{
	color: #0078C9;
}
.sidebar .right
{
	margin-top: 20px;
	float: right;
	width: 650px;
	padding-left: 30px;
	border-left: 1px solid #ccc;
}
.sidebar .entry
{
	margin-top: 1%;
	border-bottom: 1px solid #ccc;
	padding: 1% 0;
}

#overview .left
{
	height: 880px;
}
#overview .aside a
{
	color: #0078C9;
}

#executive-message
{
	position: relative; /*background:transparent url(/images/uploads/cj_meese_quote.jpg) no-repeat scroll 0 0;*/
	margin-left: -10px;
	margin-top: 10px;
	height: 340px; /*padding-left:215px;*/
	padding-left: 15px;
	padding-top: 20px;
}
#executive-message .author
{
	color: #0078C9;
	font-weight: bold;
	display: block;
	padding-top: 20px;
}
#executive-message a.button
{
	padding-top: 5px;
	color: #fff !important;
	position: relative;
}

#services
{
	margin: 0 20px;
}
#services .left
{
	min-height: 590px;
}
#services .right
{
	width: 45%;
}
#leadership
{
	width: 100%;
}
#leadership .aside
{
	border: none;
	position: relative;
	padding-bottom: 30px;
	margin-right: 5%;
}
#leadership .aside .bio, .bio-full
{
	padding-right: 120px;
}
#leadership.exec .aside .bio, .exec .bio-full
{
	padding-right: 20px;
}
#leadership .right
{
	padding-right: 2%;
	width: 47%;
	float: left;
}
#leadership h2
{
	margin-left: 20px;
}
#leadership h3
{
	color: #0078C9;
}
#leadership .title
{
	color: #0078C9;
	font-style: italic;
	font-weight: normal;
	width: 260px;
	padding-bottom: 10px;
}
#leadership .bio a
{
	color: #0078C9;
	text-decoration: none;
	display: block;
	padding-right: 67px;
	text-align: left;
}
#leadership .aside img
{
	position: absolute;
	right: -30px;
	top: -25px;
}

#careers .left ul li
{
	list-style: none;
}
#careers .left ul
{
	margin: 5% 0;
}
#careers .left p
{
	margin-bottom: 5%;
}
#careers .right
{
	margin-top: 20px;
}
#careers .right > a
{
	visibility: hidden;
	line-height: 0px;
	font-size: 0px;
	height: 0;
	overflow: hidden;
	position: absolute;
}
#careers h2, #careers h3, #careers em
{
	color: #0078C9;
}
#careers ul
{
	margin: 1.5% 0;
}
#careers ul li
{
	margin-left: 2.5%;
}
#careers a
{
	color: #0078C9;
}
#contact-us
{
	margin-top: 20px;
}
#contact-us.sidebar .left
{
	width: 160px;
}
#contact-us.sidebar .left.aside
{
	border-left: 1px solid #CCCCCC;
	border-bottom: none;
	width: 180px;
	margin-left: 30px;
	margin-top: 20px;
	margin-right: 0px;
	padding-left: 20px;
	padding-right: 20px;
	color: #0078C9;
	height: 505px;
}
#contact-us.sidebar .right
{
	width: 420px;
}

#contact_form label
{
	display: block;
}
#contact_form p.inline label
{
	float: left;
	width: 100px;
}
#contact_form .instruction
{
	color: #0078C9;
}
#contact_form p
{
	margin: 3.5% 1%;
}
#contact_form input[type="text"]
{
	width: 18em;
}
#contact_form select
{
}
#contact_form textarea
{
	width: 23.5em;
	height: 9em;
}

#contact_form p label.error
{
	color: #0078C9;
	float: none;
	font-size: 11px;
	padding-left: 100px;
	padding-top: 3px;
	width: 150px;
}

.clear
{
	display: inline-block;
}
.clear:after
{
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: ".";
}


