/**
* TYPOGRAFISCHE DEFINITIONEN
*
* Formatierungen für alle Standardelemente der Website
*
* @copyright       Copyright 20012-2013, .hausformat
* @link            http://www.hausformat.com
*/

@media all {

    /*-------------------------------------------------------------------------*/
    /* Reset und Basiseinstellungen definieren */

    /* Auf Standard (16 Pixel) zurücksetzen */
    html * {
        font-size: 100.01%;
    }

    /* Schriftgröße von monospaced Elemente in allen Browsern auf 16 Pixel setzen */
    /* @see: http://webkit.org/blog/67/strange-medium/ */
    textarea,
    pre,
    code,
    kbd,
    samp,
    var,
    tt {
        font-family: Consolas, "Lucida Console", "Andale Mono", "Bitstream Vera Sans Mono", "Courier New", Courier;
    }

    /* Neue Schriftgrösse: 15px, Zeilenabstand: 21px */
    body,
    form textarea,
    form input,
    form select {
        color: #444; /* Schriftfarbe */
        font-size: 93.8%;
        line-height: 1.35em;
        font-family: 'Signika', Arial, Helvetica, Verdana, sans-serif;
    }

    /* CSS3 Box Modell */
    html *, div, header, nav, footer {
        -webkit-box-sizing: border-box;   /* Safari/Chrome, other WebKit */
        -moz-box-sizing: border-box;   /* Firefox, other Gecko */
        box-sizing: border-box;   /* Opera/IE 8+ */
    }


    /*-------------------------------------------------------------------------*/
    /* Überschriften */

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-weight: normal;
        font-size: 100%;
        color: #444;/* Schriftfarbe 2 */
        margin: 1em 0 0.35em 0;
    }

    h1 {
        font-size: 266.7%; /* 40px */
        line-height: 1.35em;
        font-weight: 400;
        text-transform: uppercase;
    }

    h2 {
        font-size: 173.3%; /* 26px */
        line-height: 1.35em;
    }

    h3 {
        font-size: 120%; /* 18px */
        line-height: 1.35em;
    }

    h4 {
        font-size: 100%; /* 15px */
        line-height: 1.4em;
        font-weight: 600;
    }

    h5 {
        font-size: 100%; /* 15px */
        line-height: 1.4em;
        font-weight: 600;
    }

    h6 {
        font-size: 100%; /* 15px */
        line-height: 1.4em;
        font-weight: 600;
    }

    h1.csc-firstHeader,
    h2.csc-firstHeader,
    h3.csc-firstHeader,
    h4.csc-firstHeader,
    h5.csc-firstHeader,
    h6.csc-firstHeader,
    [class*="ym-col"] > *:first-child > h1:first-child,
    [class*="ym-col"] > *:first-child > header:first-child h1,
    [class*="ym-col"] > *:first-child > h2:first-child,
    [class*="ym-col"] > *:first-child > header:first-child h2,
    [class*="ym-col"] > *:first-child > h3:first-child,
    [class*="ym-col"] > *:first-child > header:first-child h3,
    #main > .ym-grid > [class*="ym-g"] > [class*="frame-type-"] header h1,
    #main > .ym-grid > [class*="ym-g"] > [class*="frame-type-"] header h2,
    #main > .ym-grid > [class*="ym-g"] > [class*="frame-type-"] header h3,
    #main > .ym-grid > [class*="ym-g"] > header:first-child h1,
    #main > .ym-grid > [class*="ym-g"] > header:first-child h2,
    #main > .ym-grid > [class*="ym-g"] > header:first-child h2,
    #footercontent h2,
    #main > section > div > div:first-child > header h1,
    #main > section > div > .ym-grid > [class*="ym-g"] > [class*="frame-type-"] header h2,
    #main > section > div > div:first-child > header h2 {
        margin-top: 0;
    }

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

    /* Spezial Header */
    #headerimage .csc-header,
    .headercontent-item .csc-header  {
        padding: 3.333em 0 4.667em;
    }

    #headerimage .csc-header h1,
    .headercontent-item .csc-header h1 {
        font-weight: 400;
        margin-bottom: 0.261em;
    }

    #headerimage .csc-header h2,
    .headercontent-item .csc-header h2 {
        font-size: 125%;
        font-weight: 300;
    }

    .headercontent-item .csc-header h1,
    .headercontent-item .csc-header h2 {
        color: #FFF;
    }

    #headerimage .csc-header h1 {
        color: #b8c200; /*BRANDCOLOR*/
    }

    /* Spezial Header */
    #sitefooter h1,
    #sitefooter h2,
    #sitefooter h3 {
        text-transform: uppercase;
    }

    /*--------------------------------------------------------------------------*/
    /* Listen  */

    ul,
    ol,
    dl {
        font-size: 100%;
        line-height: 1.5;
        margin: 0 0 .6em 0;
        -webkit-padding-start: 0; /* TYPO3 RTE Fehler: zusätzlicher Einzug bei ol und ul verhindern */
    }

    ul {
        margin-left: 1.5em;
        list-style-type: disc;
    }

    ol {
        margin-left: 1.8em;
        list-style-type: decimal;
    }

    ul ul {
        list-style-type: circle;
        margin-top: 0;
    }

    ol ol {
        list-style-type: lower-latin;
        margin-top: 0;
    }

    ol ul {
        list-style-type: circle;
        margin-top: 0;
    }

    ul p,
    ol p,
    dl p {
        margin: 0;
    }

    li {
        font-size: 100%;
        line-height: 1.5;
        margin-left: 0;
    }


    /* Checklist */

    ul.checklist {
        list-style-type: none;
        margin-left: 0;
    }

    ul.checklist li {
        padding: 0 0 .6em 0;
    }

    ul.checklist li:before {
        content: "\e605";
        opacity: 0.5;
    }

    /* Definition List */

    dl {
        padding: 0;
        overflow: hidden;
    }

    dt, dd {
        margin: 0;
        padding: 0 0 0.6em 0;
    }

    dt {
        float: left;
        clear: both;
        width: 25%;
        margin-right: 1%;
        font-weight: bold;
    }

    dd {
        float: left;
        width: 74%;
        margin: 0;
    }


    /*--------------------------------------------------------------------------*/
    /* Allgemeine Textauszeichnung */

    p {
        font-size: 100%;
        margin: 0 0 .6em 0;
        line-height: 1.4em;
    }

    p.lead {
        font-size: 160%;
        line-height: 1.3em;
    }

    blockquote,
    cite,
    q {
        font-style: italic;
    }

    blockquote {
        background: transparent;
        margin: 1.5em 0 0 1.5em;
    }

    strong,
    b {
        font-weight: 600;
    }

    em,
    i {
        font-style: italic;
    }

    big {
        /* font-size: 16px; */
        font-size: 114.28571%;
        line-height: 1.3125;
    }

    small {
        /* font-size: 12px; */
        font-size: 85.71429%;
        line-height: 1.75;
    }

    pre,
    code,
    kbd,
    tt,
    samp,
    var {
        font-size: 100%;
    }

    pre {
        font-size: 100%;
        line-height: 1.5;
        margin: 0 0 1.5em 0;
        white-space: pre;
        white-space: pre-wrap;
        word-wrap: break-word;
    }

    pre,
    code {}

    kbd,
    samp,
    var,
    tt {
        font-weight: bold;
    }

    var,
    dfn {
        font-style: italic;
    }

    acronym,
    abbr {
        border-bottom: 1px #aaa dotted;
        font-variant: small-caps;
        letter-spacing: .07em;
        cursor: help;
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
    }

    sup {
        top: -0.5em;
    }

    sub {
        bottom: -0.25em;
    }

    mark {
        background: yellow;
    }

    hr {
        color: #444;
        background: transparent;
        margin: 0 0 0.75em 0;
        padding: 0 0 0.67857em 0;
        border: 0;
        border-bottom: 1px #DDD solid;
    }

    /* Entfernt den Schatten bei der Selektion. Background Color anpassen, damit es zum Design passt. */
    ::-moz-selection {
            background: rgba(68, 68, 68,0.25);
            text-shadow: none;
    }

    ::selection {
            background: rgba(68, 68, 68,0.25);
            text-shadow: none;
    }


    /*-------------------------------------------------------------------------*/
    /* Links */

    a {
        color: #b8c200; /*BRANDCOLOR*/
        text-decoration: none;
    }

    a:active,
    a:hover,
    a:focus {
        outline: none;
    }

    a:hover,
    a:focus {
        color: #b8c200; /*BRANDCOLOR*/
        text-decoration: none;
        border-bottom: 1px dotted;
    }

    a.linkicon:before,
    a.internal-link-linkicon:before,
    a.external-link-linkicon:before,
    a.download-link-linkicon:before,
    a.mail-link-linkicon:before {
        content: "› ";
    }

    a.internal-link-button,
    a.external-link-button,
    a.button-link {
        padding: 10px;
        display: inline-block;
        border: 1px solid #DDD;
        text-transform: uppercase;
    }

    a.external-link-button:active,
    a.external-link-button:hover,
    a.external-link-button:focus,
    a.internal-link-button:active,
    a.internal-link-button:hover,
    a.internal-link-button:focus,
    a.button-link:active,
    a.button-link:hover,
    a.button-link:focus {
        color: #FFF;
        text-decoration: none;
        border: 1px solid #b8c200; /*BRANDCOLOR*/
        background: #b8c200; /*BRANDCOLOR*/
    }


    /*-------------------------------------------------------------------------*/
    /* Bilder */

    img,
    figure {
        margin: 0;
    }

    .flexible {
        margin-bottom: 1.5em;
        max-width: 100%;
        height: auto;
    }

    /* IE6 workaround - 2% space for possible borders */
    * html .flexible {
        width: 98%;
    }

    .bordered {
        margin-bottom: 1.5em;
        border: 2px #eee solid;
        border: 2px white solid;
        -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
        box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
    }


    /*-------------------------------------------------------------------------*/
    /* Tabellen */

    table {
        width: 100%;
        border-collapse: collapse;
        border-top: 1px #ccc solid;
        border-bottom: 1px #ccc solid;
        margin: 0 0 1.35714em 0;
    }

    table.narrow {
        margin: 0 0 1.42857em 0;
    }

    table.narrow th,
    table.narrow td {
        padding: 0 0.5em;
        line-height: 1.42857;
    }

    table.fixed {
        table-layout: fixed;
    }

    table.bordertable {
        border: 1px #ccc solid;
    }

    table.bordertable thead th {
        background: #e0e0e0;
        border-right: 1px #ccc solid;
        border-bottom: 1px #ccc solid;
    }

    table.bordertable tbody th[scope="row"] {
        background: #f0f0f0;
    }

    table.bordertable tbody th {
        border-right: 1px solid #ccc;
    }

    table.bordertable tbody td {
        border-right: 1px solid #ccc;
    }

    caption {
        font-variant: small-caps;
    }

    th,
    td {
        line-height: 1.5em;
        vertical-align: top;
        padding: 0.71429em 0.5em;
    }

    th *:first-child,
    td *:first-child {
        margin-top: 0;
    }

    th.nowrap,
    td.nowrap {
        white-space: nowrap;
    }

    thead th {
        text-align: left;
        color: #000;
        border-bottom: 2px #000 solid;
    }

    tbody {
        /* highlight row on mouse over */
    }

    tbody th {
        text-align: left;
        border-top: 1px solid #ccc;
    }

    tbody td {
        text-align: left;
        border-top: 1px solid #ccc;
    }

    tbody tr:hover th,
    tbody tr:hover td {
        background: #f8f8f8;
    }

    .tr-odd {
        background-color: #F1F1F1; /* Hellgrau 1 */
    }


    /*--------------------------------------------------------------------------*/
    /* Zusätzliche Klassen (z.B. für RTE) */

    .noMarginAfter {
        margin-bottom: 0;
    }

    .noMarginBefore {
        margin-top: 0;
    }


}
