@import url("structure.css");

body{
    margin: 0;
    padding: 0;
    font: 11px/18px "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
    color:#666666;
    background:#ffffff url(../i/body-bg.gif) repeat-x;
}
body.home{
    background:#404040 url(../i/home-body-bg.gif) top repeat-x;
}
.clear-me{ clear:both; }
img{ border:0; }
div.post{ font-size: 13px; }

/*** Header Styles ***/

.mast-head div{
    position:absolute;
}
/*** Breadcrumb Styles ***/

.breadcrumb{
    background:#cdcdcd url(../i/breadcrumb-bg.gif) repeat-x;
    height: 40px;
    font-size: 12px;
    line-height: 40px;
    color: #999999;
    padding:0 0 0 43px;
    text-transform:uppercase;
}
.breadcrumb-separator{
    padding:5px 5px 5px 5px;
    height:10px;
    background:url(../i/breadcrumb-spacer.gif) no-repeat center center;
}
.breadcrumb a{
    font-weight:normal;
    color:#777;
}

/*** Text Styles ***/

a{
    color:#8cc63f;
    text-decoration:none;
    font-weight:normal;
}
a:hover{
    text-decoration:underline;
}
h1, h2{
    color:#000000;
    font-family:"Lucida Grande", Tahoma, Verdana, Arial, Helvetica, sans-serif;
    font-weight:bold;
}
h1{
    font-size:17px;
    margin:0 0 10px 0;
    text-transform:uppercase;
}
h2{
    font-size:15px;
    margin:0 0 5px 0;
}
h3{
    font-size:13px;
    margin:0 0 5px 0;
}
.req{
    font-size:15px;
    font-weight:bold;
    line-height:12px;
}
.home h1,
.home h2,
.home h3{
    font-size:17px;
    color:#ffffff;
    font-weight:bold;
    margin:0 0 20px 0;
    text-transform:uppercase;
}
.intro-text{
    font-size:13px;
    font-weight:bold;
}
p{
    margin:0 0 13px 0;
}

/*** Main navigation styles ***/

#main-navigation{
    width:994px;
    text-align:center;
    border-top:1px solid #333333;
    border-bottom:2px solid #ffffff;
    height:58px;
    background:#000000 url(../i/main-navigation-bg.gif) no-repeat top right;
}
#wrapper.home-wrapper #main-navigation{
    border-bottom:0;
}
#main-navigation ul{
    list-style: none;
    margin:0 0 0 0;
    padding:0 0 0 0;
    width:994px;
    height:58px;
}
#main-navigation li{
    display:inline;
    margin:0 0 0 0;
    padding:0 0 0 0;
}
#main-navigation a{
    margin:0 0 0 0;
    padding:0 13px 0 13px;
    color:#ffffff;
    text-decoration:none;
    font:18px/55px "Lucida Grande", Tahoma, Verdana, Arial, Helvetica, sans-serif;
    display:block;
    float:left;
    height:58px;
    font-weight:normal;
}
#main-navigation li:first-child a{
    padding-left:43px;
}
#main-navigation li:last-child a{
    float:right;
    padding-right:57px;
}
#main-navigation a:hover{
    color:#666666;
}
#main-navigation a.main-on{
    color:#99cc33;
    font-weight:bold;
}

/***  Sub navigation styles ***/

.sub-navigation-wrapper{
    background:url(../i/sub-nav-top.gif) top right no-repeat;
    padding:5px 0 0 0;
}
#sub-navigation{
    float:right;
}
#sub-navigation ul{
    width:245px;
    padding:0;
    margin:0;
    background:#f0f0f0 url(../i/sub-nav-bg.gif) top repeat-x;
    min-height:150px;
    height:auto !important;
    height:150px;
}
#sub-navigation li{
    display: block;
    width: 245px;
    margin:0;
    padding:0;
    list-style-type: none;
    position:relative;
}
#sub-navigation img{
    position:absolute;
    left:-12px;
    top:10px;
}
#sub-navigation a{
    display: block;
    width:185px;
    margin:0 0 0 0;
    padding:8px 30px 8px 30px;
    text-decoration:underline;
    font:12px/18px Verdana, Arial, Helvetica, sans-serif;
    color:#4e4e4e;
    text-transform:uppercase;
}
#sub-navigation a:hover{
    background:#999999;
    color:#ffffff;
    padding:8px 30px 8px 30px;
    border:0;
}
#sub-navigation .sub-on,
#sub-navigation .sub-on:hover{
    color:#ffffff;
    background:#000000 url(../i/sub-nav-on.gif) no-repeat;
    padding:6px 28px 6px 28px;
    border:2px solid #000000;
}
#sub-navigation li.first-link a{
    font-size:15px;
    font-weight:bold;
    color:#000000;
    padding-top:18px;
    padding-bottom:18px;
    text-decoration:none;
}
#sub-navigation li.first-link a:hover{
    color:#000000;
    padding-top:18px;
    padding-bottom:18px;
    border:0;
}
#sub-navigation li.first-link a:hover,
#sub-navigation li.first-link a.sub-on:hover {
    background: none;
    color:#000000;
}
#sub-navigation li.first-link a.sub-on {
    padding-top:18px;
    padding-bottom:18px;
    border: 0 none;
    background: none;
}
#sub-navigation li.depth-2 a{
    padding:8px 30px 8px 50px;
    width:165px;
    background:url(../i/sub-sub-arrow.gif) 31px 13px no-repeat;
}
#sub-navigation li.depth-2 a:hover,
#sub-navigation li.depth-2 a.sub-on:hover {
    padding:8px 30px 8px 50px;
    width:165px;
    color:#ffffff;
    background: #999 url(../i/sub-sub-arrow-on.gif) 31px 13px no-repeat;
}
#sub-navigation li.depth-2 a.sub-on{
    border:0;
    color:#000000;
}

/*** Image Styles ***/

img.cs-client-logo{
    border:0 0 10px 10px;
}

/*** News Styles ***/

.news-date{
    float:right;
    width:130px;
    height:96px;
    background:#484848;
    padding:34px 0 0 0;
    text-align:center;
    color:#ffffff;
    maegin:0 0 0 10px;
}
.news-date .day{
    font:48px/35px "Lucida Grande", Tahoma, Verdana, Arial, Helvetica, sans-serif;
    font-weight:bold;
    color:#999999;
    margin:0 0 6px 0;
}
.news-image{
    float:left;
    padding:10px 0 10px 10px;
}
.news-view-img{
    border:1px solid #717171;
    padding:4px 4px 4px 4px;
    margin:0;
}

/*** Contact form styles ***/

#contact-form {
    border:solid 0 #353a40;
    padding:10px 10px 10px 10px;
    margin:0;
    width:400px;
    float:right;
    background:#000000 url(../i/contact-form-top.gif) top left no-repeat;
}
.contact-details{
    float:left;
}
#contact-form label{
    clear:both;
    display:block;
    width:395px;
    float:left;
    font-weight:bold;
    color:#ffffff;
}
.form-error{
    color:#990000;
}
#contact-form input, 
#contact-form textarea{
    font:11px/17px Verdana, Arial, Helvetica, sans-serif;
    border:solid 1px #353a40;
    float:left;
    width:395px;
    line-height:20px;
}
#contact-form input{
    height:20px;
}
#contact-form textarea{
    height:240px;
}
#contact-form p{
    color:#ffffff;
}
#contact-form input.submit-button{
    width:105px;
    height:27px;
    background:url(../i/medium-button.gif) no-repeat;
    color:#ffffff;
    cursor:pointer;
    float:right;
    margin:5px 0 0 0;
}
.speaker-img{
    background:#ffffff;
}
#directions{
    height:500px;
    width:380px;
}

/*** Paginate styles  ***/

.pagination{
    height:33px;
    padding:10px 0 0 0;
    text-align:right;
}
.pagination span{
    display:block;
    float:left;
    padding:5px 7px 5px 7px;
}
.pagination span a{
    color:#ffffff;
    font-weight:normal;
}
.pagination span.page-on{
    background:#99cc33;
    color:#000000;
}

/*** Column Content Styles ***/

.three-column-content{
    width:30%;
    float:left;
    padding:10px 20px 10px 0;
}
.two-column-content{
    width:45%;
    float:left;
    padding:0 10px 0 0;
}

/*** Media Box Styles ***/

hr{
    background:#cccccc;
    color:#cccccc;
    border:0;
    padding:0;
    margin:15px 0 15px 0;
    height:1px;
}
.media-wrapper{
    background:#000000 url(../i/media-box-top.gif) top left no-repeat;
    width:614px;
    margin:14px 0 0 0;
    display: block;
}
.media-box{
    width:574px;
    padding:0 20px 0 20px;
}
.media-box-footer{
    background:#000000 url(../i/media-box-footer.gif) bottom left no-repeat;
    height:12px;
    width:614px;
    line-height:0;
    font-size:0;
}
.media-item{
    padding:0 0 0 0;
    background:#333333 url(../i/media-item-bg.gif) repeat-y top right;
    margin:12px 0 0 0;
    color:#cccccc;
    float:left;
}
.media-item h2 a,
.media-half-box h2 a{
    color:#ffffff;
    font-size:12px;
    font-weight: bold;
}
.media-item img{
    border:1px solid #717171;
    padding:4px;
    margin:0 10px 0 0;
}
.media-item-content{
    padding:10px 10px;
    width:294px;
    float:left;
}	
a.medium-button{
    display:block;
    width:91px;
    height:24px;
    padding:3px 0 0 14px;
    margin:5px 0 0 0;
    background:url(../i/medium-button.gif) no-repeat;
    float:left;
    color:#ffffff;
    font-size:9px;
    font-weight:bold;
}	
.media-half-box{
    width:260px;
    height:111px;
    float:left;
    background:red;
    margin:13px 0 0 0;
    padding:10px 10px 10px 10px;
    background:#333333;
    color:#cccccc;
}
.media-half-box.right{
    float:right;
}
.half-box-img{
    float:left;
    margin:0 10px 0 0;
}
.half-box-img img{
    padding:4px;
    border:1px solid #717171;
}

/*** Homepage Styles ***/

.service-box-wrapper {
    margin-top: 28px;
    border-left: 1px solid #000;
    border-right:1px solid #313131;
    height: 165px;
    width: 540px;
}
.service-box{
    width:224px;
    height:112px;
    border-right:1px solid #000000;
    border-left:1px solid #313131;
    padding:5px 19px 48px 25px;
    float:left;
    color:#ffffff;
}
.service-box.whats-new-home{
    height:160px;
    padding:5px 19px 0 25px;
}
.service-box h2{
    margin-bottom:13px;
}
.service-box ul{
    padding:0;
    margin:0;
    list-style:none;
}
.service-box li{
    padding:7px 0 7px 10px;
    margin:0;
    background:url(../i/bullet.gif) 0 14px no-repeat;
    border-bottom:1px solid #2a2a2a;
}
.service-box a{
    color:#ffffff;
    text-transform:uppercase;
    font-weight:normal;
}
.study-box{
    margin:0 0 0 0;
    padding:37px 0 0 25px;
    width:573px;
    height:288px;
    background:url(../i/study-box-bg.jpg) no-repeat;
    float:left;
    position:relative;
}
.study-intro{
    width:220px;
    color:#ffffff;
    margin:0 0 30px 0;
}
.study-client-logo{
    width:268px;
    height:125px;
    position:absolute;
    top:82px;
    left:270px;
    text-align:center;
}
.study-box a.medium-button{
    background:url(../i/medium-button-foh.gif) no-repeat;
}

/*** Column Two Content Styles ***/

.column-two-content-wrapper{
    background:url(../i/sub-nav-top.gif) top right no-repeat;
    width:245px;
    padding:5px 0 0 0;
    margin:0 0 0 13px;
}
.column-two-content{
    background:#f0f0f0 url(../i/sub-nav-bg.gif) top repeat-x;
    margin:0 0 0 0;
    padding:15px 15px 15px 15px;
    width:215px;
}
.column-two-img{
    width:205px;
    border:1px solid #bfbfbf;
    margin:0 0 15px 0;
    padding:4px;
}
.column-two-content h2{
    margin:0 0 15px 0;
    text-transform:none;
    font-size:16px;
}
.column-two-content p{
    margin:0 0 15px 0;
}
.column-two-content-lower{
    padding:15px 15px 15px 15px;
    width:215px;
    background:#f0f0f0 url(../i/sub-nav-footer.gif) bottom left no-repeat;
    margin:3px 0 0 0;
}
.casestudy-content,
.testimonial-content{
    border-bottom:1px solid #cccccc;
    padding:14px 0 14px 0;
}
.casestudy-content.last-box,
.testimonial-content.last-box{
    border-bottom:0;
}
.casestudy-content h2,
.testimonial-content h2{
    margin:0 0 15px 0;
    text-transform:none;
}
.casestudy-content h2,
.testimonial-content h2 a{
    color:#000000;
    font-size:17px;
    font-weight:normal;
}
.casestudy-content p,
.testimonial-content p{
    margin:0 0 15px 0;
    font-size:13px;
}
a.back-button{
    background:#000000 url(../i/back-arrow-button.gif);
    width:90px;
    height:23px;
    padding:4px 0 0 15px;
    display:block;
    color:#ffffff;
    font-size:10px;
    font-weight: bold;
}
a.see-the-results{
    background:#000000 url(../i/see-the-results-button.gif);
    width:110px;
    height:23px;
    padding:4px 15px 0 0;
    display:block;
    color:#ffffff;
    font-size:10px;
    text-align:right;
    float:right;
}
.testimonial-content p{
    font-size:14px;
    line-height:23px;
    color:#000000;
}
.quote-66{
    background:url(../i/66.gif) no-repeat;
    padding:0 10px 0 12px;
}
.quote-99{
    background:url(../i/99.gif) top right no-repeat;
    padding:0 10px 0 12px;
}
.testimonial-content{
    border-bottom:1px solid #cccccc;
    padding:18px 0 18px 0;
}

/*** Client Styles ***/

.client-box{
    width:260px;
    height:140px;
    float:left;
    background:#333333;
    margin:13px 0 0 0;
    padding:10px 10px 10px 10px;
}
.client-box.right-client{
    float:right;
}
.client-logo{
    width:250px;
    height:105px;
    border:1px solid #717171;
    padding:4px 4px 4px 4px;
}
.client-name{
    text-align:center;
    color:#ffffff;
    padding:10px 0 0 0;
}
.ns-gallery-img{
    width:250px;
    height:105px;
    border:1px solid #717171;
    padding:4px 4px 4px 4px;
    text-align:center;
}

/*** Home Testimonial Styles ***/

.home-testimonial{
    color:#cccccc;
    margin:30px 0 0 0;
    padding:16px 20px 16px 20px;
    width:273px;
    border:1px solid #555555;
}
.home-testimonial h2{
    font-weight:normal;
    margin:0 0 12px 0;
    font-size:14px;
}
.testifier{
    font-weight:bold;
}

/*** What is a web app styles ***/

.what-is-web-app{
    width:185px;
    padding:40px 20px 30px 40px;
    background:#f0f0f0 url(../i/web-app-bg.jpg) top left no-repeat;
    margin:2px 0 0 0;
    float:right;
    font:14px/18px Georgia, Times, Verdana, sans-serif;
    color:#0e3e59;
}
.what-is-web-app h2{
    font:26px/26px Georgia, Times, Verdana, sans-serif;
    font-weight:normal;
    color:#0e3e59;
}
.abv{
    border-top:1px solid #c4d0d7;
    border-bottom:1px solid #c4d0d7;
    padding:6px 0 6px 0;
    margin:8px 0 6px 0;
    font:21px/25px Georgia, Times, Verdana, sans-serif;
    font-style:italic;
}
.short-desc{
    border-bottom:1px solid #c4d0d7;
    padding:0 0 10px 0;
    margin:0 0 10px 0;
}
.what-is-web-app ul{
    margin:0;
    padding:0;
    list-style:none;
}
.what-is-web-app li{
    display:block;
    float:none;
    padding:0 0 0 13px;
    background:url(../i/round-bullet.gif) 2px center no-repeat;
}
.what-is-web-app-footer{
    background:url(../i/sub-nav-footer.gif) no-repeat;
    width:245px;
    height:5px;
    font-size:0;
    float:right;
}

/*** Page Testimonial Styles ***/

.page-testimonial{
    margin:15px 0 0 0;
}
.page-testimonial span{
    display:none;
}

/*** Footer Styles ***/

.footer-column ul{
    list-style:none;
    padding:0;
    margin:0;
}
.footer-column li{
    padding:0 0 0 9px;
    margin:0 0 4px 0;
    background:url(../i/footer-nav-arrow.gif) left center no-repeat;
}
.footer-column ul a{
    font-weight:normal;
}
.footer-column h2,
.home .footer-column h2{
    font-weight:bold;
    color:#ffffff;
    margin:0 0 10px 0;
}

/*** Google Map Styles ***/

a.directions-download{
    background:url(../i/pdf.jpg) left center no-repeat;
    padding:5px 0 5px 25px;
    margin:2px 0 0 0;
    display:block;
}

/*** Home What's new Styles ***/

.home-whats-new{
    padding:10px 0 0 10px;
    background:url(../i/bullet.gif) left 16px no-repeat;
    color:#999999;
}
.home-whats-new h3{
    margin:0;
    text-transform:none;
}
.home-whats-new h3 a{
    margin:0 0 0 0;
    padding:0;
    font-size:12px;
    color:#ffffff;
    font-weight: bold;
}
.whats-new-intro{
    float:left;
}
.whats-new-intro a{
    font-weight:normal;
}

/*** Key People Styles ***/

.key-person{
    padding:20px 0 20px 0;
    border-bottom:1px solid #cccccc;
}
.key-person.last{
    border-bottom:0;
}
.key-person img{
    float:left;
    padding:4px;
    border:1px solid #999999;
    margin:0 22px 0 0;
}
.key-person h2{
    margin:0 0 20px 0;
}
.key-person h3{
    margin:0 0 20px 0;
    color:#666666;
    font-weight:bold;
}
.key-person p{
    margin:0;
}

/*** Social Link Styles ***/

.social-links{ margin:17px 0 0 0; }
.social-links a:hover{ text-decoration:none; }
.twitter{ float:left; }
.linked-in{ float:right; }

/** Twitter Box **/

#tweets ul{
    list-style: none;
    padding: 0;
    margin: 0;
}
#tweets li{
    background: none;
    float: left;
    padding: 0;
    margin: 0;
}
#tweets span{
    width: 195px;
    float: left;
    clear: left;
}
.twitterStatus,
.twitterTime{
    text-transform: none;
}
#footer-blog li{
    background-position: 0 7px;
    margin-bottom: 10px;
}
#tweets li span.twitterStatus a{
    color: #99cc33;
    font-size: 11px;
}
#tweets li span.twitterStatus{
    font-size: 11px;
    margin-bottom: 5px;
}

.footer-column span.phone-number{
    width: 195px;
    float: left;
    clear: left;
    margin-bottom: 20px;
}

div.footer-column div.social-links{
    float: left; clear: left;
}

