@media (max-width: 1750px){
    #oben {
        width: 90%;
        padding: 0 5%;
    }

   .infoleiste{
    right: 5%;
   }


    #inhaltsbereich.sub {
        margin-top: 60px;
    }

    #inhaltsbereich header,
    #inhaltsbereich .ce-bodytext {
        hyphens: auto;
        -webkit-hyphens: auto;
        hyphenate-limit-chars: 10 5 5;
    }

    @supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {
        #header.sub .ce-bodytext, h1, h2, h3, h4, h5{
            /* Safari-spezifische Regeln */
            hyphens: auto;
            -webkit-hyphens: auto; 
            -webkit-hyphenate-limit-before: 4;
            -webkit-hyphenate-limit-after: 5;
        }
    }

    @media not all and (min-resolution: 0.001dpcm) {
        #header.sub .ce-bodytext, h1, h2, h3, h4, h5{
            hyphens: auto;
            -webkit-hyphens: auto; 
            -webkit-hyphenate-limit-before: 4;
            -webkit-hyphenate-limit-after: 5;
        }
    }   
}


@media (max-width: 1400px){
    :root{
        --hoben: 127px
    }
   #oben .image-embed-item {
        max-width: 200px;
    }
}

@media (max-width: 1300px) {
    #oben {
        width: 98%;
        padding: 0 1%;
    }
}

@media (max-width: 1270px) {
    #oben .image-embed-item, #oben.scroll .image-embed-item {
        margin-top: 0;
    }

    #oben.scroll .hnavi > li {
        padding-top: 0px;
    }
}

@media (max-width: 1200px){
    #footer .tx_cn-multicontent:first-child .col-33:last-child ul{
        float: left;
    }

    #footer .tx_cn-multicontent:last-child .row > div:last-child .ce-bodytext{
        float: left;
        clear: both;
        width: 100%;
    }

    #footer .tx_cn-multicontent .row > div:last-child .ce-gallery {
        margin-top: 30px;
    }

}

@media (max-width: 1150px){
    ul.hnavi > li + li {
        margin-left: 0px;
    }
}

@media (max-width: 1100px){
    .hnavi > li > a {
        margin: 6px 0;
    }
    
    #oben .infoleiste {
        top: -29px;
    }

    #header .ce-bodytext::before,
    #header .ce-bodytext::after {
        display: none !important;
    }

    #header .ce-bodytext{
        line-height: normal;
        text-align: center;
    }
    
    #header .ce-bodytext {
        left: unset;
        width: auto;
    }

    #header .ce-bodytext strong{
        font-size: 18px;
    }

    #inhaltsbereich > .frame:not(.frame-schraeg, .frame-bildkacheln) .ce-textpic .ce-gallery{
        max-width: 50%;
    }
}

@media (max-width: 1050px){
    #oben{
        transition: var(--standardtransition);
        width: 90%;
        padding: 0 5%;
    }

    #oben.scroll{
        position: fixed;
    }
    
    #oben .image-embed-item {
        max-width: 250px;
        margin: 0;
    }

    #oben.scroll .image-embed-item {
        max-width: 150px;
        margin: 0;
    }

    .infoleiste{
        margin: 0;
        padding: 0;
        right: 5%;
        top: 90px;
        height: auto;
        overflow: visible;
    }

    #oben.scroll .infoleiste .frame-default{
        display: none;
    }

    .infoleiste .ce-gallery .ce-row:not(:nth-child(2)) {
        display: none;
    }

    .infoleiste .ce-gallery,
    .infoleiste .ce-gallery .ce-row{
        margin-bottom: 0;
    }

    .infoleiste .ce-gallery .ce-row + .ce-row {
        margin-left: 40px;
    }

    #oben > .frame-default .ce-gallery {
        margin: 5px 0;
    }

     ul.hnavi {
        display: none;
    }
    
    label[for="mobnav"] .mob_button {
        display: block;
        top: 5px;
    }

    #oben.scroll label[for="mobnav"]{
        top: 20px;
    }

    .hnavi::before{
        display: none;
    }

    #mobnav:checked ~ ul.hnavi {
        display: block;
    }

    ul.hnavi {
        text-align: left;
        top: 70px;
        right: 0;
        width: 400px;
        padding: 0 20px;
        background: rgba(255, 255, 255, 95%);
        max-height: calc(100vh - var(--hoben) - 80px);
        overflow: auto;
        margin-top: 0;
        position: inherit !important;
        border: none !important;
        position: absolute !important;
    }
    
    ul.hnavi > li,
    ul.hnavi > li:last-child {
        display: block;
        float: left;
        clear: both;
        margin: 0;
        padding: 5px 20px;
        width: calc(100% - 40px);
        background: var(--navbg);
        position: relative;
        border-top: 1px solid var(--blau);
        border-bottom: none !important;
	}

    ul.hnavi > li > a{
        text-align: left;
    }

    .hnavi > li.ifsub > a::after{
        display: none !important;
    }

    ul.hnavi > .ifsub > label > .navtoggle, ul.unavi > .ifsub > label > .navtoggle {
        right: 10px;
        top: -5px;
        padding: 10px;
    }

    ul.hnavi .navtoggle::before, ul.hnavi .navtoggle::after {
        top: 50%;
        left: calc(50% - 9px)
    }

    ul.hnavi .navtoggle::after{
        left: calc(50% - 2px)
    }

    ul.hnavi > .ifsub:hover > label > .navtoggle{
        transform: rotate(90deg);
    }

    ul.unavi li > a:hover,
    ul.unavi li:hover > a,
    ul.unavi li.act > a {
        color: var(--blau) !important;
        background: var(--weiss) !important;
    }
    
    ul.hnavi > .ifsub > label {
        display: block;
        position: absolute;
        top: 10px;
        right: 20px;
        z-index: 1;
    }
    
    ul.hnavi li.ifsub:hover > .klappnavi {
        display: none;
    }

    .klappnavi {
        position: initial;
        float: left;
        clear: both;
        width: 90%;
        margin: 0 0 0 10% !important;
        padding: 0 !important;
    }

    ul.unavi{
        position: inherit;
        float: left;
        clear: both;
        width: 100% !important;
        margin: 0;
        box-shadow: none;
        left: 0;
        padding: 0;
        border: none;
        min-width: inherit;
        border-top: 2px solid var(--weiss);
    }

    ul.unavi::after {
        display: none;
    }

    ul.unavi > li,
    ul.unavi > li:first-child {
        float: left;
        clear: both;
        width: 100%;
        text-align: left;
        margin: 0;
        padding: 0 !important;
    }

    ul.unavi li + li{
        border: none
    }

    ul.hnavi > li:hover > a::before,
    ul.hnavi > li.act > a::before,
    ul.unavi li:hover a::before{
        display: none;
    }

    
    ul.unavi > li > a {
        border: none;
        padding: 10px 0;
        width: 100%;
        margin: 0;
    }
    
    .hnavi li.ifsub input[name="togglesub"]:checked + a + label + .klappnavi {
      display: block;
    }

    #header,
    #oben.scroll + #header{
       margin-top: 0;
    }
}

@media (max-width: 1000px) {
    .unavi li.act a::before {
        display: none;
    }

    .hnavi > li[data-toggled="on"] > a, .hnavi > li.act > a{
        border: none;
    }

    .hnavi > li.act > a {
        background: none;
    }

    .hnavi > li > a,
    .hnavi > li.act > a,
    .unavi li a {
        color: var(--schwarz) !important;
    }

    header{
        margin-bottom: 0;
    }
}

@media (max-width: 991px) {
    #inhaltsbereich > .frame-type-textmedia .ce-gallery,
    #inhaltsbereich > .frame-type-textmedia .ce-bodytext {
        float: left;
        clear: both;
        width: 100%;
        max-width: 100% !important;
        margin: 5px 0;
        padding: 0;
        position: inherit;
    }

    #inhaltsbereich > .frame > .rahmen, #footer > .frame > .rahmen {
        margin: 0 5%;
        float: left;
        width: 90%;
    }

    #inhaltsbereich > .frame-type-div > .rahmen{
        margin: 0;
    }
}

@media (max-width: 900px){
    .infoleiste .frame-default{
        display: none;
    }

    #header{
        padding-bottom: 0;
    }

    #header .ce-gallery{
        max-width: 100%;
    }

    #header .ce-bodytext{
        display: block;
        background: var(--rot);
        position: inherit;
        width: calc(100% - 20px);
        border-radius: 0;
        bottom: 0;
        padding: 10px;
        right: 0;
        height: auto;
        font-size: 32px;
        min-width: inherit;
    }

    #header .ce-gallery img{
        border-radius: 0;
    }


    #header .ce-bodytext a.more{
        position: relative;
        bottom: 0;
        left: calc(50% - 70px);
        float: left;
    }

    #inhaltsbereich{
        margin-top: 0;
    }

    #footer .tx_cn-multicontent:nth-child(2) .row > div:last-child ul li{
        margin: 0;
    }

    #footer .tx_cn-multicontent:nth-child(2) .row > div:last-child ul li a{
        float: none;
    }
}

@media (max-width: 800px){
    h2.folgt, h3 {
        font-size: 22px;
    }
}

@media (max-width: 700px){
    body {
        font-size: 16px;
    }

    #inhaltsbereich .ce-bodytext a.link-external, #inhaltsbereich .ce-bodytext a.more {
        padding: 5px 15px;
    }

    #inhaltsbereich > .frame:not(.breadcrumb) + .frame{
        margin-top: 60px;
    }

    #inhaltsbereich .frame-layout-0, #inhaltsbereich .frame-layout-1 {
        padding: 30px 0;
    }
}

@media (max-width: 600px){
    #oben .hnavi > li{
        width: 100%;
        margin: 0 !important;
    }


    .mob_button {
        top: 23px;
    }

     #header .ce-bodytext{
        font-size: 24px;
     }

    #inhaltsbereich > .frame.breadcrumb {
        margin: 10px 0 10px;
    }

    #inhaltsbereich.sub > .frame.breadcrumb {
        margin-top: 0px;
        margin-bottom: 10px;
    }
}

@media (max-width: 500px){
    #header {
        padding-top: 70px;
    }

    #header .ce-bodytext{
        font-size: 24px;
    }

    #inhaltsbereich > .frame:not(.breadcrumb) + .frame{
        margin-top: 30px;
    }
}

@media (max-width: 450px){
    body,
    .frame-type-menu_pages ul.menu-mit-bildern li,
    #footer{
        font-size: 16px;
    }


    #oben .image-embed-item {
        max-width: 200px;
    }

    .hnavi > li > a{
        font-size: 18px;
    }
    h1, h2 {
        font-size: 24px;
    }
    #header .ce-bodytext {
        font-size: 20px;
    }

    #inhaltsbereich .table th,
    #inhaltsbereich .table tr,
    #inhaltsbereich .table td{
        float: left;
        clear: both;
        width: 100%;
        border: none;
        padding: 0;
    }

     #inhaltsbereich .table td:first-child{
        font-weight: 700;
     }

    #inhaltsbereich .table tr{
        margin-bottom: 25px;
    }
}