/* Clearfix
------------------------------------------------------------ */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* IE7 still a ******* */
*+html .clearfix:after {
    display: inline-block;
    display: block;
}

/* trigger hasLayout in <=IE6 \*/
* html .clearfix {
       height: 1%;
}
/* end trigger */

/* Reset
------------------------------------------------------------ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
/* remember to define focus styles! */
:focus {outline: 0;}
/* remember to highlight inserts somehow! */
ins {text-decoration: none;}
del {text-decoration: line-through;}
/* tables still need 'cellspacing="0"' in the markup */
table {border-collapse: collapse; border-spacing: 0;}

body {
    margin: 0 auto;
    font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
    color: #000;
    position: relative;
    background-color: #acac9c;
}

#page_wrapper {
    padding: 20px 0 10px;
}

#page {
    width: 970px;
    background: url("../img/page_shadow_sides.jpg") repeat-y;
    margin: 0 auto;
    /*margin: 20px auto 10px auto;*/
}

#page_header {overflow: hidden; background: url("../img/page_shadow_top.jpg") no-repeat top; height: 5px;}
#page_footer {overflow: hidden; background: url("../img/page_shadow_bottom.jpg") no-repeat top; height: 5px;}

#container {
    margin: 0 auto;
    width: 960px;
}

/* Headers
------------------------------------------------------------ */
#header {
    height: 71px;
    background: #fff url("../img/sub_header_bg.gif") no-repeat 0 0;
    border-bottom: 1px solid #fff;
}

#header_home {
    height: 294px;
    margin: 1px 0 9px 0;
    background: url("../img/header_home_bg.jpg") no-repeat top;
}

h1 {float: left; width: 296px; height: 56px;}
h1 a {
    display: block;
    width: 314px;
    height: 56px;
    margin: 6px 0 0 10px;
    text-indent: -10000px;
    outline: none;
    background: transparent url("../img/logo.png") no-repeat 0 0;
}

/*.subpage_image {float: right;}

img#subpage_main_image_about, img#subpage_main_image_pricing, img#subpage_main_image_press {
    margin: 34px 0 2px 0;
}

img#subpage_main_image_exit {margin: 40px 0 2px;}
img#subpage_main_image_services {margin: 22px 0 2px;}
img#subpage_main_image_support {margin: 23px 0 2px;}
img#subpage_main_image_products {margin: 7px 0 2px;}
img#subpage_main_image_contact {margin: 12px 0 2px;}*/

/** html #header_home h2 {width: 288px;}*/
/* * html #header_home h2 {width: 284px;} USE WITH FLASH */

/* Navigation
------------------------------------------------------------ */
#nav_container {
    background: #000 url("../img/nav_border_bg.jpg") repeat-x;
    height: 42px;
    font-family: Lucida Grande, Arial;
}

#nav_container ul#nav {list-style: none;}
#nav_container ul#nav li {float: left; position: relative;}

#nav_container a.main {
    display: block;
    padding: 8px 0px 22px 8px;
    width: 151px;
    border-right: 1px #fff solid;
    color: #eee;
    text-decoration: none;
    text-transform: uppercase;
    margin: 0px;
    font-size: 10px;
}

#nav_container a.main:hover {
    color: #fff;
    background: #fff url("../img/nav_bg_rollover.jpg") repeat-x top;
}

#nav_container li.last a.main {width: 152px; border-right: 0;}

/* Sub Header
------------------------------------------------------------ */
#sub_header {
    height: 112px;
    background: transparent url("../img/sub_nav_bg.gif") no-repeat 0 0;
    margin-bottom: 22px;
    padding: 10px;
}

#sub_header h2 {
    margin-bottom: 10px;
}

#sub_header p {
    font-size: 14px;
    margin: 10px 20px 0 20px;
    line-height: 18px;
}

/* Sub Navigation
------------------------------------------------------------ */
#sub_nav {
    margin-top: 10px;
    font-size: 12px;
}
#sub_nav li {
    margin-bottom: 8px;
}
#sub_nav li.last {
    margin-bottom: 0;
}
#sub_nav a {
    color: #acacac;
    padding: 10px;
    text-decoration: none;
}
#sub_nav a:hover {
    color: #313131;
}
#sub_nav a.selected {
    color: #fff;
}
#sub_nav a span {
    padding: 4px 6px 4px 20px;
    background: transparent url("../img/sub_nav_bullets.gif") no-repeat 6px 7px;
}
#sub_nav a.selected span {
    color: #fff;
    font-weight: bold;
    background-color: #a4a1d6;
    background-position: 6px -43px;
}

/* Content
------------------------------------------------------------ */
#content_wrapper {margin: 0 22px;}

#content_wrapper p {font-size: 12px;}

/* Body
------------------------------------------------------------ */
#body {
    float: left;
    width: 600px;
    margin-bottom: 20px;
    padding-right: 12px;
    border-right: 1px solid #c5c6c0;
}
#body .col, #body .col_center {
    float: left;
    width: 186px;
    text-align: center;
}
#body .col_center {
    margin: 0 20px;
}
.col_50 {
    float: left;
    width: 50%;
}
/* FAQs */
#faqs {
    font-size: 12px;
    color: #313131;
    margin-left: 34px;
    list-style-type: decimal;
}
#faqs li {
    margin-bottom: 20px;
}
/* Sidebar
------------------------------------------------------------ */
#sidebar {
    float: right;
    width: 290px;
    padding-top: 14px;
}
#sidebar p {
    font-size: 12px;
    margin-top: 10px;
    padding-right: 4px;
}

/* GOLD BUTTONS */
.gold_button {
    display: block;
    width: 184px;
    height: 56px;
    margin: 24px auto;
    text-indent: -100000px;
    outline: none;
    background: transparent url("../img/gold_buttons.png") no-repeat;
}
#free_quote {margin: 24px auto; background-position: 0 0;}
#free_quote:hover {background-position: 0 -56px;}
#white_paper {background-position: -552px 0;}
#white_paper:hover {background-position: -552px -56px;}
#stories {background-position: -368px 0;}
#stories:hover {background-position: -368px -56px;}
#callback {background-position: -184px 0;}
#callback:hover {background-position: -184px -56px;}

/* Footer
------------------------------------------------------------ */
#footer {
    clear: both;
    margin: 1px;
    height: 53px;
    background: url("../img/footer_bg.jpg") repeat-x;
    text-align: right;
    font-size: 12px;
    font-family: Trebuchet MS, Helvetica Neue, Arial;
}

#footer p {padding: 22px 19px 0 0; color: #666;}

#footer a {color: #666; text-decoration: none;}
#footer a:hover {color: #666; text-decoration: underline;}

#keywords {
    color: #000;
    font-size: 10px;
    padding-bottom: 10px;
    text-align: center;
}

#keywords a {color: #313131;}
#keywords a:hover {text-decoration: underline;}

/* Features
------------------------------------------------------------ */
#header #features {
    clear: left;
    margin-top: 40px;
    padding-top: 30px;
    height: 100px;
}
#header #features h2 {
    margin-left: 20px;
    font-size: 10pt;
}
#header #features p {
    margin: 10px 0 0 40px;
    font-style: italic;
    font-size: 12px;
    line-height: 18px;
}
#header_home #features {
    clear: left;
    float: left;
    margin-top: 38px;
    width: 308px;
}
#header_home #features h2 {
    font-size: 10pt;
    padding-left: 16px;
}
#header_home #features ul {
    margin-left: 42px;
}
.link_list {
    list-style-type: disc;
    margin: 10px 20px;
    font-size: 12px;
}
.sitemap {
   font-size: 9pt;
   margin-left: 20px;
   list-style-type: disc;
}
.link_list li, .sitemap li {
    margin-bottom: 10px;
}
.checkmark {
    margin: 10px 0 20px 10px;
    font-size: 12px;
}
.checkmark li {
    margin-bottom: 10px;
    padding-left: 22px;
    background: transparent url("../img/bullet_checkmark.gif") no-repeat 0 0;
}
#header_home .link_list {
    margin-left: 20px;
}
#free_quote_container {
    position: relative;
    float: right;
    width: 218px;
    height: 88px;
    margin: 78px 54px 0 0;
    background: transparent url("../img/free_quote_bg.png") no-repeat 0 0;
}
#free_quote_container p {
    position: relative;
    width: 230px;
    margin-top: -32px;
    font-size: 12px;
}
* html #free_quote_container {margin: 134px 21px 0 0;}
*+ html #free_quote_container {margin: 134px 54px 0 0;}

/* Lightbox
------------------------------------------------------------ */
.lightbox .trigger {display: none;}
#overlay {
    position: absolute;
    z-index: 999;
    top: 0; 
    left: 0;
    height: 500px;
    width: 100%;
    background: #ccc;
    opacity: 0; /* REQUIRED */
}
#dialog {
    position: absolute;
    z-index: 1000;
    background-color: #fff;
    width: 500px;
    padding: 10px;
    opacity: 0; /* REQUIRED */
    background: #fff url("../img/dialog_bg.gif") no-repeat 0 0;
    border: 2px solid #a4a1d6;
}
#dialog .close {
    display: block;
    position: absolute;
    top: 4px;
    right: 4px;
    width: 13px;
    height: 13px;
    font-size: 1px; /* IE6 hack */
    text-indent: -10000000px;
    outline: none;
    cursor: pointer;
    background: transparent url("../img/dialog_exit.gif") no-repeat 0 0;
}
#dialog .close:hover {background-position: 0 -13px;}

/* Forms
------------------------------------------------------------ */
form#contact {
    margin: 20px 0;
    width: 650px;
}
form#contact p.radio_question {
    margin-bottom: 0;
}
.question {
    clear: left;
    margin: 16px 0;
}
.col label {
    display: block;
    width: 100px;
    float: left;
    margin-top: 4px;
}
.txtbox, .txtarea {
    padding: 2px;
    font-size: 12px;
    border: 1px solid #999;
}
.txtbox {
    width: 200px;
    background: #fefefe url("../img/form_txtbox_bg.png") repeat-x 0 0;
}
.txtarea {
    display: block;
    margin: 4px 0;
    width: 400px;
    height: 75px;
    font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
    background: #fefefe url("../img/form_txtarea_bg.png") repeat-x 0 0;
}
span.req {
    font-weight: bold;
    color: red;
}
.btn_submit {
    height: 36px;
    padding: 0 6px;
    color: #605ca8;
    font-size: 20px;
    background: #eab72a url("../img/form_btn_submit_bg.png") repeat-x 0 0;
    border: 1px solid #eab72a;
}
.btn_submit:focus {
    border: 0 !important;
}
.btn_link {
    padding: 2px 6px;
    font-size: 14px;
    color: #313131;
    text-decoration: underline;
    background: transparent;
    border: 0;
}
.errors {
    color: #cc0000;
    font-size: 14px;
}
.errors li {
    margin: 4px 0;
}
label.error {
    margin-left: 100px;
    width: 100%;
    color: #cc0000;
}
* html label.error {
    width: 180px;
    margin-left: 50px;
}
input.error {
    border: 1px solid #cc0000;
}

/* Typography
------------------------------------------------------------ */
h2 {
    font-size: 16px;
    color: #313131;
    margin-bottom: 10px;
}
h3 {
    margin: 2px 0 0 0;
    font-size: 11pt;
    color: #333;
}
p {
    margin: 12px 0;
    font-size: 12px;
    color: #333;
    line-height: 14px;
}
label   {font-size: 12px;}
a       {color: #00358c;}
a:hover {color: #000;}
strong.name {font-style: italic;}

/* Misc
------------------------------------------------------------ */
.wrapper {position: relative;}
a.next {
    float: right;
    margin: 10px 10px 0 0;
    *padding: 1px;
}
span.more_info {
    text-align: right;
    text-transform: uppercase;
    display: block;
    margin: 10px 0;
    padding: 6px 18px 6px 0;
    font-size: 12px;
    background: transparent url("../img/next_arrow.gif") no-repeat right 5px;
    border-top: 1px #000 dotted;
    border-bottom: 1px #000 dotted;
}
.img_popup {
    display: none;
    position: absolute;
    z-index: 10000 !important;
    top: -140px;
}
.col_medium {
    margin: 0 auto;
    width: 94%;
}