/* default
----------------------------------------------------------------------------------------------------*/

html { overflow: -moz-scrollbars-vertical; }

.clearfix:after { 
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden; 
}

.clearfix { display: inline-block; }  /* for ie7 */
.clearfix { display: block; } /* this returns it back to normal */
* html .clearfix { height: 1% } /* for ie6 */


/* Layout elements
----------------------------------------------------------------------------------------------------*/

#header,
#navigation-main,
#navigation-sub,
#content,
#content-sub,
.dotted-bottom,
#front h2.subline {
    background: url(../img/bg-dotted-line.gif) bottom repeat-x;
}

#navigation-sub {
    height: 30px;
    font-size: 11px;
}

#content,
#content-sub {
    padding: 20px 0;
}

.dotted-bottom {
    padding: 30px 0;
}

#last {
    width: 1000px;
    height: 47px;
    display: block;
    background: url(../img/images/bg-bottom_03.png) center bottom;
    margin: 0 auto;
}



/* Header
----------------------------------------------------------------------------------------------------*/

#header { padding: 25px 0 18px 0; }
#header .grid_4 a img,
#header .grid_4 a:hover,
#header .grid_4 a:hover img { border: none; }

#header .grid_10    { text-transform: uppercase; }
#header .grid_2     { text-align: right; }

#header,
#header a.active    { color: #0053AB; }
#header a           { color: #869BAC; }


/* Navigation
----------------------------------------------------------------------------------------------------*/

#navigation-main {
    padding-bottom: 6px;
}

#navigation-main ul,
#navigation-sub ul {
    list-style: none;
    margin: 6px 0 0 10px;
}

#navigation-main ul li,
#navigation-sub ul li {
    float: left;
    padding: 0;
    margin: 0 30px 0 0;
}

#navigation-main ul li a,
#navigation-sub ul li a {
    color: #666;
}

#navigation-main ul li a.active,
#navigation-sub ul li a.active {
    color: #0053AB;
}

#navigation-sub ul {
    float: left;
    display: inline;
}

#navigation-sub .nav-36 { margin-left: 10px; }
#navigation-sub .nav-3 { margin-left: 92px; }
#navigation-sub .nav-43 { margin-left: 165px; }
#navigation-sub .nav-41 { margin-left: 240px; }
#navigation-sub .nav-9 { margin-left: 366px; }
#navigation-sub .nav-13 { margin-left: 523px; }

#navigation-sub .nav-7 { margin-left: 273px; }
#navigation-sub .nav-28 { margin-left: 165px; }

.lang_2 #navigation-sub .nav-36 { margin-left: 10px; }
.lang_2 #navigation-sub .nav-3 { margin-left: 108px; }
.lang_2 #navigation-sub .nav-43 { margin-left: 165px; }
.lang_2 #navigation-sub .nav-41 { margin-left: 240px; }
.lang_2 #navigation-sub .nav-9 { margin-left: 345px; }
.lang_2 #navigation-sub .nav-13 { margin-left: 442px; }
.lang_2 #navigation-sub .nav-7 { margin-left: 165px; }


/* Footer
----------------------------------------------------------------------------------------------------*/

#footer {
    margin-top: 10px;
    font-size: 10px;
}

#footer a {
    color: #666;
}

#footer .grid_4 a {
    margin-right: 8px;
    margin-left: 8px;
}

#footer .grid_4 a.first {
    margin-left: 0;
}

#footer .grid_3 {
    text-align: right;
}

#footer .grid_3 a {
    margin-right: 10px;
    padding-left: 14px;
    padding-top: 1px;
    background: url(../img/icons/print.png) 0 50% no-repeat;
}



/* Content
----------------------------------------------------------------------------------------------------*/

#teaser         { position: relative; height: 340px; margin-bottom: 20px; }
#front #teaser  { margin-bottom: 0; }

#teaser p {
    background: #0D55A4;
    color: #fff;
    width: 308px;
    padding: 10px 10px 8px 10px;
    position: absolute;
    bottom: 6px;
    left: 6px;
    margin-bottom: 0;
}

#teaser p a {
    color: #fff;
}

#teaser p strong {
    text-transform: uppercase;
}

#content p {
    line-height: 120%;
    font-size: 13px;
}


/* Content-sub
----------------------------------------------------------------------------------------------------*/

#content-sub .grid_6 h2 {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 8px;
}

#content-sub .grid_6 p {
    line-height: 16px;
    margin-bottom: 8px;
}

.grid_6 #box {
    width: 340px;
    height: 120px;
    background: #0053AB;
}

.grid_6 #box_inner {
    color: #fff;
    padding: 8px;
}

.grid_6 #box_inner #text_1 {
    z-index: 1;
    opacity: 1;
    position: absolute; 
}

.grid_6 #box_inner #text_2 {
    z-index: 3;
    opacity: 0;
    position: relative;
    border: 1px solid #0053AB;
}

.grid_6 #box_inner h2 a,
.grid_6 #box_inner p a {
    color: #fff;
}

.border {
    border: 1px solid red !important;
}

#content-sub .grid_3 h3 {
    font-size: 12px;
    margin-bottom: 5px;
    line-height: 14px;
}

#content-sub .grid_3 p {
    font-size: 11px;
    line-height: 13px;
    margin-bottom: 8px;
}

#content-sub .grid_3 img {
    margin-bottom: 8px;
}

#content-sub .grid_3 p a.fancy {
    line-height: 180%;
    border-bottom: none;
}

#content-sub .grid_3 p a.fancy.linkborder {
    border-bottom: inherit;
}



/* Typography
----------------------------------------------------------------------------------------------------*/

body { 
    color: #666;
/*  background: url(../img/images/bg-top_03.jpg) center top no-repeat;
    padding-top: 15px;*/
}

a                   { color: #0053AB; text-decoration: none; }
a.active            { font-weight: bold; }
.grid_9 a.active    { border-bottom: 1px solid #F56D1D; }

a:hover,
#content-sub .grid_3 p a.fancy.linkborder:hover
                    { border-bottom: 1px solid #F56D1D; }
a.no-border:hover   { border-bottom: none; }

a img               { border: 1px solid #fff; }
a:hover img         { border: 1px solid #F56D1D; }

p a,
#content-sub .grid_3 p a.fancy.linkborder
                    { border-bottom: 1px solid #ccc; }
                    
#content p.f-small  { font-size: 11px; line-height: 1.4; }

h1,
h2 {
    color: #0053AB;
}

h1                  { margin: 0 0 20px 0; line-height: 25px; font-weight: normal; font-size: 22px; }
h2                  { font-size: 13px; margin-bottom: 0; }
h3                  { font-size: 13px; margin-bottom: 6px; }
h4                  { text-transform: uppercase; font-size: 12px; margin-bottom: 0; }
h5                  { font-size: 12px; margin-bottom: 0; }
h6                  { font-size: 12px; font-style: oblique; margin-bottom: 0; }


#content blockquote,
#content blockquote p {
    font-size: 16px;
    line-height: 125%;
}


/* Images
----------------------------------------------------------------------------------------------------*/

#content p img,
#content .image {
    float: left;
    margin: 0 16px 8px 0;
}

#content .image {
    float: left;
    font-size: 11px;
    width: 160px;
}

#content .image img {
    margin: 0 0 4px 0;
}

#content .image strong {
float: left;
}

.grid_22 img {
    width: 100px;
    height: 100px;
}


/* Lists
----------------------------------------------------------------------------------------------------*/

#content li {
    padding-top: 2px;
    padding-bottom: 2px;
}

#content ul li {
    margin-left: 0;
    list-style: none;
    padding-left: 10px;
    background: url(../img/icons/bullet.gif) left 8px no-repeat;
    border-bottom: 1px solid #E5EFF6;
    display: block;
    width: 100%;
}

#content ul ul {
    margin-bottom: 0;
}

#content ul ul li,
#content ul li.sitemapStandardLevel_2 {
    padding-left: 20px;
    padding-top: 0;
    padding-bottom: 0;
    background: url(../img/icons/bullet-sub.png) 10px 8px no-repeat #F2F7FB;
    border-bottom: none;
    font-style: oblique;
}

#content ol {
    list-style-position: inside;
}

#content ol li {
    margin-left: 0;
    border-bottom: 1px solid #E5EFF6;
}

#content ol ol {
    margin-bottom: 0;
}

#content ol ol li {
    padding-left: 20px;
    padding-top: 0;
    padding-bottom: 0;
    font-style: oblique;
    border-bottom: 0;
    background: #F2F7FB;
}


/* Tables
----------------------------------------------------------------------------------------------------*/

table {
    width: 100%;
    border: 1px solid #BFD6E9;
    margin-bottom: 10px;
}

table caption {
    display: none;
}

col.colC {
    width: 8em;
}

th, td {
    padding: .2em 1em;
    text-align: left;
}

thead th {
    background: #005DA8;
    padding: .4em 1em .2em;
    border: 1px solid #005DA8;
    color: #fff;
}

thead th.table-head {
    font-size: 1em;
    font-weight: normal;
    text-transform: uppercase;
    background: #fff;
    border: 1px solid #fff;
    border-bottom: none;
    color: #005DA8;
}

tbody th,
tbody td {
    border-top: 1px solid #BFD6E9;
    border-bottom: 1px solid #BFD6E9;
}

tbody tr.odd th,
tbody tr.odd td {
    background: #E5EFF6;
}

tfoot th,
tfoot td {
    border-top: 2px solid #005DA8;
    background: none;
}


/* Box
----------------------------------------------------------------------------------------------------*/
.box {
    padding: 8px 8px 0 8px;
    background: #E5EFF6;
    margin-bottom: 20px;
}

#content .box ul {
    padding-bottom: 8px;
    margin-bottom: 0;
}

#content .box ul li {
    border: none;
}


/* Front
----------------------------------------------------------------------------------------------------*/

#front #content {
    position: relative;
}

#front #wrapper {
    position: absolute;
    bottom: 16px;
}

#front h1 {
    margin-bottom: 0;
}

#front h2 {
    font-size: 14px;
    margin-bottom: 3px;
}

#front h2.subline {
    font-weight: normal;
    padding-bottom: 10px;
    color: #666;
}

#front h3 {
    font-size: 12px;
}

#front p.f-small {
    margin-bottom: 6px;
    line-height: 13px;
}

#front blockquote {
    margin-bottom: 20px;
}


/* Sub
----------------------------------------------------------------------------------------------------*/

#sub blockquote {
    padding-top: 0;
    margin-bottom: 20px;
}

#sub blockquote.cite {
    font-size: 12px;
}

#sub blockquote.cite em {
    font-style: normal;
}

#sub .overview {
    width: 110px;
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
    border: 1px solid #f2f2f2;
    text-align: center;
}


/* FancyBox
----------------------------------------------------------------------------------------------------*/

div#fancy_title table,
div#fancy_title tr,
div#fancy_title td {
    border: none;
}


/* Forms
----------------------------------------------------------------------------------------------------*/

label.fieldName {
    width: 80px;
    display: block;
    float: left;
}

input.textField {
    width: 78%;
}

p.submitButton {
    text-align: right;
}

#flash-container {
    border: 1px solid #f2f2f2;
    height: 110px;
    z-index: 1;
}

object {    
    padding: 0;
}

#front #flash-container {
    height: 110px;
    overflow: hidden;
}


/* Kontaktformular
----------------------------------------------------------------------------------------------------*/

form#contact {
}

form#contact fieldset {
    padding: 8px;
    border: 1px solid #f2f2f2;
}

form#contact legend {
    padding: 0 4px;
    margin: 0 8px;
    color: #0053AB;
}

form#contact p.textBox,
form#contact p.radioBox,
form#contact p.textArea {
    margin-bottom: 8px;
}

form#contact label.fieldName {
    width: 110px;
    text-align: right;
    line-height: 180%;
    padding-right: 8px;
}

form#contact span label.fieldName {
    float: none;
    display: inline;
    width: auto;
}

form#contact label sup {
}

form#contact input.textField,
form#contact textarea {
    width: 370px;
    border: 1px solid #ddd;
    padding: 4px;
}

.error,
.success {
    padding: .8em;
    margin-bottom: 20px;
}

.error {
    color: #514721;
    background: #FFF6BF;
    border: 1px solid #FFD324;
}

label.error {
    border: none;
    margin: 0;
    padding: 0; 
}

#content .error p {
    margin-bottom: 0;
}

#content .error ol {
    margin-bottom: 0;
}

#content .error ol li {
    border-bottom: none;
    padding: 0;
    line-height: 130%;
}

.success {
    border: 1px solid #E5EFF6;
}

.success p {
    margin-top: 4px;
    margin-bottom: 0;
}

#content .grid_6.alpha {
    margin-bottom: 20px;
}

.artikelliste a.more-link {
    white-space: nowrap;
}


/* Boxen
----------------------------------------------------------------------------------------------------*/

#content-sub .grid_2 a {
    float: left;
}

.clear {
    clear: both;
    display: none;
}
