/* ----------------------------------------------------------------------------- *
 *                           Styles der Basisversion                             *
 * ----------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------- *
 * Änderung des default-Box-Modells aller Elemente auf "border-box"
 * http://www.paulirish.com/2012/box-sizing-border-box-ftw/
 * << apply a natural box layout model to all elements >>
 * ----------------------------------------------------------------------------- */
*, *:before, *:after {
    -webkit-box-sizing: border-box; /* Safari/Chrome, andere WebKit-Browser */
    -moz-box-sizing: border-box; /* Firefox, andere Gecko-Browser */
    box-sizing: border-box; /* Opera/IE 8+ */
}

/* ----------------------------------------------------------------------------- */
.page-wrapper {
    margin: 0;
}

header {
    padding: 0.5em 20px;
}

aside, footer {
    padding: 0.6em 20px;
}

section {
    padding: 0 20px;
}

.mainContent {
    width: 100%;
    border-top: 1px solid transparent;
}

aside {
    width: 100%;
    margin-left: 0;
}

/* ----------------------------------------------------------------------------- *
 *                             Textauszeichnungen                                *
 * ----------------------------------------------------------------------------- */
h1 {
    margin: 0;
}

h2 {
    margin: 0.6em 20px;
}

p.teasertext {
    margin: 0.8em 20px;
}

ul, ol {
    padding: 0;
    margin: 0 0 0.625em 20px;
}

/* ----------------------------------------------------------------------------- *
 *                                  Navigation                                   *
 * ----------------------------------------------------------------------------- */
nav ul {
    margin: 0;
}

nav ul > li {
    margin-left: 0;
    border-bottom: 1px solid rgba(250, 250, 250, 0.6);
}

nav ul > li > a, nav ul > li > strong {
    padding: 0.6em 20px;
    display: block;
}

nav ul a:link {
    text-decoration: none;
}

/* ----------------------------------------------------------------------------- *
 *                           Styles der Tabletversion                            *
 *                          750px / 16px/em = 46.875em                           *
 * ----------------------------------------------------------------------------- */
@media only screen and (min-width: 46.875em) {
    
    /* Schriftverkleinerung wird für große Screens wieder aufgehoben */
    @media only screen and (max-width: 78em) {
        body {
            font-size: 0.938em; /* 15px */
        }
    }

    .main {
        /* clearing für die floatenden gleichlangen Spalten (.mainContent und .aside) */
        overflow: hidden;
    }

    .mainContent {
        width: 70%;
        float: left;
        padding: 0.8em 20px;
        border-top: none;
    }

    aside {
        width: 30%;
        margin-left: 70%;
        /* Trick für gleichlange Spalten  - dazu gehört ein overflow: hidden für den umgeb. Container */
        margin-bottom: -99999px !important;
        padding-bottom: 99999px !important;
    }

    aside, footer {
        padding: 0.8em 20px;
    }

    section {
        padding: 0;
    }

    /* ----------------------------------------------------------------------------- *
     *                             Textauszeichnungen                                *
     * ----------------------------------------------------------------------------- */
    h2 {
        font-size: 2.1875em; /* 35px */
        line-height: 1.2em;
        margin: 0.3em 0 0;
    }

    p.teasertext {
        margin: 0.8em 0;
    }

    /* ----------------------------------------------------------------------------- *
     *                                  Navigation                                   *
     * ----------------------------------------------------------------------------- */
    nav {
        /* clearing für die floatenden LIs */
        overflow: hidden;
        font-size: 1.2em; /* 18px */
    }

    nav ul {
        margin: 0 20px;
    }

    nav ul li {
        float: left;
        border: none;
        width: auto;
    }

    nav ul > li > a {
        padding: 0.7em 10px 0.7em 10px;
        display: inline-block;
    }
}

/* ----------------------------------------------------------------------------- *
 *                          Styles für kleine Desktops                           *
 *                           1024px / 16px/em = 64em                             *
 * ----------------------------------------------------------------------------- */
@media only screen and (min-width: 64em) {
    /* Navigation wird links neben dem Inhalt angeordnet */
    nav {
        width: 20%;
        float: left;
        box-shadow: none;
    }

    nav ul {
        margin: 1.6em 0 0;
    }

    nav ul > li {
        width: 100%;
        float: none;
    }

    nav ul > li > a {
        padding: 0.8em 25px;
        display: block;
    }

    /* .main macht Platz für .nav */
    .main {
        width: 80%;
        float: left;
    }

    /* Größenanpassungen */
    .mainContent {
        width: 65%;
        padding: 0.8em 20px;
    }

    aside {
        width: 35%;
        margin-left: 65%;
    }

    footer {
        clear: left;
    }
}
/* ----------------------------------------------------------------------------- *
 *                          Styles für große Desktops                            *
 *                           1248px / 16px/em = 78em                             *
 * ----------------------------------------------------------------------------- */
@media only screen and (min-width: 78em) {
    .page-wrapper {
        margin: 0 auto;
        max-width: 78em;
    }
}




/* ----------------------------------------------------------------------------- * 
 *                          Styles für Multi-Toggle-Nav                          *
 * ----------------------------------------------------------------------------- */

header {
    position: relative;
}

/* Menü-Link im Header zum Ein-und Ausblenden des Menüs */
a.toggle-nav {
    display: inline-block;
    position: absolute;
    right: 5%;
    top: 1em;
    text-decoration: none;
    -webkit-border-radius: 0.4em;
    -moz-border-radius: 0.4em;
    border-radius: 0.4em;
    cursor: pointer;
    padding: 0.357em;
    color: #D0E4F2;
    background: #4A6491;
    border: 1px solid #4A6491;
}

a.toggle-nav:hover {
    border: 1px solid #D0E4F2;
    background: #D0E4F2;
    color: #1A1F2B;
}


h1 a:link, h1 a:visited {
    color: #fff;
    text-decoration: none;
}

h1 a:hover, h1 a:active, h1 a:focus {
    color: darkorange;
}

/* NEU */
/* ----------------------------------------------------------------------------- *
 *                      Beispiel Multi-Level-Menü im Basis-Layout                *
 * ----------------------------------------------------------------------------- */
/* Clearing von nav, nav.ul, .main mit .clearfix statt mit overflow:hidden;
 * sonst wird die zweite menüebene abgeschnitten! */
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.clearfix {
    display: block;
}

html[xmlns] .clearfix {
    display: block;
}

* html .clearfix {
    height: 1%;
}


/* ----------------------------------------------------------------------------- *
 *                          Multi-Level-Menü im Basis-Layout                     *
 * ----------------------------------------------------------------------------- */
/* Positionierung der Navigation "auf" dem Hauptinhalt, damit die zweite Menüebenen nicht verdeckt wird. */
nav {
    overflow: inherit;
    position: relative;
    z-index: 10;
    width: 100%;
}

.main {
    z-index: 5;
}

/* Layout und Positionierung der 2. Menüebene */
nav ul ul {
    background-color: #eee;
    z-index: 20;
    display: none;
}

nav ul .openmenu ul {
    display: block;
}

nav ul li {
    position: relative;
}

nav ul li li {
    font-size: 16px;
    float: none;
}

nav ul li:hover {
    background-color: #fff;
    color: #30395C;
}

nav li.act {
    background-color: #C2D2E5;
}

nav ul > li > a, nav ul > li > b, nav ul > li > strong {
    padding: 0.8em 20px;
    display: block;
    font-weight: normal;
}

nav ul > li > b, nav ul > li > strong {
    color: #30395C;
}

#navMain {
    display: none;
}

/* Einblenden des Untermenüs onHover für alle Ebenen */
nav ul li:hover ul {
    display: block;
}

/* ----------------------------------------------------------------------------- *
 *                      Styles für Menü ab Tabletversion                         *
 *                          750px / 16px/em = 46.875em                           *
 * ----------------------------------------------------------------------------- */
@media only screen and (min-width: 46.875em) {
    nav > ul > li {
        height: 2.8em;
        width: 25%;
    }

    /* Layout und Positionierung der 2. Menüebene */
    nav ul ul {
        top: 2.8em;
        position: absolute;
        width: auto;
        margin: 0;
        min-width: 100%;
    }

    nav ul > li > a, nav ul > li > strong {
        padding: 0.8em 10px;
        display: block;
    }

    #navMain {
        display: block;
    }

    /* Menü-Link verstecken in großen Viewports */
    a.toggle-nav {
        display: none;
    }
}


/* ----------------------------------------------------------------------------- *
 *                      Styles für Menü ab Desktopversion                         *
 *                          1024px / 16px/em = 64em                           *
 * ----------------------------------------------------------------------------- */
  

@media only screen and (min-width: 64em) {
    /* 100% Navigation wird hier wieder überschrieben */
    nav {
        width: 20%;
    }

    nav ul {
        margin: 20px 0 0;
		position: relative;
    }

    nav ul ul {
        position: absolute;
        top: 0;
		left: 100%;
		background-color: #C2D2E5;
    }
    
    nav ul ul a:hover {
        background: #30395C;
        color: #fff;
    }
    nav > ul > li {
        height: auto;
        width: auto;
    }

    nav ul > li > a, nav ul > li > strong {
        padding: 0.6em 20px;
    }
    
    nav ul ul > li > a, nav ul ul > li > strong {
        padding: 0.7em 20px;
    }	
	
    nav ul li {
        float: none;
    }
}

