* {
	margin: 0px;
	padding: 0px;
}

html {
	overflow-y: scroll;
}

body {
	background: url(../img/top_bg.gif) repeat-x;
	margin: 0px;
	font-family: arial, sans-serif;
	font-size: 9pt;
	color: #585858;
	line-height: 1.3;
}

.fck-body {
	background: #fff none;
}

img {
	border: 0px;
}

a {
	color: #0688aa;
}

a:visited {
	color: #979797;
}

a:active, a:hover {
	color: #fc8605;
}

ul {
	list-style-type: square;
	margin: 5px 5px 5px 25px;
	padding: 0px;
}

ul li, ol li {
	padding: 1px 0px;
}

ol {
	list-style-type: decimal;
	margin: 5px 5px 5px 30px;
	padding: 0px;
}

p {
	margin-bottom: 5px;
}

h1 a, h2 a, h3 a {
	text-decoration: none;
}

h1 {
	color: #2667b0;
	font-size: 1.5em;
	margin: 10px 0px;
	padding: 0px;
}

h1 a, h1 a:visited {
	color: #2667b0;
}

h1.orange a, h1.orange a:visited {
	color: #fd7f04;
}

h2 {
	color: #000;
	font-size: 1.3em;
}

h2 a, h2 a:visited {
	color: #000;
}

h3 {
	color: #2568af;
	font-size: 1.1em;
}

h3 a, h3 a:visited {
	color: #2568af;
}

table, table.colored {
	border: 1px solid #c5c4c2;
	border-collapse: collapse;
	/* margin: 5px; */
}

table td, table.colored td {
	border: 1px solid #c5c4c2;
	padding: 2px 4px;
	color: #333333;
}

table tr.even td {
	background-color: #f8f8f7;
}

table th, table tr.header td {
	background-color: #e5e3df;
	color: #000;
	font-weight: bold;
}

table.layout, table.layout td, table.layout th {
	border: none;
	background-color: transparent;
	color: #585858;
	font-weight: normal;
}

hr {
	border: none;
	background: #e1dfd2;
	height: 1px;
	clear: both;
	margin: 10px 0px;
}

input {
	border: 1px solid #d3d3ce;
}

/*
input[type=text]:focus, input[type=password]:focus, textarea:focus {
	border: 1px solid #fd7f04;
	background-color: #e7f4f7;
}
*/

.button {
	border: none;
	padding: 2px 2px;
	background: #9cbbc9;
	color: #fff;
	font-size: 1.1em;
	font-weight: bold;
	text-transform: uppercase;
}

/** ======= START GENERAL usage styles ============ **/

.main {
	width: 980px;
	margin: 0px auto;
}

.left-column {
	float: left;
	width: 650px;
}

.right-column {
	float: right;
	width: 321px;
}

.half-left {
	float: left;
	width: 49%;
}

.half-right {
	float: right;
	width: 49%;
}

.inner-block {
	overflow: hidden;
}

.inner-block p {
	line-height: 1.4;
}

#logo {
	background: transparent;
	display: block;
	margin: 20px 20px;
}

#tag-cloud p {
	padding: 10px;
	text-align: center;
	line-height: normal;
}

a.tag-elem:hover {
	background-color: #0086c6;
	color: #fff;
}

/* outer div for centered boxes */
.center-outer {
	position: relative;
	right: 50%;
	float: right;
}

/* inner div to be centered inside center-outer */
.center-inner {
	//float: left; /** IE6 hack **/
	right: -50%;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.float-left {
	float: left;
	clear: none;
}

.float-right {
	float: right;
	clear: none;
}

/* to be used after float elements */
.clear {
	clear: both;
	height: 0px;
	display: block;
}

.new-row {
	clear: both;
	margin: 0px;

	/* width & overflow makes the block goes all around floating elements inside */
	width: 100%;
	overflow: hidden;
}

.top-margined {
	margin-top: 8px;
}

.top-half-margined {
	margin-top: 5px;
}

img.bottom {
	vertical-align: bottom;
}

img.middle {
	vertical-align: middle;
}	

.orange {
	color: #fd7f04;
}

.image-left {
	float: left;
	margin-right: 10px;
	padding: 5px;
}

.image-right {
	float: right;
	margin-left: 10px;
	padding: 5px;
}

ul.blogs {
	font-size: 10pt;
}

ul.blogs a {
	font-size: 0.9em;
}

/** ======= END GENERAL usage styles ============ **/


/** ======= START Round corners with borders ========= **/
.corner-wrap {
	width: 6px;
	height: 6px;
	position: absolute;
	overflow: hidden;
}

.corner-wrap.t {
	margin-top: -1px;
}

.corner-wrap.t .corner {
	margin-top: -6px;
}

.corner-wrap.l {
	margin-left: -1px;
}

.corner-wrap.l .corner {
	margin-left: -6px;
}

.corner-wrap.r {
	margin-left: 100%;
	left: -6px;
}

.corner-wrap.r .corner {
	margin-left: 0px;
}

.corner-wrap.b {
	top: auto;
	margin-top: -5px;
}

.corner {
	width: 12px;
	height: 12px;
	position: absolute;
	background:url(../img/border-star.png)
}

.transp-corner {
	background:url(../img/corner.png)
}
/** ======= END Round corners with borders ========= **/


/** ======= START Top menu ============ **/
#top_menu_left {
	background: url(../img/menu_left.gif) no-repeat;
	width: 6px;
	float: left;
	height: 37px;
}

div#top_menu_right {
	background: url(../img/menu_right.gif) no-repeat;
	width: 4px;
	float: right;
	height: 37px;
}

.ddsmoothmenu * {
	line-height: 100%;
}

.ddsmoothmenu {
	float: left;
	background: #4985C9 url(../img/menu_bg.gif) repeat-x;
	width: 100%;
}

.ddsmoothmenu ul{
	z-index:100;
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
}

/*Top level list items*/
.ddsmoothmenu ul li{
	position: relative;
	display: inline;
	float: left;
	width: 159px;
	text-align: center;
	padding: 1px 0px 0px 0px;
}

/*Top level menu link items style*/
.ddsmoothmenu ul li a{
	display: block;
	padding: 12px 0px 12px 0px;
	text-decoration: none;
}

* html .ddsmoothmenu ul li a{ /*IE6 hack to get sub menu links to behave correctly*/
	/* display: inline-block; */
}

.ddsmoothmenu ul li a:link, .ddsmoothmenu ul li a:visited{
	color: #fff;
}

.ddsmoothmenu ul li a:hover, .ddsmoothmenu ul li a.selected{ /*CSS class that's dynamically added to the currently active menu items' LI A element*/
	background: #f8fafb url(../img/top_menu_grad.gif) repeat-x;
	color: #3c76b7 !important;
}

.ddsmoothmenu ul li a:hover {
	background: #f8fafb url(../img/top_menu_grad.gif) repeat-x; /* background of menu items during onmouseover (hover state)*/
	color: #3c76b7;
}
	
/*1st sub level menu*/
.ddsmoothmenu ul li ul{
	position: absolute;
	left: 0;
	display: none; /*collapse all sub menus to begin with*/
	visibility: hidden;
	background: #e4ecf2 url(../img/sub_menu_grad.gif) repeat-x;
	text-align: left;
	
	list-style-type: square;
	font-size: 10pt;
	vertical-align: middle;
}

/*Sub level menu list items (undo style from Top level List Items)*/
.ddsmoothmenu ul li ul li{
	display: list-item;
	float: none;
	text-align: left;
	font-size: 0.9em;
	width: auto;
	height: auto;
	margin: 2px 0px;
	margin-left: 30px;
	padding: 0px 10px 2px 0px;
	cursor: pointer;
}

.ddsmoothmenu .top-menu-h-sep {
	height: 1px;
	background-color: #d2deea;
	margin: 0px 0px 0px 5px;
	padding: 0px;
	overflow: hidden;
	margin-left: -20px;
	margin-top: 5px;
}

.ddsmoothmenu .sub-menu-bottom {
	width: 160px;
	height: 6px;
	overflow: hidden;
	background: transparent url(../img/sub_menu_bottom.png) no-repeat;
	position: absolute;
	z-index: 1;
	bottom: -6px;
	left: -30px;
}

/*All subsequent sub menu levels vertical offset after 1st level sub menu */
.ddsmoothmenu ul li ul li ul{
	top: 0;
}

/* Sub level menu links style */
.ddsmoothmenu ul li ul li a, .ddsmoothmenu ul li ul li a:link, .ddsmoothmenu ul li ul li a:visited{
	display: inline;
	padding: 0px;
	margin: 0px;
	width: 100%;
	color: #1193b5;
	font-size: 0.9em;
}

.ddsmoothmenu ul li ul li a:hover {
	color: #fc8605  !important;
	background: transparent none;
}

.ddsmoothmenu ul li ul li a.selected {
	color: #fc8605  !important;
	background: transparent none;
}

.ddsmoothmenu .top-menu-sep {
	background: url(../img/menu_sep.gif) no-repeat;
	width: 2px;
	float: left;
	height: 36px;
}
/** ======= END Top menu ============ **/


/** ======= START Various inner blocks =============== **/
.rounded-grey-border {
	background-color: #e1dfd2;
	padding: 1px;
	overflow: hidden;
	position: relative;
	clear: both;
	margin-bottom: 5px;
}

.rounded-grey-plain {
	background-color: #e1dfd2;
	overflow: hidden;
	position: relative;
	clear: both;
	margin-bottom: 5px;
}

.rounded-grey-plain h1 {
	color: #61605e;
}

.rounded-cyan {
	background-color: #c6f0ff;
}

.rounded-inside {
	padding: 1px;
	background-color: #fff;
	clear: both;
	overflow: hidden;
}

.padded {
	padding: 5px 15px;
}

.breadcrubms {
	font-size: 0.9em;
}

.light-blue {
	background: #fff url(../img/vert_grad_light_blue.gif) repeat-x;
}

.login-form {
	overflow: hidden;
	width: 290px;
	margin: auto;
	padding: 0px 5px 7px 0px;
}

.login-form h1 {
	font-weight: normal;
}

.login-form label {
	display: block;
	float: left;
	clear: left;
	width: 70px;
	margin: 3px 0px;
	color: #5f5f5f;
	font-size: 0.9em;
}

.login-form input {
	background-color: #fff;
	border: none;
	border-top: 1px solid #b0b0ab;
	border-bottom: 1px solid #bdbdb8;
	margin: 0px;
	height: 16px;
	font-size: 11px;
	vertical-align: top;
	padding: 2px 0px;
	width: 139px;
}

#login_button {
	background: url(../img/login_button.png) no-repeat;
	width: 60px;
	height: 20px;
	border: none;
	padding: 0px 0px 2px 0px;
	margin: 0px;
	color: #fff;
}

/** ======= END Various inner blocks =============== **/


/** ======= START Promo block =============== **/
.promo-choice {
	float: right;
	height: 218px;
	width: 329px;
	position: relative;
}

.promo-back-container {
	height: 218px;
	width: 329px;
	position: absolute;
	display: none;
}

.promo-orange {
	background: #f49d13 url(../img/homepromo_orange_grad.gif) repeat-x;
}

.promo-green {
	background: #75af02 url(../img/homepromo_green_grad.gif) repeat-x;
}

.promo-blue {
	background: #05b3d3 url(../img/homepromo_blue_grad.gif) repeat-x;
}

.promo-shadow-right {
	background-color: #878787;
	float: left;
	margin-top: 1px;
	height: 217px;
	width: 1px;
}

.promo-shadow-bottom {
	clear: left;
	background-color: #878787;
	margin-left: 4px;
	height: 1px;
	width: 647px;
}

.promo-item {
	color: #fff;
	font-size: 1.25em;
	font-weight: bold;
	height: 28px;
	z-index: 10;
	position: relative;
	cursor: pointer;
}	

.promo-item.active {
	color: #1b91b1;
	height: 28px;
}

.promo-selector {
	position: absolute;
	overflow: hidden;
	float: left;
	left: 30px;
	top: 0px;
	display: none;
}

.promo-left-ear {
	background: transparent url(../img/promo_ears.png) top left no-repeat;
	width: 14px;
	height: 28px;
	position: relative;
	float: left;
}

.promo-middle {
	height: 28px;
	background: #fff;
	float: left;
}

.promo-right-ear {
	background: transparent url(../img/promo_ear_r.png) top right no-repeat;
	width: 14px;
	height: 28px;
	position: relative;
	float: left;
}
/** ======= END Promo block =============== **/

/** ======= START Contact us form =============== */

#contact_us_container {
	z-index: 200 !important; /* to override top menu */
	display: none;
	position: absolute;
	width: 0px;
	overflow: hidden;
}

#contact_us_button {
	float: right;
	display: block;
	margin-bottom: 5px;
	cursor: pointer;
}

#contact_us_button_active {
	position: absolute;
	display: none;
	width: 323px;
	height: 89px;
}

.contact-us-form {
	width: 308px;
	height: 215px;
	background: #90c203 url(../img/contact_grad.png) repeat-x;
	float: left;
	border-top: 1px solid #d4d104;
	padding: 5px 5px;
}

.contact-us-left {
	background: url(../img/contact_left.png) no-repeat;
	height: 225px;
	width: 6px;
	float: left;
}

.contact-us-right {
	background: url(../img/contact_right.png) no-repeat;
	height: 225px;
	width: 6px;
	float: left;
}

.contact-us-form h1 {
	color: #000;
	font-size: 1.3em;
	font-weight: normal;
	margin: 0px;
	padding: 4px 0px 12px 0px;
	float: left;
}

#contact_us_error {
	float: left;
	padding: 5px 5px 0px 10px;
	color: #f22c27;
	width: 110px;
}

#contact_us_close {
	float: right;
	clear: none;
	padding-top: 3px;
	cursor: pointer;
}

#contact_us_form {
	display: block;
	margin-top: 5px;
}

#contact_us_form img {
	vertical-align: top;
}

#contact_us_form input {
	background-color: #fff;
	border: none;
	border-top: 1px solid #b0b0ab;
	border-bottom: 1px solid #bdbdb8;
	margin: 0px;
	height: 16px;
	font-size: 11px;
	vertical-align: top;
	padding: 2px 0px;
	color: #a0a09e;
	width: 139px;
}

#contact_us_form input:focus, #contact_us_form textarea:focus {
	background-color: #fff;
	color: #000;
}

#contact_us_form textarea {
	height: 83px;
	width: 295px;
	color: #a0a09e;
	vertical-align: top;
	border: none;
	border-top: 1px solid #b0b0ab;
	border-bottom: 1px solid #bdbdb8;
	font-size: 11px;
	font-family: arial, verdana;
	overflow: auto;
}

.contact-us-form-row {
	height: 22px;
	overflow: hidden;
	margin-bottom: 7px;
}

input#send_button {
	width: 86px;
	height: 20px;
	border: none;
	display: block;
	color: #000;
	background: url(../img/send_button.png) no-repeat;
	margin: 10px auto 0px auto;
	text-align: center;
	cursor: pointer;
	padding-bottom: 4px;
	font-size: 11px;
	font-weight: bold;
}

.contact-form-error {
	/* background-color: #f22c27 !important; */
	color: #f22c27 !important;
}

/* Used for various links which should toggle contact us form */
.contact-trigger {
	cursor: pointer;
}

/** ======= END Contact us form =============== */


/** ======= START Footer =============== */
.footer-top {
	background: #eee url(../img/footer_top.gif) repeat-x;
	padding-top: 2px;
	margin-top: 15px;
}

.footer-column {
	float: left;
	font-size: 0.9em;
	width: 140px;
	padding: 15px 10px;
}

.footer-column a {
	text-decoration: none;
}

.footer-active-column-1 {
	background: #ace3f5 url(../img/footer_gradient.png) repeat-x;
}
.footer-active-column-2 {
	background: #aecb87 url(../img/footer_gradient.png) repeat-x;
}
.footer-active-column-3 {
	background: #c176e5 url(../img/footer_gradient.png) repeat-x;
}
.footer-active-column-4 {
	background: #4682c6 url(../img/footer_gradient.png) repeat-x;
}

.footer-sep {
	width: 1px;
	float: left;
	padding: 0px 0px 0px 0px;
}

.footer-sep-top {
	background: #eee url(../img/sep_top_gradient.png) repeat-x bottom;
	height: 40px;
	position: relative;
	width: 1px;
}

.footer-sep-inner {
	background-color: #c9dee3;
	width: 1px;
	height: 50px;
	padding: 0px;
}

.footer-sep-bottom {
	background: url(../img/sep_bottom_gradient.png) repeat-x top;
	height: 40px;
	width: 1px;
	position: relative;
}

.footer-map {
	width: 188px;
	height: 101px;
	margin: 0px auto;
	margin-top: 15px;
}

.location {
	float: left;
	margin-left: 30px;
	font-size: 0.9em;
	color: #898989;
}

.location strong {
	display: block;
	color: #000;
	margin: 2px 0px;
	font-size: 1.15em;
}

.location a:visited {
	color: #0688aa;
}

.footer-bottom {
	background: url(../img/footer_bottom.gif) repeat-x;
	height: 2px;
}

.copyright-left, .copyright-right {
	float: left;
	font-size: 0.9em;
	padding: 10px 15px 25px 15px;
}

.copyright-right {
	float: right;
}
/** ======= END Footer =============== */


/** ======= START Case Study block =============== */
.case-study-small {
	width: 175px;
	margin: 0px 10px 10px 10px;
	float: left;
}

.case-study-subtext {
	font-size: 0.9em;
	line-height: 120%;
	padding-bottom: 5px;
}

.case-study-small h2 {
	margin: 0px 5px 5px 0px;
	font-size: 1.2em;
}

.case-study-small h2 a {
	color: #000;
	font-weight: normal;
	text-decoration: none;
}

.case-study-prev-next {
	position: relative;
	top: 70px;
	padding: 0px 2px;
	width: 15px;
	height: 15px;
	overflow: hidden;
}

.case-study-prev-next img {
	display: none;
	cursor: pointer;
}

/** Case study inside **/

.case-study-logo {
	float: left;
}

.case-study-url {
	height: 25px;
	float: right;
}

.case-study-url a, .case-study-url a:visited {
	color: #333333;
}

.case-study-url a:hover {
	color: #fc8605;
}

.case-study-url-inner {
	background-color: #e5e3df;
	height: 19px;
	float: left;
	padding: 3px 10px;
}

.case-study-url-left {
	background: url(../img/grey_left_ear.png) no-repeat;
	float: left;
	width: 10px;
	height: 25px;
}

.case-study-url-right {
	background: url(../img/grey_right_ear.png) no-repeat;	
	float: left;
	width: 10px;
	height: 25px;
}

.pointer-outer {
	margin: 10px 0px;
	clear: both;
}

.pointer-outer h1 {
	color: #000;
	padding-top: 0px;
	margin-top: 0px;
}

.pointer-outer .padded {
	padding: 15px 15px;
}

.cyan-up {
	position: relative;
	float: left;
	left: 50px;
	width: 16px;
	height: 13px;
	background: url(../img/cyan_pointer_up.png) no-repeat;
}

.grey-up {
	position: relative;
	float: left;
	left: 50px;
	width: 16px;
	height: 13px;
	background: url(../img/grey_pointer_up.png) no-repeat;
}

.grey-right {
	background: url(../img/grey_pointer_right.png) no-repeat;
	position: relative;
	float: right;
	width: 13px;
	height: 16px;
	right: -13px; /* 1 weird, but it helps */
	z-index: 100;
}

.grey-down {
	position: relative;
	float: left;
	left: 50px;
	top: auto;
	margin-top: -5px; /* 5 for outer padding */
	width: 16px;
	height: 13px;
	background: url(../img/grey_pointer_down.png) no-repeat;
	margin-bottom: 10px;
}

.grey-left {
	background: url(../img/grey_pointer_left.png) no-repeat;
	position: relative;
	float: left;
	width: 13px;
	height: 16px;
	left: -13px; /* 13 own width + 15 for outer padding */
	top: 20px;
}

/** ======= END Case Study block =============== */

/** ============== START Top Level Pages ============= */
.blue-gradient {
	background: #1ea5b1 url(../img/promo_blue_grad.gif) repeat-x;
}

.magenta-gradient {
	background: #8421b6 url(../img/promo_magenta_grad.gif) repeat-x;
}

.green-gradient {
	background: #93b73f url(../img/promo_green_grad.gif) repeat-x;
}

.dark-blue-gradient {
	background: #114d91 url(../img/promo_dark_blue_grad.gif) repeat-x;
}

.promo-icon {
	/* background: transparent url(../img/halo.png) no-repeat center center; */
	height: 218px;
	float: left;
	width: 330px;
	text-align: center;
}

.curves-container {
	background: transparent url(../img/curves_back.png) no-repeat top right;
	height: 218px; /* required for ie to give layout */
}

.curves {
	height: 168px;
	float: left;
	padding: 30px 20px 20px 75px;
	color: #fff;
	font-size: 1.2em;
	width: 550px;
}

.curves a, .curves a:visited, .curves-inner a, .curves-inner a:visited  {
	color: #fff;
}

.curves a:hover, .curves a:active, .curves-inner a:hover, .curves-inner a:active  {
	color: #fd7f04;
}

.top-level-link a, .top-level-link a:visited {
	text-decoration: underline;
	color: #0688aa;
}

.top-level-link a:active, .top-level-link a:hover {
	color: #fc8605;
}

.top-level-item {
	float: left;
	width: 49%;
	margin: 10px 0px;
	overflow: hidden;
}

.top-level-item h2 {
	font-size: 1.2em;
}

.top-level-icon {
	width: 60px;
	float: left;
	padding: 5px 5px;
}

.top-level-item-content {
	padding-left: 10px;
	margin-bottom: 10px;
	float: left;
	width: 210px;
}

.top-level-item-h-sep {
	height: 1px;
	background-color: #ccc;
	margin: 0px 10px 0px 0px;
	clear: both;
	overflow: hidden;
	display: none;
}

.top-level-item-v-sep {
	float: left;
	width: 1px;
	background-color: #ccc;
	overflow: hidden;
	display: none;
}

.pagination-item {
	padding: 0px 3px;
	font-size: 1.5em;
}
/** ============== END Top Level Pages ============= */


/** ============== START Inner Pages ============= */
.curves-inner-container {
	background: transparent url(../img/inner_curves.png) no-repeat top right;
	height: 140px;
}

.curves-inner-container-noicon {
	background: transparent url(../img/inner_curves_noicon.png) no-repeat top right;
	height: 140px;
}

.curves-inner {
	/* background: transparent url(../img/inner_curves_back.png) no-repeat top right; */
	height: 140px;
	float: left;
	padding: 10px 10px 5px 15px;
	color: #fff;
	font-size: 1.2em;
	width: 620px;
}

.promo-icon-inner {
	/* background: transparent url(../img/halo.png) no-repeat center center; */
	float: right;
	width: 310px;
	text-align: center;
	height: 140px;
	padding-top: 20px;
}

.curves h1, .curves-inner h1 {
	padding: 0px 10px 5px 0px;
	color: #fff;
	font-size: 1.5em;
	margin: 0px;
}
/** ============== END Inner Pages ============= */


/** ============== Useful overrides (don't move to top of file) ============ */
.no-btm-margin {
	margin-bottom: 0px;
}
