/* ---------------------------------------------------------------------------- *
 *                           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;
    background-color: #fff;    
}

header {
    padding: 0.5em 0px 2.5em 0px;
}

aside {
    position: relative;
    text-align: left;
    padding: 1.05em 15px 3em 15px;
    width: 100%;
    margin-left: 0;
}

footer {
    padding: 1.15em 10px 6em 20px;
}

.copy1 {
    position: relative;
    width: 100%;
    line-height: 1.5em;
    text-align: center
}

.copy2 {
    position: relative;
    width: 100%;    
    line-height: 1.5em;
    text-align: center
}

.copy3 {
    position: relative;
    width: 100%;
    line-height: 1.5em;
    text-align: center
}

section {
    padding: 0;
    margin-bottom: 1.5em;
}

.mainContent {
    width: 100%;
    padding: 0.7em 0.5em 2em 0.5em;
    text-align: left;
}

li {
    list-style-type: square;
    color: #EF7D08;
}

li span {
    color: #000;
}

.slides {
    margin: 5px 5px 0px 5px;
    line-height: 0;
}

.widerruf {
    padding: 1.1em 0em 1.1em 0em;
    margin: 1.5em 0em 1.5em 0em;
    text-align: center;
    background-color: #C9C9C2;
}

.links7 {
    position: relative;
    text-decoration: none;
    font-size: 1.2em;
    cursor: pointer;
    padding: 1.1em;
    color: #000;
    background: #EF7D08;
    border: 1px solid #EF7D08;
}

/* ---------------------------------------------------------------------------- *
 *                             Textauszeichnungen                               *
 * ---------------------------------------------------------------------------- */
h2 {
    margin: 1em 0px;
}

ul, ol {
    padding: 0;
    margin: 0 0 0.625em 20px;
}


/* ---------------------------------------------------------------------------- *
 *                                  Navigation                                  *
 * ---------------------------------------------------------------------------- */
nav ul {
    margin: 0;
    margin-top: 0em;
    border-top: 1px solid #FFF;
}

nav ul > li {
    margin-left: 0;
}

nav ul > li > a, nav ul > li > strong {
    padding: 0.6em 10px;
    display: block;
    border-bottom: 1px solid #FFF;
}

nav ul a:link {
    text-decoration: none;
}

nav2 ul {
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 5px;
    margin-bottom: 20px;
    border-top: 1px solid #E4E4E0;
}

nav2 ul > li {
    list-style-type: none;
}

nav2 ul > li > a, nav2 ul > li > strong {
    padding: 0.5em 10px;
    display: block;
    border-bottom: 1px solid #E4E4E0;
}

nav2 ul a:link {
    text-decoration: none;
}

.links3 {
    text-decoration: none;
    color: #73797B;
}
.links3:visited {
    text-decoration: none;
    color: #73797B;
}
.links3:focus {
    text-decoration: none;
    color: #73797B;
}
.links3:active {
    text-decoration: none;
    color: #73797B;
}

.links4 {
    position: relative;
    text-decoration: none;
    -webkit-border-radius: 0em;
    -moz-border-radius: 0em;
    border-radius: 0em;
    cursor: pointer;
    padding: 0.357em;
    color: #000;
    background: #EF7D08;
    border: 1px solid #EF7D08;
}

.first {
    background-color: #EF7D08;
    color: #000;
    min-width: 6.7em;    
}

.first2 {
    background-color: #FFF;
    color: #EF7D08;    
}


/* ---------------------------------------------------------------------------- *
 *                           Styles der Tabletversion                           *
 *                          860px / 16px/em = 53.75em                           *
 * ---------------------------------------------------------------------------- */
@media only screen and (min-width: 53.75em) {

    body {
        font-size: 0.938em;
    }
    

/* clearing für die floatenden gleichlangen Spalten (.mainContent und .aside) */
    .main {
        overflow: hidden;
    }

    .mainContent {
        width: 70%;
        float: left;
        padding: 0.7em 20px 2em 20px;
        border-top: none;
        text-align: left;
    }
    
    aside {
        width: 30%;
        margin-left: 70%;
        padding-top: 1.9em;
/* Trick für gleichlange Spalten  - dazu gehört ein overflow: hidden für den umgeb. Container */
        margin-bottom: -99999px !important;
        padding-bottom: 99999px !important;
    }   
    
    footer {
        width: 100%;
        padding: 2em 20px 6em 20px;
    }

.copy1 {
    line-height: 1.5em;
    text-align: center
}

.copy2 {
    text-align: center
}

.copy3 {
    text-align: center
}

section {
    padding: 0;
    margin: 0.5em;
}

.links3:hover {
    color: #EF7D08;
}
    
.links4 {
    margin-left: 8px;
}    
    
.links4:hover {
    border: 1px solid #4F4F44;
    background-color: #4F4F44;
    color: #FFF;
}

.slides {
    margin: 0px 0px 0px 0px;
    line-height: 0;
} 


/* ---------------------------------------------------------------------------- *
 *                             Textauszeichnungen                               *
 * ---------------------------------------------------------------------------- */
    h2 {
        font-size: 1.188em;
        line-height: 1.2em;
        margin: 0.3em 0 0;
    }

    
/* ---------------------------------------------------------------------------- *
 *                                  Navigation                                  *
 * ---------------------------------------------------------------------------- */
    nav {
        /* clearing für die floatenden LIs */
        overflow: hidden;
        font-size: 1.0em;
        background-color: #C9C9C2;
    }

    nav ul {
        margin: 0 0px;
    }

    nav ul li {
        float: left;
        border-right: 1px solid #fff;
        min-width: 6.7em;
        text-align: center
    }

    nav ul > li > a {
        padding: 1em 10px 1em 10px;
        display: inline-block;
        border-bottom: 0px;
    }

    nav2 ul {
        margin-left: 5px;
        margin-right: 5px;
        margin-top: 20px;
        margin-bottom: 20px;
        border-top: 1px solid #E4E4E0;
    }

    nav2 ul > li {
        list-style-type: none;
    }

    nav2 ul > li > a, nav2 ul > li > strong {
        padding: 0.5em 10px;
        display: block;
        border-bottom: 1px solid #E4E4E0;
    }

    nav2 ul a:link {
        text-decoration: none;
    }
}
    
/* ---------------------------------------------------------------------------- *
 *                          Styles für kleine Desktops                          *
 *                           1024px / 16px/em = 64em                            *
 * ---------------------------------------------------------------------------- */
@media only screen and (min-width: 64em) {
/* Navigation wird links neben dem Inhalt angeordnet */
    nav2 {
        width: 25%;
        float: left;
        box-shadow: none;
    }

    nav2 ul {
        width: 90%;
        margin: 2em 0 0 0;
    }

    nav2 ul > li {
        width: 100%;
        float: none;
    }

    nav2 ul > li > a {
        padding: 0.8em 25px;
        display: block;
    }

    /* .main macht Platz für .nav */
    .main {
        width: 75%;
        float: left;
    }

    /* Größenanpassungen */
    .mainContent {
        width: 70%;
        padding: 0.8em 20px 2em 0px;

    }
    
    .links4 {
    margin-left: 0px;
}
    
    section {
    padding: 0;
    margin: 0px;
}
  
    footer {
        clear: left;
    }
}    


/* ---------------------------------------------------------------------------- *
 *                          Styles der Desktopversion                           *
 *                           860px / 16px/em = 53.75em                          *
 * ---------------------------------------------------------------------------- */
@media only screen and (min-width: 53.75em) {
    .page-wrapper {
        margin: 0 auto;
        max-width: 66em;
    }  
        
    body {
        font-size: 0.938em;
        background-color: #EFEFED;
    }
}


/* ---------------------------------------------------------------------------- *
 *                 Beispiel Off-Canvas-Navigation im Basis-Layout               *
 *                          (Cloudfour OffCanvasMenu)                           *
 * ---------------------------------------------------------------------------- */
header {
    position: relative;
}

/* Eigene Anpassungen für den Menü-Trigger-Button */
a.toggle-nav {
    display: block;
    position: absolute;
    right: 5px;
    top: 4.75em;
    text-decoration: none;
    -webkit-border-radius: 0em;
    -moz-border-radius: 0em;
    border-radius: 0em;
    cursor: pointer;
    padding: 0.357em;
    color: #000;
    background-color: #EF7D08;
    border: 1px solid #EF7D08;
}

/* Hintergrundfarbe des .off-canvas-menu anpassen */
body.off-canvas-menu #menu {
    background-color: #C9C9C2;
}

.no-js a.toggle-nav {
    display: none;
}


/* ---------------------------------------------------------------------------- *
 *              Beispiel Off-Canvas-Navigation im Desktop-Layout                *
 * ---------------------------------------------------------------------------- */
@media only screen and (min-width: 53.75em) {
    
    a.toggle-nav {
        display: none;
    }
}


/* ---------------------------------------------------------------------------- *
 *                       Kapitel: Anpassungsfähige Bilder                       *
 *                          860px / 16px/em = 53.75em                           *
 * ---------------------------------------------------------------------------- */
/* Bilder flexibel machen:
 * hier mit max-width: 100%; damit sie nicht größer werden als das Original
 * width: 100%; würde die Bilder immer einpassen, aber u.U. auch aufblähen
 **/
img {
    max-width: 100%;
    height: auto;
}


/* ---------------------------------------------------------------------------- * 
 *                          Styles für Tables                                   *
 * ---------------------------------------------------------------------------- */
caption {
    color: #000;
    font-size: 1.25em;
    background: #E4E4E0;
    padding: 0.5em;
    margin-bottom: 10px;
    margin-top: 1em;
}

table {
    width: 100%;
    text-align: left;
    font-size: 1em;
}

table3 {
    width: 100%;
    text-align: center;
    font-size: 1em;
    margin-bottom: 1em;
}

tr3 {
    border: 1px solid #E4E4E0;
    display: block;
    overflow: auto;
    padding: 0.2em;
    color: #000;
    background: #E4E4E0;
    font-weight: bold;
    margin-bottom: 20px;
}

tr {
    border: 1px solid #E4E4E0;
    display: block;
    overflow: auto;
    padding-bottom: 0.2em;
}

thead {
    display: none;
}

td {
    width: 100%;
    float: left;
    display: block;
    /* Bei uns global gesetzt:
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    */
    padding: 3px 10px;
    border-top: 1px solid #E4E4E0;
}

td:first-of-type {
    color: #000;
    background: #E4E4E0;
}

td:before {
    font-weight: bold;
}

td:nth-child(1):before {
    content: 'Kurs-Nr.: ';
}

td:nth-child(2):before {
    content: 'Kursbeginn: ';
}

td:nth-child(3):before {
    content: 'Kursende: ';
}

td:nth-child(4):before {
    content: 'Uhrzeit: ';
}

td:nth-child(5):before {
    content: 'Anzahl Termine: ';
}

td:nth-child(6):before {
    content: 'Kursgebühr: ';
}

td:nth-child(7):before {
    content: 'Anmeldeschluss: ';
}

@media only screen and (max-width: 53.6875em) {
.responsiveTables1 {
    display: none;
}
    
.responsiveTables2 {
    display: none;
}
    
}

@media only screen and (min-width: 53.75em) {
    table {
        text-align: center;
        width: 100%;
        margin-left: 0%;
        margin-bottom: 2em;
    }
    
    thead {
        display: table-header-group;
    }

    tr {
        display:table-row;
        border: 1px solid #E4E4E0;
        padding-bottom: 0;
    }

    th, td {
        padding: 0.5em 0em 0.5em 0em;
        float: none;
        display: table-cell;
        width: auto;
        border: 1px solid #E4E4E0;
    }

    th {
        color: #000;
        background: #EFEFED;
    }

    td:first-of-type {
        color: inherit;
        background: none;
    }

    td:nth-child(n):before {
        content: '';
    }

.responsiveTables1 {
    display: none;
}
    
.responsiveTables2 {
    display: none;
}
    
}
        
