/* Clearfix */

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
 
.clearfix {
  display: inline-block;
}
 
html[xmlns] .clearfix {
  display: block;
}
 
* html .clearfix {
  height: 1%;
}


body {
  font: 12px 'Helvetica Neue', 'Helvetica', 'Arial';
  text-align: center;
}

em {
  font-weight: bold;
}

h1 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.25em;
}

h2 {
  font-size: 15px;
  font-weight: normal;
}

h3 {
  font-weight: bold;
  font-size: 15px;
}


p {
  font-size: 14px;
  line-height: 1.45em;
  color: #535353;
  padding-bottom: 1em;
}


a:link, a:hover, a:active, a:visited {
  color: #454851;
  font-weight: bold;
  text-decoration: underline;
}


.container {
  margin: 0 auto;
  width: 900px;
  text-align: left;
  padding-left: 15px;
}

#header {
  border-bottom: 1px solid #c8c8c8;
  margin-top: 25px;
  padding-bottom: 15px;
}

h1#logo {
  text-indent: -20000px;
  height: 40px;
  width: 218px;
  background: url(../images/doorway/big_logo.png) top left no-repeat;
  float: left;
}

h3#small_logo {
  text-indent: -20000px;
  height: 37px;
  width: 35px;
  margin-top: 5px;
  background: url(../images/doorway/small_logo.png) top left no-repeat;
  float: left;
}

#nav {
  float: right;
  width: 600px;
  font-size: 14px;
  padding-top: 0px;
}

#nav li {
  float: right;
  margin-right: 25px;
  font-weight: bold;
  color: #000;
  padding-top: 15px;
}

#nav a:link, #nav a:hover, #nav a:active, #nav a:visited {
  color: #777;
  text-decoration: none;
  font-weight: normal;
}

#nav a:hover {
  color: #000;
}

#nav li.active {
  color: #000;
  font-weight: bold;
  background: url(../images/doorway/down_arrow.png) top center no-repeat;
}

#primary, #secondary, #contact_catch {
  border-bottom: 1px solid #c8c8c8;
}

#primary #catch {
  float: left; 
  width: 320px;
  padding-top: 50px;
  padding-right: 25px;
}

#catch h1 {
  padding-bottom: 20px;
  margin-top: 35px;
  font-size: 22px;
  line-height: 1.3em;
}

#catch h2 {
  color: #777;
  width: 90%;
  font-size: 1.2em;
  line-height: 1.6em;
}

#primary #device {
  float: left;
  margin-top: 25px;
}

#secondary.descriptors {
  background: url(../images/doorway/descriptor_bg.png) top center no-repeat;
}
.descriptor {
  float: left; 
  width: 33%;
  height: 210px;
  padding-bottom: 30px;
}

.descriptor h3, .descriptor p, .descriptor a {
  padding-left: 65px;
  margin-right: 15px;
} 

.descriptor h3 {
  margin-top: 10px;
  margin-bottom: 20px;
}

.descriptor p {
  line-height: 1.5em;
  font-size: 13px;
  padding-bottom: 15px;
}

.descriptor a {
  margin-left: 60px;
  padding-left: 20px;
}

.descriptor.nopad {
  margin-top: 20px;
}
.descriptor.nopad p, .descriptor.nopad h3, .descriptor.nopad a {
  margin-left: 0px;
  margin-top: 0px;
  padding-left: 0px;
}

.descriptor.nopad h3 {
  padding-top: 20px;
}

.descriptor a.orange_arrow {
  background: url(../images/doorway/orange_arrow.png) top left no-repeat;
}

.descriptor a.blue_arrow {
  background: url(../images/doorway/blue_arrow.png) top left no-repeat;
}

.descriptor a.green_arrow {
  background: url(../images/doorway/green_arrow.png) top left no-repeat;
}

.descriptor.orange {
  border-right: 1px solid #c4c4c4;
  background: url(../images/doorway/descriptor_feedback.png) 10px 45px no-repeat;
}

.descriptor.blue {
  border-right: 1px solid #c4c4c4;
  border-left: 1px solid #fff;
  background: url(../images/doorway/descriptor_loyalty.png) 13px 45px no-repeat;
}

.descriptor.green {
  border-left: 1px solid #fff;
  background: url(../images/doorway/descriptor_opportunities.png) 17px 45px no-repeat;
}

#contact_catch {
  padding-top: 15px;
  padding-bottom: 10px;
}

#contact_catch h1 {
  font-size: 17px;
  float: left;
}

#contact_catch a.click_here {
  margin-left: 20px;
}

#foot {
  margin-top: 25px;
  padding-bottom: 45px;
}

#foot h4 {
  width: 300px;
  font-weight: normal;
  color: #ccc;
  padding-left: 4px;
  clear:both;
  line-height: 1.25em;
}


/* ------------ free ------------ */


h1.innerpage {
  font-size: 30px;
  margin-top: 40px;
}

.free_title {
  width: 550px;
  float: left;
}

.free_title h2 {
  color: #515151;
  line-height: 1.5em;
  padding-top: 20px;
  margin-bottom: 20px;
}


/* -------- form ---------- */

#form {
  margin-top: 30px;
}

#form .half {
  width: 50%; 
  float: left;
}

#form .top-spacer {
  padding-top :30px;
}
#form .full {
  width: 100%; 
  float: left;
}

#form label {
  display: block;
  font-weight: bold;
  padding-bottom: 5px;
}

#form .message {
  display: block;
  clear: left;
  padding-top: 30px;
}

.formError {
  color: red;
}

input.half_text {
  border: 3px solid #ccc;
  width: 85%;
  font-size: 16px;
  padding: 10px;
}

input.full_text {
  border: 3px solid #ccc;
  width: 93%;
  font-size: 16px;
  padding: 10px;
}
textarea {
  width: 95%;
  border: 3px solid #ccc;
  height: 100px;
  padding: 5px;
  font-size: 1.25em;
}

#send_button {
  margin-top: 20px;
  margin-bottom: 30px;
  font-size: 14px;
}

#login_choices td {
  padding: 5px 0px;
}

a#demo_login_button {
  width: 250px;
  height: 63px;
  margin: auto;
  background-image: url(../images/doorway/demo_login_button.png);
  display: block;
  overflow: hidden;
  background-position: top left;
  background-repeat: no-repeat;
}

a#demo_login_button:hover {
  background-image: url(../images/doorway/demo_login_button_hover.png);
}

a#client_login_button {
  width: 250px;
  height: 63px;
  margin: auto;
  background-image: url(../images/doorway/client_login_button.png);
  display: block;
  overflow: hidden;
  background-position: top left;
  background-repeat: no-repeat;
}

a#client_login_button:hover {
  background-image: url(../images/doorway/client_login_button_hover.png);
}

/* product */

#product_nav {
  border-bottom: 1px solid #ccc;
  padding-top: 10px;
  padding-bottom: 5px;
}

#product_nav li.title {
  float: left;
  font-weight: bold;
  font-size: 16px;
}

#product_nav a:link, #product_nav a:hover, #product_nav a:visited {
  text-decoration: none;
  font-weight: normal;
}

#product_nav li.option {
  float: right;
  margin-right: 15px;
  color: #777;
}

#product_nav li.active {
  font-weight: bold;
  color: #000;
}

#primary.product {
  margin-top: 20px;
  padding-bottom: 0px;
}

#prod_left {
  width: 470px;
  float: left;
}
#prod_left p {
  font-size: 15px;
  line-height: 1.5em;
}

#prod_right {
  width: 400px;
  float: right;
}

h1.product {
  width: 100%; 
  text-align: center;
  font-size: 33px;
  margin-bottom: 30px;
  margin-top: 30px;
  min-width: 900px;
}

h2.product {
  font-weight: bold;
  padding-bottom: 10px;
  padding-top: 15px;
}

h3.product {
  font-size: 17px;
  padding-bottom: 20px;
  padding-top: 10px;
}

#secondary.product_bottom {
  background: url(../images/doorway/product_second_bg.png) top center no-repeat;
}

#secondary h1 {
  color: gray;
}

#prod_second_left, #prod_second_right {
  width: 400px;
  float: left;
  padding: 30px;
}

#prod_second_left {
  border-right: 1px solid #c8c7c7;
  padding-left: 0px;
}

#prod_second_right {
  border-left: 1px solid #fff;
  padding-right: 0px;
  padding-left: 50px;
}

.value_half {
  width: 420px;
  float: left;
  margin-right: 15px;
  margin-left: 15px;
  height: 130px;
}

.value_half h4 {
  font-size: 15px;
  padding-bottom: 5px;
}

.value_half_reseller {
  width: 378px;
  float: left;
  margin-right: 15px;
  margin-left: 15px;
  padding: 7px 0 0 42px;
}

.value_half_reseller.esp {
  background: url(/images/doorway/icon_esp.png) no-repeat top left;
}

.value_half_reseller.research {
  background: url(/images/doorway/icon_research.png) no-repeat top left;
}

.value_half_reseller.media {
  background: url(/images/doorway/icon_media.png) no-repeat top left;
}

.value_half_reseller.service {
  background: url(/images/doorway/icon_service.png) no-repeat top left;
}

.value_half_reseller h4 {
  font-size: 15px;
  padding-bottom: 5px;
}

.value_full {
  float: left;
  margin-right: 15px;
  margin-left: 15px;
  height: 130px;
}

.value_full h4 {
  font-size: 15px;
  padding-bottom: 5px;
}

#prod_analytics {
  background: url(../images/doorway/prod_analytics_bg.png) top right no-repeat;
  padding-right: 470px;
  padding-top: 35px;
  height: 260px;
  padding-left: 15px;
}

#prod_analytics p {
  font-size: 15px;
  padding-top: 10px;
}

#prod_analytics h3 {
  font-size: 1.3em;
}

#errorExplanation {
  margin-top: 0px;
  padding-top: 0px;
}
 
#errorExplanation h2, #errorExplanation h1, .flash p {
  margin-bottom: 0px;
  padding-bottom: 0px;
  margin-top: 0px;
  padding-top: 0px;
}

h1 {
  color: #000;
}

/* SMB */
h1.smb {
  text-align: center;
  font-size: 33px;
  margin-bottom: 5px;
  margin-top: 30px;
  min-width: 900px;
}

h2.smb {
  font-size: 24px;
  color: gray;
  padding-bottom: 0px;
}

#smb_left {
  width: 900px;
  float: left;
}
#smb_left p {
  font-size: 15px;
  line-height: 1.5em;
}

#smb_left p.footnote {
  font-size: 12px;
  font-weight: bold;
  color: #000000;
}

#smb_right {
  width: 400px;
  float: right;
  text-align: center;
}

.smb_price_box {
  width: 265px;
  text-align: center;
  padding-bottom: 20px;
}

.smb_price_box.left {
  float: left;
}

.smb_price_box.right {
  float: left;
}

.smb_price_box h1 {
  text-align: center;
}

.smb_price_box h2 {
  font-size: 20px;
  text-align: center;
  color: black;
}

.smb_price_box h3 {
  font-size: 14px;
  font-weight: normal;
  text-align: center;
  color: gray;
  border-bottom: 1px solid #eeeef9;
  margin-bottom: 5px;
}

.smb_price_box li {
  font-size: 14px;

}

.blackbox_top {
  background: url(/images/doorway/blackbox-top.png) no-repeat 50% top !important;  
}

.blackbox_bg {
  background: url(/images/doorway/blackbox-tile.png) repeat-y 50% top !important;
}

.blackbox_bottom {
  height: 28px;
  background: url(/images/doorway/blackbox-bottom.png) no-repeat 50% bottom  !important;  
}

.blackbox_bg * {
  color: white;
}
.blackbox_bg input {
  background: #222;
  border: 1px solid #555;
}

h2.email {
  padding-top: 8px;
}
h2.email a {
  color: #aaa;
  font-weight: normal;
}