/*************************\
  Standard Elements
\*************************/

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    line-height: 18px;
    color: #433f3c;
    background: #d8d8d8;
}

a {
    text-decoration: none;
    color: #433f3c;
}

a:hover,
a:active,
a.current {
    color: #b0122d;
    border-bottom: 2px solid #b0122d;
}

hr {
    margin: 0px;
    clear: left;
    width: 100%;
    border: none;
    border-top: 1px solid #433f3c;
    height: 1px;
}

hgroup {
    text-align: center;
    margin: 20px 0 45px 0;
}

.impressum hgroup,
.kontakt hgroup,
.abonnement hgroup {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}

h1 {
    font-size: 21px;
    line-height: 30px;
    font-weight: 300;
    color: #4c6064;
}

h2 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 300;
}

h3 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 300;
    color: #b0122d;
    margin-bottom: 10px;
}

nav ul {
    padding: 0;
    margin: 0;
    text-align: center;
}

    nav li {
        list-style: none;
        margin-left: 20px;
        display: inline;
        text-transform: uppercase;
    }




input[type="text"],
input[type="email"] {
    width: 100%;
    height: 30px;
    line-height: 30px;
    border: 1px solid #d8d8d8;
    padding: 0 10px;
    -webkit-appearance: none;
    -webkit-border-radius: 0; 
    border-radius: 0;
}

img {
    display: block;
    max-width: 100%;
}



/*************************\
  Structure
\*************************/

.container {
    width: 960px;
    padding: 0 20px;
    margin: 0 auto;
    overflow: hidden;
}



/*************************\
  Main page content
\*************************/

.main {
    background: #ffffff;
    padding-bottom: 45px;
}

    .slider {
        margin-bottom: 15px;
    }
    
    .content {
        margin-top: 45px;
    }

    .covers {
        margin-top: 45px;
    }

        .boxed {
            border: 1px solid #d8d8d8;
            padding: 20px;
        }

        .boxed img {
            margin: 0 auto;
        }


.button {
    background: #d8d8d8;
    border: none;
    font-weight: normal;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    text-align: center;
    color: #ffffff;
}



/*************************\
  Header
\*************************/

.header {
    width: 100%;
    background: #ffffff;
}

    .main-navigation {
        position: relative;
    }

        .main-navigation nav {
            height: 60px;
            line-height: 60px;
            position: absolute;
            bottom: 0;
            right: 20px;
        }

        .logo {
            margin: 15px 0;
        }

    .masthead {
        width: 100%;
        background: #d8d8d8;
        border-top: 1px solid #bababa;
    }

        .sub-navigation {
            height: 40px;
            line-height: 40px;
        }

        .submenu-item {
            display: none;
        }



/*************************\
  Footer
\*************************/

.footer {
    width: 100%;
    background: #d8d8d8;
    border-top: 1px solid #bababa;
    text-align: center;
    padding: 20px 0 30px;
    overflow: hidden;
}
    
    .footer nav {
        margin-bottom: 20px;
    }

    .footer p {
        margin: 0 20px;
    }



/*************************\
  Substitutes
\*************************/



/*************************\
  Helpers
\*************************/

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.pull-left {
    float: left;
}

.pull-right {
    float: right;
}

.centered {
    text-align: center;
    margin: 0 auto;
}

.top-margin {
    margin-top: 45px;
}

.error {
    border: 1px solid red !important;
}



/*************************\
  Media Queries
\*************************/

@media only screen and (max-width : 960px) { 
    
    .container {
        width: 100%;
    }

}

@media only screen and (max-width : 600px) { 
    
    .main-navigation {
        height: auto;
    }

        .main-navigation nav {
            position: relative;
            right: 0;
        }



    .main-navigation .logo {
        float: none;
        margin: 20px auto 20px;
    }

    .main-navigation .desktop {
        display: block;
        float: none;
    }

    .main-navigation .desktop li:first-of-type {
        margin-left: 0;
    }

    .sub-navigation {
        font-size: 11px;
    }

     .sub-navigation nav {
        margin: 0 auto;
        float: none;
    }

    .sub-navigation li {
        margin: 0 10px;
    }

}
