/* Browser Styles 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,
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-weight: inherit;
    font-style: inherit;	
    font-family: inherit;
    vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
    outline: 0;
}
body {
    font-size: 62.5%; /* 62.5% of the default browser size, 16px, equals 10px, using 10px as the base-font size eases the use of setting font sizes in em, so that setting a 12px size would be 1.2em or a 20px size would equal 2em */
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1;
    color: #707070;
    background: #ececec;
}
ol, ul {
    list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
    border-collapse: separate;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
}
blockquote, q {
    quotes: "" "";
}
/*==========================================================*/

/* Default Site Styles */
body { background: #ececec; text-align: center; }

a:link {}
a:visited { }
a:hover { color: #707070; }

strong { font-weight: bold; }
#logo a { background: transparent url(/files/images/logo.png) 0 0 no-repeat; display: block; height: 110px; width: 760px; text-indent: -9000px; }
h1 { color: #002763; font-size: 2.4em; font-weight: normal; line-height: normal; letter-spacing: -.25px; margin-bottom: 6px; }
.home h1 { font-size: 2.3em; line-height: 28px; letter-spacing: normal; margin-bottom: 16px; }
h2 { font-size: 1.8em; font-weight: bold; margin-bottom: 5px; padding-top: 15px; }
h3 { font-size: 1.6em; font-weight: bold; margin-bottom: 5px; padding-top: 15px; }
li h2 { padding-top: 0px; }

p { font: 1.3em/1.8em Arial; }



/* Structural Layout */
/*#tableless { margin: 0 auto; }*/
#container { background: #f3f3f3 url(/files/images/bg.png) 0 0 repeat-x; }
.wrapper { background: #f3f3f3; width: 760px; margin: 0 auto; text-align: left; }

#banner { /*display: block;*/ height: 141px; width: 760px;}
    #banner div.inner {}
        .home, .about, .services, .projects, .clients, .contact { display: block; }
        
        /*  Tabbed Navigation  */
        #bannerNavigation { background: url(/files/images/nav.png) 0 -30px no-repeat; height:31px; width:760px; }
        #bannerNavigation ul { background: url(/files/images/nav.png) 0 -30px no-repeat; display: block; height: 30px; width: 760px; margin-bottom: 1px; }
        #bannerNavigation li, #bannerNavigation li a { display:block; height:30px; }
        #bannerNavigation li { display: inline; float:left; } /* Setting the display property twice, once as "block" with "!important" and once as "inline", is a fix for IE browsers version 6 and earlier */
        #bannerNavigation li a { display:block; text-indent:-9000px; }		
        
        #bannerNavigation #homeNav { width:80px; margin-left: 18px; }
        #bannerNavigation #aboutNav  { width:90px; margin-left: 39px; }
        #bannerNavigation #servicesNav { width:90px; margin-left: 40px; }
        #bannerNavigation #projectsNav { width:90px; margin-left: 34px; }
        #bannerNavigation #clientsNav { width:90px; margin-left: 33px; }
        #bannerNavigation #contactNav { width:90px; margin-left: 40px; }
        
        .home #bannerNavigation #homeNav  a, .home #bannerNavigation #homeNav  a:hover { background:url(/files/images/nav.png) -18px 0 no-repeat; width:80px; }
        .about #bannerNavigation #aboutNav a, .about #bannerNavigation #aboutNav a:hover { background:url(/files/images/nav.png) -137px 0 no-repeat; width:90px; }
        .services #bannerNavigation #servicesNav a, .services #bannerNavigation #servicesNav a:hover { background:url(/files/images/nav.png) -267px 0 no-repeat; width:90px; }
        .projects #bannerNavigation #projectsNav a, .projects #bannerNavigation #projectsNav a:hover { background:url(/files/images/nav.png) -391px 0 no-repeat; width:90px; }
        .clients #bannerNavigation #clientsNav a, .clients #bannerNavigation #clientsNav a:hover { background:url(/files/images/nav.png) -514px 0 no-repeat; width:90px; }
        .contact #bannerNavigation #contactNav a, .contact #bannerNavigation #contactNav a:hover { background:url(/files/images/nav.png) -644px 0 no-repeat; width:90px; }
        
        #bannerNavigation #homeNav  a:hover { background:url(/files/images/nav.png) -18px 0px no-repeat; width:80px; }
        #bannerNavigation #aboutNav a:hover { background:url(/files/images/nav.png) -137px 0px no-repeat; width:90px; }
        #bannerNavigation #servicesNav a:hover { background:url(/files/images/nav.png) -267px 0px no-repeat; width:90px; }
        #bannerNavigation #projectsNav a:hover { background:url(/files/images/nav.png) -391px 0px no-repeat; width:90px; }
        #bannerNavigation #clientsNav a:hover { background:url(/files/images/nav.png) -514px 0px no-repeat; width:90px; }
        #bannerNavigation #contactNav a:hover { background:url(/files/images/nav.png) -644px 0px no-repeat; width:90px; }
        
.mastHead { background: url(/images/mastHead.jpg) 0 0 no-repeat; display: block; height: 132px; width: 760px; margin: 0 0 23px 0; }
.mastHead_text { visibility: hidden; }



#main { width: 760px; margin: 0 auto; }
    #main div.inner {}
    #main h1, #main p, #main ul { width: 720px; padding-right: 20px; padding-left: 20px; }
    /*#main h2, #main h3 { padding-right: 20px; padding-left: 20px; }*/
        #maincontent { padding-bottom: 29px; position: relative; }
        #maincontent li strong { font-weight: bold; }
        /*#maincontent ul { margin-left: 15px; }*/
        #maincontent ul li { line-height: 2.5em; list-style-type: none; margin: 0 0 0 25px; padding-top: 0; }
        
        .home #main h2, .home #main h3, .staff #main h2, .staff #main h3, .projects #main h2, .projects #main h3 { padding-right: 20px; padding-left: 20px; }
        .about #maincontent h1 { width: 200px; }
        .about #maincontent ul { margin-left: 20px; padding: 0; }
        .about #maincontent ul li { margin-left: 0px; }
        .about #maincontent p.aboutCM { border-bottom: 1px dashed #7f7f7f; margin-bottom: 22px; padding-bottom: 23px; }
        .about #maincontent div#additionalServices { color: #003471; }
        .about #maincontent div#additionalServices p { font-weight: bold; margin: 0 20px 8px; padding: 0 0; text-transform: uppercase; }
        .about #maincontent div#additionalServices li.fLeft { display: inline; float: left; margin-right: 90px; } 
        .about #maincontent div#additionalServices li.fLeft ul { width: auto; margin-left: 0px; padding: 0; } 
        .about #maincontent div#additionalServices li.fLeft li { background: url(/files/images/rightArrow.gif) 0 8px no-repeat; padding-left: 10px; } 
        .about #maincontent div#additionalServices li.fLeft li a { color: #003471; font-size: 1.3em; line-height: 1em; text-decoration: underline; }
        .about #maincontent div#additionalServices li.end { margin-right: 0px; }
        .about #maincontent div#additionalServices p.clear  { border-bottom: 0; height: auto; margin: 0 20px; padding: 20px 0 0; }
        .about #maincontent div#additionalServices p.clear a { color: #003471; font-weight: normal; text-decoration: underline; text-transform: none; }
        
        .staff #main h3, .staff #main ul { width: auto; }
        .staff #main h3.jobTitle { padding-top: 0px; padding-left: 0px; font-weight: normal; text-transform: uppercase; }
        .staff #main ul { font-size: 1.3em; margin: 0 0 0 15px; padding: 0; }
        .staff #experience { width: 720px; }
        .staff #experience h3 { width: 100%; }
        .staff #experience ul { width: 100%; }
        .staff #membershipLicense, .staff #education { margin-top: 20px; }
        .staff #membershipLicense { display: inline; float: left; width: 350px; margin-right: 20px; }
        .staff #education { float: left; width: 345px; }
        
        
        .services #maincontent ul li { font-size:1.3em; line-height:1.5em; list-style-type: none;  margin-bottom: 10px; margin-left: 0px; padding-top: 5px; }
        .services #maincontent ul li h2 { display: inline; font-size:1.4em; padding: 0 3px 0 0; }
        .services #maincontent p { display: none; }
        
        .projects #maincontent ul li, .clients #maincontent ul li { font-size: 1.3em; line-height: 1.7em; }
        .projects #maincontent div.projectList { float: left; width: 455px;}
        .projects #maincontent div.projectImages { display: inline; float: right; padding-top: 20px; text-align: center; width: 300px;}
        .projects #maincontent div.projectImages .projectPhoto { margin-bottom: 30px; }
        .projects #maincontent div.projectImages .projectPhoto img { /*display: block;*/ }
        .projects #maincontent div.projectImages .projectPhoto p { text-align: center; width: auto; }
        
        
        .clients #maincontent h1 { float: right; width: 440px; text-align: left; }
        .clients #maincontent h2 { font-size: 1.6em; }
        .clients #maincontent p { width: auto; }
        .clients #left { float: left; width: 280px; text-align: center;; }
        .clients #right { float: right; width: 440px; text-align: left; }
        
            .clients #leftcontent img { display: block; margin: 0 auto; }
            .clients #leftcontent p { color: #000; line-height: 1.3em; padding: 5px 0 32px; }
            .clients #rightcontent h2, .clients #rightcontent ul  { margin-right: 0; padding-right: 0px; }

            /*#developersOwners { float: left; width: 220px; }
            #rightCol { float: left; width: 200px; }*/

            .developersOwners { float: left; width: 220px; }
            .rightCol { float: left; width: 200px; }      
        
        .contactInfo { float: left; width: 250px !important; width: 240px; }
        #maincontent .contactInfo p { width: 100%; width: inherit; }
        #contactform { float: right; width: 435px; text-align: left; border-left: 2px dotted #707070; padding-left: 35px;  }
        #contactform .formfield { margin-bottom: 10px; }
        #contactform .col1 { font-size: 1.2em; font-weight: bold; padding-bottom: 3px; }
        #contactform input { background: #e3e3e3 url(/Images/inputBg.gif) 0 0 repeat-x; color: #707070; font-size: 12px; padding: 2px 4px; border: 2px solid #d0d0d0; height: 17px; width: 180px; }
        #maincontent #contactform .col2 textarea { background: #e3e3e3 url(/Images/inputBg.gif) 0 0 repeat-x; border: 2px solid #d0d0d0; color: #707070; font-size: 12px; line-height: 16px; padding: 2px 4px; height: 80px; width: 380px; }
        #contactform input.submitbutton { background: url(/Images/submitButton.gif) 0 0 no-repeat; height: 24px; width:80px; border: 0px; font-weight: bold; }
        #contactform input:hover { border: 2px solid #0054a6; }
        #maincontent #contactform .col2 textarea:hover { border: 2px solid #0054a6; }
        #contactform input:focus { background: #e3e3e3 none; border: 2px solid #003471; color: #101010; }
        #maincontent #contactform .col2 textarea:focus { background: #e3e3e3 none; border: 2px solid #003471; color: #101010; }
        
        p.clientName { font-size: 1.5em; }
        
        
.footerContainer { background: #ececec; border-top: 1px solid #e2e2e2; color: #707070; width: 100%; }
    #footer  { width:760px; margin: 0 auto; padding: 11px; font: 1em/1.8em Arial; text-align: center; }
    
    
    

/* ==================== Global Classes/Elements ==================== */
.lgt_gray_border_bot, #main .lgt_gray_border_bot { border-bottom: 1px solid #bfccdb; margin-right: 20px; margin-left: 20px; padding-right: 0px; padding-bottom: 2px; padding-left: 0px; }
.clear { clear:both; height:1px; display: block !important; display: inline; }

#maincontent .bookmarks { display: block; width: 716px; /*height: 80px;*/ background: #dfdfdf; border: 2px solid #d5d5d5; margin-left:20px; }
#maincontent .bookmarks ul { float: left; width: 338px; margin: 0px; padding: 4px 10px 6px; }
#maincontent .bookmarks ul li { background: url(/files/images/rightArrow.gif) 0 7px no-repeat; font-size: 1.1em; line-height: 1.8em; list-style: none; margin: 0; padding: 0 0 0 12px; }
#maincontent .bookmarks ul li a { color: #003471; font-size: 1em; line-height: 1em; text-decoration: underline; }
#maincontent .bookmarks ul li a:hover { color: #707070; }

a#print { background:url(/files/images/print.gif) no-repeat; display: block; position: absolute; right: 0px; top: 0; font-size:11px; color:#00f;  padding: 4px 0px 8px 29px; }



.cB:after, .projects #maincontent:after {
    content: ".";
    height: 0;
    visibility: hidden;
    display: block;
    clear: both;
    }
    .cL:after {
    content: ".";
    height: 0;
    visibility: hidden;
    display: block;
    clear: left;
    }
    .cB, .cL , .projects #maincontent {
    display: inline-block;
    }
    /* Holly Hack Targets IE Win only \*/
    * html .cB, * html .cL, * html .projects #maincontent{height: 1%;}
    .cB, .cL, .projects #maincontent {display: block;}
    /* End Holly Hack */
