body {
    font-size: 12px;
    line-height: 20px;
    font-family: verdana, arial, sans-serif;
    background: url(./images/bg_body.png) repeat-x #d1d3d0;
    padding: 0;
    margin: 0;
    padding-bottom: -80px;
}

#maincontainer {
    width: 975px;
    position: absolute;
    left: 50%;
    margin-left: -488px;
    top: 50%;
    margin-top: -330px;
}

/** 
 * der wrapper legt einen Schatten und einen Hintergrund unter
 * navi, content und footer, damit im Header ein transparentes
 * Bild benutzt werden kann. Dadurch wirkt der Hintergrundverlauf
 * im body besser.
 */
#wrapper {
    background: url(./images/bg_content.png) repeat-y;
}

/* Bereich Header */
#header {
     height: 174px;
     background: url(./images/bg_header2.png) no-repeat;
}

#languageselection {
    position: relative;
    float: right;
    margin-top: 147px;
    margin-right: 20px;
    padding: 0;
}

#languageselection img {
    margin: 0;
    padding: 0;
}

/* Navigationscontainer links */
#navi {
     background: url(./images/bg_navi.png) no-repeat;
     float: left;
     width: 245px;
     height: 415px;
     overflow: hidden;
     padding: 0;
     margin: 0;
}

#navi ul {
    width: 185px;
    list-style-type: none;
    list-style-image: none;
    list-style-position: inside;
    padding: 0;
    margin: 0;
}

#navi ul li {
    padding-top:5px;
    vertical-align: bottom;
}

#navi ul li.mainlevelactive span
, #navi ul li.sublevelactive span {
    font-family: verdana, arial, sans-serif;
    font-size: 12px;
    text-align: left;
    text-decoration: none;
    color: #666;
    display: block;
    line-height: 20px;
}

#navi ul li.mainlevelactive span {
    background: url(./images/Link_50Pro.png) left bottom no-repeat;
    padding-left: 20px;
    line-height: 20px;
    color: #069;
    font-weight: bold;
}

#navi ul li.sublevelactive span {
    background: url(./images/Link_40Pro.png) left bottom no-repeat;
    padding-left: 35px;
    line-height: 18px;
    color: #e80;
    font-weight: normal;
}

#navi a.mainlevel:link
, #navi a.mainlevel:visited {
    font-family: verdana, arial, sans-serif;
    font-size: 12px;
    font-weight: bold;
    text-align: left;
    text-decoration: none;
    color: #666;
    display: block;
    line-height: 20px;
    padding-left: 20px;
    background: url(./images/Link_50Pro.png) left bottom no-repeat;
}

#navi a.mainlevel:hover {
    color: #069;
}

#navi ul li ul {
    margin: 4px 0;
    list-style-type: none;
    list-style-image: none;
    list-style-position: inside;
}

#navi a.sublevel:link
, #navi a.sublevel:visited {
    font-family: verdana, arial, sans-serif;
    font-size: 12px;
    font-weight: normal;
    text-align: left;
    text-decoration: none;
    color: #666;
    display: block;
    line-height: 18px;
    padding-left: 35px;
    padding-bottom: 1px;
    background: url(./images/Link_40Pro.png) left bottom no-repeat;
}

#navi a.sublevel:hover {
    color: #e80;
}

#navi ul li a#active_menu {
    color: #069;
    background: url(./images/Link_70Pro.png) left bottom no-repeat;
}

#navi ul li ul a#active_menu {
    color: #e80;
    background: url(./images/Link_40Pro.png) left bottom no-repeat;
}

#navi ul {
    margin: 90px 0 0 32px;
}


/* Content Bereich */
#content {
    width: 719px;
    float: right;
    height: 400px;
}

#content #inner_content p
, #content #inner_content ul li {
    color: #003252;
}

#content a:link
, #content a:visited {
    color: #de8200;
    text-decoration: none;
}

#content a:hover {
    text-decoration: underline;
}

#news {
    background: transparent;
    position: absolute;
    top: 200px;
    left: 735px;
    width: 196px;
    border-width: 0 1px 0 1px;
    border-style: solid;
    border-color: #222b62;
    margin: 0;
}

#news-title {
    background: url(./images/news_top.png) no-repeat;
    height: 28px;
    color: white;
    font-style: italic;
    font-size: 20px;
    font-weight: bold;
    padding: 0 0 0 5px;
    margin: 0;
}

#news_content {
    height: 300px;
    overflow: auto;
    margin: 0;
    padding: 0 5px;
}

#news_content p {
    font-size: 12px;
    color: #001428;
    line-height: 16px;
    margin-bottom: 5px;
}

#news_content {
    font-size: 12px;
}

#news_content h1,
#news_content h2,
#news_content h3,
#news_content h4,
#news_content h5 {
    color: #003975;
}

#news_content h1 {
    font-size: 18px;
}

#news_content h2 {
    font-size: 14px;
}

#news_content h3 {
    font-size: 14px;
}

#news_content h4 {
    font-size: 12px;
}

#news_content h5 {
    font-size: 12px;
}

#news_content img {
    float: right;
    border: 3px solid #002d5c;
    margin: 0;
    padding: 0;
}

#news_footer {
    background: url(./images/news_bottom.png) no-repeat;
    height: 13px;
    display: block;
    margin: 0;
}

#inner_content {
    width: 686px; 
    height: 395px;
    overflow: auto;
    margin-left: 20px;
    margin-top: 0;
    padding: 10px 0 10px 0;
}

#text_container {
    margin-right: 120px;
    margin-left: 80px;
}

#text_container div.error p {
    color: red;
}

#text_container p,
#text_container li {
    font-size: 12px;
    color: #001428;
    line-height: 20px;
}

#text_container h1,
#text_container h2,
#text_container h3,
#text_container h4,
#text_container h5 {
    color: #0087b0;
}

#text_container h1 {
    font-size: 18px;
    text-transform: uppercase;
}

#text_container h2 {
    font-size: 16px;
    text-transform: uppercase;
}

#text_container h3 {
    font-size: 14px;
}

#text_container h4 {
    font-size: 12px;
}

#text_container h5 {
    font-size: 12px;
    margin-bottom: 5px;
}

#text_container img {
    float: right;
    border: 3px solid #e68900;
    margin: 4px;
    padding: 0;
}

#text_container .news_list {
    border: 1px solid #aaa;
    margin-bottom: 10px;
    padding: 0 0 10px 0;
}

#text_container .news_list p.bodytext {
    margin-bottom: 5px;
}

#text_container .news_list p
, #text_container .news_list a
, #text_container .news_list h1
, #text_container .news_list h2
, #text_container .news_list h3
, #text_container .news_list h4
, #text_container .news_list h5 {
    padding-left: 10px;
    padding-right: 10px;
    text-transform: none;
}

#text_container .news_list h2 {
    font-size: 12px;
    margin-top: 5px;
}

#text_container .news_list h5 {
    margin: 0;
    padding: 0 10px;
    background-color: #aaa;
    color: white;
    font-size: 10px;
}

#text_container .tx-ttnews-browsebox {
    background: none;
    border: 1px solid #aaa;
    margin: 0;
    padding: 0 0 4px 0;
}

#content #inner_content #text_container div.tx-ttnews-browsebox p {
    margin: 0 0 4px 0;
    padding-left: 10px;
    color: white;
    background-color: #aaa;
    font-size: 10px;
}

#text_container .tx-ttnews-browsebox table {
    border-collapse: collapse;
}

#text_container .tx-ttnews-browsebox table td {
    padding: 0 4px;
}

#content #inner_content #text_container .tx-ttnews-browsebox table td p {
    padding: 0 4px;
    margin: 0;
    background: none;
    font-size: 12px;
}

#text_container .tx-ttnews-browsebox table td.tx-ttnews-browsebox-SCell {
    border: none;
    background-color: #aaa;
    color: white;
}

#text_container .tx-ttnews-browsebox table td.tx-ttnews-browsebox-SCell a {
    color: white;
}

/* Formular */

#text_container fieldset.csc-mailform {
    width: 340px;
    padding: 10px 40px 0 40px; 
    margin: 0 auto 6px 20px;
    border: 1px solid #aaa;
}

#text_container fieldset.csc-mailform div.csc-mailform-field {
    text-align: center;
}

#text_container fieldset.csc-mailform div.csc-mailform-label h4 {
    margin: 0;
    padding: 10px 0;
    text-align: center;
}

#text_container fieldset.csc-mailform label {
    display: block;
    margin-top: 8px;
    font-weight: bold;
    text-align: left;
    font-size: 12px;
}

#text_container fieldset.csc-mailform input.csc-mailform-submit {
    width: 100px;
    margin: 5px auto;
}

#text_container fieldset.csc-mailform textarea
, #text_container fieldset.csc-mailform input {
    width: 340px;
    padding: 2px 5px;
    border: 1px solid #888;
    background-color: #efefef;
}

/* Footer Bereich */
#footer {
    background: url(./images/bg_footer.png);
    height: 78px;
    text-align: center;
    clear: both;
    padding: 0;
    margin: 0;
}

#footer div {
    color: white;
    font-weight: bold;
    font-size: 12px;
    height: 64px;
    padding-top: 14px;
}
