/** last edit: 26.02.2015 */
@keyframes rotieren_rechts {
      0% { transform: rotate(1deg); }
    100% { transform: rotate(360deg); }
}
@-moz-keyframes rotieren_rechts {
      0% { -moz-transform: rotate(1deg); }
      100% { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes rotieren_rechts {
      0% { -webkit-transform: rotate(1deg); }
      100% { -webkit-transform: rotate(360deg); }
}

* {
    margin: 0;
    padding: 0;
}
html, body {
    width: 100%; min-width: 280px;
    height: 97%;
    font-family: Arial, Helvetica, sans-serif;
    color: #000000;
    background-color: #E9E9E9;
}
.box-schatten {
    -webkit-box-shadow: 0px 0px 6px #555555;
    box-shadow: 0px 0px 6px #555555;
}

#main {
    position: relative; top: 5%;
    width: 95%; min-width: 280px; max-width: 1024px;
    margin: 0 auto; 
    background-color: #E4E4E4;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    -webkit-box-shadow: 0px 3px 3px #555555;
    box-shadow: 0px 3px 3px #555555;
    display: flex;
    flex-wrap: wrap;
}

header {
    position: relative; top: -19px; left: -12px;
    width: 430px;
    padding: 12px 10px 0 10px;
    z-index: 3;
}
header img {
    position: relative; 
    width: 100%;
}

nav {
    flex: 0 75%;
    order: 2;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-around;
    align-content: flex-start;
    align-items: center;
}
#bu1, #bu2, #bu3 {
    width: 60px; height: 60px;
    margin: 8px 20px 20px 20px;
    border: 1px solid #999999;
    border-radius: 30px;
    background-color: #CCCCCC;
    text-align: center;
    cursor: pointer;
    z-index: 4;
}
#bu1, #bu2, #bu3 { display: none; }
#bu1:hover {
    border: dashed 1px #9B111E;
    -webkit-animation: rotieren_rechts 0.5s linear infinite;
    -moz-animation: rotieren_rechts 0.5s linear infinite;
    animation: rotieren_rechts 0.5s linear infinite;
    -webkit-box-shadow: 0px 0px 6px #9B111E;
    box-shadow: 0px 0px 6px #9B111E;
}
#info {
    position: relative; top: 0px; left: 0px;
    width: 60px; height: 60px;
    background-image: url(../pics/info_i.svg);
    background-size: cover;
    cursor: pointer;
}
#info:hover {
    -webkit-animation: rotieren_rechts 0.5s linear infinite;
    -moz-animation: rotieren_rechts 0.5s linear infinite;
    animation: rotieren_rechts 0.5s linear infinite;  
}
#bu2:hover {
    -webkit-box-shadow: 0px 0px 6px #9B111E;
    box-shadow: 0px 0px 6px #9B111E;
}
#home {
    position: relative; top: 7px; left: 8px;
    width: 45px; height: 43px;
    background-image: url(../../pics/home_black.svg);
    background-size: cover;
    cursor: pointer;
}
#home:hover { background-image: url(../../pics/home_black_over.svg); }
#favo {
    position: relative; top: 5px; left: 8px;
    width: 45px; height: 45px;
    background-image: url(../../pics/favstern_black.svg);
    background-size: cover;
    cursor: pointer;
}
#bu3:hover {
    border-color: #D7A034;
    -webkit-box-shadow: 0px 0px 6px #D7A034;
    box-shadow: 0px 0px 6px #D7A034;
}
#favo:hover { background-image: url(../../pics/favstern_red.svg); }


#content {
    height: auto;
    flex: 1 1 98%;
    text-align: center;
    overflow: visible;
}
#hjspic {
    display: block;
    width: 75%; max-width: 240px;
    height: auto;
    margin: 12px auto;
    border-radius: 5px;
    border: none;
    opacity: 0.4;
    z-index: 1;
}
#hjspic:hover {
    -webkit-box-shadow: 0px -5px 20px #555555;
    box-shadow: 0px -5px 20px #555555;
}
#zitat {
    width: 90%;
    margin: 0px auto 18px auto;
    font-family: Times, serif;
    font-size: 0.9em;
    font-style: italic;
    text-shadow: 0 0 1px #333333;
    z-index: 0;
}

footer {
    bottom: 0px; top: auto; left: 0px;
    width: 100%; height: 48px;
    margin: 65px auto 0px auto;
    text-align: center;
    font-size: 1.5em;
    font-style: italic;
    line-height: 47px;
    background-color: #CCCCCC;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
footer:hover {
    -webkit-box-shadow: 0px 0px 6px #9B111E;
    box-shadow: 0px 0px 6px #9B111E;
}
footer > p {
    width: 90%;
    margin: 0px auto;
}

@media only screen and (max-width: 320px) and (min-height: 525px) {
    footer { position: absolute; }
}
@media only screen and (max-width: 340px) and (min-height: 545px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 341px) and (max-width: 360px) and (min-height: 590px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 361px) and (max-width: 400px) and (min-height: 585px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 401px) and (max-width: 479px) and (min-height: 595px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 480px) and (max-width: 799px) and (min-height: 610px){
    footer { position: absolute; }
}
@media only screen and (min-width: 800px) {
    nav {
        order: 0;
        flex: 1 0 20%;
        margin: 0px auto;
    }  
}
@media only screen and (min-width: 800px) and (min-height: 610px) { 
    footer { position: absolute; }
}
/*
@media only screen and (max-width: 340px) and (min-height: 730px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 341px) and (min-height: 760px) {
    footer { position: absolute; }
}

@media only screen and (min-width: 350px) and (min-height: 700px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 400px) and (min-height: 720px) {
    footer { position: absolute; }
}
@media only screen and (min-width: 800px) {
    nav {
        order: 0;
        flex: 1 0 20%;
        margin: 0px auto;
    }  
}
@media only screen and (min-width: 800px) and (min-height: 620px) { 
    footer { position: absolute; }
}
*/