/*
=general
=page structure
=main navigation
=sub navigation
=table
=form
=text_block classes
=details_block
=content
=footer
=misc
=debug
=views
=listings
=admin
=maps
=files
*/

/*
=general
---------------------------------------------- */

* {
    margin: 0;
    padding: 0;
}

html {
    height: 101%;
}

html, body {
    width: 100%;
}

body {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 75%;
    color: #555;
    text-align: center;
    background: #E3E7EA url(/images/bg.gif) repeat-y 50% 0%;
}

table, tr, td, input, select, textarea, ol, ul {
    vertical-align: top;
}

a img, img {
    border: 0;
}

code, pre {
    font-size: 1em; /* 12px */
    color: #999;
    display: block;
    width: 500px;
}

h1, h2, h3, h4, h5 {
    font-family: Arial, Helvetica, serif;
}

h1 {
    color: #659ABE;
    font-size: 15px;
    line-height: 20px;
}

h1 span {
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 1px 5px;
    margin-left: 4px;
    padding-left: 14px;
}

h2 {
    color: #fff;
    font-size: 15px;
    line-height: 20px;

}

h3 {
    font-size: 1.25em; /* 15px */
    line-height: 1.28em; /* 16px */
    color: #605170;
    padding: 25px 14px 3px 14px;
    width: 482px;
    background-color: #fff;
    border-bottom: 1px solid #D6DDE9;
    clear: both;
}

h4 {
    font-size: 1.13em; /* 13px */
    line-height: 1.35em;
    color: #666;
    margin: 10px 14px 3px 14px;
    padding-bottom: 1px;
    border-bottom: 1px solid #CCC;
}

a {
    text-decoration: none;
    color: #2C85B9;
}

a:focus, a:hover, a:active {
    text-decoration: underline;
}

p {
    margin: 0;
    padding: 0;
}

ul, ol {
    list-style: none;
    margin: 0;
    padding: 0;
}

dl, dt, dd, li {
    margin: 0;
    padding: 0;
}


/*
=page structure
---------------------------------------------- */

#container {
    margin: 0 auto;
    text-align: left;
    width: 735px;
}

#left_col {
    width: 185px;
    float: left;
}

div#logo {
    margin: 21px 0;
}

#search {
    margin-top: 1.5em;
}

.rss {
    position: absolute;
    right: 0;
    color: #555;
    font-family: verdana;
    font-weight: normal;
    font-size: .74em; /* 11px */
    padding-left: 5px;
}

.rss img {
    position: relative;
    top: 3px;
}

#right_col {
    float: right;
    width: 510px;
}

#head {
    width: 510px;
}

#head img {
    display: block;
}

#text_block {
    width: 510px;
    background-color: #31393F;
    background-repeat: repeat;
    background-position: 0% 0%;
}

#text_block div {
    padding: 10px 0;
    margin: 0 15px;
}

#details_block {
    width: 480px;
    padding: 9px 14px 5px 14px;
    background: #EFEFEF url(/images/bg-details-block.gif) repeat 0% 0%;
    border-left: 1px solid #EAEAEA;
    border-right: 1px solid #EAEAEA;
    border-bottom: 1px solid #EAEAEA;
}

#content {
    background: #F5F7F9 url(/images/bg-content.gif) repeat 0% 0%;
    width: 510px;
    padding-bottom: 40px;
    min-height: 300px;
    height: 300px;
    position: relative;
}

*>#content {
    height: auto;
}

/*
=main-navigation
---------------------------------------------- */

#main_navigation {
    border-top: 2px solid #605270;
    width: 185px;
}

#main_navigation a {
    width: 185px;
    border-bottom: 1px solid #D6DDE9;
    display: block;
    color: #2C85B9;
    font-size: .915em; /* 11px */;
    padding: 6px 0;
    background: #EDF1F5 url(/images/bg-main-nav-a.gif) no-repeat 0% 50%;
    text-decoration: none;
    text-indent: 5px;
}

#main_navigation a:focus, #main_navigation a:hover, #main_navigation a:active {
    color: #000;
    background-color: #D8DFE9;
    background-position: -185px 50%;
}

#main_navigation li.current a {
    color: #000;
    background-color: #D8DFE9;
    background-position: -370px 50%;
}

/*
=sub_navigation
-----------------------------------------------------*/

#main_navigation #sub_navigation {
    background-color: #E2E7ED;
    border-bottom: 1px solid #D6DDE9;
    padding: .3em 0 .5em 0;
    width: 185px;
}

#main_navigation #sub_navigation li {
    padding: .2em 0;
}

#main_navigation #sub_navigation a {
    border: none;
    background: none;
    font-size: .835em; /* 10px */
    padding: 0 13px;
    color: #2C85B9;
    text-indent: 0;
    width: 159px; /* 185px */
}

#main_navigation #sub_navigation a:focus, #main_navigation #sub_navigation a:hover, #main_navigation #sub_navigation a:active {
    color: #000;
    background: none;
}

#main_navigation #sub_navigation li.current a {
    background: transparent url(/images/bg-sub-nav-a.gif) no-repeat 0% .6em;
    color: #000;
}

/*
=sub_sub_navigation
-----------------------------------------------------*/

#main_navigation #sub_navigation #sub_sub_navigation {
    border-bottom: none;
}

#main_navigation #sub_navigation #sub_sub_navigation a {
    width: 139px; /* 185px */
    padding: 0 23px;
    background: none;
    color: #2C85B9;
}

#main_navigation #sub_navigation #sub_sub_navigation a:focus, #main_navigation #sub_navigation #sub_sub_navigation a:hover, #main_navigation #sub_navigation #sub_sub_navigation a:active {
    color: #000;
}

#main_navigation #sub_navigation #sub_sub_navigation li.current a  {
    width: 139px; /* 185px */
    padding: 0 23px;
    color: #000;
    background: transparent url(/images/bg-sub-nav-a.gif) no-repeat 0% .6em;
}

/*
=table
---------------------------------------------- */

table {
    width: 480px;
    margin: 1em 0px 1em 12px;
}

th {
    font-family: arial, verdana, serif;
    font-size: 1.13em; /* 13px */
    line-height: 1.35em;
    color: #666;
    padding-bottom: 2px;
    border-bottom: 1px solid #CCC;
}

td {
    font-size: .915em; /* 11px */; /* 11px */
    padding: .25em 0 .35em;
}


/*
=form
---------------------------------------------- */

form {
    margin: 0;
    padding: 0;
}

form, h3, form h4 {
    margin-left: 0px;
    margin-right: 0px;
}

#content form {
    margin: 1em 14px;
}

#content form span {
   color: red;
   position: relative;
   top: 2px;
}

#content form li {
    background-image: none;
    padding-left: 0px;
    margin-bottom: .5em;
}

#content form p {
    padding-left: 0px;
    padding-right: 0px;
}

fieldset {
    border: none;
    margin: 0;
    padding: 0;
}

input, textarea, select.select, option, label {
    margin: 0;
    padding: 0;
    font-family: verdana, arial, helvetica, serif;
    color: #767676;
}

input.text, select, textarea {
    border: 1px solid #D6DDE9;
}

option {
    padding: 0;
    margin: 0;
}

optgroup {
   font-weight: bold;
   font-style: normal;
}

input.submit {
    font-size: .915em; /* 11px */;
    margin: 1em 0px;
    color: #000;
}

input.text {
    margin: 0px;
    padding: 1px 2px;
    font-size: 1em;
    width: 200px;
}

textarea {
    margin: 0px;
    padding: 1px 2px;
    width: 200px;
    height: 50px;
    font-size: 1em;
}

select {
    margin: 0px;
    padding: 0px;
    color: #999;
    font-size: 1em;
    margin-top: 3px;
    border: 1px solid #D1D7E0;
}

label {
    margin: 0;
    padding: 0;
    color: #666;
    width: 150px;
    float: left;
}

label.right {
    width: 100%;
    float: none;
}

input.checkbox {
    position: relative;
    top: 3px;
    _top: -4px;
}

/* Search */

#search form {
    text-align: right;
}

#search input#search_term {
    width: 118px;
    height: 15px;
    font-size: .915em; /* 11px */;
}

#search input#search_submit {
    padding: 0;
    margin: 0px 0px 0px 1px;
    _margin: 1px 0px 0px 1px;
}

#select_person {
    margin-top: 40px;
    background-color: #eee;
    padding: 5px;
    float: left;
    width: 173px;
}

#select_person label {
    font-size: .915em; /* 11px */;
}

#select_person select {
    font-size: 1em;
    width: 175px;
    margin: 2px 0px 2px 0px;
    padding: 1px 0px 1px 0px;
}



/*
=text_block classes
---------------------------------------------- */

#text_block #person_name {
    color: #95A2B8;
    padding: 4px 0px 4px 0px;
}

#text_block #person_name a {
    color: #61AEDA;
}

#text_block div {
    font-size: .915em; /* 11px */; /* 11px */
    line-height: 1.51em; /* 17px */
    padding-top: 9px;
    color: #fff;
}

#text_block a {
    color: #5AD8F8;
}

#text_block p {
    margin-top: 2px;
}

.home {
    background-color: #2F2D3D;
    background-image: url(/images/bg-text-block-home.gif);
}

.home h1 {
    padding: 0px;
    margin: .75em 0px .75em 0px;
    background: transparent url(/images/bg-text-block-home-h1.gif) no-repeat left;
    width: 263px;
    height: 18px;
}

/* About us */
.head_16 {
    background-color: #2F2D3D;
    background-image: url(/images/bg-text-block-head-16.gif);
}

.head_16 h1 {
    color: #8E74AA;
}

.head_16 h1 span {
    background-image: url(/images/bg-h1-span-16.gif);
}

/* Our people */
.head_17 {
    background-color: #322C23;
    background-image: url(/images/bg-text-block-head-17.gif);
}

.head_17 h1 {
    color: #B7792F;
}

.head_17 h1 span {
    background-image: url(/images/bg-h1-span-17.gif);
}

.head_17 h2 span {
    color: #6D5F53;
}


/* Expertise */
.head_18 {
    background-color: #172B2E;
    background-image: url(/images/bg-text-block-head-18.gif);
}

.head_18 h1 {
    color: #6B9493;
}

.head_18 h1 span {
    background-image: url(/images/bg-h1-span-18.gif);
}

/* Publication and links */
.head_35 {
    background-color: #31393F;
    background-image: url(/images/bg-text-block-head-19.gif);
}

.head_35 h1 {
    color: #659ABE;
}

.head_35 h1 span {
    background-image: url(/images/bg-h1-span-19.gif);
}

/* News */
.head_20 {
    background-color: #393834;
    background-image: url(/images/bg-text-block-head-20.gif);
}

.head_20 h1 {
    color: #588D92;
}

.head_20 h1 span {
    background-image: url(/images/bg-h1-span-20.gif);
}

/* Contact us */
.head_21 {
    background-color: #322C23;
    background-image: url(/images/bg-text-block-head-21.gif);
}

.head_21 h1 {
    color: #AB8655;
}

.head_21 h1 span {
    background-image: url(/images/bg-h1-span-21.gif);
}

/* Join us */
.head_22 {
    background-color: #393834;
    background-image: url(/images/bg-text-block-head-22.gif);
}

.head_22 h1 {
    color: #A37C5E;
}

.head_22 h1 span {
    background-image: url(/images/bg-h1-span-22.gif);
}

/*
=details_block
---------------------------------------------- */

.vcf {
    padding-right: 2px;
    float: left;
    position: relative;
    top: -1px;
}

#details_block dl {
    width: 480px;
    margin: 1px 0px 9px 0px;
}

#details_block dd, #details_block dt {
    font-size: .76em; /* 9px */
    line-height: 1.1em;
    padding: 4px 0px 4px 0px;
    border-bottom: 1px solid #DDD;
}

#details_block dt {
    font-size: .83em; /* 10px */
    font-weight: bold;
}


#details_block a {
    font-size: 1.13em; /* 10px*/
    border-bottom: none;
}

/*
=content
---------------------------------------------- */

#content a {
    border-bottom: 1px solid #C5D9E5;
}


#content a:hover {
    text-decoration: none;
    border-bottom: 1px solid #2C85B9;
}

#content p {
    font-size: .915em; /* 11px */; /* 11px */
    line-height: 1.51em; /* 17px */
    padding: 8px 14px 10px 14px;
}

.quote {
    margin: 1em 14px;
    padding: 12px;
    background-color: #eee;
    border: 1px solid #eaeaea;
    float: left;
    display: inline;
}

.quote img {
    border: 1px solid #adadad;
    padding: 2px;
    background-color: #b8b8b8;
    float: left;
}

#content .quote p {
    width: 287px;
    padding: 0px 0px 0px 0px;
    margin: 0px 0px 1em 162px;
}

.quote strong {
    font-weight: normal;
    font-style: italic;
}

.paginate {
    padding: .5em 10px .5em 10px;
    background: #eee;
    margin: 1em 14px;
}

#content .paginate p {
    padding: 0px;
    margin: 0px;
}

#content ul {
    padding: 0px 22px 8px 22px;
}

#content li {
    font-size: .915em; /* 11px */; /* 11px */
    padding-left: 17px;
    background: transparent url(/images/bullet.gif) no-repeat 0px .5em;
    line-height: 1.69em ; /* 19px */
}

#content ul.block {
    padding: 7px 14px 11px 14px;
    color: #118CD4;
    border: 1px solid #DCF6FD;
    border-top: none;
    background: transparent url(/images/bg-ul-block.gif) repeat 0% 0%;
    width: 480px;
}

#content ul.block li {
    padding-left: 11px;
    background: url(/images/arrow2.gif) no-repeat left;
}

#content ul.links {
    padding: .75em 14px .75em 14px;
    color: #555;
}

#content ul.links li {
    padding-left: 11px;
    background: url(/images/arrow2.gif) no-repeat 0px .8em;
    color: #555;
    padding: .2em 11px;
}

#content ul.links li p {
    font-size: 1em; /* 11px */
    margin: 0px 0px 1.5em 0px;
    padding: 0px;
}

#content span.pub_date {
    display: block;
    border-bottom: 1px solid #CCC;
    font-weight: 300;
    font-size: 0.9167em;
    margin-left: 12px;
    margin-top: 11px;
    padding: 1px 0 6px;
    line-height: 1em;
    margin-bottom: 3px;
    width: 481px;
}

#item_news img {
    margin: 10px 10px 5px 12px;
    float: left;
}

#item_news #feature_image {
    border: 1px solid #D6DDE9;
    margin: 1em 0 1em 17px;
    float: none;
}

/*
=footer
---------------------------------------------- */

#footer {
    width: 100%;
    float: left;
}

#footer p {
    margin: 5px 0px 0px 0px;
    padding: 0;
}


#contact_details {
    font-size: .76em;
    line-height: 1.61em;
    width: 185px;
    float: left;
    text-align: right;
}

#contact_details p {
    margin-top: 4px;
    _margin-top: 0px;
}


#page_top {
    float: left;
    margin-left: 40px;
    width: 510px;
    display: inline;
    background: transparent url(/images/bg-page-top.gif) repeat-x 0% 0%;
    height: 24px;
}

#page_top a {
    margin: 8px 0px 0px 13px;
    display: block;
    background: transparent url(/images/bg-page-top-a.gif) no-repeat 0% 0%;
    width: 28px;
    height: 9px;
}
/*
=debug
---------------------------------------------- */

.debug {
    text-align: center;
    margin-bottom: 30px;
}

/*
=misc
---------------------------------------------- */

.hide {
    position: absolute;
    left: -999em;
}

.indent {
    margin-left: 53px;
}

.home_indent {
    margin-left: 53px;
    background: green;
    display: block;
    float: left;
}

.page_active {
    color: #fff;
}

/*
=views
---------------------------------------------- */

#view_item {
    font-size: .915em; /* 11px */;
}

/*
=listings
---------------------------------------------- */

#list_items dl {
    margin: 0 14px 20px 14px;
    clear: both;
    width: 482px;
}

#list_items dt {
    font-family: helvetica, arial, verdana, sans-serif;
    font-weight: bold;
    text-align: left;
    font-size: 1.10em; /* 13px */
    line-height: 1.3em;
    color: #666;
    border-bottom: 1px solid #dee1e9;
    padding-bottom: 1px;
    float: left;
    width: 482px;
    margin: 10px 0px 3px 0px;
}

#list_items dt a {
    color: #2c85b9;
    border-bottom: none;
}

#list_items dt a:hover {
    color: #2d343a;
    border-bottom: none;
}

#list_items dd {
    clear: both;
    font-size: .915em; /* 11px */;
    line-height: 1.51em;
}

#list_items dd div {
    width: 150px;
    height: 73px;
    float: left;
    display: inline;
    margin: 5px 11px 5px 0px;
}

#list_items dd p {
    font-size: 1em; /* 11px */
    padding-left: 0px;
    padding-right: 0px;
}


#list_items dd a {
    border-bottom: 0;
}

#list_items dd span {
    display: block;
    border-bottom: 1px solid #e7e7e7;
    font-weight: 300;
    padding: 1px 0 4px;
    line-height: 1em;
    margin-bottom: 3px;
}

/* feature_image */

#content a.feature_image img {
    display: block;
    margin: 3px;
}

#content a.feature_image {
    margin: 14px 0;
    float: left;
    background-color: #B7B7B7;
    border: 1px solid #ADADAD;
    display: block;
}

#content a.feature_image:focus, #content a.feature_image:hover, #content a.feature_image:active {
    border: 1px solid #555;
}


/* Profile */

.row {
    float: left;
}

#list_profile dl {
    width: 150px;
    float: left;
    margin: 11px 0px 0px 15px;
    display: inline;
    padding: 0px 0px 2px 0px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 22px;
}

#list_profile dt {
    color: #118CD4;
    font-size: .915em; /* 11px */; /* 11px */
    line-height: 1.2em;
    font-weight: normal;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    border-bottom: 1px solid #ddd;
    padding: 0px 0px 4px 0px;
}

#list_profile dt a {
    border-bottom: none;
}

#list_profile dd {
    padding: 3px 0px 3px 0px;
    line-height: 1.15em;
    font-size: .76em; /* 10px */
    color: #666;
}

#list_profile dd.position {
    font-weight: bold;
}

#list_name ul {
    margin: 8px 14px 13px 14px;
    float: left;
    display: inline;
    width: 482px;
    padding: 0;
}

#list_name li {
    background: none;
    margin: 0px;
    padding: 0px 10px 0px 0px;
    width: 150px;
    float: left;
}

#list_name h3 {
    clear: both;
}

#list_name h4 {
    margin-bottom: 0px;
    clear: both;
}

#content .thumb {
    background-color: #B7B7B7;
    border: 1px solid #ADADAD;
    padding: 2px;
    display: block;
}

#content .thumb:hover {
    border: 1px solid #555;
}

.show_all {
    font-size: .75em;
    line-height: 100%;
    font-weight: normal;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}

/*
=admin
---------------------------------------------- */

input.admin_submit {
    margin: 0px 14px 1em 0;
}

/*
=map
---------------------------------------------- */

#address_details {
    margin: 1em 0px 1em 14px;
    display: inline;
    width: 480px;
    float: left;
}

#address_details p strong {
    border-bottom: 1px solid #E2E3E5;
    display: block;
    padding-bottom: 0px;
    line-height: 1.69em;
    margin-bottom: .15em;
}

#address_details p {
    overflow: hidden;
    margin-right: 15px;
    padding: 0px 0px .35em 0px;
    font-size: .83em;
    line-height: 1.51em;
    width: 150px;
    float: left;
    display: inline;
    border-bottom: 1px solid #E2E3E5;
}

#address_details p.end {
    margin-right: 0px;
}

/*
=files
---------------------------------------------- */

#content ul#files {
    margin: 1em 14px;
    padding: 0px;
    width: 480px;
}

#content ul#files li {
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0px .5em;
    padding: .35em 10px .35em 24px;
}

#content .error {
    background-image: url(/images/icons/delete_file.gif);
    color: red;
}

#content .pdf {
    background-image: url(/images/icons/pdf.gif);
}

#content .msword {
    background-image: url(/images/icons/msword.gif);
}

#content .plain {
    background-image: url(/images/icons/file.gif);
}

#content .jpeg {
    background-image: url(/images/icons/jpeg.gif);
}

#content .gif {
    background-image: url(/images/icons/gif.gif);
}

#content .zip {
    background-image: url(/images/icons/zip.gif);
}
