/* Dimensions */
/* Colors */
/* Font */
/* Mixins */
body {
  font-size: 80%;
  font-family: 'Helvetica Neue',Helveltica,Arial,'Bitstream Vera Sans',sans-serif;
  margin: 0;
  padding: 0;
  color: #333333;
  overflow: scroll; }

a, a:link, a:visited {
  color: #cc0000;
  text-decoration: none; }

img {
  border: none; }

h1, h2, h3, h4, h5 {
  color: #888888;
  font-weight: normal;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #cc0000; }
  h1.sub, h2.sub, h3.sub, h4.sub, h5.sub {
    margin-top: 0; }
  h1 .accent, h2 .accent, h3 .accent, h4 .accent, h5 .accent {
    color: #666666;
    font-weight: bold; }
  h1.bar, h2.bar, h3.bar, h4.bar, h5.bar {
    height: 20px;
    background: transparent url(/images/icons/bar.jpg) right no-repeat;
    padding-top: 2px;
    margin-top: 17px; }
  h1.pie, h2.pie, h3.pie, h4.pie, h5.pie {
    height: 20px;
    padding-top: 2px;
    background: transparent url(/images/icons/pie.jpg) right no-repeat; }
  h1.venn, h2.venn, h3.venn, h4.venn, h5.venn {
    height: 20px;
    padding-top: 2px;
    background: transparent url(/images/icons/venn.jpg) right no-repeat; }
  h1.letter, h2.letter, h3.letter, h4.letter, h5.letter {
    height: 20px;
    padding-top: 2px;
    background: transparent url(/images/icons/letter.jpg) right no-repeat; }
  h1.news_title, h2.news_title, h3.news_title, h4.news_title, h5.news_title {
    text-transform: uppercase;
    border: none;
    margin: 0 0 5px 0;
    padding: 0; }
    h1.news_title a, h2.news_title a, h3.news_title a, h4.news_title a, h5.news_title a {
      text-decoration: none;
      color: #666666; }
      h1.news_title a:hover, h2.news_title a:hover, h3.news_title a:hover, h4.news_title a:hover, h5.news_title a:hover {
        color: #333333; }
  h1.case_study, h2.case_study, h3.case_study, h4.case_study, h5.case_study {
    border: none;
    margin: 15px 0 0 0; }
  h1.news, h2.news, h3.news, h4.news, h5.news {
    border: none;
    margin: 15px 0 0 0; }

.case_study {
  color: #888888;
  font-weight: normal;
  border: none; }

ul {
  vertical-align: top;
  list-style-image: url(/images/square.gif); }
  ul li {
    margin-bottom: 20px; }
    ul li.invisible {
      list-style: none; }

.news {
  margin: 10px 0 25px 0; }

ul.case_studies {
  list-style: none;
  padding: 0;
  margin: 0; }
  ul.case_studies li {
    margin: 10px 0; }

.right {
  float: right; }

.left {
  float: left; }

.clearfix {
  clear: both; }

table.admin {
  width: 100%;
  text-align: center; }
  table.admin th {
    color: #fff;
    background: #666666; }
  table.admin td {
    border: 1px solid #333333;
    padding: 0; }

#wrapper {
  width: 960px;
  margin: 0 auto; }
  #wrapper #header {
    position: relative;
    margin-bottom: 10px; }
    #wrapper #header h1 {
      margin: 0;
      border: 0; }
      #wrapper #header h1 a#logo {
        overflow: hidden;
        text-indent: -9999px;
        display: block;
        background: transparent url(/images/tp_logo.gif) -5px 0px no-repeat;
        height: 77px;
        width: 299px; }
    #wrapper #header #admin_menu {
      text-align: right;
      position: absolute;
      top: 0px;
      right: 0px;
      background: #efefef;
      padding: 5px; }
      #wrapper #header #admin_menu ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        #wrapper #header #admin_menu ul li {
          display: inline;
          margin: 0 10px; }
          #wrapper #header #admin_menu ul li a {
            text-decoration: none;
            font-size: 1.1em;
            color: #666666; }
            #wrapper #header #admin_menu ul li a:hover {
              border-bottom-style: solid;
              border-bottom-width: 2px;
              border-bottom-color: #cc0000;
              color: #333333; }
    #wrapper #header #mini-signup {
      position: absolute;
      top: 0px;
      right: 0px;
      margin-top: 10px; }
      #wrapper #header #mini-signup label {
        color: #666666; }
      #wrapper #header #mini-signup input {
        padding: 2px;
        border-width: 1px;
        border-style: solid;
        border-color: #cccccc;
        width: 175px; }
        #wrapper #header #mini-signup input.blur {
          color: #cccccc; }
        #wrapper #header #mini-signup input.submit {
          color: #a73636;
          background-color: #cccccc;
          border: 0;
          text-transform: uppercase;
          padding: 2px;
          width: auto; }
    #wrapper #header #navigation {
      position: absolute;
      bottom: 0px;
      right: 0px;
      padding: 2px 0; }
      #wrapper #header #navigation ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        #wrapper #header #navigation ul li {
          display: inline;
          margin: 0 6px;
          padding: 2px 0; }
          #wrapper #header #navigation ul li a {
            text-decoration: none;
            font-size: 1.0em;
            color: #666666; }
            #wrapper #header #navigation ul li a:hover {
              color: #333333;
              border-bottom: 2px solid #cc0000; }
          #wrapper #header #navigation ul li.last {
            margin-right: 0px; }
  #wrapper #banner {
    background: transparent url(/images/headers/main.jpg) no-repeat;
    height: 199px;
    position: relative;
    margin-bottom: 20px; }
    #wrapper #banner.about {
      background: transparent url(/images/headers/about.jpg) no-repeat; }
    #wrapper #banner.products {
      background: transparent url(/images/headers/products_services.jpg) no-repeat; }
    #wrapper #banner.executive_team {
      background: transparent url(/images/headers/executive_team.jpg) no-repeat; }
    #wrapper #banner.in_the_news {
      background: transparent url(/images/headers/news.jpg) no-repeat; }
    #wrapper #banner.contact {
      background: transparent url(/images/headers/contact.jpg) no-repeat; }
    #wrapper #banner.clients {
      background: transparent url(/images/headers/clients.jpg) no-repeat; }
    #wrapper #banner #data_knowledge {
      position: absolute;
      top: 55px;
      left: 480px;
      width: 447px;
      height: 98px;
      display: block;
      text-indent: -9000px;
      background: url(/images/headers/data_knowledge_solutions.png); }
  #wrapper #content #main {
    width: 680px;
    float: left; }
    #wrapper #content #main #page_body h1, #wrapper #content #main #page_body h2, #wrapper #content #main #page_body h3, #wrapper #content #main #page_body h4, #wrapper #content #main #page_body h5, #wrapper #content #main #case_study h1, #wrapper #content #main #case_study h2, #wrapper #content #main #case_study h3, #wrapper #content #main #case_study h4, #wrapper #content #main #case_study h5 {
      border: none;
      font-weight: bold;
      color: #666666; }
  #wrapper #content #sub {
    float: right;
    width: 260px; }
    #wrapper #content #sub #tweets #tweet_top {
      background: transparent url(/images/twitter/top.jpg) no-repeat;
      height: 12px; }
    #wrapper #content #sub #tweets #tweet_mid {
      padding: 0 10px;
      background: #f2f2f2;
      width: 240px;
      height: 125px; }
      #wrapper #content #sub #tweets #tweet_mid .twitter_div {
        padding: 0 20px 0 20px;
        background: transparent url(/images/twitter/ldquo.jpg) no-repeat;
        position: absolute;
        height: 125px;
        width: 210px;
        font-size: 1.0em; }
    #wrapper #content #sub #tweets #tweet_bottom {
      background: transparent url(/images/twitter/bottom.jpg) no-repeat;
      height: 67px; }
      #wrapper #content #sub #tweets #tweet_bottom .posted_on {
        padding-top: 35px;
        font-size: .8em;
        color: #cccccc; }
        #wrapper #content #sub #tweets #tweet_bottom .posted_on .twitter_name {
          color: #cc0000; }
    #wrapper #content #sub #sub-signup {
      padding: 0 10px; }
    #wrapper #content #sub .section .intro p {
      padding: 0;
      margin: 5px 0; }
  #wrapper #footer {
    clear: both;
    position: relative;
    color: #666666;
    padding-top: 30px;
    margin-bottom: 20px; }
    #wrapper #footer .seperator {
      margin-bottom: 20px;
      border-top-width: 1px;
      border-top-style: solid;
      border-top-color: #666666; }
    #wrapper #footer .address #flogo {
      overflow: hidden;
      text-indent: -9999px;
      display: block;
      background: transparent url(/images/minilogo.jpg) no-repeat;
      height: 24px;
      width: 101px; }
    #wrapper #footer .inquiries {
      text-align: right;
      float: right; }
    #wrapper #footer .navigation {
      position: absolute;
      bottom: 0px;
      right: 0px; }
      #wrapper #footer .navigation ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        #wrapper #footer .navigation ul li {
          display: inline;
          padding: 0 5px;
          border-right: 1px solid #666666; }
          #wrapper #footer .navigation ul li.last {
            border: none; }

#main_header {
  background: transparent url(/images/icons/line.jpg) right no-repeat;
  font-size: 1.8em;
  margin-top: 0; }
  #main_header a {
    color: #888888;
    text-decoration: none; }

form {
  margin: 0; }

.mceEditor {
  height: 500px; }

input {
  padding: 2px;
  border-width: 1px;
  border-style: solid;
  border-color: #cccccc;
  width: 155px; }
  input.blur {
    color: #cccccc; }
  input.submit {
    color: #a73636;
    background-color: #cccccc;
    border: 0;
    text-transform: uppercase;
    padding: 2px;
    width: auto; }

.post {
  position: relative;
  margin-top: 50px; }

.post_body {
  margin: 0 15px 25px 140px; }

.date {
  text-transform: uppercase;
  font-size: .9em;
  position: absolute;
  top: 4px;
  left: 0px;
  width: 120px;
  float: left;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #cc0000; }

.comment-container {
  margin: 0 0 20px 0;
  padding: 10px; }
  .comment-container.grey {
    background: #efefef; }
  .comment-container .commentor {
    margin: 0 0 5px 0; }

.pagination {
  margin: 15px 0;
  padding: 5px; }
  .pagination a, .pagination span {
    text-decoration: none;
    padding: 4px;
    border: 1px solid #666666; }
  .pagination .current, .pagination .prev_page, .pagination .next_page {
    border: none; }

.flash {
  font-size: 1.4em;
  margin: 0 0 1em;
  padding: 5px;
  width: 100%; }

.flash-notice {
  display: block;
  color: #0a0;
  padding: 10px 6px 10px 55px;
  background: transparent url(/images/icons/success.png) 1% 10% no-repeat; }

.flash-error {
  color: #a00; }

.fieldWithErrors input {
  border: 2px solid red; }

#errorExplanation {
  width: 400px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0; }

#errorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px 5px 5px 15px;
  font-size: 12px;
  margin: -7px;
  background-color: #c00;
  color: #fff; }

#errorExplanation p {
  color: #333;
  margin: 1em 0;
  padding: 5px; }

#errorExplanation ul {
  margin: 1em; }

#errorExplanation ul li {
  color: #666;
  font-size: 12px;
  list-style: square; }
