html
{
    padding: 0;
    margin: 0;
    background: #FFF;
}

body
{
    text-align: center;
    font-size: 62.5%;
    font-family: Arial, Helvetica, sans-serif;
    background: #FFF;
    margin: 0;
    padding: 0;
}

#shell
{
    width: 95%;
    min-width: 880px;
    padding: 0;
    background: #E6E0BB url(../images/design/leftTile.jpg) top left repeat-y;
    margin: 2em auto;
    text-align: left;
}

#header
{
    background: #3F5902 url(../images/design/headerTop.jpg) top left repeat-x;
    padding: 0;
    margin: 0;
    height: 220px;
}

#header h2
{
    margin: 0;
    padding: 0;
    background: transparent url(../images/design/headerRight.jpg) top right no-repeat;
    height: 100%;
}

#header h2 a
{
    display: block;
    height: 100%;
    padding: 0;
    margin: 0;
    background: transparent url(../images/design/headerLeft.jpg) top left no-repeat;
    text-indent: -1000em;

}

#mainContent
{
    padding: 0 0 3em 0;
    margin: 0 370px 3em 60px;
    background: #F4F1E0 url(../images/design/headingRight.jpg) top right no-repeat;
    position: relative;
}

#main
{
    background: transparent url(../images/design/rightTile.jpg) top right repeat-y;
    padding: 2em 0 0 0;
}

#footer
{
    background: transparent url(../images/design/footerBottom.jpg) bottom right repeat-x;
    margin: 0;
    padding: 0;
    height: 117px;
}

#footer p.help
{
    margin: -13px 0 0 0;
    height: 97px;
    padding: 20px 0 0 0;
    background: transparent url(../images/design/footerRight.jpg) bottom right no-repeat;
    font-size: 2em;
    color: #fff;
    text-align: left;
}

#footer h2
{
    margin: 0 20px 0 0;
    height: 97px;
    padding: 20px 0 0 100px;
    background: transparent url(../images/design/footerLeft.jpg) bottom left no-repeat;
    font-size: 2em;
    color: #fff;
    text-align: left;
    float: left;
}

#footer .help a
{
    color: #fff;
    margin: 0;
    padding: 0;
}

#footer p.validation
{
    float: right;
    font-size: 1.3em;
    margin-top: -55px;
    margin-right: 75px;
    color: #030
}

#extra
{
    float: right;
    margin-right: 52px;
}

a#featured
{
    display: block;
    height: 198px;
    width: 271px;
    padding: 0;
    background: #00649F url(../images/design/featured.jpg) top left no-repeat;
    text-indent: -1000em;
}

a#services
{
    display: block;
    height: 215px;
    width: 271px;
    padding: 0;
    background: #00649F url(../images/design/services.jpg) top left no-repeat;
    text-indent: -1000em;
    margin-top: 2em;
}

a#contact, a#contactFirst
{
    display: block;
    height: 197px;
    width: 271px;
    padding: 0;
    background: #00649F url(../images/design/contact.jpg) top left no-repeat;
    text-indent: -1000em;
}

a#contact
{
    margin-top: 2em;
}

a#contactFirst
{
    margin-top: 0;
}

#extra a:focus, #header a:focus
{
    outline: 0;
}

#main:after, #mainContent:after, #extra:after, #mainNav:after, #mainNav ul:after
{
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

#mainContent p, #mainContent ul
{
    font-size: 1.7em;
    padding: 0.6em 1.5em;
    margin: 0;
    color: #030;
}

#mainContent ul
{
    padding: 0.6em 3em;
}

#mainContent .last
{
    margin-bottom: 4em;
}

p.lead
{
    font-weight: bold;
}

#mainNav
{
    background: #A4AA5D url(../images/design/navLeft.jpg) bottom left no-repeat;
    margin-left: 58px;
}

#mainNav ul
{
    display: block;
    list-style: none;
    margin: 0;
    padding: 0 65px 0 2em;
    background: transparent url(../images/design/navRight.jpg) bottom right no-repeat;
}

#mainNav li
{
    display: inline;
    list-style: none;
    margin: 0;
    padding: 0;
}

#mainNav a, #mainNav span
{
    display: block;
    float: left;
    width: auto;
    font-size: 2em;
    padding: 0 5.5% 0 0.5%;
    text-decoration: none;
    color: #fff;
    text-transform: capitalize;
    border-top: 0.5em solid #A4AA5D;
    border-bottom: 0.3em solid #A4AA5D;
}

#mainNav span
{
    background:  #3F5902;
    border-top: 0.5em solid #3F5902;
    border-bottom: 0.3em solid #eba625;
    color: #fff;
}

#mainNav a:hover, #mainNav a:focus, #mainNav a:active
{
    border-top: 0.5em solid #eba625;
    border-bottom: 0.3em solid #F4F1E0;
    background: #eba625;
}

h1
{
    margin: 0 15px 0 0;
    padding-left: 15px;
    height: 46px;
    color: #FFBA03;
    background: #3F5902 url(../images/design/headingall.jpg) top left no-repeat;
}

#mainContent h2.lilFooter, ul.lilFooter
{
    margin: 0;
    position: absolute;
    bottom: 0;
}

#mainContent ul.lilFooter
{
    display: block;
    right: 0;
    text-align: left;
    width: 90%;
    padding: 1.8em 7% 0 3%;
    margin: 0;
    color: #FFBA03;
    font-size: 1.7em;
    background: #3F5902 url(../images/design/mainRight.jpg) bottom right no-repeat;
}

#mainContent h2.lilFooter
{
    font-size: 1.7em;
    text-align: left;
    padding: 0.1em 0.1em 1.9em 5%;
    background: transparent url(../images/design/mainLeft.jpg) bottom left no-repeat;
    z-index: 5;
    color: #FFBA03;
    clear: left;
}


ul.lilFooter li
{
    display: block;
    float: left;
    margin: 0 0.5em;
    padding: 0;
}

#mainContent ul.lilFooter a
{
    color: #FFBA03;
    background: transparent;
}

#mainContent h2.lilFooter a
{
    color: #FFBA03;
    text-decoration: none;
    background: transparent;
}

.vcard img
{
    position: relative;
    z-index: 500;
}

#mainContent h2
{
    font-size: 1.9em;
    padding: 0.3em 1.2em;
    margin: 0;
    color: #030;
}
/*
#solutionsLink
{
    background: transparent url(../images/design/solutionsLink.jpg) center right no-repeat;
}

#mainNav #solutionsLink:hover
{
    background: #EBA625 url(../images/design/solutionsLinkHover.jpg) center right no-repeat;
}

#servicesLink
{
    background: transparent url(../images/design/servicesLink.jpg) center right no-repeat;
}
*/

img
{
    margin: -10px 0 0 0;
    padding: 0;
    border: 0;
}

#mainContent a, p.validation a
{
    color: #3F5902;
}

#mainContent a:hover, p.validation a:hover
{
    color: #000;
}

#mainContent a:focus, p.validation a:focus
{
    background: #FFBA03;
    color: #000;
}

.skip
{
    float: right;
    color: #3F5902;
    font-size: 1.5em;
    margin-right: 10px;
    margin-top: -1em;
}

#mainContent ul.reg
{
    font-size: 1.3em;
    list-style: none;
    display: block;
}

#mainContent ul.featured
{
    list-style: none;
    padding: 0;
    display: block;
    float: left;
}

ul.featured li a
{
    display: block;
    float: left;
    margin: 1em;
    padding: 0;
}

#mainContent ul.featured li
{
    display: inline;
}

form#contact
{
    padding: 0 2em;
    margin-top: 0;
}

form#contact fieldset
{
    margin: 0;
    padding: 0;
    border: 0;
}

label
{
    font-size: 1.6em;
    color: #030;
}

#contact textarea
{
    width: 90%;
    height: 15em;
    background: #fff;
    font-size: 1.8em;
    font-family: Arial, Helvetica, sans-serif;
}

#contact textarea:focus
{
    border: 2px #000 solid;
    background: #fff7c7;
}

legend
{
    font-size: 1.6em;
    text-indent: -1000em;
}

form ol
{
    list-style:none;
}

.message
{
    color: red;
    font-weight: bold;
    padding: 1px;
    font-size: 1.4em;
    margin-left: 100px;
}

.messageJs
{
    position: absolute;
    width: 30%;
    left: 35%;
    top: 35%;
    border: 2px #900 solid;
    background: #eee;
    font-weight: bold;
    z-index: 6000;
}

.messageJs h2
{
    margin: 0;
    background: #900;
    color: #fff;
    padding: 0.2em;
    font-size: 1.3em;
}

.messageJs a
{
    position:absolute;
    top: 3px;
    right: 3px;
    font-weight: bold;
    color: #fff;
}

#mainContent p.featuredImage
{
    float: left;
    margin-top: 10px;
    margin-bottom: 100px;
}

#mainContent p.featuredUrl
{
    margin-left: 16px;
    margin-bottom:-10px;
}

table.access
{
    margin: 5px 20px;
    border-top: 1px #000 solid;
    border-left: 1px #000 solid;
    font-size: 1.8em;
}

table.access td, table.access th
{
    border-right: 1px #000 solid;
    border-bottom: 1px #000 solid;
    padding: 2px 4px 2px 8px;
}

table.access td
{
    background: #3F5902;
    color: #F9BD05;
}

table.access tr.header
{
    background: #F9BD05;
    color: #003;
}

/* These are standard sIFR styles... do not modify */

.sIFR-flash {
    visibility: visible !important;
}

.sIFR-replaced {
    visibility: visible !important;
}

span.sIFR-alternate {
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
}

/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */

.sIFR-hasFlash h1 {
    visibility: hidden;
    width: 90%;
}

