body {
    font-family: sans-serif;
    background: url("../img/gradient_texture.jpg") repeat-x 0 0 #EEEEEE;
    position: relative;
    color: #333;
}


.center {
    text-align: center;
}

a {
    color: #9D0D09;
    text-decoration: none;
}

a:hover {
    color: #9D0D09;
    text-decoration: underline;
}

a:visited {
    color: #9D0D09;
}

a img {
    border: none;
}

h2 {
    font-size: 16pt;
    margin-bottom: 10px;
    margin-top: 5px;
    line-height: 1.1em;
}

h3 {
    font-size: 14pt;
    line-height: 1.1em;
}

pre {
    border:1px solid #CCCCCC;
    font-family:"Mono","lucida console",monospace;
    overflow:auto;
    font-size: 0.8em;
    line-height: normal;
    white-space: pre;
    word-wrap: normal;

    margin-bottom: 1em;
    padding: 0.5em;
    box-shadow: 0px 0px 2px #999 inset;
}

header {
    background-color: white;
}

header div.logo {
    float:left;
    padding: 0.25em 0;
}

header .navbar {
    margin-bottom: 0px;
}

header .navbar .nav > li > a {
    color: #aaa;
    font-size: 18px;
    padding: 1em 1.3em;
}

header .navbar .nav > li > a.current {
    color: #9D0D09;
}

header .navbar .nav {
    float: right;
}

header .navbar-collapse {
    float: right;
    font-size: 18px;
    padding: 1em 1.3em;
    text-decoration: none;
}

div.hero_cat {
    background: url(../img/helix-big.jpg);
    height: 250px;
    background-position: center;
    background-size: 100%;
    box-shadow: 0px 0px 10px #333 inset;
}

section {
    background-color: white;
    padding-bottom: 1em;
    padding-top: 1em;
}

section.sidekicks {
    padding-top: 1em;
    text-align: center;
}

section.clients h2 {
    text-align: left;
}

section.clients {
   background-color: #f0f0f0;
   text-align: center;
}

section.clients .pushdown {
    padding-top: 1em;
}

section.clients .pushdown.thalmic {
    padding-top: 1.3em;
}

section.clients .pushdown.s4sa {
    padding-top: 0.5em;
}

section.clients div.span2 {
    margin-bottom: 1em;
}


section.blog {
    padding-top: 1em;
}

section#contact {
    padding-top: 1em;
}

section#contact h1 {
    margin-bottom: 1em;
}

div#footer {
    background: #f0f0f0;
    color: #777777;
    border: thin #dddddd solid;
    min-height: 30px;
    margin: auto;
    margin-top: 1em;
    padding: 10px;
    text-align: center;
    margin-bottom: 1em;
    line-height: 1.1em;

    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

div#image img {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: -5px;
}

div#body {
    box-shadow: 0px 0px 5px #333;
}

div#body > div {
    background: #ffffff;
    width: 790px;
    margin: auto;
    border: thin #dedede solid;
    margin-top: 0.6em;
    position: relative;
    min-height: 2em;
    padding: 5px;
    
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    
    -moz-box-shadow: #555 0px 2px 3px;
    -webkit-box-shadow: #555 0px 2px 3px;
}

div.text_block {
    margin-bottom: 10px;
    padding-left: 10px;
}

div.text_block > p {
    font-size:10pt;
    line-height:1.5;
    margin-bottom: 5px;
    max-width: 35em;
    font-size: 11pt;
}

ul.feature_list {
    height: 220px;
    margin: 0px;
    padding: 0px;
}

ul.feature_list li {
    display: block;
    list-style-type: none;
    float: left;
    margin-left: 0.5em;
    margin-right: 0.5em;
}

div.feature img {
    float: left;
    width: 85px;
}

div.feature img.square {
    padding-left: 10px;
    width: 70px;
}

img.quotes {
    margin-top: -10px;
}

div.feature p {
    margin-left: 100px;
    width: 250px;
    font-size: 10pt;
    line-height: 1.5;
    margin-right: 20px;
    margin-bottom: 10px;
}

div.fineprint span.text {
    font-size: 8pt;
}

/* Blog */

div.blog_wrap {
    font-family: Georgia, Times, serif;
    font-size: 1.25em;
    line-height: 1.6em;
}

div.blog_wrap {
    max-width: 35em;
    margin: auto;
}

div.blog_wrap h1 {
    font-size: 1.7em;
}

.title {
    margin-bottom: 0px;
    line-height: 1.1em;
}

.title a {
    color: inherit;
    text-decoration: none;
}

form input[type=text], form textarea
{   
    width: 20em;
}

div.blog_wrap form input[type=text], div.blog_wrap form textarea
{   
    width: 30em;
}

div.byline {
    margin-bottom: 1em;
    color: #666;
}

div.preview + div.preview {
    margin-top: 2em;
}

div.meta {
    font-size: 0.9em;
    color: #666;
    border-top: solid thin #eee;
    padding-top: 0.8em;
}

img.byimage {
    border-radius: 80px;
    height: 35px;
    box-shadow: 0px 0px 3px #333;
}

div.blog-post {
    width: 500px;
    padding-left: 15px;
    padding-bottom: 10px;
    margin-top: 1em;
}

div.blog-post p {
    margin-top: 0px;
    margin-bottom: 1em;
}

div.blog-post h2 {
    margin-bottom: 0px;
    font-size: 14pt;
}

div.blog-post h2 a {
    color: inherit;
    text-decoration: none;
}

div.blog-post h2 a:hover {
    text-decoration: underline;
}

div.blog-post h3 {
    margin-top: 0px;
    color: #9D0D09;
    font-family: Georgia, serif;
    margin-left: 2px;
    font-style: italic;
    font-size: small;
}

div.blog-post div.date {
    font-size: 100%;
    color: #9D0D09;
    margin-bottom: 1em;
}

div.blog-post div {
    font-family: Georgia, serif;
    line-height: 130%;
}

div.blog-post div.body {
    clear: left;
    font-size: 11pt;
}

div.comment-form {
    background: #f0f0f0;
    color: #777777;
    border: thin #dddddd solid;
    padding: 5px 1em;
    margin-top: 1em;
    
    border-radius: 5px;
}

div.comment-form th {
    text-align: left;
    font-family: sans-serif;
    vertical-align: top;
}

div.comments {
    background: #f0f0f0;
    color: #777777;
    border: thin #dddddd solid;
    padding: 5px 1em;
    border-radius: 5px;
}

div.comments h4 {
    margin: 0px;
    padding: 0px;
    margin-bottom: 1em;
}

div.comments div.comment-container {
    border-bottom: dotted thin #dddddd;
    margin-bottom: 1em;
}

div.comments div.comment-container-last {
    margin-bottom: 1em;
}

div.comments-closed {
    background: #f0f0f0;
    color: #777777;
    border: thin #dddddd solid;
    font-size: small;
    padding: 5px 1em;
    margin-top: 1em;
    
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

div.comments-closed p {
    margin: 0px;
}

div.contact_form_wrap {
    border-right: thin #DDDDDD solid;
}

table.form {
}

table.form tr td {
    padding: 5px;
}

table.form tr th {
    padding: 8px;
    text-align: right;
}

table.form th {
    vertical-align: top;
    text-align: left;
}

div#contact-sidebar {
    padding-left: 3em;
    padding-top: 1em;
    font-size: 1.25em;
}

div#contact-sidebar div {
    text-align: center;
    margin-top: 1em;
}

ul.errorlist {
    float: right;
    color: red;
    font-size: small;
    margin: 3px;
}

div.horizontal_boxes_first {
    float:left;
    width: 205px;
    height: 108px;
    padding: 1px 1px;
    margin-top: 6px;
    margin-left: 2px;
    text-align: center;
}

div.horizontal_boxes {
    float: left;
    width: 205px;
    height: 108px;
    padding: 1px 1px;
    margin-top: 5px;
    margin-bottom: 2em;
    /*border-left: #ddd thin solid;*/
    text-align: center;
}

div.free_quotes {
    width: 160px;
    height: 150px;
    padding: 0px 5px;
    margin-top: 30px;
    margin-bottom: 2.6em;
    text-align: center;
}

div.free_quotes p {
    font-size: 10pt;
    line-height: 1.5;
    margin: 0px;
}

div.horizontal_boxes p, div.horizontal_boxes_first p {
    font-size: 10pt;
    line-height: 1.5;
    margin: 1em 0em;
}

aside.home_sidebar {
    margin-top: 7px;
    float: right;
    width: 166px;    
}

div.colored_sidebar {
    background: #f0f0f0;
    color: #777777;
    border: thin #dddddd solid;
    padding: 5px 1em;
    margin-right: 0.5em;
    margin-left: 0.5em;
    
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

aside.home_sidebar h2 {
    font-size: 18px;
}


aside.home_sidebar ul {
    margin: 0px;
    padding: 0px;
}
aside.home_sidebar li {
    list-style: none;
}

div.blog_preview {
    margin-top: 2em;
}

hgroup#preview_header {
    margin-left: 65px;
    font-family: sans-serif;
    margin-bottom: 10px;
}

hgroup#blog_header {
    margin-bottom: 10px;
}

hgroup#preview_header h3, hgroup#blog_header h3 {
    font-family: sans-serif;
    font-style: normal;
    font-weight: normal;
    color: #777;
}

div.blog_preview div.blog-post div.body p {
    font-family: sans-serif;
    margin-top: 1em;
}

div.home_sidebar ul {
    padding-left: 0.5em;
}

div.home_sidebar ul li {
    list-style: none;
}

div.acknowledgements_page h2 {
    text-align: center;
}

div.acknowledgements {
    text-align: center;
}

div.acknowledgements dt {
    color: #9D0D09;
    font-weight: bold;
    font-size: 14pt;
}

div.acknowledgements dl {
    margin-bottom: 1em;
}

div.acknowledgements dd {
    margin: 0px;
    font-size: 11pt;
}

div#case_study_page img {
    -moz-box-shadow: 1px 1px 10px #666;
}

div#case_study_page p {
    font-size: 10pt;
    line-height: 1.5;
}

div#case_study_page div.slide {
    clear: both;
    margin-bottom: 1em;
    min-height: 225px;
}

div#case_study_page div.image {
    float: left;
    margin-left: 20px;
}

div#case_study_page div.description {
    margin-left: 350px;
    padding-top: 10px;
    font-size: 10pt;
    line-height: 1.5;
    padding-right: 20px;
}

div#case_study_page div.description p {
    margin: 0px;
    margin-bottom: 5px;
}

div#case_study_page span.header {
    font-weight: bolder;
}

div.christmas {
    font-family: Georgia, serif;
    line-height: 130%;
    padding-left: 15px;
    padding-bottom: 10px;
}

div.infographic {
    position: relative;
    height: 600px;
    width: 800px;
    margin: auto;
    border: thick solid #DDDDDD;
    margin-bottom: 20px;
}

div.infographic header {
    margin-top: 255px;
}

div.infographic header h1 {
    color: #777777;
    font-size: 16pt;
    font-family: fantasy;
    text-align: center;
}

div.infographic div#close {
    position: absolute;
    bottom: 0px;
    right: 0px;
    cursor: pointer;
    padding: 0.5em 1em;
    font-weight: bold;
}

.float_left {
    float: left;
}

.margin_right {
    margin-right: 0.5em;
}

img.about {
    box-shadow: 0px 0px 4px #333;
    margin-bottom: 1em;
}

div.about {
    margin-left: 155px;
}

div.links {
    text-align: center;
}

div.links > div {
    margin: 2em 0em;
}

.spanlogo {
    width: 192px;
    margin: 0px 0px;
    margin-bottom: 1em;
}

@media (max-width: 979px) and (min-width: 768px) {
    .spanlogo {
        width: 148px;
        margin: 0px 0px;
    }
}

@media (max-width: 767px) {
    .spanlogo {
        float: none;
        display: block;
        width: 100%;
        margin-left: 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
}

/* responsive overrides */

@media (max-width:767px){
    body
    {
        padding-left: 0px;padding-right:0px;
    } 

    .container {
        padding-left: 20px;padding-right: 20px;
    }
    form input[type=text], form textarea
    {   
        width: 100%;
    }

    div.blog_wrap form input[type=text], div.blog_wrap form textarea
    {   
        width: 100%;
    }
}

@media (max-width:660px){
    div.hero_cat {
        background: url(../img/helix-big.jpg);
        height: 125px;
        background-position: center;
        background-size: 100%;
        box-shadow: 0px 0px 10px #333 inset;
    }

    div.contact_form_wrap {
        border-right: none;
    }
}
