html {
    --body-background: #DFDFD9;
    --nabu-blau: #0E6BB1;
    --main-background: #fff;
    --text-highlight: #0E6BB1;
    --normal-text-color: #000;
    --invert-text-color: #fff;
    --nav-extra-background: #FF8900;
    --aside-sect-green: #A2CE70;
    --aside-sect-orange: rgb(206, 173, 112);
    --aside-sect-blue: rgb(112, 168, 206);
    --aside-sect-text: #ffffff;
    --aside-sect-green-text: #ffffff;
    --aside-sect-orange-text: #ffffff;
    --aside-sect-blue-text: #ffffff;
    --mobil-nav-seperator: #fff;
    --nav-main-link-color: #fff;
    --nav-link-color: #000;
    --nav-link-color-sub: #000;
    --nav-link-highlight: #00000010;
    --text-headline: #0E6BB1;
    --text-headline-sub: #808080;
	
	 /* NABU-Blau */
    --nabu-blau-dunkel-60: #003560;
    --nabu-blau-dunkel-30: #00508c;
    --nabu-blau-deckkraft-60: #6f9ed4;
    --nabu-blau-deckkraft-30: #bbcdeb;
 
    /* Dunkelgrün */
    --dunkelgruen-dunkel-60: #003515;
    --dunkelgruen-dunkel-30: #005e30;
    --dunkelgruen: #008143;
    --dunkelgruen-deckkraft-60: #63ad84;
    --dunkelgruen-deckkraft-30: #b7d6c1;
 
    /* Hellgrün */
    --hellgruen-dunkel-60: #3a6312;
    --hellgruen-dunkel-30: #598f1f;
    --hellgruen: #76b828;
    --hellgruen-deckkraft-60: #b5d383;
    --hellgruen-deckkraft-30: #dceac5;
 
    /* Rot */
    --rot-dunkel-60: #74080d;
    --rot-dunkel-30: #a90b20;
    --rot: #dd052e;
    --rot-deckkraft-60: #eb8275;
    --rot-deckkraft-30: #f6c4b9;
 
    /* Orange */
    --orange-dunkel-60: #7d4200;
    --orange-dunkel-30: #b76000;
    --orange: #ef7c00;
    --orange-deckkraft-60: #f8b471;
    --orange-deckkraft-30: #fddab9;
 
    /* Gelb */
    --gelb-dunkel-60: #816300;
    --gelb-dunkel-30: #bf9000;
    --gelb: #ffcc00;
    --gelb-deckkraft-60: #ffdf7d;
    --gelb-deckkraft-30: #ffefc2;
 
    /* Grautöne */
    --dunkelgrau: #86846b;
    --mittelgrau: #a9a691;
    --hellgrau: #c6c4b3;
    --lichtgrau: #e3e2d4;
}

@media (prefers-color-scheme: dark) {

    html {
        --body-background: #434343;
        --nabu-blau: #0E6BB1;
        --main-background: #242424;
        --text-highlight: #65C6FF;
        --normal-text-color: #CCCCCC;
    	--invert-text-color: #000;
        --nav-extra-background: #FF8900;
        --aside-sect-green: #A2CE70;
        --aside-sect-orange: rgb(206, 173, 112);
        --aside-sect-blue: rgb(112, 168, 206);
        --mobil-nav-seperator: #242424;
        --nav-main-link-color: #fff;
        --nav-link-color: #fff;
        --nav-link-color-sub: #ddd;
        --nav-link-highlight: #ffffff10;
        --text-headline: #65C6FF;
        --text-headline-sub: #CCCCCC;
		
		  /* NABU-Blau */
    --nabu-blau-dunkel-60: #a6cae5;
    --nabu-blau-dunkel-30: #6ba7d4;
    --nabu-blau-deckkraft-60: #004475;
    --nabu-blau-deckkraft-30: #002f51;
 
    /* Dunkelgrün */
    --dunkelgruen-dunkel-60: #a6d3bd;
    --dunkelgruen-dunkel-30: #6bb692;
    --dunkelgruen: #2e9865;
    --dunkelgruen-deckkraft-60: #00542c;
    --dunkelgruen-deckkraft-30: #003a1e;
 
    /* Hellgrün */
    --hellgruen-dunkel-60: #cfe6b4;
    --hellgruen-dunkel-30: #b0d682;
    --hellgruen: #8fc54f;
    --hellgruen-deckkraft-60: #4d781a;
    --hellgruen-deckkraft-30: #355312;
 
    /* Rot */
    --rot-dunkel-60: #f3a8b6;
    --rot-dunkel-30: #eb6e86;
    --rot: #e33254;
    --rot-deckkraft-60: #90031e;
    --rot-deckkraft-30: #630215;
 
    /* Orange */
    --orange-dunkel-60: #f9d1a6;
    --orange-dunkel-30: #f6b36b;
    --orange: #f2942e;
    --orange-deckkraft-60: #9b5100;
    --orange-deckkraft-30: #6c3800;
 
    /* Gelb */
    --gelb-dunkel-60: #ffeda6;
    --gelb-dunkel-30: #ffe16b;
    --gelb: #ffd52e;
    --gelb-deckkraft-60: #a68500;
    --gelb-deckkraft-30: #735c00;
 
    /* Grautöne */
    --dunkelgrau: #e3e2d4;
    --mittelgrau: #c6c4b3;
    --hellgrau: #a9a691;
    --lichtgrau: #86846b;
    }
}



body {
    background-color: var(--main-background);
    font-family: Source Sans Pro, "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding: 0;
    margin: 0;
    min-height: 100%;
    font-size: 0.9rem;
    display: flex;
    flex-direction: column;
}

button,
input {
    outline: none;
}

header>nav.fastLink,
main {
    width: 64rem;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
}

header {
    background-color: var(--body-background);
    padding-top: 0.5rem;
    flex-grow: 0;
    width: 100%;
    padding-top: env(safe-area-inset-top, 1.3rem); /* 20px dient als Fallback */
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
}

nav.fastLink,
nav.mainNav {
    text-align: right;
}

nav.fastLink {
    line-height: 3rem;
    height: 3rem;
    font-size: 0.7rem;
}

nav.fastLink>ul {
    list-style: none;
    display: inline-flex;
    margin: 0;
}

nav.fastLink>ul>li {
    padding: 0 0.5rem;
    border-right: 1px solid var(--nav-link-color);
    height: 0.7rem;
    margin: 1.1rem 0;
    line-height: 0.8rem;
}

nav.fastLink>ul>li>a {
    color: var(--nav-link-color);
    text-decoration: none;
}

nav.fastLink>ul>li>a:hover {
    text-decoration: underline;
}

nav.fastLink>ul>li:last-child {
    border-right: 0;
}

nav.fastLink form {
    display: inline-block;
}

nav.fastLink input {
    border: 1px solid var(--nabu-blau);
    box-sizing: border-box;
    vertical-align: middle;
    margin-left: 1rem;
    height: 1.5rem;

}

nav.fastLink button {
    background-color: var(--nabu-blau);
    width: 1.5rem;
    height: 1.5rem;
    border: 0;
    vertical-align: middle;
    background-image: url(../upload/zz_framework/lupe.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 1rem auto;
}

nav.mainNav {
    background-color: var(--nabu-blau);
    color: var(--main-background);
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 0.9rem;
    padding-left: calc(50% - 21rem);
    padding-right: calc(50% - 32rem);
    font-weight: bold;
}

nav.mainNav button#button_navigation {
    height: 2rem;
    line-height: 2rem;
    color: #fff;
    padding-left: 2rem;
    background-image: url(../upload/zz_framework/menu.png);
    background-size: 1.5rem auto;
    background-repeat: no-repeat;
    background-position: left center;
    background-color: var(--nabu-blau);
    border: 0;
    font-weight: bold;
    margin-right: 0.5rem;
}

nav.mainNav ul {
    list-style: none;
    cursor: pointer;
}

nav.mainNav>ul {
    list-style: none;
    display: flex;
    flex-direction: row;
    padding: 0;
    margin: 0;
    width: 100%;
    position: relative;
}

nav.mainNav>ul>li {
    flex-grow: 1;
    flex-shrink: 1;
    display: block;
    margin: 0;
    text-align: center;
    padding: 0;
}

nav.mainNav>ul>li>a,
nav.mainNav>ul>li>a:visited,
nav.mainNav>ul>li>a:active,
nav.mainNav>ul>li>a:hover {
    color: var(--nav-main-link-color);
    text-decoration: none;
}

nav.mainNav>ul>li a:hover {
    background-color: var(--nav-link-highlight);
}

nav.mainNav>ul>li:hover>a::after {
    content: "";
    color: red;
    display: block;
    width: 0px;
    height: 0px;
    -webkit-transform: rotate(360deg);
    border-style: solid;
    border-width: 0 1rem 0.5rem 1rem;
    border-color: transparent transparent #ffffff transparent;
    position: absolute;
    left: 4rem;
    z-index: 10001;
}

nav.mainNav>ul>li>div {
    display: none;
    position: absolute;
    left: -11rem;
    top: 2.5rem;
    width: 64rem;
    height: 18rem;
    /*    background-color:rgba(255,255,255,0.8);
    background-color:rgba(0,0,0,0.6);*/
    z-index: 10000;
}

nav.mainNav>ul>li>div>ul,
nav.mainNav>ul>li>ul {
    display: none;
    position: absolute;
    left: 1rem;
    top: 3rem;
    background-color: var(--main-background);
    z-index: 10001;
    color: var(--nabu-blau);
    text-align: left;
    padding-top: 0.5rem;
    padding-left: 11rem;
    /* font-weight: normal; */
    flex-wrap: wrap;
    flex-direction: column;
    width: 51rem;
    height: 18rem;
    box-sizing: border-box;
    -webkit-box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.51);
    -moz-box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.51);
    box-shadow: 10px 10px 5px 0px rgba(0, 0, 0, 0.51);
    -webkit-box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.51);
    -moz-box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.51);
    box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.51);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 18rem;
}

nav.mainNav>ul>li>div>ul {
    left: 12rem;
    top: 0.5rem;
}

nav.mainNav>ul>li>div>ul[data-branch='wir_im_nabu'],
nav.mainNav>ul>li>ul[data-branch='wirimnabu'] {
    background-image: url("../upload/zz_framework/Navigation/wir_im_nabu.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='tiere_&_pflanzen'],
nav.mainNav>ul>li>ul[data-branch='tiere_&_pflanzen'] {
    background-image: url("../upload/zz_framework/Navigation/tiere_pflanzen.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='natur_&_landschaft'],
nav.mainNav>ul>li>ul[data-branch='natur_&_landschaft'] {
    background-image: url("../upload/zz_framework/Navigation/natur_landschaft.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='jugend'],
nav.mainNav>ul>li>ul[data-branch='jugend'] {
    background-image: url("../upload/zz_framework/Navigation/jugend.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='erleben_&_sch_tzen'],
nav.mainNav>ul>li>ul[data-branch='erleben_&_sch_tzen'] {
    background-image: url("../upload/zz_framework/Navigation/erleben_schuetzen.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='111_jahre'],
nav.mainNav>ul>li>ul[data-branch='111_jahre'] {
    background-image: url("../upload/zz_framework/Navigation/111jahre.jpg");
}

nav.mainNav>ul>li>div>ul[data-branch='spenden_&_helfen'],
nav.mainNav>ul>li>ul[data-branch='spenden_&_helfen'] {
    background-image: url("../upload/zz_framework/Navigation/spenden.jpg");
}


nav.mainNav>ul>li:hover>div {
    display: block;
}

nav.mainNav>ul>li:hover>div>ul,
nav.mainNav>ul>li:hover>ul {
    display: flex;
}

nav.mainNav>ul>li>div>ul>li,
nav.mainNav>ul>li>ul>li {
    line-height: 1.5rem;
    margin-bottom: 0;
    padding: 0.5rem 1rem 0.4rem 1rem;
}

nav.mainNav>ul>li>div>ul>li>ul,
nav.mainNav>ul>li>ul>li>ul {
    font-weight: normal;
    color: var(--normal-text-color);
    padding-left: 1.2rem;
    font-size: 0.8rem;
    line-height: 1.1rem;
}

nav.mainNav a {
    text-align: center;
    display: block;
    position: relative;
    padding: 0 0.5rem;
    box-sizing: border-box;
}

nav.mainNav ul li div ul li a {
    text-align: left;
    text-decoration: none;
    color: var(--nav-link-color);
}

nav.mainNav ul li div ul li ul li a {
    text-align: left;
    text-decoration: none;
    color: var(--nav-link-color-sub);
}

nav.mainNav>ul>li:last-child {
    background-color: var(--nav-extra-background);
}

.logo {
    width: 9rem;
    height: 9rem;
    box-sizing: border-box;
    background-color: #fff;
    border-bottom: 0.3rem solid var(--nabu-blau);
    position: absolute;
    top: env(safe-area-inset-top, 1.3rem);
    left: calc(50% - 30rem);
    z-index: 10100;
}

.logo img {
    width: 8rem;
    margin-left: 0.5rem;
    margin-top: 1.5rem;
}

.nabu_head_image {
    height: 25vH;
    position: relative;
    background-image: url(../upload/zz_framework/Kopfzeilen/Voegel/weissstorch.jpg);
    background-size: cover;
    background-position: center center;
    overflow: hidden;
    transition: height 2s;
}

.nabu_head_image>img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 0;
    left: 0;
    transition: opacity 2s;
    opacity: 0;
    z-index: 9000;
}

.nabu_head_image>img.aktiv {
    opacity: 1;
}


.nabu_head_image span {
    position: absolute;
    bottom: 5.5rem;
    left: calc(50% - 30rem);
    background-color: #fff;
    font-size: 2rem;
    line-height: 2.5rem;
    font-weight: bold;
    padding: 0 1rem;
    color: #6ECC00;
    z-index: 9005;
}

.nabu_head_image span+span {
    bottom: 2.5rem;
    left: calc(50% - 28rem);
    color: #38491E;
}


header.shrunk {
    position: fixed;
    top: 0;
    z-index: 100000;
}

header.shrunk .nabu_head_image {
    height: 8vH;
}

header.shrunk .nabu_head_image span {
    display: none;
}

header.shrunk + main {
    padding-top:200px;
}



main {
    background-color: var(--main-background);
    box-sizing: border-box;
    display: flex;
    min-height: 30rem;
    padding: 0.5rem 0;
    margin-top: 1rem;
    margin-bottom: 1rem;
    flex-wrap: nowrap;
    color: var(--normal-text-color);
    transition: padding 2s;
}

main article {
    width: 50rem;
    box-sizing: border-box;
    font-size: 1rem;
    flex-grow: 1;
    flex-shrink: 1;
}

article>* {
    margin-left: 2rem;
    margin-right: 2rem;
    /*width:46.5rem;*/
    flex-grow: 0;
    flex-shrink: 0;
}

article>.articlehead {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    margin-right: 0;
    width:auto;
}

.breadcrumb {
    text-align: right;
    font-size: 0.8rem;
    border-bottom: 1px solid #808080;
    color: #808080;
    line-height: 1.5rem;

    border-width: 0px;
    border-style: solid;
    border-image: linear-gradient(90deg,
            var(--main-background),
            var(--body-background)) 100% 1;
    border-bottom-width: 1px;
    padding-right: 0.5rem;
    margin-right: 1.5rem;

    flex-grow: 1;
    flex-shrink: 1;
}

.breadcrumb ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.breadcrumb ul li {
    display: inline-block;
}

.breadcrumb ul li a {
    text-decoration: none;
    color: inherit;
}

.breadcrumb ul li a:hover {
    text-decoration: underline;
}

.breadcrumb ul li a.btn_home {
    width: 1rem;
    height: 1rem;
    background-image: url(../upload/zz_framework/home.png);
    background-position: center bottom;
    background-size: 1rem auto;
    background-repeat: no-repeat;
    display: inline-block;
}




.desktop_invisible {
    display: none;
}

button#button_subnavigation {
    height: 2rem;
    line-height: 2rem;
    width: 2rem;
    color: #fff;
    background-image: url(../upload/zz_framework/menu_sub.png);
    background-size: 2rem auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: var(--main-background);
    border: 0;
    font-weight: bold;
    margin-right: 1rem;
    flex-grow: 0;
    flex-shrink: 0;
}


article h1 {
    color: var(--text-headline);
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 2rem;
}

article h2 {
    color: var(--text-headline-sub);
    margin-bottom: 0.3rem;
    font-size: 1.2rem;
    margin-top: 2rem;
    font-weight: normal;
}

article p {
    line-height: 1.3rem;
}

article a {
    text-decoration: none;
    color: var(--text-highlight);
}

/* article a[href^="mailto:"] {
    background-image:url(../upload/zz_framework/file_icons/link_mail.png);
    background-size: 0.9rem auto;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left:1.2rem;
} */

article a[href^="mailto:"]::before {
    content: "[";
    font-family: NABUIcons;
    font-size: 2rem;
    line-height: 1.3rem;
    display: inline-block;
    overflow: hidden;
    height: 1rem;
    vertical-align: middle;
}

article a[href^="tel:"]::before {
    content: "]";
    font-family: NABUIcons;
    font-size: 2rem;
    line-height: 1.3rem;
    display: inline-block;
    overflow: hidden;
    height: 1rem;
    vertical-align: middle;
}

article a:hover {
    text-decoration: underline;
}

article>.picture, article>.geoCMS {
    border: 1px solid var(--body-background);
    border-right: 0;
    width: 15rem;
    border-top: 0;
    margin-bottom: 1rem;
}

.picture.pictureAlignRight {
    float: right;
}

.picture.pictureAlignLeft {
    float: left;
}

.picture.pictureAlignFull {
    width: auto;
}

.picture img {
    width: 15rem;
    height: 15rem;
    margin: 0;
    overflow: hidden;
    object-fit: cover;
    object-position: center;

}


article>.picture.landscape {
    width: 20rem;
}

.picture.portrait img {
    height: 20rem;
}

.picture.landscape img {
    width: 20rem;
}


.picture.pictureAlignFull img {
    width: 100%;
}

.picture.pictureAlignFullHieght img {
    height: auto;
}

.picture.pictureAlignGalery, article>.geoCMS {
    width: auto;
}

article>.pictureAlignGalery ul {
    margin: 0;
    list-style: none;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

article>.pictureAlignGalery ul li img {
    width: 100%;
}

article>.pictureAlignGalery ul li {
    flex-grow: 1;
    flex-shrink: 1;
    width: 33%;
}

article>.pictureAlignGalery ul li+li {
    margin-left: 1rem;
}

article>.pictureAlignGalery ul li+li+li+li {
    display: none;
}


article .file_download_list>ul {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1.5rem;
    margin-bottom: 2rem;
}

article .file_download_list>ul li {
    background-color: var(--body-background);
    line-height: 2rem;
    display: flex;
    padding: 0.2rem 0.5rem;
    margin-bottom: 0.1rem;
}

article .file_download_list>ul li a {
    flex-grow: 1;
    flex-shrink: 1;
    display: flex;
    align-items: center;
}

article .file_download_list>ul li a img {
    width: 1.2rem;
    height: 1.2rem;
    margin-right: 0.3rem;
    flex-grow: 0;
    flex-shrink: 0;
}

article .file_download_list>ul li>span {
    color: var(--text-highlight);
    font-size: 0.8rem;
}



article .linklist {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 3rem;
    clear: both;
    position:relative;
    column-gap:1rem;
}

.linklist>h2 {
    width: 100%;
    border-bottom: 2px solid #808080;
    margin-top:0;
}

.linklist>h2:empty {
	display:none;	
}

article .linklist section {
    width: 45%;
    border: 1px solid var(--body-background);
    border-top: 0;
    border-right: 0;
    background-image: url(../upload/zz_framework/plus.png);
    background-size: 3rem auto;
    background-repeat: no-repeat;
    background-position: right bottom 1rem;
    margin-bottom: 2rem;
    /*margin-right: 1rem;*/
    flex-grow: 1;
    flex-shrink: 1;
}

article .linklist section.onethird {
    width: 30%;
}

article .linklist section.fullsize {
    width: 100%;
}

article .linklist section.startlist {
    width: 100%;
}

article .linklist section a,
article .linklist section a:hover,
article .linklist section a:active,
article .linklist section a:visited {
    color: var(--normal-text-color);
    text-decoration: none;
    display: block;
    width: 100%;
    height: 100%;
    padding-bottom: 4rem;
    box-sizing: border-box;
}

article .linklist section img {
    width: 100%;
    height: 16rem;
    overflow: hidden;
    object-fit: cover;
    object-position: center;
}

article .linklist section.startlist img {
    height: auto;
    max-height:12rem;
    width: 16rem;
    float: left;
    margin-right: 1rem;
    aspect-ratio:4 / 3;
}

/*article .linklist section.startlist:nth-of-type(even) img {
    float:right;
    margin-left:1rem;
    margin-right:0;
}
*/
article .linklist section h2 {
    color: var(--text-highlight);
    font-size: 1.4rem;
    font-weight: bold;
    position: relative;
}

article .linklist section h2,
article .linklist section p {
    margin: 1rem;
}

article .linklist section.startlist h2 {
    margin-top: 0;
}

article .linklist .blog h3 {
    color: var(--text-headline-sub);
    font-size: 1rem;
    margin-bottom: 0;
    text-align: right;
    margin-top:0;
}

/*
article .panorama {
    margin: 0 2rem;
    width: calc(100% - 4rem);
    box-sizing: border-box;
    height: 24rem;
}
*/
article .linklist section:not(.startlist) h2:before {
    content: "\A";
    border-style: solid;
    border-width: 0 2rem 1.5rem 2rem;
    border-color: transparent transparent var(--main-background) transparent;
    position: absolute;
    left: 0;
    top: -2.5rem;
}

span.imageInfo {
    margin: 0;
    font-size: 0.7rem;
    font-weight: bold;
    display: block;
    padding: 0.5rem;
}

span.imageCopyright,
span.imageCount {
    margin: 0;
    font-size: 0.7rem;
    font-style: italic;
    text-align: right;
    display: block;
    padding: 0.5rem;
}

span.imageCount {
    padding-right: 1.8rem;
    background-image: url(../upload/zz_framework/galerie.png);
    background-size: 1.2rem auto;
    background-position: right center;
    background-repeat: no-repeat;
    width: auto;
}

.anlauftext {
    font-weight: bold;
}

.anlauftext:empty {
    display:none;
}


.slider {
    width: 46rem;
    overflow: hidden;
    margin: 0 2rem;
    position: relative;
}

.slider>h1 {
    display: none;
}

/* .slider .glide {
    height: 18rem;
} */

.slider .glide__slide {
    height:24rem;
    position:relative;
}

article iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 683/440;
    border: 0;
}


.glide__slide > * {
    position: absolute;
}


.slider .glide__slide img.teaser_image {
    width: inherit;
    height: 100%;
    object-fit: cover;
}


.slider .glide__slide div {
    left: 0;
    bottom: 4rem;
    width: 90%;
}

.slider .glide__slide div h2 {
    margin-top: 0;
    color: #fff;
    margin-left: 5rem;
    margin-bottom: 0.2rem;
    font-size: 2rem;
    font-weight: bold;
    text-shadow: 1px 1px 2px rgb(0 0 0 / 70%);
	overflow-wrap: break-word;
}

.slider .glide__slide > div div {
    background-color: #ffffffce;
    padding: 0.4rem 0.4rem 0.4rem 5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    -webkit-box-shadow: 1px 1px 2px 0px rgb(0 0 0 / 70%);
    box-shadow: 1px 1px 2px 0px rgb(0 0 0 / 70%);
    display: none;
}

.slider .glide__slide > div a {
    margin-right: 0;
    background-color: var(--nav-extra-background);
    padding: 0.2rem 1rem;
    height: 1.9rem;
    border-radius: 0.4rem;
    color: var(--nav-main-link-color);
    margin-top: 1.5rem;
    display: block;
    -webkit-box-shadow: 1px 1px 2px 0px rgb(0 0 0 / 70%);
    box-shadow: 1px 1px 2px 0px rgb(0 0 0 / 70%);
    margin-left: auto;
    line-height: 1.5rem;
    width: 10rem;
    text-align: center;
    position: relative;
}

.slider .glide__arrow {
    border: 0;
    font-size: 4rem;
    padding: 0;
    opacity: 0.5;
    text-shadow: 0 0.25rem 0.5rem rgb(0 0 0 / 67%);
    box-shadow: none;
}

.slider .glide__arrow--left {
    left:0.5rem;
}

.slider .glide__arrow--right {
    right:0.5rem;
}

.slider .glide__bullets {
    bottom: 1rem;
}

article table tr td {
    padding: 0.2rem 0.5rem;
}

article table tr:nth-child(2n+1) td {
    background-color: var(--body-background);
}

article table tr th {
    color: var(--text-highlight);
    padding: 0.2rem 0.5rem;
    padding-top: 1rem;
}

article table tr td p {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

article table tr td p:last-child {
    margin-bottom: 1rem;
}

main aside {
    width: 14rem;
    box-sizing: border-box;
    border-left: 1px solid var(--body-background);
    flex-shrink: 0;
    flex-grow: 0;
}

aside>nav {
    margin-bottom: 4rem;
}

aside>nav>h3 {
    border-width: 0px;
    border-style: solid;
    border-image: linear-gradient(90deg,
            var(--text-highlight),
            var(--text-highlight) 1.9rem,
            var(--main-background) 1.9rem,
            var(--main-background)) 100% 1;
    border-bottom-width: 1px;
    color: var(--text-highlight);
    line-height: 0.7rem;
    padding-left: 1.5rem;
    margin-top: 0.8rem;
}

aside nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    padding-top: 0.5rem;
    font-size: 0.8rem;
}

aside>nav>ul {
    margin-left: 0.5rem;
}

aside nav ul li {
    padding-left: 1rem;
    padding-bottom: 0.7rem;
    position: relative;
}

aside>nav ul li a {
    text-decoration: none;
    color: inherit;
}

aside nav ul li.open {
    font-weight: bold;

}

aside nav ul li.open ul {
    font-weight: normal;
    border-top: 1px solid var(--text-highlight);
}

aside nav ul li.aktiv {
    color: var(--text-highlight);
    font-weight: bold;
}

aside nav ul li.aktiv:before {
    content: "\A";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.3rem 0 0.3rem 0.6rem;
    border-color: transparent transparent transparent var(--text-highlight);
    position: absolute;
    left: 0;
    top: 0.2rem;
}


aside nav ul li.aktiv ul {
    font-weight: normal;
    color: var(--normal-text-color)
}

aside h2 {
    color: var(--text-headline-sub);
    margin-bottom: 0.3rem;
    font-size: 1.2rem;
    margin-top: 0;
    margin-left: 0.5rem;
    font-weight: normal;
}

aside .profile,
aside .asidetext {
    margin-left: 0.5rem;
    background-color: var(--body-background);
    padding: 0.5rem;
}

aside .profile dl {
    margin: 0;
}

aside .profile dl dt {
    font-weight: bold;
    color: var(--text-highlight);
}

aside .profile dl dd {
    margin-left: 1rem;
    margin-bottom: 1rem;
}

aside section {
    margin: 0;
    margin-bottom: 3rem;
    margin-left: 0.5rem;
}

aside section a {
    text-decoration: none;
}

aside section h3 {
    text-transform: uppercase;
    color: #808080;
    margin-bottom: 0;
    margin-top: 0.5rem;
    margin-bottom: 0.3rem;
}

aside section img {
    width: 100%;
    margin: 0;
    display: block;
}

aside section div {
    margin: 0;
    background-color: var(--aside-sect-green);
    font-size: 0.8rem;
    padding: 0.5rem;
    position: relative;
    padding-bottom: 2rem;
    background-image: url(../upload/zz_framework/plus.png);
    background-size: 1.5rem auto;
    background-repeat: no-repeat;
    background-position: right 0.5rem bottom 0.5rem;
}

aside section div:before {
    content: "\A";
    border-style: solid;
    border-width: 0 1rem 0.7rem 1rem;
    border-color: transparent transparent var(--aside-sect-green) transparent;
    position: absolute;
    left: 0.5rem;
    top: -0.7rem;
}

aside section:nth-of-type(3n+1) div {
    background-color: var(--aside-sect-blue);
}

aside section:nth-of-type(3n+1) div:before {
    border-color: transparent transparent var(--aside-sect-blue) transparent;
}

aside section:nth-of-type(3n) div {
    background-color: var(--aside-sect-orange);
}

aside section:nth-of-type(3n) div:before {
    border-color: transparent transparent var(--aside-sect-orange) transparent;
}


aside section div h3,
aside section div p {
    color: var(--aside-sect-text);
}


aside section div.green {
    background-color: var(--aside-sect-green);
}

aside section div.green:before {
    border-color: transparent transparent var(--aside-sect-green) transparent;
}

aside section div.green h3,
aside section div.green p {
    color: var(--aside-sect-green-text);
}

aside section div.orange {
    background-color: var(--aside-sect-orange);
}

aside section div.orange:before {
    border-color: transparent transparent var(--aside-sect-orange) transparent;
}

aside section div.orange h3,
aside section div.orange p {
    color: var(--aside-sect-orange-text);
}


aside section div.blue {
    background-color: var(--aside-sect-blue);
}

aside section div.blue:before {
    border-color: transparent transparent var(--aside-sect-blue) transparent;
}

aside section div.blue h3,
aside section div.blue p {
    color: var(--aside-sect-blue-text);
}

aside section div p {
    margin: 0;
    margin-bottom: 0.5rem;
}

footer {
    background-color: var(--nabu-blau);
    color: #fff;
    width: 64rem;
    padding-left: calc(50% - 32rem);
    padding-right: calc(50% - 32rem);
    display: flex;
    font-size: 0.9rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    flex-wrap: wrap;
    flex-grow: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

footer section {
    flex-grow: 1;
    padding: 0 2rem;
}

footer section ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

footer a,
footer a:active,
footer a:visited,
footer a:hover {
    color: #fff;
    text-decoration: none;
}

footer a[href^="mailto:"]::before {
    content: "[";
    font-family: NABUIcons;
    font-size: 2rem;
    line-height: 1.3rem;
    display: inline-block;
    overflow: hidden;
    height: 1rem;
    vertical-align: middle;
}

footer a[href^="tel:"]::before {
    content: "]";
    font-family: NABUIcons;
    font-size: 2rem;
    line-height: 1.3rem;
    display: inline-block;
    overflow: hidden;
    height: 1rem;
    vertical-align: middle;
}

footer a:hover {
    text-decoration: underline;
}


.keywords {
    margin: 4rem 5rem;
    border-top: 0.2rem solid var(--body-background);
    border-bottom: 0.2rem solid var(--body-background);
    padding: 1rem;
    color: var(--body-background);
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
    width: auto;
}


@media only screen and (max-height: 60rem) {
    .nabu_head_image {
        height: 20vH;
    }
}

@media only screen and (max-height: 54rem) {
    .nabu_head_image {
        height: 20vH;
    }

    .nabu_head_image span {
        bottom: 3.2rem;
        font-size: 1.2rem;
        line-height: 1.4rem;
        padding: 0 0.3rem;
    }

    .nabu_head_image span+span {
        bottom: 1.6rem;
    }

    .logo {
        width: 7rem;
        height: 6.5rem;
    }

    .logo img {
        margin-top: 1rem;
        width: 6rem;
    }

    nav.fastLink {
        height: 2.2rem;
        line-height: 2.2rem;
    }

    nav.fastLink ul li {
        margin: 0.7rem 0;
    }

}

@media only screen and (max-height: 30rem) {
    .nabu_head_image {
        height: 9rem;
    }

    .nabu_head_image span {
        display: none;
    }

    .nabu_head_image span+span {
        display: none;
    }

    .logo {
        width: 6rem;
        height: 5.5rem;
    }

    .logo img {
        margin-top: 0.7rem;
        width: 5rem;
    }

    nav.fastLink {
        height: 0.3rem;
    }

    nav.fastLink * {
        display: none;
    }
}


@media only screen and (max-width: 64rem) {

    header>nav.fastLink,
    main,
    footer {
        width: 100%;
    }


    /*

    main {
		overflow-x:hidden;
		flex-wrap:nowrap;
	}
    */
    main article {
        flex-shrink: 1;
        overflow:hidden;
    }

    main article > * {
        width: calc(100% - 4rem);
        overflow:hidden;
    }

    main article .slider {
        width:calc(100% - 4rem);
    }

    nav.fastLink {
        padding-right: 0.5rem;
    }

    nav.mainNav {
        height: auto;
        line-height: 1.2rem;
        padding-left: 10rem;
        padding-right: 0;
    }

    .logo {
        left: 1rem;
    }

    nav.mainNav>ul>li>a {
        padding: 0.2rem 0.5rem;
    }

    .nabu_head_image span {
        left: 2rem;
    }

    .nabu_head_image span+span {
        left: 4rem;
    }

    main aside {
        flex-shrink: 0.5;
        min-width:12rem;
    }

    main aside nav {
        width: 100%;
        flex-grow: 1;
        flex-shrink: 0;
        padding-bottom: 1rem;
        border-bottom: 1px solid var(--body-background);
    }

    main aside section {
        width: auto;
        flex-shrink: 1;
    }

    main aside h2 {
        /*display: none;*/
    }

    article>.picture {
        width: 13.5rem;
    }

    .picture img {
        width: 13.5rem;
        height: 13.5rem;
    }


    article>.picture.landscape {
        width: 18rem;
    }

    .picture.portrait img {
        height: 18rem;
    }

    .picture.landscape img {
        width: 18rem;
    }

    article .linklist section.onethird {
        width:45%;
    }

}

@media only screen and (max-width: 44rem) {

    nav.mainNav {
        text-align: right;
        position: relative;
        line-height: 3rem;
        padding-left: 0;
    }

    .desktop_invisible {
        display: inline-block !important;
    }

    nav.mainNav>ul>li:hover>a::after {
        display: none;
    }

    article.mobileOpen {
        margin-left: -14rem;
    }


    nav.mainNav a,
    nav.mainNav>ul>li>a {
        text-align: right;
        padding: 0 1rem;
    }

    nav.mainNav ul li div ul li a {
        text-align: right;
    }

    header nav.mainNav>ul {
        display: none;
        position: relative;
        /*position: absolute;
	    top: 2rem;*/
        left: 0;
        right: 0;
        flex-direction: column;
        background-color: var(--nabu-blau);
        z-index: 10000;
        border-bottom: 1rem solid var(--nabu-blau);
        -webkit-box-shadow: 0px 10px 5px 0px rgba(0, 0, 0, 0.75);
        -moz-box-shadow: 0px 10px 5px 0px rgba(0, 0, 0, 0.75);
        box-shadow: 0px 10px 5px 0px rgba(0, 0, 0, 0.75);
    }

    header nav.mainNav>ul>li {
        border-top: 1px solid var(--mobil-nav-seperator);
        line-height: 3rem;
        text-align: right;
    }

    header nav.mainNav>ul>li>div {
        display: none;
        position: relative;
        background-color: var(--main-background);
        top: 0;
        width: 100%;
        left: 0;
        height: auto;
    }

    nav.mainNav>ul>li>div>ul {
        left: 0;
        top: 0;
        padding: 0;
        background: none !important;
        display: flex;
        box-shadow: none;
        height: auto;
        position: relative;
        width: auto;
    }

    nav.mainNav>ul>li>div>ul>li {
        text-align: right;
    }

    nav.mainNav>ul>li>div>ul>li>ul {
        display: none;
    }

    main {
        overflow-x: hidden;
        flex-wrap: nowrap;
    }

    main article {
        width: 100%;
        flex-grow: 0;
        flex-shrink: 0;
        transition: margin-left 2s;
    }


    .slider ul.images li>div {
        width: auto;
        width: calc(100% - 2rem);
    }
	
	.slider .glide__slide div h2 {
		max-width: calc(100% - 3rem);
		margin-left:3.5rem;
	}

    .slider ul.images li>div a {
        width: auto;
        height: auto;
        max-width: calc(100% - 10rem);
        right: 0rem;
    }

    main aside {
        width: 14rem;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        flex-grow: 0;
        flex-shrink: 0;
    }

    main aside section {
        width: 13rem;
        flex-shrink: 1;
    }


    footer section {
        width: 30%;
        flex-grow: 1;
    }

    footer section {
        margin-top: 2rem;
    }

    footer section:nth-child(1) {
        order: 1
    }

    footer section:nth-child(2) {
        order: 3
    }

    footer section:nth-child(3) {
        order: 4
    }

    footer section:nth-child(4) {
        order: 2
    }

    nav.fastLink {
        height: 1.5rem !important;
    }

    nav.fastLink * {
        display: none !important;
    }

    article>.picture {
        width: 12rem;
    }

    article>.picture.landscape {
        width: 16rem;
    }

    .picture img {
        width: 12rem;
        height: 12rem;
    }

    .picture.portrait img {
        height: 16rem;
    }

    .picture.landscape img {
        width: 16rem;
    }

    /*footer section:nth-child(1),
	footer section:nth-child(4) {
		width:100%;
	}*/

    article iframe {
        aspect-ratio: 683/550;
    }

}

@media only screen and (max-width: 38rem) {

    html {
        font-size:15px;
    }

    article .linklist section,
    article .linklist section.onethird,
    article .linklist section.fullsize,
    article .linklist section.startlist {
        width: 100%;
    }

    article .linklist section.startlist img {
        float: none !important;
        width: 100%;
        height: auto;
    }

    .nabu_head_image span {
        display: none;
        font-size: 1.2rem;
        line-height: 1.4rem;
        padding: 0 0.3rem;
        bottom: 3.8rem;
    }

    .nabu_head_image span+span {
        bottom: 2rem;
    }

    article>.picture.pictureAlignLeft,
    article>.picture.pictureAlignRight {
        width: calc(100% - 4rem);
    }

    .picture.pictureAlignLeft img,
    .picture.pictureAlignRight img {
        width: 100%;
        height: auto;
        max-height:20rem;
    }

    .picture.landscape img,
    .picture.portrait img{
        max-height: none;
    }

    article>.pictureAlignGalery ul li {
        width:50%;
    }

    article>.pictureAlignGalery ul li+li+li {
        display:none;
    }

}

@media only screen and (max-width:22rem) {
    article>.pictureAlignGalery ul li {
        width:100%;
    }

    article>.pictureAlignGalery ul li img {
        height:auto;
    }

    article>.pictureAlignGalery ul li+li {
        display:none;
    }
}