/* Reset */

h1, h2, h3, h4, h5, h6, p, pre, blockquote, label, ul, ol, li, dl, dd, fieldset, address {
    font-size: 1em;
	margin: 0;
	padding: 0;
}
ol  {
	padding-left: 20px;
	margin-left: 10px;
}


/*----------
  THE BASICS
  ----------*/
body {
	color: #000;
	background: #d9d9d9;
	font: 13px/20px arial, sans-serif;
	margin: 0;
	padding: 0;
}
#dhWrapper {
	position: relative;
	margin: 15px auto;
	width: 852px;
}
#access {
	display: none;
}
hr {
	display: none;
}
#dhContent {
	background: #fff;
    background: #fff url(../images/common/page-top.png) no-repeat;
	margin-top: 13px;
	padding-right: 24px;
	padding-bottom: 4px;
    padding-left: 256px;
    height: 1%;
}
.single #dhContent {
	padding-left: 24px;
}
h1 {
	color: #800505;
	border-bottom: 5px solid #94acbe;
	font: 32px arial;
	margin-bottom: 8px;
	padding-top: 32px;
	padding-bottom: 8px;
}
h2 {
	color: #870a65;
	border-bottom: 3px solid #d4dee5;
	font-size: 18px;
	clear: right;
	margin-bottom: 4px;
	padding-bottom: 4px;
}
h3 {
	color: #2f699b;
	border-bottom: 1px solid #d4dee5;
	font-size: 16px;
	margin-bottom: 2px;
	padding-bottom: 2px;
}
h4 {
	color: #6a064f;
	font-size: 13px;
	margin-bottom: 1px;
	padding-bottom: 1px;
}
p, ul, ol, dl, table, pre {
	margin-bottom: 20px;
}
ul {
	list-style: none;
}
#dhContent ul {
	list-style: outside disc;
}
li {
	margin-bottom: 6px;
	padding-left: 16px;
}
#dhContent li {
	margin-left: 16px;
	padding-left: 0;
}
dl {
	padding-left: 16px;
}
dl.nobreak {
	margin-top: -20px;
}
dt {
	color: #496e89;
	font-style: italic;
	float: left;
	text-align: right;
	margin-right: .5em;
	width: 3em;
}
blockquote {
	font-style: italic;
	margin-left: 32px;
}
blockquote p.source {
	color: #666;
	font-style: normal;
	margin-top: -20px;
}
img {
	border: none;
}
img.right {
	float: right;
	margin-bottom: 11px;
	margin-left: 11px;
}
table th,
table td {
	border-top: 1px solid #c3cbd4;
	font-size: 11px;
	line-height: 16px;
	padding: 7px 16px 8px 0;
	vertical-align: top;
}
table th {
	text-align: left;
	padding-right: 13px;
}
table tr.headings th {
	color: #2f699b;
	background: #F3F6F8 url(/images/common/table-headings.png) repeat-x bottom;
	border-top: none;
}
table td.pad {
	padding-right: 16px;
}
table .noteworthy {
	color: #800505;
}
small {
	font-size: .846em;
}
small.caps {
	font-size: .8125em;
	letter-spacing: 1px;
}
a:hover {
	color: #000;
}
a {
	color: #800505;
    outline: none;
}
a:active  {
	color: #800505;
	text-decoration: none;
}


/*-----------
  SPECIALTIES
  -----------*/
.container-col {
	overflow: auto;
}
.col {
	float: left;
	width: 47%;
}
.col.right {
	float: right;
}
h3 a img {
	position: absolute;
	margin-left:-235px;
}
p.portfolio-img {
	position: absolute;
	margin-top: -40px;
	margin-left: -235px;
	width: 208px;
}
p.portfolio-img a {
	float: right;
	display: block;
}
p.portfolio-img img {
	display: block;
}
#affinergy-img {
	margin-top: 30px;
}
a.dlink {
	background: url(../images/common/darrow.png) no-repeat left;
	font-weight: bold;
	padding-left: 9px;
}
button {
  cursor: pointer;
}
a.button, 
a.buy-now,
a.download {
    color: #053945;
    background: url(../images/common/button-buy-now-left.png) no-repeat;
    cursor: pointer; /* for IE7 */
    line-height: 15px;
    text-decoration: none;
    display: inline-block;
    padding-left: 1px;
}
a.button span, 
a.buy-now span, 
a.download span {
    background: url(../images/common/button-buy-now-right.png) no-repeat right top;
    cursor: pointer;
    text-align: center;
    display: inline-block;
    padding: 2px 6px 6px;
    min-width: 65px;
}
a.download {
    color: #252525;
    background-image: url(../images/common/button-download-left.png);
}
a.download span {
    background-image: url(../images/common/button-download-right.png);
}
a.button {
    color: #252525;
    background-image: url(../images/common/button-left.png);
}
a.button span {
    background-image: url(../images/common/button-right.png);
}

td h4 {
	font-size: 11px;
}

table td.border_none {
	border: none;
}
.buy-now a {
    color: #4e7598;
    background: url(/images/common/button-buy-now.png) no-repeat;
    font: bold 15px/13px arial, sans-serif;
    text-align: center;
    text-decoration: none;
    text-shadow: #fff 0 1px 0;
    position: absolute;
    top: 130px;
    right: -31px;
    display: block;
    padding: 20px 8px 0;
    width: 51px;
    height: 47px;
}
.buy-now a:hover {
    color: #0f518c;
    background-position: 0 -68px;
}
.buy-now a:active {
    background-position: 0 -136px;
    text-shadow: #fff 0 1px 5px;
}
.page-label {
    background: url(../images/common/label-phone.png) repeat-x;
    font: 11px/20px arial, sans-serif;
    display: inline-block;
    position: absolute;
    top: 85px;
    right: 22px;
    z-index: 2;
}
.page-label .wrapper {
    background: url(../images/common/label-phone.png) no-repeat right -22px;
}
.page-label .wrapper a {
    color: #d1d9e5;
    background: url(../images/common/label-phone.png) no-repeat left -44px;
    text-decoration: none;
    display: block;
    padding: 0 10px 2px 27px;
}
.page-label strong {
    color: #fff;
}
.page-label small {
    font-size: 10px;
    line-height: 19px;
}


/*--------------
  LEARN MORE BOX
  --------------*/
.learn-more {
	float: right;
	padding: 15px 20px;
	margin: 20px 0 20px 20px;
	background-color: #efefef;
}

.learn-more h2 {
	font-size: 17px;
	padding-bottom: 2px;
	color: #484848;
}

.learn-more ul {
	margin: 15px 0 0 0;
	padding: 0;
}

.learn-more li {
	line-height: 15px;
}

.learn-more li a {
	display: block;
}


/*------------------------
 SOFTWARE COMPARISON CHART
 ------------------------*/
.small-text {
	text-transform: uppercase;
	font-size: .7em;
	font-family: Arial;
}


/*----
  LOGO
  ----*/
#dhLogo {
    width: 240px;
}
#dhLogo img {
    display: block;
}


/*----------
  NAVIGATION
  ----------*/
#dhNavBar {
	font: bold 15px arial;
	position: absolute;
	top: 49px;
	right: 5px;
}
#dhNavBar li {
	background: none;
	border: 8px solid #d9d9d9;
	border-width: 0 8px;
	list-style: none;
	float: left;
	padding-left: 0;
}
#dhNavBar a {
	color: #535353;
	border-bottom: 4px solid #d9d9d9;
	text-decoration: none;
	display: block;
	float: left;
	padding-bottom: 2px;
}
#dhNavBar a:hover {
	color: #000;
	border-bottom: 4px solid #aaa;
}
#dhNavBar a:active {
	border-bottom-color: #bbb;
}
#dhNavBar a.current,
.software a#software,
.services a#services,
.support a#support,
.resources a#resources,
.blog a#blog, 
.company a#company {
	border: 0;
	border-bottom: 4px solid #94acbe;
}
a#buy {
    background: #e2e2e2;
	border: 1px solid #efefef;
    -moz-border-radius: 12px;
    -webkit-border-radius: 12px;
	margin-top: -3px;
	padding: 2px 11px 3px;
}
a#buy:hover {
	background: #efefef;
	border: 1px solid #efefef;
}
a#buy:active {
	background: #e2e2e2;
}


/*------
  SUBNAV
  ------*/
#dhSubNav {
	position: absolute;
	top: 84px;
	left: 24px;
	width: 208px;
}
.single #dhSubNav {	
	background: url(/images/common/nav-thumb.png) no-repeat;
	cursor: pointer;
	overflow: hidden;
	left: -35px;
	margin-top: 16px;
	padding-bottom: 16px;
	padding-left: 35px;
	width: 0;
	height: 48px;
}
.single #dhSubNav form {
	display: none;
}
.single #dhSubNav.show {
	cursor: auto;
	background: #fff;
	border-top: 1px solid #b5c7d4;
	border-left: 1px solid #b5c7d4;
	border-bottom: 2px solid #8c95a2;
	border-right: 2px solid #8c95a2;
	overflow: visible;
	padding-left: 16px;
	padding-right: 16px;
	width: 208px;
	height: auto;
}
.single #dhSubNav.show form {
	display: block;
}
#dhSubNav h1 {
	color: #94acbe;
	border-bottom: 5px solid #d4dee5;
	margin-bottom: 0;
	padding-left: 4px;
}
#dhSubNav ul {
	background: #f3f6f8;
	font-weight: bold;
	padding-bottom: 7px;
}
#dhSubNav li {
	background: none;
	margin-bottom: 0;
	padding-left: 0;
    height: 1%;
}
#dhSubNav a {
	color: #1e445e;
	text-decoration: none;
	display: block;
	padding: 2px 16px;
}
#dhSubNav a:hover {
	color: #000;
	background: #e0edf6;
}
#dhSubNav li.current {
	margin-bottom: 4px;
}
#dhSubNav li.current a {
	color: #000;
	background: #fff url(/images/common/subnav-arrow.png) no-repeat right !important;
	padding: 7px 16px;
}
#dhSubNav a:active {
	color: #900;
	background: #dde9f1;
}

/*--------------
  INLINE TAB NAV
  --------------*/

.tabbed {
	background: #f4f6f8 url(../images/common/tabbed-bg.png) repeat-x;
	overflow: auto;
	margin-top: -8px;
	margin-bottom: 14px;
	padding: 3px 3px 0;
	white-space: nowrap; /* for IE6 */
}
.tabbed h3 {
	color: #94acbe;
	border: none;
	font-weight: normal;
	font-size: 13px;
	float: left;
	padding-top: 7px;
}
.tabbed li {
	list-style: none;
	float: left;
	margin: 0;
	margin: 0 2px;
	padding-right: 2px;
}
li.first {
	margin-left: 10px;
}
.tabbed a {
	color: #1e445e;
	display: block;
	text-decoration: none;
	outline: none;
	padding-top: 7px;
	padding: 7px 8px 5px 10px;
}
.tabbed li.current {
	background: url(../images/common/tabbed-tab-right.png) no-repeat right;
}
.tabbed li.current a {
	color: #1e445e;
	background: url(../images/common/tabbed-tab.png) no-repeat;
	font-weight: bold;
	text-decoration: none;
}
.tabbed a:hover {
	color: #000;
	text-decoration: underline;
}


/*-------
  CHOICES
  -------*/
#choices {
	position: absolute;
	top: 108px;
}
#choices li {
	float: left;
	margin: 0;
	padding: 0;
}
#choices a {
	color: #fff;
	background: url(/images/common/choices-highlight.png) no-repeat;
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding-top: 12px;
	height: 30px;
}
	
#choices-ajax {
	position: absolute;
	top: 108px;
}
#choices-ajax li {
	float: left;
	margin: 0;
	padding: 0;
}
#choices-ajax a {
	color: #fff;
	background: url(/images/common/choices-highlight.png) no-repeat;
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding-top: 12px;
	height: 30px;
}
	
#screencasts a {
	background-position: 0 0;
	padding-left: 40px;
	width: 184px;
}
#download a {
	background-position: -224px 0;
	padding-left: 30px;
	width: 210px;
}
#license a {
	background-position: -464px 0;
	padding-left: 37px;
	width: 187px;
}
#screencasts a:hover {
	background-position: 0 -42px;
}
#download a:hover {
	background-position: -224px -42px;
}
#license a:hover {
	color: #fffecf;
	background-position: -464px -42px;
	background: url(/images/common/choices-highlight-buy.png) repeat-x 0 0;
}
#choices a:active {
	color: #cbf2ff;
}


/*-----
  FORMS
  -----*/
input,
textarea {
	background: url(/images/common/input-shad.png) repeat-x;
	border-top: 1px solid #7794aa;
	border-bottom: 1px solid #e2eff9;
	border-left: 1px solid #c9d5de;
	border-right: 1px solid #c9d5de;
	font: 13px arial;
	display: inline-block;
	padding-left: 3px;
}
input[type=hidden] {
    background: none;
	border: none;
    display: none;
}
input[type=image] {
	width: auto;
}
input.checkbox {
    display: inline;
	width: 13px;
}
input#name, textarea#message, input#phone, input#email {
	width: 300px;
}

/*-----------
  MODULE LIST
  -----------*/
table.module-list {
	table-layout: fixed;
}
table.module-list th {
	padding-right: 0;
}
table.module-list th.name {
	width: 112px;
}
table.module-list td.desc {
	padding-right: 16px;
}
table.module-list td.price {
	width: 56px;
}
table.module-list td.status {
	width: 80px;
}


/*---------
  RESOURCES
  ---------*/
table.reading td strong {
	display: block;
}
table.reading td.cover {
	padding-right: 16px;
}
table.reading td.cover img {
	width: 80px;
	height: auto;
}


/*-----------
  SIDE QUOTES
  -----------*/
.side-quotes {
	font-size: .9em;
	position: absolute;
	top: 420px;
	left: 24px;
	width: 208px;
}

.side-quotes-services {
	font-size: .9em;
	position: absolute;
	top: 380px;
	left: 24px;
	width: 208px;
}

.side-quotes blockquote {
	margin-left: 0;
}


/*-------
  REPORTS
  -------*/
pre {
	background: #f3f6f8;
	padding: 8px;
}
.single pre {
	overflow: auto;
}
.single #dhContent img {
}


/*------------
  POSTS BUBBLE
  ------------*/
#latest-posts-bubble {
    background: url(../images/common/latest-posts-bubble.png) no-repeat right 0;
    text-align: center;
    position: absolute;
    top: 16px;
    right: 129px;
    min-width: 183px;
}
#latest-posts-bubble a {
    color: #38567b;
    background: url(../images/common/latest-posts-bubble.png) no-repeat left -46px;
    font-size: 11px;
    line-height: 28px;
    text-decoration: none;
    outline: none;
    display: block;
    padding: 0 12px 0;
}
#latest-posts-bubble a:hover {
    color: #000;
}


/*------
  SEARCH
  ------*/
#search input {
	font: 11px/16px arial;
	float: left;
	height: 14px;
}
#search input.gsc-input {
	border-top: 1px solid #7794aa;
	border-bottom: 1px solid #e2eff9;
	border-left: 1px solid #c9d5de;
	border-right: 1px solid #c9d5de;
}
#search button, 
#search input[type=submit] {
	background: url(/images/common/search-button.png) no-repeat;
	border: none;
	cursor: pointer;
	text-indent: -9999px;
	float: right;
	display: block;
	padding: 0;
	width: 26px;
	height: 18px;
}
input.labeled {
	color: #799fbc;
}

/* google styles overrides */

#cse table {
  margin-bottom: 5px;
}
#cse .gsc-resultsHeader {
  display: none;
}
table th[class*=gsc],
table td[class*=gsc] {
  border: none;
}
table.gsc-search-box td {
  padding: 0;
}
.gsc-resultsHeader {
  padding-bottom: 0;
}
body .cse .gsc-control-cse, 
body .gsc-control-cse {
  padding: 0;
}
#search table.gsc-search-box td.gsc-input {
  padding-right: 0;
}
#search input.gsc-search-button {
  margin: 0;
}
body .gsc-result .gs-title {
  height: auto;
  overflow: show;
}
td.gsc-clear-button {
  display: none;
}
body .gsc-control-cse, .gsc-control-cse .gsc-table-result {
  width: auto;
}
body .cse .gsc-webResult.gsc-result:hover,
body .gsc-webResult.gsc-result:hover,
body .gsc-results .gsc-imageResult-classic:hover,
body .gsc-results .gsc-imageResult-column:hover {
  border-bottom: 1px solid #ebebeb;
}
body .gs-result .gs-title, 
body .gs-result .gs-title * {
	color: #800505;
}


/*-------------
  CUSTOMERS BAR
  -------------*/
#customers-bar {
    background: #fff;
    clear: both;
	margin-top: -20px;
	margin-bottom: 20px;
    padding: 24px;
}
#customers-bar ul {
	background: #fff url(/images/common/customers-bar.png) no-repeat;
	overflow: auto;
	margin-bottom: 0;
    padding-left: 100px;
    height: 1%;
}
#customers-bar li {
	line-height: 80px;
	float: left;
	margin-bottom: 0;
	padding-left: 16px;
	width: 96px;
}
#customers-bar img {
	display: block;
	margin: auto;
}


/*------
  FOOTER
  ------*/
#footerBox {
	color: #111;
	margin-top: -10px;
	margin-bottom: 20px;
	padding-left: 24px;
}
#footerBox ul {
    text-align: right;
	/*position: absolute;*/
    float: right;
    margin-right: 24px;
	/*right: 24px;*/
}
#footerBox li {
	background: none;
	float: left;
	padding-left: 0;
	width: 112px;
}
#footerBox li.contact-link {
	width: 94px;
}
#footerBox p {
	margin: 0;
}
#footerBox p.credit {
	color: #666;
	font-size: 11px;
	margin-top: -2px;
}
#footerBox p a {
	color: #666;
	text-decoration: none;
}


/*---------------
  SCREENCAST LINK
  ---------------*/
p.screencast-link {
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    margin: 0;
    margin: 18px 0 18px 0;
    padding: 0;
}
p.screencast-link a {
    color: #003043 !important;
    background: url(/images/common/screencast-link-right.png) no-repeat right top;
    font-weight: normal !important;
    line-height: 31px;
    text-decoration: none;
    outline: none;
    display: inline-block;
    height: 31px;
}
p.screencast-link a span {
    background: url(/images/common/screencast-link-left.png) no-repeat;
    display: block;
    padding: 0 9px 0 33px;
}
p.screencast-link a:hover {
    color: #08506c !important;
    background-position: right bottom;
}
p.screencast-link a:hover span {
    background-position: left bottom;
}
p.screencast-link a:active {
    position: relative !important;
    bottom: -1px;
}


/*---------
  IE6 HACKS
  ---------*/
* html a#buy {
	margin-top: 0;
	position: relative;
	top: -3px;
}
* html .learn-more li a {
	display: inline;
}


/*------------------------
  Custom for comment links - mdrew 20090212
  ------------------------*/
#blog_comment {
	background: transparent url(/images/blog/comment.png) no-repeat scroll 1px 0;
	padding: 1px 0 3px 22px;
}


/*------------
  PRINT STYLES
  ------------*/
@media print {
    #dhLogo {
        text-indent: 0;
    }
    .point h2 {
        text-indent: 0;
        height: 60px;
    }
    #dhNavBar li {
        border-color: #fff;
    }
    #dhNavBar a {
        border-bottom-color: #fff;
    }
}

