/** 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;}

body {
    background: url('../images/body.png') top left repeat;
    padding-top: 80px;
    font-size: 12px;
}

strong {
    font-weight: bold;
}

.clearleft {
    clear: left;
}

.clearright {
    clear: right;
}

.clearboth {
    clear: both;
}

.wrapper {
    margin: 0 auto;
    padding: 0 20px;
    min-width: 920px;
    max-width: 1560px;
    position: relative;
}

header {
    height: 90px;
    background: url('../images/header.png') top left repeat-x;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}

header .wrapper {
    height: 90px;
}

header h1 {
    position: absolute;
    color: #fff;
    bottom:15px;
    left:20px;
}

header nav {
    position: absolute;
    bottom:17px;
    right:260px;
    list-style: none;
}

header nav li {
    float: right;
}

header nav li a {
    float:right;
    display: block;
    padding:5px 10px;
    background: #5f7ea9;
    margin: 0 0 0 5px;
    text-decoration: none;
    color: #fff;
}

header #demo {
    width: 238px;
    height: 68px;
    display: block;
    background: url('../images/demo.png') top left no-repeat;
    text-indent: -9999px;
    position: absolute;
    top: 8px;
    right: 11px;
}

#header_shadow {
    background: url('../images/header_shadow.png') top left repeat-x;
    height: 9px;
    position: absolute;
    top: 80px;
    left: 0;
    width: 100%;
    display: none;
}

#logo {
    position: absolute;
    left: 20px;
    top: 14px;
}

#location_select {
    position: absolute;
    top:0px;
    height: 36px;
    width: 280px;
    background: #222;
    right:260px;
    text-align: right;
}

#location_list_toggle {
    position: absolute;
    top:7px;
    left: 7px;
    cursor: pointer;
}

#telephonenum {
    color: #fff;
    display: block;
    font-family: 'Calibri';
    font-size: 28px;
    margin: 0px 10px 0 0;
}

#location_list {
    position: absolute;
    width: 100px;
    background: #383838;
    top: 29px;
    left: 7px;
    list-style: none;
    padding: 5px;
    display: none;
}

#location_list li {
    padding: 5px 0;
    clear: both;
}

#location_list li a {
    color: #fff;
    display: block;
    padding: 4px 5px;
    text-align: left;
    text-decoration: none;
}

#location_list li a img {
    margin: 0 10px 0 0;
    float: left;
}

#content {
    background: url('../images/content.png') top left repeat;
    padding: 0 20px 20px 20px;
    font-size: 14px;
}

#content .wrapper {
    background: #fff;
    padding: 20px;
    -moz-box-shadow: 0px 5px 10px #1e2028;
    -webkit-box-shadow: 0px 5px 10px #1e2028;
    box-shadow: 0px 5px 10px #1e2028;
}

.slider #content {
    padding: 20px;
}

.slider #content .wrapper {

}

#side_col {
    width: 200px;
    float: left;
}

#content .side_nav {
    list-style: none;
    margin: 0;
}

#content .side_nav li {
    margin: 5px 0;
}

#content .side_nav li a {
    text-decoration: none;
    font-size: 14px;
    color: #333;
    display: block;
    padding: 8px;
    border-radius: 5px;
}

#content .side_nav li a:hover {
    background: #eaeaea;
    color: #000;
}

#content .side_nav li.currentpage a {
    background: #252525 url('../images/arrow.png') 182px 14px no-repeat;
    color: #fff;
}

#main_col {
    margin:0 0 0 220px;
}

#content h1 {
    font-size: 34px;
    font-family: 'Calibri';
    font-weight: 400;
    margin-bottom: 20px;
}

#content .breadcrumb {
    margin: 0 0 -5px 0;
    font-size: 10px;
    font-family: 'Calibri';
    color: #999;
}

#content .breadcrumb a {
    color: #999;
    text-decoration: none;
}

#content .breadcrumb a:hover {
    color: #222;
}

#content a {
    color: #314565;
}

#content h2 {
    font-size: 24px;
    font-family: 'Calibri';
    font-weight: 400;
    margin: 20px 0 10px 0;
}

#content h2 em {
    display: block;
    font-size: 12px;
    font-style: italic;
}

#content h3 {
    font-size: 20px;
    font-family: 'Calibri';
    font-weight: 400;
    clear: left;
    margin: 20px 0 10px 0;
}

#content p {
    color: #333;
    margin: 10px 0;
    line-height: 1.5;
}

#content ul {
    color: #333;
    margin: 10px 20px;
    line-height: 1.5;
}

#content ul li {
    margin: 8px 0;
}

#content blockquote {
    background: #eaeaea;
    margin: 10px 0;
    padding: 10px 10px 10px 50px;
    position: relative;
}

#content blockquote img {
    float: left;
    margin: 10px 10px 10px 0;
}

#content blockquote p {
    margin: 0 0 10px 0;
}

#content blockquote:before {
    display: block;
    content: "\201C";
    font-size: 80px;
    position: absolute;
    left: 10px;
    top: 0px;
    color: #7a7a7a;
}

#content blockquote:after {
    display: block;
    content: "\202C";
    font-size: 80px;
    position: absolute;
    right: 10px;
    bottom: -60px;
    color: #7a7a7a;
}

.diagram {
    float: right;
    margin: 0 0 20px 20px;
}

#slider {
    height: 260px;
    white-space:
}

#slider .wrapper {
    height: 240px;
    width: 100%;
    padding: 10px 0;
}

#verticaltable {
    width: 100%;
}

#verticaltable td {
    padding: 0 10px;
    width: 33%;
}

.vertical {
    width: 32%;
    float: left;
    margin-left: 2%;
}

.vertical:first-of-type {
    margin-left: 0;
}



#content .vertical h2, #verticaltable td h2 {
    text-align: left;
    margin: 20px auto 10px auto;
    font-size: 24px;
    font-family: 'Calibri';
    font-weight: 400;
    width: 294px;
}

#content .vertical h2 img, #verticaltable td h2 img {
    float: left;
    margin: -20px 10px 10px 0;
}

#content .vertical .button, #verticaltable td .button {
    text-transform: none;
}

#content .vertical p {
    margin: 10px 3%;
    color: #333;
    clear: left;
    font-size: 14px;
    min-height: 150px;
}

#content .vertical a {
    clear: both;
}

#content .pricing {
    float: left;
    background: #eaeaea;
    border-radius: 5px;
}

#content .pricingx3 {
    margin-left: 2%;
    width: 32%;
}

#content .pricingx4 {
    margin-left: 1%;
    width: 24%;
}

#content .pricing:first-of-type {
    margin-left: 0;
}

#content .pricing h2 {
    text-align: center;
    padding: 10px 0;
    margin: 0;
    border-radius: 5px 5px 0 0;
}

#content .pricing .price {
    font-family: 'Calibri';
    text-align: center;
    font-size: 16px;
    margin: 0;
    padding-bottom: 10px;
}

#content .pricing .price em {
    font-size: 30px;
    margin-left: 3px;
}

#content .pricing_basic h2, #content .pricing_basic .price {
    background: #dee6f1;
}

#content .pricing_intermediate h2, #content .pricing_intermediate .price {
    background: #D1DCEB;
}

#content .pricing_advanced h2, #content .pricing_advanced .price {
    background: #c0d0e6;
}

#content .pricing ul {
    list-style: none;
    margin: 0;
}

#content .pricing ul li {
    text-align: center;
    margin: 0;
    padding: 5px 0;
}

#content .pricing ul li.even {
    background: #efefef;
}

#content .pricing ul li span.strike {
    text-decoration: line-through;
    color: #ccc;
}

#content .pricing ul li.even span.strike {
    text-decoration: line-through;
    color: #cdcdcd;
}

#content .pricing .button {
    margin: 10px;
}

.large_icon {
    float: right;
    margin: 0 0 20px 20px;
}

.clear {
    clear: both;
}

footer {
    background: url('../images/footer.png') top left repeat-x;
    min-height: 100px;
    padding: 20px 0;
}

footer .col {
    float: left;
    margin-left: 2%;
    min-height: 200px;
}

#footer_links {
    width: 35%;
    margin-left: 0;
}

#footer_links ul {
    list-style: none;
    float: left;
    margin-right: 40px;
}

#footer_links ul:last-of-type {
    margin-right: 0px;
}

#footer_links ul li {
    padding: 5px 0;
}

#footer_links a {
    color: #ccc;
    font-weight: bold;
    text-decoration: none;
}

#footer_links a:hover {
    color: #fff;
}

#footer_testimonials {
    width: 40%;
}

#testimonials {
    background: #000;
    padding: 5px;
    color: #fff;
    opacity: 0.8;
}

#footer_social {
    width: 20%;
}

#social_links {
    list-style: none;
    margin-top: 0px;
}

#social_links li a {
    color: #ccc;
    text-decoration: none;
    padding: 9px 0 0 0;
    display: block;
    margin: 10px 0;
    clear: left;
    overflow: hidden;
}

#social_links li a img {
    margin:-9px 10px 0 0;
    float: left;
}


#copyright {
    clear: both;
    font-size: 10px;
    text-align: center;
    color:#444;
    overflow: hidden;
    padding: 20px 0 10px 0;
}

.button {
    font-family: 'Calibri';
    color: #ffffff!important;
    font-size: 18px;
    text-transform: uppercase;
    display: block;
    text-align: center;
    padding: 10px 0;
    margin: 0 auto;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-shadow: 1px 1px 3px #666666;
    background: #387034;
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#579553), to(#387034));
    background: -moz-linear-gradient(top, #579553, #387034);
}

input.button {
    border: none;
    margin: 10px 0px;
    display: inline;
    width: auto;
    padding: 5px 10px;
    cursor: pointer;
}

.button:hover {
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#92c790), to(#52944d));
    background: -moz-linear-gradient(top, #92c790, #52944d)
}

.newline {
    padding: 5px 0;
    position: relative;
}

.newline label {
    float: left;
    width: 120px;
    text-align: right;
    padding: 8px 10px 0 0;
}

.newline label em {
    color: #364C71;
}

.newline .textbox {
    border-radius: 5px;
    padding: 5px;
    border: 1px solid #ccc;
    width: 200px;
}

.newline select {
    border-radius: 5px;
    padding: 4px 5px;
    border: 1px solid #ccc;
    width: 212px;
}

.newline textarea {
    border-radius: 5px;
    padding: 5px;
    border: 1px solid #ccc;
    width: 400px;
    height: 120px;
}

#captcha {
    position: relative;
    width: 430px;
    height: 50px;
}

#captchaHelp {
    position: absolute;
    top:0;
    right:0;
    z-index: 1;
}

#captchaImage {
    position: absolute;
    top:5px;
    right:195px;
    z-index: 2;
}

#captchaInput {
    position: absolute;
    top:5px;
    right:5px;
    z-index: 2;
    width: 100px;
    height: 50px;
    border: none;
    padding: 0px;
    text-align: center;
    font-size: 28px;
}

#phone_numbers dt {

}

#phone_numbers dd {
    font-size: 24px;
    margin: 5px 0 10px 0;
    font-family: 'Calibri';
}


#content .small_print {
    font-size: 11px;
    font-style: italic;
    color: #888;
    clear: both;
}

.hide_list {
    margin: 20px 0 0 0;
}

.hide_list dt {
    font-size: 18px;
    font-family: 'Calibri';
    padding: 10px 0;
    cursor: pointer;
    border-top: 1px solid #ddd;
}

.hide_list dd {
    margin: 5px 0 10px 0;
}

#content .hide_list dd p {
    margin: 0px;
}

.hide_list dd h4 {
    color: #222;
    margin: 10px 0;
    font-weight: bold;
}

#error {
    display: none;
}

.sme_graph {
    float: left;
    margin-bottom: 20px;
}

div.error {
    background: #fbe3e4;
    color: #8a1f11;
    border: 2px solid #fbc2c4;
    padding: 10px;
}

label.error {
    background: #fbe3e4;
    color: #8a1f11;
    position: absolute;
    left: 350px;
    padding: 5px 10px;
    top: 4px;
    width: 200px;
    border: 2px solid #fbc2c4;
    text-align: left;
}

#captcha label.error {
    left: 438px;
    top: 15px;
}


/*** MENU ***/
.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;
font-size: 13px;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
right:           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:12px;
position:absolute;
right:20px;
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 0 0 5px;
-moz-border-radius: 5px 5px 0 0;
-webkit-border-radius: 5px 5px 0 0;
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;
border-radius: 0 0 5px 5px;
}

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

.sf-menu li li a:hover {
background:     #222;
-moz-border-radius: 5px ;
-webkit-border-radius: 5px ;
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;
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*/
}


/*
 * jQuery Nivo Slider v3.1
 * http://nivo.dev7studios.com
 *
 * Copyright 2012, Dev7studios
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */

/* The Nivo Slider styles */
.nivoSlider {
	position:relative;
	width:940px;
	height:auto;
        margin: 0 auto;
}
.nivoSlider img {
	position:absolute;
	top:0px;
	left:0px;
	max-width: none;
}
.nivo-main-image {
	display: block !important;
	position: relative !important;
	width: 100% !important;
}

/* If an image is wrapped in a link */
.nivoSlider a.nivo-imageLink {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	border:0;
	padding:0;
	margin:0;
	z-index:6;
	display:none;
}
/* The slices and boxes in the Slider */
.nivo-slice {
	display:block;
	position:absolute;
	z-index:5;
	height:100%;
	top:0;
}
.nivo-box {
	display:block;
	position:absolute;
	z-index:5;
	overflow:hidden;
}
.nivo-box img { display:block; }

/* Caption styles */
.nivo-caption {
	position:absolute;
	left:80px;
	top:40px;
	color:#222;
	width:450px;
	z-index:8;
	overflow: hidden;
	display: none;

}

.nivo-caption h2 {
    font-size: 24px;
    margin: 0 0 5px 0;
}

.nivo-caption p {
    font-size: 14px;
	margin:5px 0;
}
.nivo-caption a {
	display:block !important;
        padding: 8px;
        margin: 15px 0 0 0;
        background: #387034;
        background: -webkit-gradient(linear, 0 0, 0 100%, from(#579553), to(#387034));
        background: -moz-linear-gradient(top, #579553, #387034);
        width: 100px;
        text-align: center;
        text-decoration: none;
        border-radius: 3px;
        color: #fff;
}
.nivo-html-caption {
    display:none;
}
/* Direction nav styles (e.g. Next & Prev) */
.nivo-directionNav a {
	position:absolute;
	top:95px;
	z-index:9;
	cursor:pointer;
        height: 60px;
        width: 40px;
        text-indent: -9999px;
}
.nivo-prevNav {
	left:-10px;
        background: url('../images/slider_left.png') top left no-repeat;
}

.nivo-prevNav:hover {
        background: url('../images/slider_left.png') top right no-repeat;
}

.nivo-nextNav {
	right:-10px;
        background: url('../images/slider_right.png') top left no-repeat;
}

.nivo-nextNav:hover {
        background: url('../images/slider_right.png') top right no-repeat;
}

/* Control nav styles (e.g. 1,2,3...) */
.nivo-controlNav {
	text-align:center;
        margin-left: -65px;
        bottom: 20px;
        left: 50%;
        position: absolute;
        text-align: center;
        z-index: 99;
}
.nivo-controlNav a {
        background: url('../images/slider_button.png') bottom left no-repeat;
        border: 0 none;
        display: inline-block;
        height: 22px;
        margin: 0 2px;
        text-indent: -9999px;
        width: 22px;
        cursor: pointer;
}
.nivo-controlNav a.active {
        background: url('../images/slider_button.png') top left no-repeat;
}


.ui-tooltip {
	padding: 8px;
	position: absolute;
	z-index: 9999;
	max-width: 300px;
	-webkit-box-shadow: 0 0 5px #aaa;
	box-shadow: 0 0 5px #aaa;
        background: #314769;
        color: #fff;
        border-radius: 5px;
}