/** RESET BROWSER DEFAULTS **/
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, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:Arial, Verdana, Helvetica, sans-serif;vertical-align:baseline;}

html { min-height: 100%; margin-bottom: 1px; }

html, body {
height: 100%;
}

body {
background:#fff url(../images/body.png) top left repeat-x;
}

#wrapper {
width:980px;
position:relative;
min-height: 100%;
height: auto !important;
height: 100%;
margin: 0 auto -70px auto;
}

h1 {
position:absolute;
top:77px;
z-index:10;
left:10px;
color:#ccc;
font-size:80%;
}

#header {
height:110px;
position:relative;
z-index:1;
}

#header #logo {
margin:10px 0 0 0;
display:block;
float:left;
}

#content {
background:#fff url(../images/content.png) top left no-repeat;
padding:0 10px;
/*overflow:hidden;*/
min-height:360px;
font-size:80%;
line-height:1.3;
}

#content a:link, #content a:visited {
color:#63789A;
}

#content a:hover, #content a:active {
color:#000;
}

#col1 {
float:left;
width:200px;
margin:10px;
}

#col2 {
float:left;
width:520px;
margin:10px 0;
}

#col3 {
float:right;
width:200px;
margin:10px;
}

#footer {
background:#1a1a1a url(../images/footer.png) top left repeat-x;
height: 71px;
overflow:hidden;
}

#footer_wrapper {
padding:16px 0 0 0;
position:relative;
z-index:400;
}

#footer_wrapper p {
font-size:70%;
text-align:center;
color:#888;
margin:14px 0 0 0;
}

ul#footer_nav {
margin: 0;
list-style-type: none;
color: #fff;
text-align: center;
}

ul#footer_nav li {
display: inline;
}

ul#footer_nav li a {
text-decoration: none;
padding: 10px 7px 10px 13px;
color:#888;
font-size:80%;
background: url(../images/nav_sep.png) top left no-repeat;
margin:0;
}

ul#footer_nav li a.first {
background:none;
}

ul#footer_nav li a:hover {
color: #fff;
}

.push {
clear:both;
height: 70px;
}

.clear {
clear:both;
}

.narrow_col .box {
background:#eaeaea url(../images/smallbox.png) bottom left no-repeat;
padding:5px;
margin-bottom:10px;
}

.narrow_col .box h3 {
background:#394E70 url(../images/smallboxhead.png) top left no-repeat;
color:#fff;
padding:5px 5px;
margin:-5px -5px 5px -5px;
font-size:110%;
}

#col2 .box {
background:#eaeaea url(../images/box.png) bottom left no-repeat;
padding:5px;
margin-bottom:10px;
}

#col2 .box h2 {
background:#394E70 url(../images/boxhead.png) top left no-repeat;
color:#fff;
padding:5px 5px;
margin:-5px -5px 5px -5px;
font-size:110%;
}

#col2 h2 {
font-size:130%;
border-bottom:1px solid #eaeaea;
padding:3px 5px;
margin:0 0 10px 0;
}

#col2 h3 {
margin:10px -5px;
background:#ddd;
color:#000;
padding:5px;
border-bottom:1px dotted #aaa;
border-top:1px dotted #aaa;
}

#col2 ul {
margin:10px 30px;
list-style:url(../images/bullet.png);
}

#col2 ul li{
margin:4px 0;
}

#col2  p {
margin:10px 0;
}

#col2  p em{
color:#63789A;
}

#col2  strong{
font-weight:bold;
color:#63789A;
}

#col2  p.small_print {
font-style:italic;
color:#63789A;
margin-top:30px;
}

.newline {
clear:both;
padding:2px;
border-bottom:1px dotted #ccc;
overflow:hidden;
}

.newline label {
width:60px;
float:left;
padding:6px 0 4px 0;
display:block;
}

#content .newline p {
margin:0;
padding:6px 0 0 0;
}

.newline input {
margin-top:2px;
}

.newline input.error {
margin:2px 0 0 0;
}

.newline label.error {
height:0;
margin:0;
padding:0;
}

div.error {
border:1px solid red;
padding:5px 5px 5px 50px;
margin:10px 0;
text-align:center;
display:none;
background:#ffe0e0 url(../images/warning.png) 5px 5px no-repeat;
min-height:36px;
}

.newline label em{
color:#63789A;
}

#col2 .newline label {
width:150px;
}

#col2 .newline label.wide {
width:260px;
}

#content .newline select.error, #content .newline input.error, #content .newline input.error:focus, #content .newline textarea.error, #content .newline textarea.error:focus {
border:1px solid #ce2e2e;
background:#ffefef;
}

#col2  .newline textarea {
width:350px;
border:1px solid #63789A;
padding:3px 2px;
display:block;
height:100px;
}

#col2  .newline select {
width:356px;
border:1px solid #63789A;
padding:2px;
}

.newline .textbox {
width:120px;
border:1px solid #63789A;
padding:3px 2px;
}

body #content .narrow_col .newline .textbox {
border:1px solid #63789A;
background:#fff;
}

body #content .narrow_col .newline .textbox:focus {
outline:none;
border:1px solid #222;
background:#fff;
}

#col2 .diagram {
margin:5px;
}

#col2 form {
margin:20px 0;
}

#col2  .newline .textbox {
width:350px;
}

.newline .textbox:focus, #col2 .newline textarea:focus {
outline:none;
border:1px solid #222;
}

#content input.formbutton {
width:120px;
margin:10px 35px 0 35px;
border:none;
height:24px;
color:#fff;
cursor:pointer;
background:url(../images/formbutton.png) top left no-repeat;
}

#content #col2 input.formbutton {
margin:10px 215px 0 215px;
}

#content a.formbutton {
width:120px;
display:block;
margin:10px 35px 0 35px;
border:none;
height:20px;
padding:4px 0 0 0;
text-align:center;
color:#fff;
text-decoration:none;
background:url(../images/formbutton.png) top left no-repeat;
}

#content input.formbuttonhov, #content a.formbuttonhov {
background:url(../images/formbutton.png) bottom left no-repeat;
color:#fff;
}

.paymentButton {
width:200px;
margin:10px 155px;
height:60px;
padding-right:60px;
border:none;
background:url(../images/paymentbutton.png) bottom left no-repeat;
cursor:pointer;
color:#fff;
}

.paymentButtonhov {
background:url(../images/paymentbutton.png) top left no-repeat;
}

.box blockquote {
background:url(../images/bqstart.png) top left no-repeat;
}

.box blockquote p span {
background:url(../images/bqend.png) bottom right no-repeat;
display:block;
font-size:86%;
padding:22px 10px;
}

.box blockquote p em {
font-size:80%;
display:block;
line-height:1.1;
text-align:right;
font-style:italic;
margin:5px 0 0 0;
}


#col2 .box blockquote {
padding:0;
overflow:hidden;
}

#col2 .box blockquote p span {
margin:15px 0 15px 30px;
padding:0 30px 15px 0;
text-indent:0px;
}

#col2 .box blockquote p em {
margin:-26px 30px 0 0;
}

#phone_nums dd {
font-size:130%;
font-weight:bold;
margin:5px 10px;

}

#call_times {
border-collapse:collapse;
border:1px solid #ccc;
width:100%;
margin:10px 0;
text-align:center;
}

#call_times thead th {
padding:3px;
color:#fff;
background:#222;
border:1px solid #ccc;
}

#call_times tbody th, #call_times thead td {
padding:3px;
color:#fff;
background:#63789A;
border:1px solid #ccc;
}

#call_times tr td {
border:1px solid #ccc;
padding:3px;
}



.hide_list {
margin:10px 0 0 0;
border-bottom:1px dotted #ccc;
}

.hide_list dt {
padding:8px 0;
color:#63789A;
cursor:pointer;
border-top:1px dotted #ccc;
}

.hide_list dt:hover {
color:#000;
}

.hide_list dd p {
margin:0;
padding:0 10px 10px 10px;
}

.hide_list dd h4 {
margin:0;
padding:0 10px;
color:#63789A;
text-decoration:underline;
}



#location_select {
position:absolute;
width:230px;
padding:0 10px;
top:0;
right:70px;
height:30px;
background:url(../images/location_select.png) top left no-repeat;
z-index:300;
}

#telephonenum {
display:block;
float:right;
width:130px;
text-align:center;
color:#fff;
font-weight:bold;
padding:5px 0 0 0;
margin-left:30px;
}

#location_list {
background:#d5d5d5;
display:none;
list-style:none;
position:absolute;
top:30px;
z-index:500;
left:30px;
padding:2px;
}

#location_list li a{
font-size:80%;
display:block;
color:#222;
text-decoration:none;
text-align:right;
padding:4px 5px;
}

#location_list li a img {
display:block;
float:right;
margin:0 0 0 10px;
}

#location_list li a:hover {
background:#222;
color:#fff;
}

#location_list_toggle {
display:block;
float:left;
margin:9px 0 0 22px;
}



/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
margin:         0;
padding:        0;
list-style:     none;
}
.sf-menu {
line-height:    1.0;
}
.sf-menu ul {
position:       absolute;
top:            -999em;
width:          160px; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
width:          100%;
}
.sf-menu li:hover {
visibility:     inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
float:          left;
position:       relative;
}
.sf-menu a {
display:        block;
position:       relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
left:           0;
top:            2.4em; /* match top ul list item height */
z-index:        99;


}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
top:            -999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
left:           160px; /* match ul width */
top:            0;

}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
top:            -999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
left:           160px; /* match ul width */
top:            0;
}

.sf-menu {
float:right;
font-size:80%;
position:absolute;
right:10px;
bottom:10px;
}
.sf-menu a {
padding:        0.7em  0.75em;
text-decoration:none;
}
.sf-menu a, .sf-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
color:#eaeaea;
}
.sf-menu li {
background:#63789a url(../images/nav_item.png) top left repeat-x;
margin:0 2px 0 0;
-moz-border-radius: 5px 5px 0 0;
-webkit-border-radius: 5px 5px 0 0;

}

.sf-menu li ul {
padding:10px 4px 4px 4px;
background:     #7f94b5;
-moz-border-radius: 0 0 5px 5px;
-webkit-border-radius: 0 0 5px 5px;
}

.sf-menu li li {
background:     #7f94b5;
-moz-border-radius: 0;
-webkit-border-radius: 0;
}

.sf-menu li li a:hover {
background:     #222;
-moz-border-radius: 5px ;
-webkit-border-radius: 5px ;
}

.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
background:     #7f94b5;
outline:        0;
color:#fff;

}

.sf-menu a:hover {
-moz-border-radius: 5px 5px 0 0;
-webkit-border-radius: 5px 5px 0 0;
}

/*** arrows **/
.sf-menu a.sf-with-ul {
padding-right:  2.25em;
min-width:      1px; /* trigger IE7 hasLayout so spans position accurately */
}
.sf-sub-indicator {
position:       absolute;
display:        block;
right:          .75em;
top:            1.05em; /* IE6 only */
width:          10px;
height:         10px;
text-indent:    -999em;
overflow:       hidden;
background:     url('../images/nav_arrow.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
a > .sf-sub-indicator {  /* give all except IE6 the correct values */
top:            .8em;
background-position: 0 -100px; /* use translucent arrow for modern browsers*/
}
/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
background-position: -10px -100px; /* arrow hovers for modern browsers*/
}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator { background-position:  -10px 0; }
.sf-menu ul a > .sf-sub-indicator { background-position:  0 0; }
/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
background-position: -10px 0; /* arrow hovers for modern browsers*/
}

#side_nav {
list-style:none;
margin:5px 0;
}

#side_nav li a {
text-decoration:none;
color:#333;
padding:4px 5px;
display:block;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

#side_nav li a:hover {
background:#222;
color:#fff;
}

#demobox {
    margin:10px 0;
    position:relative;
}

#demogirl {
    position:absolute;
    top:-40px;
    left:-65px;
}

.compare {
border-collapse:collapse;
width:100%;
margin:10px 0;
}

.compare tbody tr td {
text-align:center;
border:1px solid #ccc;

width:80px;
vertical-align:bottom;
}

.compare thead tr th {
border:1px solid #ccc;
background:#222;
color:#fff;
padding:3px;
}

.compare tbody tr th {
text-align:left;
border:1px solid #ccc;

padding:5px 3px 0 3px;
}

.compare tbody tr:hover {
background:#ccc;
}

.compare tbody tr.price th {
padding:7px 3px 0 3px;
background:#222;
color:#fff;
}

.compare tbody tr.price td {
background:#222;
color:#fff;
padding:5px 0;

font-size:130%;
}

.screenshot div {
width:260px;

}

.screenshot div p {
font-size:80%;
}

.screenshot div h4 {
border-bottom:1px dotted #222;
padding:3px 0;
font-weight:bold;
}

.screenshot div h4 em {
color:#63789A;
}

a.screen {
float:right;
display:block;
border:10px solid #ddd;
margin:5px;
}

a.screen:hover {
border:10px solid #63789a;
}

.top_page {
color:#ddd;
text-decoration:none;
font-size:80%;
text-transform:uppercase;
display:block;
text-align:right;
}

#revenueCalculator {
padding:5px;
background:#ddd;
-moz-border-radius: 0 0 5px 5px;
-webkit-border-radius: 0 0 5px 5px;
color:#222;
}

#revenueCalculator h4 {
font-size:130%;
font-weight:bold;
background:#222;
color:#fff;
padding:6px 10px 4px 10px;
margin:-5px;
-moz-border-radius:5px 5px 0 0;
-webkit-border-radius:5px 5px 0 0;
}

#content #col2 #revenueCalculator  input.formbutton {
margin:10px 10px 10px 370px;
}

#revenueCalculator table {
border-collapse:collapse;
margin:10px 0;
width:100%;
}

#revenueCalculator table tr td {
padding:4px;
border:1px solid #ccc;
}

#revenueCalculator table tr th {
padding:4px;
color:#000;
background:#ccc;
text-align:left;
font-weight:bold;
}

.figure {
display:block;
text-align:center;
font-size:80%;
}

#to_the_top {
position:fixed;
bottom:5px;
left:5px;
display:block;
height:30px;
width:20px;
z-index:9999;
outline:none;
}
.terms {
border-collapse:collapse;
width:100%;
}

.terms tr td {
padding:4px;
border:1px solid #ccc;
}

#revenue {
border-collapse:collapse;
}

#revenue tr td input{
width:60px;
border:none;
text-align:center;
background:none;
}

#revenue tbody tr th {
width:80px;
font-size:80%;
border:1px solid #ccc;
vertical-align:middle;
background:#ccc;
}

#revenue thead tr th {
border:1px solid #ccc;
font-size:80%;
padding:2px;
width:70px;
vertical-align:middle;
background:#ccc;

}

#revenue thead tr td {
border:none;
}

#revenue tbody tr td {
border:1px solid #ccc;
padding:2px;
vertical-align:middle;
text-align:center;
}

#revenue tbody tr:hover {
color:#fff;
background:#222;
}

#revenue tbody tr:hover input {
color:#fff;
}
#revenue tbody tr:hover th {
background:#63789a;
}

.payment {
float:right;
}

#captchaImage {
border:1px solid #63789A;
float:left;
}

#captchaHelp {
float:left;
margin:7px 9px 0 9px;
}

#captcha {
height:40px;
width:100px;
border:1px solid #63789A;
font-size:220%;
padding:10px 0 0 0;
float:right;
text-align:center;
color:#435B81;
}

#captcha:focus {
color:#000;
border:1px solid #222;
}

#homeFlash {
margin:-5px -5px 0 -5px;
height:200px;
}

.alt {
display:none;
}

.pre {
display:block;
margin:10px;
background:#ddd;
border-left:4px solid #506C95;
padding:5px;
font-family:courier;
}

.pre * {
  font-family:courier;
}

#customers {
    align:center;
}

#customers img {
    display:block;
    margin:2px auto;
}

#message {
background:#fff;
border:1px solid #63789A;
float:right;
padding:5px;
width:344px;
}

#pageflip {
    position: absolute;
    top:0;
    right:0;
    z-index:9999;
}
#pageflip img {
    width: 70px; height: 73px;
    z-index: 99;
    position: absolute;
    right: 0; top: 0;
    -ms-interpolation-mode: bicubic;
}
#pageflip .msg_block {
    width: 70px; height: 70px;
    position: absolute;
    z-index: 50;
    right: 0; top: 0;
    background: url(../images/deal.png) no-repeat right top;
    text-indent: -9999px;
}

.compare tbody tr.deal_price th {
padding:7px 3px 0 3px;
color:#fff;
background:#CC2522;
}

.compare tbody tr.deal_price td {
background:#CC2522;
color:#fff;
padding:5px 0;
font-size:130%;
}

