/* CSS
Author: David Brunelle
URL: http://www.brunelleinteractive.com
Created: 04-23-2009

Modified: 05-23-2009
By: David Brunelle

Notes:
*/


/* = Reset 
#########################################*/
body {height: 100%; width: 100%;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,table,tr,th,td,embed,object{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img,abbr{border:0;}
ul {list-style:none;}
caption,th {text-align:left;}
div{text-align: left; vertical-align: top;}
q:before,q:after{content:'';}
a{text-decoration:none;}
strong{font-weight: bold;}
em{font-style: italic;}
*:focus {outline: none;}

/* = Library 
#########################################*/
.clearfix:after {content: "."; display: block; height: 0; clear: both; visibility: hidden;}
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}
.clear {clear: both; float: none;}
.align-right {text-align: right;}
.align-left {text-align: left;}
.align-center {text-align: center;}
.justify {text-align: justify;}
.float-left {float:left;}
.float-right {float:right;}
.hide {display:none;}
.show {display: block;}
.inline {display: inline;}
.italic {font-style: italic;}
.nomargin {margin: 0;}
.nopadding {padding: 0;}
.subscript {font-size: .75em; vertical-align: bottom;}
.font14 {font-size:14px;}
.font16 {font-size:16px; margin-bottom: 12px !important;}
.font17 {font-size:17px; margin-bottom: 12px !important;}
.font18 {font-size:18px; margin-bottom: 12px !important;}
.font20 {font-size:20px; margin-bottom: 12px !important;}
.font24 {font-size:24px; margin-bottom: 12px !important;}
.font32 {font-size:32px; margin-bottom: 12px !important;}
.font36 {font-size:36px; margin-bottom: 12px !important;}
.green {color: #6daa3a;}
.blue {color: #6080a4;}
.orange {color: #f4901e;}

/* = Global Elements
#########################################*/
body {
	background: #e7e7e7 url('../images/interface/body-bg.gif') repeat-x left top;
	color: #1f1f1f;
	font: 13px/1.6 Arial, Helvetica, sans-serif;
	text-align: center;
}

a {
	color: #4d8eca;
}

#main p {
	margin-bottom: 1em;
}

.more, a.more {
	background: url('../images/interface/more-arrow.gif') no-repeat right center;
	font-size: 11px;
	font-weight: bold;
	line-height: 1;
	padding-right: 10px;
	text-transform: uppercase;
}

a.more-white, a.more-white:hover {
	background: url('../images/interface/more-arrow-white.gif') no-repeat right center;
	cursor: pointer;
	color: white;
	font-size: 11px;
	font-weight: bold;
	line-height: 1;
	padding-right: 10px;
	text-decoration: none !important;
}

a.register {
	background: url('../images/interface/register-button.gif') no-repeat left top;
	display: block;
	height: 28px;
	text-indent: -9009px;
	width: 89px;
}

p.breadcrumbs {
	color: #525252;
	font-size: 10px;
	margin: 0;
	padding: 0;	
}

p.breadcrumbs a {
	color: #4d8eca;
	font-size: 10px;
	text-decoration: underline;	
}

#content ul {
	list-style: disc;
	list-style-position: inside;
	margin-bottom: 1em;
	padding-left: 30px;
}


/* = Structure (global)
#########################################*/
#wrapper {
	margin: 0 auto;
	text-align: left;
	width: 960px;
}

#utility-bar {
	margin: 21px 0 0 0;
}

#login-state {
	color: #1f1f1f;
	float: right;
	font-size: 14px;
	line-height: 22px;
	margin-bottom: 10px;
}

#login-state a {
	font-weight: bold;
	text-decoration: underline;
}


#simple-search-form {
	background-color: #ffffff;
	border: 1px solid #a5a5a5;
	float: right;	
	margin-left: 14px;
	width: 200px;
}

#simple-search-form .search-text {
	float: left;
	height: 22px;
}

#simple-search-form .search-text input {
	border: solid 1px #ffffff;
	color: #666666;
	font-size: 12px;
	padding: 1px 0 3px 3px;
	vertical-align: middle;
	width: 120px;
}

#simple-search-form .search-submit {
	float: right;
}

#simple-search-form .search-submit input {
	background: #e3e3e3 url(../images/interface/search-button.gif) no-repeat left center;
	border: medium none;
	height: 22px;
	margin: 0;
	vertical-align: middle;
	width: 70px;
	cursor: pointer;
}

#header {
	margin: 0 0 21px 0;
	position: relative;
	z-index: 1000;
}

#logo {
	position: absolute;
	left: 0;
	bottom: 0;
	float: left;
}

#footer {
	font-size: 11px;
	list-style: none;
	margin: 45px auto 45px auto;
	padding: 0;
	text-align: center;
}

#c #footer {
	float: right;
	margin: 45px auto 45px auto;
	padding: 0 30px 0 30px;
	text-align: center;
	width: 675px;
}

#footer li {
	border-right: 1px dotted #A5A5A5;
	color: #333333;
	display: inline;
	height: 15px;
	line-height: 15px;
	padding: 0 10px 0 10px;
}

#footer li.last {
	border-right: none;
}

#footer li a {
	color: #333333;
	text-decoration: none;
}

/* = Structure (home page specific)
#########################################*/
#feature {
	height: 230px;
	margin: 0 0 25px 0;
	width: 960px;
}

#home-left {
	float: left;
	width: 470px;	
}

.left-promo {
	background-color: #ffffff;
	border: 1px solid #c5c5c5;
	min-height: 177px;
	height: auto !important;
	height: 177px;
	margin-bottom: 20px;
	padding: 29px 24px 10px 20px;
}

.left-promo h2 {
	font-family: Avenir, arial;
	font-size: 34px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 8px;
	padding: 0;
}

.left-promo div {
	float: right;
	width: 300px;
}

.left-news {
	background-color: #ffffff;
	border: 1px solid #c5c5c5;
	line-height: 1;
	height: 17px;
	padding: 19px 24px 19px 15px;
	position: relative;
}

.left-news h3 {
	border-right: 1px dotted #A5A5A5;
	float: left;
	font-size: 15px;
	font-weight: bold;
	margin-right: 15px;
	padding-right: 15px;	
}

.left-news p {
	display: inline;
}

.left-news a {
	color: #272727;
}

.left-news a.rss {
	display: block;
	height: 14px;
	position: absolute;
	right: 24px;
	top: 19px;
	width: 14px;
}

#home-right {
	width: 470px;
	float: right;
}

.img-promo {
	border: 1px solid #c5c5c5;
	margin-bottom: 23px;
}

#case-study-promo {
	background: url('../images/interface/case-study-bg.gif') no-repeat left top;
	height: 76px;
	line-height: 1;
	padding: 25px 15px 0 130px;
	width: 325px;
}

#case-study-promo h3 {
	font-family: Avenir, arial;
	font-size: 20px;
	color: #f58023;
	margin-bottom: 5px;
}

#case-study-promo p {
	font-family: Avenir, arial;
	font-size: 14px;
	
}

#case-study-promo p a {
	color: #1f1f1f;
	text-decoration: none;
}

/* = Structure (secondary pages)
#########################################*/
div.smart-brief-summary {
	margin-bottom: 30px;
}

div.smart-brief-summary p.title {
	font-weight: bold;
	margin-bottom: 0 !important;
} 

div.smart-brief-summary p.title a {
	color: #272727;
}



/* = Structure (secondary pages)
#########################################*/
#sidebar {
	float: left;
	width: 205px;
}

#sidebar-promo {
	background-color: #f07f27;
	border: 1px solid #c5c5c5;
	margin-bottom: 20px;
	padding: 15px 9px 15px 9px;
	color: #ffffff;
}

#sidebar-promo a {
	color: #ffffff;
}

#sidebar-promo a:hover {
	color: #ffffff;
	text-decoration: underline;
}

#sidebar-promo p {
	margin-bottom: 1em;
}

#sidebar-promo p.title {
	background: url('../images/interface/sidebar-promo-icon.gif') no-repeat left top;
	font-size: 15px;
	font-weight: bold;
	line-height: 20px;
	min-height: 36px;
	height: auto !important;
	height: 36px;
	margin-bottom: 5px;
	padding: 0 0 0 45px;
}

#sidebar-promo dd {
	font-size: 11px;
}

#sidebar-demo-link {
	border: 1px solid #c5c5c5;
}

#main {
	background-color: #ffffff;
	border: 1px solid #c5c5c5;
	float: right;
	min-height: 450px;
	height: auto !important;
	height: 450px;
	padding: 20px 30px 20px 30px;
	width: 675px;
}

#main-header {
	border-bottom: 1px dotted #a8a8a8;
	margin: 20px 0 30px 0;
	padding-bottom: 30px;
}

#c #main-header {
	margin: 20px 0 30px 0;
	padding-bottom: 15px;
}

#main-header.events {
	background: url('../images/interface/main-header-clipboard.gif') no-repeat right bottom ;
	min-height: 145px;
	height: auto !important;
	height: 145px;
}

#main-header.solutions {
	background: url('../images/interface/main-header-tooth.gif') no-repeat right bottom ;
}

h2.title {
	color: #e7722e;
	font-family: Avenir, Arial;
	font-size: 60px;
	font-weight: bold;
	line-height: 1;
	z-index: 1;
}

h2.title-small {
	color: #1f1f1f;
	font-family: Avenir, Arial;
	font-size: 40px;
	font-weight: bold;
	line-height: 1;
	z-index: 1;
}

h2.title-solution {
	color: #1f1f1f;
	float: left;
	font-family: Avenir, Arial;
	font-size: 40px;
	font-weight: bold;
	padding-top: 40px;
	line-height: 1;
	z-index: 1;
}


#main-header>div.intro {
	font-size: 17px;
	margin: 12px 0 0 0;
	width: 443px;
}

img.event-image {
	float: left;
}

div.event-details {
	float: right;
	margin-bottom: 25px;
	width: 495px;
}

div.event-details h3 {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 5px;
}

div.event-details p.event-time {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.75;
	margin-bottom: 15px;
}

#content {
	margin-bottom: 20px;	
}

#content.solutions>div {
	padding-bottom: 60px ;
}

#content h3, #content h3 a {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.25;
	margin-bottom: 25px;
}

#content h4 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	margin: 26px 0 13px 0;
}

img.staff-image {
	float: left;
}

div.staff-details {
	margin-bottom: 60px;
}

div.staff-details h3 {
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}

div.staff-details p.staff-title {
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 15px;
}

div.case-details {
	margin-bottom: 60px;
}

div.case-details h3, div.case-details h3>a {
	color: #1f1f1f;
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}

div.case-details h4, div.case-details h4>a {
	color: #1f1f1f;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: .5em;
}

#faq dt {
	margin-bottom: .5em;
}

#faq dt span, #faq dd span {
	float: left;
	display: block;
	margin-right: 10px;
}

#faq dt div.faq-content, #faq dd div.faq-content {
	float: left;
	width: 600px;
}

img.solution-icon {
	float: left;
	margin-right: 25px;
}

div.solution-details {
	float: left;
	width: 470px;
}

div.solution-details h3 {
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}

img.solution-icon-header {
	float: right;
}

#content .solution-inset {
	background-color: #94bbdf;
	border: 1px solid #c5c5c5;
	float: right;
	margin: 0 0 0 20px;
	min-height: 220px;
	height: auto !important;
	height: 220px;
	padding: 15px 20px 15px 20px;
	width: 170px;
	}

#content .solution-inset a {
	color:#FFFFFF;
	}
	

#content .solution-inset>ul {
	list-style-position: outside;
	margin-left: 0;
	padding-left: 1em;
}

#content .solution-inset>p.title {
	color: #0a487f;
	font-size: 16px;
}

.search-result {
	margin-bottom: 20px;
}

#main p.search-result-title {
	font-size: 14;
	font-weight: bold;
	margin-bottom: 0px;
}

div.solution-images {
	margin: 20px 0 20px 0;
	position: relative;
	width: 660px;
	text-align: center;
}

/* = Solution Slideshows
#########################################*/
div.solution-images h3 {
	margin-left: 40px;
	text-align: left;
}

div.solution-images .image-container {
	height: 375px;
	margin: auto;
	position: relative;
	width: 575px;
}

div.solution-images .image-container img {
	left: 0;
	position: absolute;
	top: 0;
}

div.solution-images #next-image {
	position: absolute;
	right: 0;
	top: 170px;
}

div.solution-images #prev-image {
	position: absolute;
	left: 0;
	top: 170px;
}

/* = Secondary Navigation
#########################################*/
#secondary-nav {
	background-color: #ffffff;
	border: 1px solid #c5c5c5;
	list-style: none;
	margin-bottom: 30px;	
	padding: 10px 0 50px 0;
}


#secondary-nav ul {
	list-style: none;
}

#secondary-nav a {
	color: #1f1f1f;
	display: block;
	line-height: 26px;
}

#secondary-nav a:hover {
	background-color: #e7e7e7;
}

#secondary-nav>li>a {
	font-size: 14px;
	padding: 0 0 0 25px;
}

#secondary-nav>li>a.selected {
	background: #c9dced url('../images/interface/more-arrow.gif') no-repeat 14px center;
}

#secondary-nav ul>li>a {
	font-size: 12px;
	padding: 0 0 0 36px;
}

#secondary-nav ul>li>a.selected {
	background: #c9dced url('../images/interface/more-arrow.gif') no-repeat 25px center;
}

#map {
	width: 600px;
	height: 400px;
}

/* = PRESS
/* = Styles that apply specifically to the News/ Press section
#########################################*/
#main-header h2.pr-title {
	font-size: 22px !important;
	font-weight: bold;
	text-transform: uppercase;
}

.press-release h3 {
	font-size: 24px !important;
	font-weight: normal !important;
	line-height: 30px;
}

.press-release h4 {
	font-size: 18px !important;
	font-weight: normal !important;
}

/* = Primary Navigation #qm0 (Uses Quickmenu, documentation found at
http://www.opencube.com/)
#########################################*/
.qmmc .qmdivider{display:block;font-size:1px;border-width:0px;border-style:solid;position:relative;z-index:1;}.qmmc .qmdividery{float:left;width:0px;}.qmmc .qmtitle{display:block;cursor:default;white-space:nowrap;position:relative;z-index:1;}.qmclear {font-size:1px;height:0px;width:0px;clear:left;line-height:0px;display:block;float:none !important;}.qmmc {position:relative;zoom:1;z-index:10;}.qmmc a, .qmmc li {float:left;display:block;white-space:nowrap;position:relative;z-index:1;}.qmmc div a, .qmmc ul a, .qmmc ul li {float:none;}.qmsh div a {float:left;}.qmmc div{visibility:hidden;position:absolute;}.qmmc .qmcbox{cursor:default;display:inline-block;position:relative;z-index:1;}.qmmc .qmcbox a{display:inline;}.qmmc .qmcbox div{float:none;position:static;visibility:inherit;left:auto;}.qmmc li {z-index:auto;}.qmmc ul {left:-10000px;position:absolute;z-index:10;}.qmmc, .qmmc ul {list-style:none;padding:0px;margin:0px;}.qmmc li a {float:none;}.qmmc li:hover>ul{left:auto;}#qm0 ul {top:100%;}#qm0 ul li:hover>ul{top:0px;left:100%;}


/*"""""""" (MAIN) Container""""""""*/	
#qm0	{	
	float: right;
	list-style: none;
	margin-top: 18px;
	padding: 0;
	position: relative;
	text-align: left;
	z-index: 50;
}

/*"""""""" (MAIN) Items""""""""*/	
#qm0 a.qmparent	{	
	padding: 6px 12px 4px 12px;
	color:#1F1F1F;
	font-family: Avenir, Arial;
	font-size:14px;
	line-height: 1;
	border-right: 1px dotted #A5A5A5;
}


/*"""""""" (MAIN) Hover State""""""""*/	
#qm0>a:hover, #qm0>a.selected	{	
	background-color: #d0dde8;
	text-decoration: none;
}

/*"""""""" (MAIN) Hover State - (duplicated for pure CSS)""""""""*/	
#qm0 li:hover>a, #qm0 li>a.selected	 {	
	background-color: #d0dde8;
	text-decoration:none;
}

/*"""""""" (MAIN) Active State""""""""*/	
body #qm0 .qmactive, body #qm0 .qmactive:hover	{	
	background-color: #d0dde8;
}

/*"""""""" (SUB) Container""""""""*/	
#qm0 div, #qm0 ul	{	
	padding: 0 0 -1px 0;
	margin: 0px 0px 0px 0px;
	background-color: #96c3ec;
	border-right: 1px solid #5d98cf;
	border-left: 1px solid #5d98cf;
	border-bottom: 1px solid #5d98cf;
	z-index: 98;
}

/*"""""""" (SUB) Items""""""""*/	
#qm0 div a, #qm0 ul a	 {	
	padding:2px 40px 2px 10px;
	border-bottom: 1px solid #ffffff;
	border-right: none;
	color:#393939;
	z-index: 99;
}

/*"""""""" (SUB) Hover State""""""""*/	
#qm0 div a:hover	{
	background-color: #4a89c3;	
	color:#ffffff;
}

/*"""""""" (SUB) Hover State - (duplicated for pure CSS)""""""""*/	
#qm0 ul li:hover>a	{	
	background-color: #4a89c3;	
	color:#ffffff;
}