/* CSS Document */

/* Body and Universal Reset */

* {
    margin  : 0;
    padding : 0;
}

html {
    background : #fff;
}

body {
    background : #fff;
}

#container {
}

#popupWindowCaller {
    display : none;
}

.zero_opacity {
    opacity: 0;
}

.clear {
    clear  : both;
    height : 1px;
}

img {
    border : none;
}

::selection {
    background : #393e42;
    color      : #FFF;
}

::-moz-selection {
    background : #393E42;
    color      : #FFF;
}

/* Defaults */

.inner {
    padding : 10px;
}

.rounded {
    -moz-border-radius    : 4px;
    -webkit-border-radius : 4px;
    -o-border-radius      : 4px;
    -ms-border-radius     : 4px;
    border-radius         : 4px;
}

.transition {
    -moz-transition    : all linear 0.2s;
    -webkit-transition : all linear 0.2s;
    -o-transition      : all linear 0.2s;
    transition         : all linear 0.2s;
}

#content ul.noContent li:before, #content .noContent ul li:before {
    content : '';
}

#content ul.noContent li, #content .noContent ul li {
    text-indent : 0;
}

/* Typography */

/* Header */

#header {
    background: url(images/backgrounds/bg.png) repeat-x top left;
    height: 229px;
    border-bottom: 3px solid #4B1863;
}

#header a.logo {
    margin      : 17px 0px 15px 0px;
    padding     : 0px;
    text-indent : -9999px;
    height      : 98px;
    width       : 265px;
    display     : block;
    position    : relative;
    background  : url(images/backgrounds/proof.png) top left no-repeat;
}

#header a.logo:hover {
    opacity: 0.7;
}

.page_title {
    font-size: 75px;
    line-height: 105px;
    color       : #fff;
    font-weight : normal;
    text-transform: uppercase;
    height: 64px;
    margin: 33px 0 0 0;
    overflow: hidden;
}

.social_icons a {
    background-image: url(images/icons/social-icons.png);
    background-repeat: no-repeat;
    background-position: top left;
    width: 44px;
    height: 44px;
    display: block;
    text-indent: -9999px;
    float: left;
    margin: 17px 10px;
}

.social_icons a:hover { background-position: center left; }
.social_icons a:active { background-position: bottom left; }

.social_icons a.twitter {
    background-position: top center;
}
.social_icons a.twitter:hover { background-position: center center; }
.social_icons a.twitter:active { background-position: bottom center; }

/* Main Navigation */

#mainNav {
    height           : 213px;
    background-color : #fff;
    padding-top: 15px
}

#mainNav li {
    list-style : none;
    width: 100%;
    position   : relative;
}

#mainNav > li {
    margin : 0 0 0 0px;
}

#mainNav > li.first {
    margin-left : 0;
}

#mainNav li a {
    padding    : 8px 15px;
    color      : #000;
    display    : block;
    font-size: 15px;
    text-transform: uppercase;
    font-style: normal;
}

#mainNav li a em {
    font-style: normal;
}

    /* Navigation Icons */
    #mainNav li a span {
        background-image: url(images/icons/nav-icons.png);
        background-repeat: no-repeat;
        background-position: top left;
        width: 44px;
        height: 44px;
        display: block;
        text-indent: -9999px;
        float: left;
        margin: 0;
        left: -60px;
        position: absolute;
        top: -6px;
        -moz-transition: all linear 0.2s;
        -o-transition: all linear 0.2s;
        -webkit-transition: all linear 0.2s;
        transition: all linear 0.2s;

    }

    #mainNav li.homeIcon a span { background-position: top left; }
    #mainNav li.servicesIcon a span { background-position: top right;  left: auto; right: -60px;}
    #mainNav li.clientsIcon a span { background-position: top center; }

    #mainNav li.about-usIcon a span { background-position: center left; left: auto; right: -60px; }
    #mainNav li.blogIcon a span { background-position: center center; }
    #mainNav li.contactIcon a span { background-position: center right; left: auto; right: -60px; }

#mainNav > li > a {
    height : 16px;
}

/* Hover styles */
#mainNav li a:hover em, #mainNav li.current > a em {
    /* background : #4B1863;
    color      : #fff;*/
    border-bottom: 1px dashed #4B1863;
}

/*
#mainNav li a:hover span {
    -webkit-transform: rotate(20deg);
    -o-transform: rotate(20deg);
    -moz-transform: rotate(20deg);
    transform: rotate(20deg);
}

#mainNav li.clientsIcon a:hover span, #mainNav li.about-usIcon a:hover span, #mainNav li.contactIcon a:hover span {
    -webkit-transform: rotate(-20deg);
    -o-transform: rotate(-20deg);
    -moz-transform: rotate(-20deg);
    transform: rotate(-20deg);
}
*/

#mainNav ul {
    position : absolute;
    width    : 160px; /* left offset of submenus need to match (see below) */
    top      : -999px;
}

#mainNav ul li {
    width : 100%;
}

#mainNav li:hover {
    visibility : inherit; /* fixes IE7 'sticky bug' */
}

#mainNav li:hover ul, #mainNav li.sfHover ul {
    left    : 0;
    top     : 30px; /* match top ul list item height */
    z-index : 99;
}

#mainNav li:hover li ul, #mainNav li.sfHover li ul {
    top : -999em;
}

#mainNav li li:hover ul, #mainNav li li.sfHover ul {
    left : 160px; /* match ul width */
    top  : 0;
}

#mainNav li li:hover li ul, #mainNav li li.sfHover li ul {
    top : -999em;
}

#mainNav li li li:hover ul, #mainNav li li li.sfHover ul {
    left : 160px; /* match ul width */
    top  : 0;
}

#mainNav ul li a {
    margin : 1px 1px 0 0;
}

/* Mobile Navigation */

#navigation {
    position : relative;
    z-index  : 99;
}

#navigation select {
    -webkit-appearance : none;
    outline: none;
    height             : 38px !important;
    line-height        : 21px;
    position           : relative;
    width              : 100% !important;
    color              : #FFF;
    font-size          : 15px;
    font-weight        : bold;
    padding            : 6px 15px;
    border-radius      : 4px;
    border             : 1px solid #8A8A8A;
    box-shadow         : 1px 1px 2px #999;
    background         : #4B1863;
}

#navigation select option {
    background  : #fff;
    color       : #000;
    font-size   : 13px;
    font-weight : normal;
}

/* Home Buttons */

#content ul#homeNav {
    margin        : 0 0 15px;
    padding       : 7px;
    background    : #4B1863;
    border-radius : 8px;
}

#content #homeNav li {
    margin      : 0;
    padding     : 1px 0;
    text-align  : center;
    text-indent : 0;
    margin-left : 0 !important;
}

#content #homeNav li:before {
    content : '' !important;
}

#homeNav a {
    display          : block;
    background       : #4B1863;
    background-image : linear-gradient(bottom, rgb(93, 28, 131) 0%, rgb(112, 56, 142) 100%);
    background-image : -o-linear-gradient(bottom, rgb(93, 28, 131) 0%, rgb(112, 56, 142) 100%);
    background-image : -moz-linear-gradient(bottom, rgb(93, 28, 131) 0%, rgb(112, 56, 142) 100%);
    background-image : -webkit-linear-gradient(bottom, rgb(93, 28, 131) 0%, rgb(112, 56, 142) 100%);
    background-image : -ms-linear-gradient(bottom, rgb(93, 28, 131) 0%, rgb(112, 56, 142) 100%);
    background-image : -webkit-gradient(linear, left bottom, left top, color-stop(0, rgb(93, 28, 131)), color-stop(1, rgb(112, 56, 142)));
    padding          : 13px 15px;
    text-decoration  : none;
    margin           : 0;
    color            : #fff;
    font-weight      : bold;
    text-align       : center;
    text-transform   : uppercase;
    text-shadow      : -1px -1px 3px rgba(0, 0, 0, 0.2);
}

#homeNav a:active, #homeNav a:focus, #homeNav a:hover {
    box-shadow : inset -2px -2px 5px rgba(255, 255, 255, 0.08), inset 2px 2px 5px rgba(0, 0, 0, 0.5) !important;
    outline    : none !important;
}

#homeNav li:first-child a {
    border-top-left-radius  : 5px;
    border-top-right-radius : 5px;
}

#homeNav li:last-child a {
    border-bottom-left-radius  : 5px;
    border-bottom-right-radius : 5px;
}

/* Sidebar */

#sidebar {
}

/* Content */

#content {
	padding:30px 0;
}

#content p, #content table, #content ul, #content ol {
    margin : 0 0 18px 0;
}

#content ul, #content ol {
    margin-left : 18px;
}

/* Blog */

.displaying {
    text-align : center;
}

#content p.nextprevnav {
    display    : block;
    text-align : center;
    margin-top     : 18px;
}

.nextprevnav * {
	margin:0 5px;
}

.blogListingThumb {
    float : left;
}

.blogListingContainerWImage {
    margin-left : 150px;
    min-height  : 128px;
}

#content .blogListingContainer p {
    margin : 0 0 10px 0;
}

.blogListingContainer h2 a {
	color:#4D4D4D!important;
}

.blogDate {
    color : #ccc;
}

.blogAddThisTop {
    float : right;
}

/* Footer */

#footer {
    clear            : both;
    text-align       : left;
    background : #ffffff url(images/backgrounds/footer-shadow.png) repeat-x top left;
    padding: 25px 0 50px 0;
    font-size: 11px;
}

#footer li {
    display    : inline;
    list-style : none;
    margin     : 0 4px 0 0;
}

#footer, #footer a, #footer a:link, #footer a:visited {
    color: #878787;
}

#footer a:hover {
    color: #424242;
}

.get_started, .get_started:active {
    background: #C6C951;
    margin-top: 20px;
    max-width: 367px;
}

.get_started:hover {
    background: #9da045;
}

.footer_icon {
    font-size: 20px;
}

.footer_top {
    bottom: -10px;
    position: relative;
}

.byLine {
	white-space:nowrap;
}

.byLine span {
	color:#ED5C33;
    position: relative;
    display: inline-block;
    top: -5px;
    margin: 0 3px 0;
}

/* Sitemap */
#content ul.sitemap {
    list-style : none;
    margin     : 0px;
    padding    : 0px;
}

ul.sitemap li a {
    padding : 5px 0px 3px;
    display : block;
}

ul.sitemap a:hover {
    color : #000;
}

ul.sitemap li.sitemapHeading > a {
    font-size     : 16px;
    padding       : 10px 5px;
    margin        : 0px 0px 0px;
    border-bottom : 1px solid #dddddd;
    font-weight   : bold;
    display       : block;
}

ul.sitemap li.sitemapHeading > a:hover {
    background    : #eee;
    border-bottom : 1px solid #aaa;
}

/* Breadcrumbs */

#breadcrumbs {
    display : block;
    width   : 100%;
}

#content #breadcrumbs ul {
    list-style         : none;
    margin             : 0px 0px 15px;
    padding            : 7px 15px;
    background         : #ededed;
    display            : block;
    position           : relative;
    float              : left;
    width              : 95%;
    box-shadow         : inset 0px 3px 5px rgba(0, 0, 0, 0.1);
    -moz-border-radius : 5px; -webkit-border-radius : 5px; -o-border-radius : 5px; -ms-border-radius : 5px;
    border-radius      : 5px;
}

#content #breadcrumbs ul li {
    display : inline;
    padding : 0px 30px 0 0;
}

#content #breadcrumbs ul li a {
    padding : 0px 10px 0 0;
}

#content span.breadcrumbDivider {
    position    : absolute;
    color       : #FFFFFF;
    font-size   : 71px;
    line-height : 71px;
    top         : -25px;
    text-shadow : -1px 0px 0px #ccc;
    font-weight : normal;
}

#content #breadcrumbs ul li a.currentBreadcrumb {
    color       : #000;
    font-weight : bold;
}

/* Online Enquiry Form */

.onlineEnquiryTable td {
    padding-bottom : 5px;
}

.yourDetails {
    padding     : 7px 0 0 0;
    height      : 30px;
    font-weight : bold;
    font-size   : 13px;
}

.requiredFields {
    text-align : right!important;
    padding    : 4px 0 0 0;
    font-size  : 11px;
}

.required {
    text-align     : center;
    vertical-align : middle;
    padding-left   : 15px;
    padding-right  : 5px;
	color:#ff0000;
}

input, textarea, select {
    font-family : Arial, Helvetica, sans-serif;
    font-size   : 12px;
}

input[type="text"], input[type="password"], textarea {
    width                 : 90%;
    -webkit-box-shadow    : inset 1px 1px 1px rgba(0, 0, 0, 0.1);
    -moz-box-shadow       : inset 1px 1px 1px rgba(0, 0, 0, 0.1);
    box-shadow            : inset 1px 1px 1px rgba(0, 0, 0, 0.1);
    -webkit-border-radius : 2px;
    -moz-border-radius    : 2px;
    border-radius         : 2px;
    padding               : 10px;
    font-size: 14px;
    border                : 1px solid #BABABA;
    outline: none;
}

input[type="text"]:focus, input[type="password"]:focus, textarea:focus {
    border             : 1px solid #4B1863;
    -webkit-box-shadow : #4B1863 0 0 2px;
    -moz-box-shadow    : #4B1863 0 0 2px;
    box-shadow         : #4B1863 0 0 2px;
}

.onlineEnquiryTable .errorInput {
    background         : url(/images/icons/error.gif) no-repeat right 3px #fff;
    -webkit-box-shadow : #E59595 0 0 2px;
    -moz-box-shadow    : #E59595 0 0 2px;
    box-shadow         : #E59595 0 0 2px;
    border             : 1px solid #CC0000;
}

.imageVerification * {
	vertical-align:middle;
	margin:0 5px 0 0;
}

.imageVerification input {
	width:25%;
}

.submit {
    text-align : right;
    width      : 100%;
}

.submit a, .submit input[type="submit"], .submit button {
    float : right;
}

.errorText {
    color : #CC0000;
}

input.hintText {
    color : #999999;
}

table.invisibleTable tr:hover .mceLayout td {
	border-top:1px solid #ccc;
}

table.invisibleTable tr .mceLayout td table {
	margin:10px 0 5px!important;
}

/***** BUTTONS *****/

input[type="submit"], button, .button {
    padding               : 6px 24px !important;
    background            : url(/images/buttons/button.png) #793b8e top center repeat-x !important;
    display               : inline-block;
    font-size             : 12px;
    line-height           : normal !important;
    text-transform        : uppercase;
    -webkit-border-radius : 20px; -moz-border-radius : 20px; -o-border-radius : 20px; -ms-border-radius : 20px;
    border-radius         : 20px;
    color                 : #fff !important;
    text-shadow           : -1px -1px 0px rgba(0, 0, 0, 0.2);
    font-weight           : bold;
    letter-spacing        : 1px;
    cursor                : pointer;
    box-shadow            : 1px 1px 1px rgba(0, 0, 0, 0.2);
    border                : 1px solid #4B1863 !important;
}

input[type="submit"]:hover, button:hover, .button:hover {
    background-position : center center !important;
    color: #eee !important;
}

input[type="submit"]:active, button:active, .button:active {
    background-position : bottom center !important;
}

a.sml-btn {
    padding               : 3px 14px !important;
    font-size             : 11px;
    background: #D3D67B !important;
    border                : 1px solid #D3D67B !important;

}

/***** Error / Info / Caution Boxes *****/

.error_box, .info_box {
    margin       : 0 0 15px 0;
    padding      : 15px;
    border-width : 3px;
    border-style : solid;
    color        : #555555;
}

.error_box {
    border-color     : #C30000;
    background-color : #FFF2ED;
}

.info_box {
    border-color     : #D5F296;
    background-color : #F2FCDC;
}

#content .error_box ul {
    margin-bottom : 0;
}

.info_box i {
	margin:0 8px 0 0;
}

/***** Icons *****/

.small-icon {
	font-size:14px;
}

.medium-icon {
	font-size:22px;
	vertical-align: middle;
}

.large-icon {
	font-size:35px;
	vertical-align: middle;
}

/* Testimonials */
.featured_testimonial {
    background: url(images/backgrounds/sidebar-testimonials.jpg) no-repeat;
    width: 287px;
    height: 319px;
    padding: 20px 60px 20px 30px;
    color: #878787;
    font-size: 14px;
    font-style: italic;
    position: relative;
}

.testimonial_read {
    position: absolute;
    bottom: 69px;
    right: 50px;
    font-size: 14px;
    text-transform: uppercase;
}

.testimonial_image_wrap {
    margin-bottom: 20px;
}

.clients_testimonials a, .clients_testimonials div {
	display:block;
	line-height:170px;
	text-align:center;
	border: 4px solid #eee;
}

.clients_testimonials a:hover {
    border-color: #ccc;
}

.clients_testimonials img {
    margin: 0 5%;
    width: 90%;
}


/* Services Bubbles */
.services {
    background-image: url( images/backgrounds/circles.png );
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 200%;
    height: 238px;
    width: 180px;
    padding: 0 29px;
    text-align: center;
    font-size: 20px;
    text-transform: uppercase;
    color: #fff;
    display: block;
    vertical-align: middle;
    position: relative;
    float: left;
    margin: 0 10px 0 0;
    line-height: 25px;
    cursor: pointer;
    z-index: 2;
}

    a.services:hover {
        color: #fff;
    }

    .services .vertical_center {
        position: absolute;
        display: block;
        top: 40%;
        height: auto;
        width: 180px;
        z-index: 100;
    }

    .services_alt {
        background-position: top right;
    }

    .lt-ie8 .services .vertical_center {
        margin-left: -85px;
    }

    /* Popup */
    .service_popout {
        opacity: 0;
        background-image: url( images/backgrounds/circles.png );
        background-repeat: no-repeat;
        background-position: bottom left;
        background-size: 200%;
        position: absolute;
        left: 140px;
        top: 0;
        height: 238px;
        width: 138px;
        padding: 0 50px;
        text-transform: none;
        font-size: 14px;
        letter-spacing: 0;
        z-index: 50;
        line-height: 17px;
        display: none;
    }

        .services_alt .service_popout {
            background-position: bottom right;
        }

        .service_popout .vertical_center {
            width: 138px;
        }

        .lt-ie8 .service_popout .vertical_center {
            margin-left: -70px;
        }

.services_wrapper {
    margin-top: -85px;
}

    .services_center {
        z-index: 4;
    }

    .services_left {
        z-index: 6 !important;
    }

    .services_right {
        z-index: 1 !important;
    }
	
	.services_three_lines > .vertical_center {
		top: 35%;
	}

/* Home Banner */
.home_banner {
    height: 226px;
    overflow-y: hidden;
    display: block;
    float: left;
    margin: 0 0 30px;
    position: relative;
    width: 100%;
}

.home_banner img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}

.js .home_banner .animated_on_load {
    display: none;
}

.js .home_banner .drawGraph {
    height: 73px;
    width: 103px;
    z-index: 200;
    display: inline-block;
    position: absolute;
    top: 29px;
    left: 350px;
    background: #fff;
}

.js .home_banner .drawText,
.js .home_banner .drawText2,
.js .home_banner .drawText3 {
    height: 18px;
    width: 84px;
    z-index: 200;
    display: inline-block;
    position: absolute;
    top: 94px;
    left: 481px;
    background: #fff;
}

.js .home_banner .drawText2 {
    top: 115px;
}

.js .home_banner .drawText3 {
    top: 131px;
}


/* Classes Reserved for the TinyMCE Editor  */

.editor {
    width : 100%;
}

.mini_editor { }
