@charset "utf-8";

/* ==== Schriften ====

        Verfügbare Schriften:

        - 'Amatic SC', cursive;
        - 'Lora', serif;
        - 'Muli', sans-serif;
        - 'Open Sans', sans-serif;
        - 'Pacifico', cursive;
        - 'Roboto', sans-serif;

        */


/* Schriftart 1: Headlines */
/* Schriftart 2: Fließtext */
:root {
    --schriftart1: 'Lora', serif;
    --schriftart2: 'Muli', sans-serif;
}

/* Grundsätzliches ================================================================= */

* {
    margin: 0px;
    padding: 0px;
}

body {
    font-weight: 300;
    font-size: 16px;
    background: white;
    min-width: 1240px;
    font-family: var(--schriftart2);
    color: var(--copy);
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.clear {
    clear: both;
}

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

/* ================== KLARO =================== */

.klaro .cookie-modal .cm-list-input:checked+.cm-list-label .slider,.klaro .context-notice .cm-list-input:checked+.cm-list-label .slider,.klaro .cookie-notice .cm-list-input:checked+.cm-list-label .slider {
    background-color: #AEBD12 !important;
}

.klaro .cookie-modal .cm-btn.cm-btn-info,.klaro .context-notice .cm-btn.cm-btn-info,.klaro .cookie-notice .cm-btn.cm-btn-info {
    background-color: #AEBD12 !important;
}

.klaro .cookie-modal .cm-btn.cm-btn-success,.klaro .context-notice .cm-btn.cm-btn-success,.klaro .cookie-notice .cm-btn.cm-btn-success {
    background-color: #AEBD12 !important;
}

.klaro .cookie-modal a,.klaro .context-notice a,.klaro .cookie-notice a {
    color: #AEBD12 !important;
    text-decoration: none;
}
/* Typo3 Style ============================================================== */
.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.ce-textpic.ce-below .ce-row,
.ce-textpic.ce-above .ce-row {
    display: flex;
}

.ce-textpic.ce-below .video,
.ce-textpic.ce-above .video {
    padding-right: 20px;
}

.ce-nowrap .ce-gallery[data-ce-columns="1"] {
    margin-bottom: 0 !important;
}

.ce-above .ce-gallery {
    /*margin-bottom: 0px!important;*/
}

.ce-above .ce-gallery + .ce-bodytext {
    margin-top: 20px;
}

.ce-gallery[data-ce-columns="2"] .ce-column {
    /*width: 50%;*/
    box-sizing: border-box;
    margin-right: 0px;
    padding-right: 20px;
}

.ce-gallery[data-ce-columns="3"] .ce-column {
   /* width: 33.333333333333333%; */
    box-sizing: border-box;
    margin-right: 0px;
    padding-right: 20px;
}

.ce-gallery[data-ce-columns="4"] .ce-column {
   /* width: 25%; */
    box-sizing: border-box;
    margin-right: 0px;
    padding-right: 20px;
}

.ce-gallery[data-ce-columns="5"] .ce-column {
   /* width: 20%; */
    box-sizing: border-box;
    margin-right: 0px;
    padding-right: 20px;
}

.ce-gallery .ce-column:last-child {
    padding-right: 0px;
}


.ce-border img {
    box-sizing: border-box;
}

.ce-bodytext a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

/*
.ce-left.ce-above .ce-column,
.ce-center.ce-above .ce-column,
.ce-left.ce-below .ce-column,
.ce-center.ce-below .ce-column {
	margin-right: 0px;
	padding-right: 20px;
}

.ce-right.ce-above .ce-column,
.ce-right.ce-below .ce-column {
	margin-right: 0px;
	padding-right: 20px;
}
*/

/* Blockquote */
blockquote {
    background: #F4F4F4;
    border-left: 5px solid var(--spotcolor1);
    margin-bottom: 30px;
    padding: 30px;
}

blockquote p {

}

blockquote p:last-child {
    margin-bottom: 0;
}

/* Tabellen */
table.contenttable {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 30px;
    /*table-layout: fixed;*/
    border: none;
}

table.contenttable caption {
    display: table-caption;
    text-align: center;
}

table.contenttable td,
table.contenttable th {
    padding: 0.75em;
    border: 1px solid #e4e2e2; /* Tabelle Rahmen Farbe*/
    vertical-align: top;
}

table.contenttable th {
    text-align: left;
    font-weight: bold;
}

table.contenttable thead th {
    border-bottom-width: 2px;
}

table.contenttable td p:last-child {
    margin-bottom: 0;
}

.table-responsive {
    overflow-x: auto;
}

/* Trennlinie */
hr {
    opacity: .3;
    border: none;
    height: 1px;
    color: var(--copy);
    background-color: var(--copy);
    margin-bottom: 30px;
}

/* Headlines Trennung */
h1, h2, h3, h4 {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

/* Link Icons */
a.internal-link:before,
a.external-link:before,
a.email:before,
a.download:before,
a.pdf:before {
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    padding-right: 5px;
}

a.internal-link:before {
    content: "\f0c1";
    font-weight: 900;
}

a.external-link:before {
    content: "\f35d";
    font-weight: 900;
}

a.email:before {
    content: "\f0e0";
    font-weight: 400;
}

a.download:before {
    content: "\f019";
    font-weight: 900;
}

a.pdf:before {
    content: "\f1c1";
    font-weight: 400;
}

/* Bildunterschrift */
.ce-gallery figcaption {
    margin-top: 10px;
    font-size: 15px;
}

/* # Headerboxen =========================== */
.header1box {

}

.header1 {
    max-width: 1200px;
    margin: 0px auto;
    display: flex;
    justify-content: space-between;
    padding: 10px 20px;
    box-sizing: border-box;
}

.header2box {

}

.header2 {
    max-width: 1200px;
    margin: 0px auto;
    padding: 40px 20px;
    box-sizing: border-box;
}

.header3box {
    position: relative;
    z-index: 3;
}

.header3 {
    max-width: 1200px;
    margin: 0px auto;
    padding: 20px 0px;
}

/* # Logo ================================================================= */

.logo {
    font-size: 0;
    position: relative;
    z-index: 3;
}

.logo a {
    display: inline-block;
}

.logo img {
    display: inline-block;
}

/* ==== Content-Spalten ==== */

/* 100 */
.contentspalte1_100 {
    width: 100%;
}

/* 66 - 33*/
.contentspalte1_66_33 {
    width: 901px;
    flex: 0 0 901px;
    min-height: 220px;
    border-right: 1px solid black;
    padding-right: 40px;
    box-sizing: border-box;
    padding-bottom: 20px;
}

.contentspalte2_66_33 {
    width: 259px;
    flex: 0 0 259px;
    padding-left: 40px;
    box-sizing: border-box;
    padding-top: 10px;
}

/* 33 - 66*/
.contentspalte1_33_66 {
    width: 259px;
    flex: 0 0 259px;
    padding-right: 40px;
    box-sizing: border-box;
    padding-top: 10px;
}

.contentspalte2_33_66 {
    width: 901px;
    flex: 0 0 901px;
    min-height: 220px;
    border-left: 1px solid black;
    padding-left: 40px;
    box-sizing: border-box;
    padding-bottom: 20px;
}

/* Content-Bereich ================================================================= */

.content {
    width: 1200px;
    padding: 20px 20px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    line-height: 1.5;
}

.content .frame-default {
    padding: 20px 0px 0px 0px;
}

.content h1 {
    font-style: normal;
    font-weight: 400;
    line-height: 1.1em;
    margin-bottom: 20px;
}

.content h2 {
    font-weight: 400;
    margin-bottom: 15px;
    line-height: 1.1em;
}

.content h3 {
    font-weight: 400;
    margin-bottom: 10px;
    line-height: 1.1em;
}

.content h4 {
    font-weight: 400;
    margin-bottom: 5px;
    line-height: 1.1em;
}

.content p {
    margin-bottom: 1em;
}

/* Listen */
.content ol {
    list-style-position: inside;
}

.content ol li {
    margin-bottom: 1.8em;
    position: relative;
    padding-left: 0px;
    line-height: 25px;
}

.content ol li ol {
    padding-left: 40px;
}

/* Check-Liste */
.content ul {
    margin-bottom: 20px;
    list-style: none;
}

.content ul li {
    position: relative;
    padding-left: 20px;
    line-height: 1.5;
}

.content ul li::before {
    content: "■";
    color: inherit;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
}

.content ul li ul li::before {
    content: "\2022";
    color: inherit;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
}

.content ul li ul {
    padding-left: 10px;
    margin-bottom: 10px;
}


/* Responsive Anpassung ================================================================= */

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767px) {

    /* Mobile: Allgemein */
    body {
        min-width: 330px;
    }

    /* Mobile: Header ======== */
    .header2 {
        padding: 20px;
    }

    .header3 {
        padding: 0;
    }

    /* Mobile: Container ========================= */
    .logo {
        width: 100%;
        height: auto;
        box-sizing: border-box;
        padding: 20px 0px;
        top: 0!important;
    }

    .logo_wrapper {
        height: auto!important;
    }

    .content {
        box-sizing: border-box;
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }

    /* Mobile: Content-Spalten */
    .contentspalte1_33_66,
    .contentspalte2_33_66,
    .contentspalte1_66_33,
    .contentspalte2_66_33 {
        width: 100%;
        flex: 0 0 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .contentspalte1_33_66 {
        order: 2;
    }

    .contentspalte1_66_33,
    .contentspalte2_33_66 {
        border-right: none;
        border-left: none;
        border-bottom: 1px solid black;
    }

    .contentspalte2_33_66 {
        padding-bottom: 20px;
    }

    .contentspalte1_33_66,
    .contentspalte2_66_33 {
        padding-bottom: 20px;
    }

    /* Mobile: Hauptinhalt */
    .content .ce-gallery iframe {
        width: 100% !important;
    }

    .ce-textpic.ce-below .ce-row,
    .ce-textpic.ce-above .ce-row {
        display: block;
    }

    .content .ce-intext.ce-right .ce-gallery {
        margin-left: 0px;
    }

    .content .ce-intext.ce-left .ce-gallery {
        margin-right: 0px;
    }

    .content .ce-intext.ce-right .ce-gallery {
        float: none;
    }

    .content .ce-intext.ce-left .ce-gallery {
        float: none;
    }

    .content .ce-gallery figure {
        width: 100%;
    }

    .ce-row:last-child {
        margin-bottom: 20px;
    }

    .ce-nowrap .ce-gallery[data-ce-columns="1"] {
        margin-bottom: 20px!important;
    }

    .content .ce-gallery[data-ce-columns="2"],
    .content .ce-gallery[data-ce-columns="3"],
    .content .ce-gallery[data-ce-columns="4"],
    .content .ce-gallery[data-ce-columns="5"] {
        display: inline-block;
    }

    .content .ce-gallery[data-ce-columns="3"] .ce-column,
    .content .ce-gallery[data-ce-columns="4"] .ce-column,
    .content .ce-gallery[data-ce-columns="5"] .ce-column {
        width: 50%;
        box-sizing: border-box;
        margin-right: 0px;
        padding-right: 20px;
        margin-bottom: 20px;
    }

    .content .ce-gallery[data-ce-columns="3"] .ce-row,
    .content .ce-gallery[data-ce-columns="4"] .ce-row,
    .content .ce-gallery[data-ce-columns="5"] .ce-row {
        margin-bottom: 0px;
    }

    .ce-gallery[data-ce-columns="2"] .ce-column {
        margin-bottom: 20px;
    }


}