body {
  font-family: lucida grande, helvetica, arial; }

h1, h2, h3, h4 {
  margin: 0; }

h2 {
  display: block;
  padding: 0 0 5px 0;
  margin: 0 0 15px 0;
  border-bottom: 1px solid #cccccc;
  color: #4DA5DB; }

a {
  text-decoration: none;
  color: #056CA2; }

a:hover {
  text-decoration: underline; }

p {
  line-height: 1.5em; }

a:hover {
  text-decoration: underline;
  color: #034D73; }

.container {
  width: 965px;
  height: 100%;
  margin: 0 auto 0 auto;
  text-align: left; }

.column {
  float: left; }

.column.left, .column.middle, .column.right {
  margin: 6px 10px 0 0; }

.column.left {
  width: 180px; }

.column.middle {
  width: 552px;
  padding: 5px 10px 0 10px;
  font-size: 0.8em; }
  .column.middle .event {
    width: 500px; }
    .column.middle .event span {
      width: 50%;
      display: block;
      white-space: normal; }

.column.right {
  width: 190px;
  margin-right: 0;
  font-size: 0.8em; }

.header {
  margin-top: 20px;
  height: 97px;
  background: url(../images/header.jpg) no-repeat; }
  .header .logo {
    float: left;
    width: 765px;
    height: 93px; }
    .header .logo h1 {
      display: none; }
  .header .search {
    margin: 0;
    text-align: left;
    position: relative;
    margin-left: 773px;
    width: 187px; }
    .header .search .text {
      background: url(../images/search_input_without_text.gif) no-repeat;
      width: 142px;
      height: 19px;
      border: 0px;
      position: absolute;
      top: 70px;
      left: 33px;
      padding-top: 1px; }
    .header .search .text.blank {
      background: url(../images/search_input_without_text.gif) no-repeat; }
    .header .search .button {
      position: absolute;
      left: 15px;
      top: 70px;
      background: url(../images/search_button.gif) no-repeat;
      font-size: 0px;
      color: white;
      width: 18px; }
    .header .search form {
      text-align: center;
      padding: 45px 0 0 8px; }
  .header .left, .header .right {
    height: 100px; }

h3 {
  margin: 5px 0 10px 0;
  font-size: 1.3em; }

.section {
  margin: 28px 0 10px 0;
  clear: both; }

.item, .item td {
  margin-bottom: 10px;
  padding-bottom: 10px; }

.field {
  clear: both;
  display: block;
  padding: 0 0 0 188px;
  position: relative;
  min-height: 28px; }
  .field .element {
    line-height: 28px; }
  .field .button {
    margin: 10px 0 0 0; }
  .field label {
    position: absolute;
    left: 0;
    top: 6px;
    width: 160px; }
  .field input {
    margin: 3px 0 3px 0; }
  .field #post_body {
    width: 361px; }
  .field .short, .field .password {
    width: 35%; }

.registration .field {
  padding-left: 170px; }
.registration ul.breadcrumbs {
  list-style: none;
  height: 1em;
  padding-left: 0; }
  .registration ul.breadcrumbs li {
    padding: 0 40px 0 0;
    float: left; }
  .registration ul.breadcrumbs li {
    color: #aaaaaa; }
  .registration ul.breadcrumbs li a {
    color: #666666; }
  .registration ul.breadcrumbs .selected {
    font-weight: bold;
    color: #056CA2; }
.registration .required {
  padding: 0 0 10px 0;
  color: #cc1111; }

.box.login {
  height: 210px; }
  .box.login .not_a_member {
    margin: 10px 0 0 0;
    text-align: center;
    clear: both; }
  .box.login .forgot_password {
    margin: 10px 0 0 0;
    display: block;
    text-align: center; }
  .box.login .remember {
    margin: 0 0 10px 8px; }

.login .text {
  width: 130px; }
.login .password {
  width: 130px; }
.login .field {
  padding-left: 80px;
  padding-bottom: 5px; }
  .login .field label {
    padding-left: 9px;
    width: 70px; }
.login .button {
  margin-left: 90px; }

.column.right label {
  display: none; }
.column.right .field {
  padding-left: 0; }
  .column.right .field input {
    width: 85%;
    margin: 0 7% 0 7%; }
.column.right .button {
  margin: 0 auto 0 auto; }

.middle {
  position: relative; }
  .middle .login {
    margin-left: 100px; }
    .middle .login .text {
      width: 230px; }

.box {
  margin: 0 0 12px 0; }
  .box .middle {
    min-height: 250px; }
  .box .breadcrumbs {
    margin: 0 0 8px 0; }
  .box img {
    padding: 0 0 3px 5px;
    margin: 2px 9px 0 0; }
  .box p {
    margin: 0 0 9px 10px;
    padding: 0; }
  .box .bottom {
    height: 13px;
    margin: 0 0 0 -10px; }

table.forums {
  width: 100%; }
  table.forums th, table.forums th.latest {
    font-size: 1.2em;
    border-bottom: 1px solid #cccccc;
    color: #666666; }
  table.forums td {
    vertical-align: top;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #cccccc; }
  table.forums .name {
    font-weight: bold;
    font-size: 1.2em;
    padding-top: 5px;
    width: 390px;
    padding-bottom: 9px; }
  table.forums .description {
    clear: both;
    font-style: italic;
    font-size: .9em;
    margin-bottom: 10px; }
  table.forums .author {
    font-weight: bold;
    font-size: 1.1em;
    width: 160px;
    float: left;
    padding: 10px 0 0 0;
    color: #888888; }
  table.forums .organisation {
    clear: both; }
  table.forums .timestamp {
    color: #888888;
    font-style: italic;
    float: right;
    font-size: 0.9em;
    width: 350px;
    text-align: right;
    padding: 10px 0 0 0; }
  table.forums .body {
    padding: 18px 25px 0 35px;
    background: url(../images/forum_quotes_close.gif) no-repeat bottom right;
    line-height: 1.5em; }
  table.forums td.body {
    background: url(../images/forum_quotes_open.gif) no-repeat 0px 20px;
    padding: 0 0 48px 0; }
  table.forums .topic {
    width: 65%; }
  table.forums .latest {
    font-size: 0.9em;
    width: 134px; }
  table.forums .count {
    width: 100px; }
  table.forums td.count {
    padding-right: 16px;
    text-align: center; }

.controls {
  position: absolute;
  top: 13px;
  right: 13px;
  font-weight: bold; }

.post {
  margin: 20px 0 0 0; }

#nav {
  background: url(../images/menu_top_selected.png) no-repeat;
  padding-top: 33px; }
  #nav .end {
    background: url(../images/menu_bottom_selected.png) no-repeat;
    height: 33px;
    margin-bottom: 10px; }
  #nav ul, #nav ul.child {
    font-size: 0.9em;
    width: 179px;
    margin: 0;
    padding: 0;
    list-style: none; }
    #nav ul li,     #nav ul.child li {
      background: #7c7c7c; }
      #nav ul li a,       #nav ul.child li a {
        color: #ffffff;
        line-height: 30px;
        padding: 0px 5px 0px 15px;
        display: block;
        margin: 0 0 1px 0; }
      #nav ul li a:hover,       #nav ul.child li a:hover {
        background: #3687BC url(../images/menu_selected.jpg) no-repeat;
        text-decoration: none; }
    #nav ul li,     #nav ul.child li {
      border-bottom: 1px solid #ffffff; }
    #nav ul ul.child li,     #nav ul.child ul.child li {
      border-top: 1px solid #ffffff;
      border-bottom: 0px;
      background-color: #3C3C3C; }
    #nav ul ul.child a,     #nav ul.child ul.child a {
      font-size: 0.9em;
      line-height: 1.6em;
      padding: 5px 5px 5px 35px;
      color: #fff; }

.right .box, .left .box {
  background: #fcfcfc url(../images/right_box_background.jpg) no-repeat 0 25px;
  border-left: 1px solid #e4e4e4;
  border-right: 1px solid #e4e4e4;
  min-height: 120px;
  padding: 5px 5px 9px 5px;
  position: relative; }
  .right .box h2,   .left .box h2 {
    height: 25px;
    width: 171px;
    margin: -5px 0 0 -6px;
    padding: 0 5px 8px 14px;
    background: url(../images/right_box_header.jpg) repeat-x;
    color: black;
    font-size: 1em;
    line-height: 25px;
    border: 0px; }
.right .bottom, .left .bottom {
  background: url(../images/right_box_bottom.png) no-repeat;
  height: 10px;
  width: 190px;
  position: absolute;
  bottom: 0px;
  margin: 0 0 0 -6px; }
.right ul, .left ul {
  list-style: none;
  margin: 0;
  padding: 0 9px 0 9px;
  line-height: 1.5em; }

.left .box h2 {
  background: url(../images/left_box_header.jpg) no-repeat;
  font-size: 0.8em; }
.left .box h4 {
  font-size: 0.8em;
  color: #056CA2;
  margin-left: 8px; }
.left .box p {
  font-size: 0.8em;
  margin: 4px 8px 17px 8px; }
.left .bottom {
  background: url(../images/left_box_bottom.png) no-repeat; }

/* CALENDAR RULES AND CLASSES */ */
#calendar {
  width: 220px;
  position: relative; }
  #calendar .week {
    clear: both;
    margin-left: 14px; }
  #calendar .title, #calendar .day {
    float: left;
    width: 18px;
    text-align: center;
    height: 18px;
    border: 1px solid #cccccc;
    margin: 1px;
    line-height: 1.4em; }
  #calendar .day {
    background: #ffffff;
    color: #666666; }
  #calendar .title {
    background: none;
    color: navy;
    font-weight: bold;
    border-color: transparent; }
  #calendar a {
    color: #ffffff;
    background: #1774B3;
    border: 1px solid #1774B3;
    font-weight: bold;
    display: block;
    line-height: 1.4em; }
  #calendar a:hover {
    background: #ffffff;
    color: #1774B3;
    text-decoration: none; }

.calendar_container {
  width: 180px;
  margin-left: -2px; }
  .calendar_container .head {
    height: 30px;
    margin-left: 2px;
    position: relative;
    text-align: center;
    font-weight: bold;
    color: #333333;
    line-height: 27px; }
    .calendar_container .head h4 {
      margin: 0;
      font-size: 1em; }
  .calendar_container #calendar_previous {
    left: 10px;
    background: url(../images/calendar/previous.gif) no-repeat; }
  .calendar_container #calendar_next {
    right: 10px;
    background: url(../images/calendar/next.gif) no-repeat; }
  .calendar_container #calendar_previous, .calendar_container #calendar_next {
    position: absolute;
    top: 7px;
    font-size: 0px;
    color: transparent;
    height: 14px;
    width: 12px;
    display: block; }
  .calendar_container a#calendar_previous:hover, .calendar_container a#calendar_next:hover {
    text-decoration: none;
    opacity: 0.4; }

*:first-child+html .events_list {
  top: 76px; }

*:first-child+html .welcome {
  margin-top: 2px; }

#organisation_results {
  display: none;
  position: absolute;
  z-index: 90000; }
  #organisation_results ul {
    width: 221px;
    background: #eeeeee;
    margin: 0;
    padding: 0;
    list-style: none; }
    #organisation_results ul li a {
      border-bottom: 2px solid #cccccc;
      border-left: 1px solid #cccccc;
      border-right: 1px solid #cccccc;
      display: block;
      width: 211px;
      padding: 3px 5px 3px 5px;
      color: black;
      font-size: 0.9em;
      background: #dddddd; }
    #organisation_results ul li a:hover, #organisation_results ul li li.highlighted a, #organisation_results ul li .first_ {
      background: #024574;
      color: #ffffff;
      text-decoration: none; }

.summary {
  clear: both;
  border-bottom: 1px dashed #cccccc;
  line-height: 1.5em;
  height: 1%; }
  .summary .name, .summary .organisation {
    width: 180px;
    float: left;
    padding: 5px 0 5px 0; }
  .summary .name {
    font-weight: bold; }

.organisation {
  font-style: italic; }

.last {
  border-bottom: 0px; }

.summary:after {
  clear: both;
  display: block;
  content: ".";
  visibility: hidden;
  height: 1px; }

.flash_notice, .flash_error, .errorExplanation, .fieldWithErrors {
  padding: 8px;
  margin: 8px 0 15px 0;
  border: 1px solid red;
  background: #EAB5B8; }

.errorExplanation h2 {
  color: black;
  font-size: 1.2em;
  border: 0px; }

.flash_notice {
  border: 1px solid #00CC00;
  background: #C5F1C3; }

.breadcrumbs {
  border-bottom: 1px dashed #cccccc;
  padding-bottom: 10px;
  margin-top: -10px; }

.member.profile h3 {
  margin: 0; }
.member.profile h4 {
  font-style: italic;
  color: #666666;
  margin: 0 0 20px 0; }
.member.profile .summary {
  border: none; }
.member.profile .field + .summary {
  margin-top: 1.2em; }
.member.profile h4 {
  margin: 1.2em 0 0 0; }
.member.profile h3 + h4 {
  margin: 0; }
.member.profile .field {
  margin-top: 5px; }
  .member.profile .field label {
    color: #666666; }
  .member.profile .field ul.address {
    list-style: none;
    padding: .4em 0 0 0;
    margin-left: 0; }
    .member.profile .field ul.address li {
      line-height: 1.5em; }

.footer {
  clear: both;
  padding-bottom: 10px;
  padding-top: 30px; }
  .footer ul {
    list-style: none;
    padding: 15px 0 0 0;
    width: 100%;
    border-top: 1px solid #bbbbbb; }
    .footer ul li {
      float: left;
      border-right: 1px solid #333333;
      padding: 0 8px 0 8px; }
      .footer ul li a {
        color: #333333; }
      .footer ul li a:hover {
        color: #056CA2; }
    .footer ul li.last {
      border: 0px; }
  .footer .copyright, .footer li {
    font-size: 0.7em; }
  .footer .copyright {
    float: right;
    margin-top: -16px;
    margin-right: 8px; }

h2.topic {
  padding-right: 75px; }

.events .column {
  float: left;
  width: 240px; }

.events .column.one {
  width: 220px; }
.events .column.two {
  width: 280px; }

.welcome {
  background: url(../images/welcome_photo.jpg) no-repeat;
  width: 527px;
  height: 252px;
  margin: -17px 0 20px -3px; }
  .welcome p {
    color: white;
    font-size: 1.4em;
    padding: 20px 190px 0 13px; }
  .welcome p.text.small {
    font-size: 1em;
    padding: 10px 0px 0px 20px;
    width: 450px; }
  .welcome .button {
    margin: 0 0 0 20px; }

.button {
  background: url(../images/button.gif) no-repeat;
  height: 22px;
  width: 100px;
  display: block;
  padding-bottom: 3px;
  line-height: 22px;
  text-align: center;
  color: #333333;
  border: 0px;
  margin: 0 0 5px 0;
  font-size: 0.9em;
  font-weight: bold; }

.button:hover, a.button:hover {
  text-decoration: none;
  cursor: pointer;
  color: #056CA2; }

.join_us {
  display: block;
  text-align: center; }

.news {
  clear: both;
  padding: 20px 0 0 0; }
  .news .item {
    margin: 0 0 20px 0;
    border: 0px; }
    .news .item .subject {
      font-weight: bold;
      font-size: 1.1em; }
    .news .item .summary {
      border: 0px;
      line-height: 1.5em;
      margin-top: 6px; }

.article .timestamp, .news .item .timestamp {
  font-size: 0.9em;
  color: #666666; }

.article .summary {
  padding-bottom: 10px; }
.article h2 {
  margin: 0 0 3px 0; }

ul.tags {
  padding: 0 0 0 0;
  list-style: none; }
  ul.tags li {
    line-height: 1.5em;
    width: 230px;
    float: left; }

.searches h3 {
  font-size: 1.1em;
  color: #666666;
  padding: 10px 0 0 0;
  margin: 10px 0 5px 0; }
.searches ul {
  list-style: none;
  padding: 0 0 0 15px; }
.searches .events {
  margin: 10px 0 0 15px; }
  .searches .events .event {
    clear: both; }
    .searches .events .event .title, .searches .events .event .date {
      font-style: normal;
      font-weight: normal; }
    .searches .events .event .date {
      color: #444444;
      padding-bottom: 10px;
      font-size: 0.9em; }

.back_to_top {
  float: right; }

.members {
  padding: 20px 0 0 0;
  clear: both; }
  .members .item {
    padding: 5px 0 5px 0; }
  .members .name {
    font-size: 1.1em; }
  .members .organisation {
    color: #666666;
    font-size: 0.9em; }
  .members .website {
    float: right;
    margin-top: -1.3em;
    font-weight: normal;
    font-size: 0.9em; }

.event h3 {
  margin: 0 0 3px 0; }
.event .date {
  font-style: italic;
  font-size: 0.9em;
  color: #666666; }
.event .description {
  margin: 15px 0 0 0; }

ul.files {
  margin: 0;
  padding: 0 0 0 10px; }

.filetype {
  padding-left: 34px;
  list-style: none;
  display: block;
  height: 35px;
  line-height: 35px; }

.filetype.doc {
  background: url(../images/filetype_icons/doc.jpg) no-repeat; }

.filetype.pdf {
  background: url(../images/filetype_icons/pdf.jpg) no-repeat; }

.filetype.xls {
  background: url(../images/filetype_icons/xls.jpg) no-repeat; }

.filetype.mp3 {
  background: url(../images/filetype_icons/mp3.jpg) no-repeat; }

.filetype.jpg {
  background: url(../images/filetype_icons/jpg.jpg) no-repeat; }

.organisations h3 {
  padding: 14px 0 7px 0;
  margin-bottom: 0px;
  border-bottom: 1px dashed #cccccc; }
.organisations ul {
  list-style: circle;
  padding: 0 0 13px 20px; }
.organisations .group {
  clear: both;
  padding-bottom: 25px; }
  .organisations .group .row {
    padding: 10px 0 10px 0;
    clear: both;
    border-bottom: 1px dashed #cccccc;
    height: 1%; }
    .organisations .group .row .column.name {
      float: left;
      width: 40%;
      font-weight: bold;
      font-size: 1.1em; }
    .organisations .group .row .column.description {
      width: 60%;
      float: left; }
    .organisations .group .row .website {
      line-height: 1.9em;
      font-weight: normal;
      font-size: 0.8em; }
  .organisations .group .row:after {
    clear: both;
    display: block;
    content: ".";
    visibility: hidden;
    height: 1px; }

.organisation_profile h3 {
  margin-top: 20px; }

.events h4.start_date {
  padding-top: 5px; }
.events .group {
  border-bottom: 1px dashed #cccccc;
  margin: 10px 0 10px 0;
  padding-bottom: 10px; }
.events .event {
  margin-left: 10px;
  line-height: 1.5em; }
.events h2.previous_events {
  margin-top: 30px; }

.homepage_news {
  padding-top: 15px; }
  .homepage_news .subject {
    font-size: 1.1em;
    margin: 0 0 3px 0; }
  .homepage_news .timestamp {
    font-size: 0.8em; }

.homepage_events .event {
  margin: 0 0 10px 0; }
.homepage_events .title {
  font-size: 1.1em;
  font-weight: bold; }
.homepage_events .start_date {
  font-size: 0.8em; }

.box.calendar {
  height: 200px; }

#rss_link {
  height: 23px;
  line-height: 23px;
  width: 100px;
  padding-left: 25px;
  background: url(../images/rss.jpg) no-repeat;
  display: block;
  position: absolute;
  top: 7px;
  right: -30px; }

#loading_image {
  width: 0px;
  height: 16px;
  position: relative;
  left: 230px;
  top: 0px;
  margin-top: -18px;
  background: url(../images/loading_spinner.gif) no-repeat; }

#organisation_search a.highlighted {
  background: #024574;
  color: #ffffff;
  text-decoration: none; }

.tag {
  padding: 5px 0 5px 0;
  position: relative; }
  .tag .checkbox {
    float: left;
    width: 20px; }
  .tag .name {
    padding-left: 21px; }

.recent_topics {
  min-height: 85px; }

.help_login {
  width: 121px;
  height: 44px;
  padding-top: 50px;
  background: url(../images/help_arrow.jpg) no-repeat top right;
  color: #3172AB;
  float: right;
  font-size: 1.3em;
  font-weight: bold; }

.middle .join_us {
  float: left; }

#reset_form {
  padding-bottom: 15px; }

.forgotten {
  clear: left;
  padding: 15px 0 15px 0; }
