body
{
margin: 0 auto;
background: #FFFFFF;
font-family: helvetica, arial, sans-serif;
color: #333333;
font-size: 1em; 
}

h1
{
font-size: 1.6em;
font-weight: normal;
color: inherit;
text-align: center;
margin: 10px 0;
}

h2
{
font-size: 1.6em;
font-weight: normal;
color: inherit;
text-align: left;
margin: 10px 0;
}

h3
{
font-size: 1.2em;
font-weight: bold;
color: #0054A5;
text-align: left;
margin: 10px 0;
}
h4
{
font-size: 1em;
font-weight: bold;
color: #000000;
text-align: left;
margin: 10px 0 0 0;
}

p
{
font-size: 1em; 
margin: 1.4em 0;
line-height: 1.4em;
}

a
{
text-decoration: none;
color: inherit;
transition: color .5s ease;
}

a:link
{
text-decoration: none;
color: #0054A5;
transition: color .5s ease;
}

a:hover
{
text-decoration: underline;
color: #01A9E7;
}

/* MISC */

.clear
{
clear:both;
}

.hidden
{
position:absolute;
clip: rect(1px 1px 1px 1px); /* IE6 & 7 */
clip: rect(1px, 1px, 1px, 1px);
}

sup
{
font-size: 0.6em;
vertical-align:super;
}

sub
{
font-size: 0.6em;
vertical-align:sub;
}

.klein
{
font-size: 0.6em;
line-height: 1em;
}

.rechts
{
text-align: right;
}

.center
{
text-align: center;
}

.block
{
text-align: justify;
}

strong
{
font-weight: bold;
}

/* - Bilder - */

figcaption
{
line-height: 2em;
text-align: left;
font-size: 0.8em;
color: #666666;
border-bottom: 1px solid #333333;
}

.img-rechts
{
float:right;
margin-left: 30px;
margin-top: 5px;
margin-bottom: 10px;
}

.img-links
{
float:left;
margin-right: 30px;
margin-top: 5px;
margin-bottom: 10px;
}

/* ------------------------- header ----------*/

header
{
position:relative;
width:auto;
max-width:900px;
height: 140px;
margin: 0 auto;
background: #FFFFFF;
}

#logo
{
position: absolute;
top: 12px;
left: 0;
width: auto;
max-width: 600px;
}

#flag
{
position: absolute;
top: 20px;
right: 4px;
margin: 0;
color: #666666;
}

#engl
{
margin: 8px 0;
}


#kopf
{
width: 100%;
height: auto;
text-align: center;
}

.abstand
{
margin: 0 30px;
}


/* ----------------------- Navigation ------------*/

nav ul
{
margin: 20px auto;
width: 100%;
max-width: 900px;
height: 40px;
list-style:none;
font-size: 1.2em;
background: #FFFFFF;
}


nav ul li
{
display:block;
float:left;
padding: .1em .9em;
color: #999999;
border-right:  3px solid #0054A5;
}


nav ul li a:link
{
color: #999999;
}


nav ul li a:hover
{
color: #01A9E7;
text-decoration: underline;
}

#on, #firston
{
color: #0054A5;
}

#first, #firston
{
margin-left: -0.8em;
}



#mobileMenu
{
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        display: none;
}

#mobileMenu ul li
{
        display:block;
        background-color: #eeeeee;
        color: #fff;
		font-weight: bold;
        padding: 12px 0;
        letter-spacing: 0.1em;
        text-align: center;
        text-transform: uppercase;
        border-bottom: 1px solid #0054A5;
}

#mobileMenu a:hover
{
text-decoration: none;
color: #01A9E7;
}

#mobileMenu a:visited
{
text-decoration: none;
color: #0054A5;
}

.toggleMobile
{
        display: none;
}




/* ----------------- Sektionen ------------------ */

section
{
background: #FFFFFF;
width:auto;
max-width:900px;
margin: 0 auto;
padding: 20px 0;
}


/* - Profil - */

#profil
{
}

/* - Partner - */

#partner article
{
width: 24em;
float: left;
text-align: left;
margin-right: 3em;
}

.ende
{
margin-right: 0;
}

#partner article p
{
margin-top: 2px;
}


/* - Impressum - */

#impressum
{
text-align: left;
}

/* - Datenschutz - */

#dse
{
text-align: left;
}

#dse ul li
{
font-size: 1em; 
margin: 1.4em 0;
line-height: 1.4em;
list-style-type: disc;
margin-left: 2em;
}


/* ------------------------ Footer -------------- */

footer
{
position:relative;
clear:both;
width:auto;
height:80px;
background:#0054A5;
color: #FFFFFF;
font-size: 0.8em;
}

footer a:link
{
color: #FFFFFF;
}

footer .wrapper
{
line-height: 1.6em;
margin: 0 auto;
padding-top:5px;
width:auto;
max-width:900px;
background:#0054A5;
}

footer .wrapper .column
{
float:left;
width:20em;
margin:10px 20px 10px 0;
text-align: left;
}

footer .wrapper .columnrechts
{
float:right;
width:auto;
margin:10px;
}



/* MEDIA QUERIES FOR A RESPONSIVE LAYOUT */

@media (max-width: 500px)
{
body
{
width:auto;
max-width:100%;
padding: 0 10px;
}
header
{
height: 100px;
}

#logo
{
position: absolute;
top: 10px;
left: 60px;
max-width: 240px;
}

#kopf img
{
margin: 6px;
width: 100px;
height: auto;
}

.abstand
{
margin: 0;
}


img
{
width: auto;
max-width: 100%;
}


.block
{
text-align: left;
}

.img-rechts, .img-links
{
float:none;
margin
: 10px;
}

#partner article.ende
{
max-width: 95%;
}


footer .wrapper .column
{
float:none;
max-width: 100%;
padding-left: 20px;
}

footer .wrapper .columnrechts
{
float:none;
max-width: 100%;
}
	

		nav
		{
		display: none;
		}
		
		.container
		{
		height: 1px;
		top: -1500px;
		}
		        

        #mobileMenu
        {
                display: block;
                z-index: 99;
        }
        .toggleMobile
        {
                position: fixed;
                top: 10px;
                left: 10px;
                display: block;
                width: 40px;
                height: 36px;
                cursor: pointer;
                z-index: 999;
        }
        .toggleMobile span.menu1, .toggleMobile span.menu2, .toggleMobile span.menu3
        {
                display: block;
                position: absolute;
                width: 40px;
                height: 8px;
                left: 0;
                background: #0054A5;
                -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
                transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
        }
        .toggleMobile span.menu1
        {
                top: 0;
        }
        .toggleMobile span.menu2
        {
                top: 14px;
        }
        .toggleMobile span.menu3
        {
                top: 28px;
        }
        .toggleMobile.active span.menu1
        {
                top: 14px;
                -webkit-transform: rotate(45deg);
                -moz-transform: rotate(45deg);
                -o-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                transform: rotate(45deg);
                -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
                transition: all 0.5s cubic-bezier(0.75, 0.25, 0.10, 0.95);
        }
        .toggleMobile.active span.menu2
        {
                -webkit-transform: rotate(-45deg);
                -moz-transform: rotate(-45deg);
                -o-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
                transform: rotate(-45deg);
                -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
                transition: all 0.5s cubic-bezier(0.75, 0.25, 0.10, 0.95);
        }
        .toggleMobile.active span.menu3
        {
                opacity: 0;
                -webkit-transition: opacity 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
                transition: opacity 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
        }
}

@media (max-width: 915px)
{
#boxcontent article
{
float: none;
margin: 30px auto 0 auto;
width: 60%;
}
#slider_content1 h3, #slider_content2 h3, #slider_content3 h3, #slider_content4 h3, #slider_content5 h3
{
font-size: 1em;
}
.container
{
width:auto;
margin: 230px auto 20px auto;
position:relative;
}
}

@media (min-width: 1920px)
{
header
{
height: 100px;
}

#logo
{
width: auto;
max-width: 300px;
}

}
