
.unsichtbar, .aussen, .out {
    position: absolute;
    left: -1000px;
    top: -1000px;
    width: 0;
    height: 0;
    overflow: hidden;
    display: inline;
}

img {
    height: auto;
    max-width: 100%;
    /*width: 100%;*/
}

ul, dl, ol {
    /*padding-left: 18px !important*/
    padding-left: 18px
}
p.p-header {margin: 0}
.csc-menu ul,
.csc-menu dl,
.menu ul,
.menu dl {
    /*padding-left: 0 !important;;*/
    padding-left: 0;
}
.tobo0 * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 100% !important;
}
ul > li {
    list-style-type: square;
}
button {
    /*font-size: 1.1rem;*/
    font-size: inherit;
}
.button.tiny {
    font-size: 80%
}
.button.small {
    font-size: 90%
}
.button.large {
    font-size: 120%
}
a.prefix {
    text-decoration: none !important;
}
.herotext a.prefix,
.herotext-bottom a.prefix {
    /*color: blue;*/
    font-size:0;
}
.herotext a.prefix:before,
.herotext-bottom a.prefix:before {
    color: #fff;
    font-size: 50px;
    content: "\f107";
}
span.icon-prefix:before,
a.prefix:before,
a.prefix-hero-arrow-down:before,
a.read-more-arrow-left:before,
a.prefix-arrow-down:before,
a.prefix-news:before,
a.prefix-events:before,
a.prefix-service:before,
a.prefix-contact:before,
a.prefix-fon:before,
a.prefix-info:before,
a.prefix-mail:before,
a.prefix-fax:before,
a.prefix-mobile:before,
a.prefix-extpages:before,
a.prefix-intpages:before,
a.prefix-plus:before,
a.iconafter:after,
a.read-more-arrow-right:after {
    position: relative;
    /*left: 5px;*/
    /*top: 5px;*/
    padding-right:5px;
    /*font-family: "Ionicons";*/
    /*font-family: "Font Awesome 6 Pro";*/
    font-family: "Font Awesome 6 Pro";
}
a.prefix-hero-arrow-down {
    /*color: blue;*/
    font-size:0;
}
a.prefix-hero-arrow-down:before {
    font-size: 50px;
    content: "\f107";
}
a.prefix-arrow-down:before {
    content: "\f107";
}
a.read-more-arrow-left:before {
    content: "\f105";
}
span.icon-prefix.thumb-up:before{
    content: "\f164";
}
a.prefix:before{
    content: "\f151";
}
a.prefix-news:before{
    content: "\f1ea";
}
a.prefix-events:before{
    content: "\f073";
}
a.prefix-service:before{
    content: "\f562";
}
a.prefix-contact:before{
    content: "\f2b9";
}
a.prefix-fon:before{
    content: "\f095";
}
a.prefix-info:before{
    content: "\f129";
}
a.prefix-mail:before{
    content: "\f0e0";
}
a.prefix-fax:before{
    content: "\f1ac";
}
a.prefix-mobile:before{
    content: "\f10b";
}
a.prefix-extpages:before{
    content: "\f360";
}
a.prefix-intpages:before{
    content: "\f0c1";
}
a.prefix-plus:before{
    content: "\f067";
}
/*social icons with fa*/
a.prefix-xing:before,
a.prefix-facebook:before,
a.prefix-twitter:before,
a.prefix-pinterest:before,
a.prefix-instagram:before,
a.prefix-youtube:before,
a.prefix-typo3:before,
a.prefix-linkedin:before{
    font-family: "Font Awesome 5 Brands";
    font-size: 50px;
    text-align: center;
    color: #999;
    width: 1.25em;
    padding-right: .5em;
}
a.prefix-xing,
a.prefix-facebook,
a.prefix-twitter,
a.prefix-pinterest,
a.prefix-instagram,
a.prefix-youtube,
a.prefix-typo3,
a.prefix-linkedin{
    color: inherit;
    font-size: 0 !important;
    text-decoration: none !important
}
a.prefix-xing:before {
    content: "\f169";
}
a.prefix-linkedin:before {
    content: "\f08c";
}
a.prefix-facebook:before {
    content: "\f09a";
    color: #4267B2
}
a.prefix-twitter:before {
    content: "\f081";
}
a.prefix-pinterest:before {
    content: "\f0d3";
}
a.prefix-instagram:before {
    content: "\f16d";
}
a.prefix-youtube:before {
    content: "\f167";
}
a.prefix-typo3:before {
    content: "\f42b";
}
/*default link handler*/
a.link-internal:before,
a.link-external-blank:before,
a.link-download:before,
a.link-phone:before,
a.link-mail:before,
a.link-mail.link-telephone:before {
    position: relative;
    /*left: 5px;*/
    /*top: 5px;*/
    padding-right:5px;
    /*font-family: "Ionicons";*/
    /*font-family: "Font Awesome 6 Pro";*/
    font-family: "Font Awesome 6 Pro";
}

/*default link handler*/
a.link-internal:before {
    content: "\f659";
}
a.link-external-blank:before {
    content: "\f08e";
}
a.link-download:before {
    content: "\f15b";
}
a.link-mail:before {
    content: "\f0e0";
}
a.link-mail.link-telephone:before {
    content: "\f095";
}

a.iconafter:after {
    content: "\f105";
    padding-left: 10px;
}
a.read-more-arrow-right:after {
    content: "\f105";
    padding-left: 10px;
}
a.read-more-underline-uppercase {
    text-transform: uppercase;
    padding-bottom: 5px;
    border-bottom: 1px solid #fff;
}
a.read-more-underline-b-uppercase {
    text-transform: uppercase;
    padding-bottom: 5px;
    border-bottom: 1px solid #222;
}

.nav-icon-extlink a:before {
    font-family: "Font Awesome 6 Pro";
    content: "\f08e";
    padding-right: .5em;
}


.upper-header {
    text-transform: uppercase;
    letter-spacing: 2px;
}


blockquote.blockquote-cite-icon,
blockquote.blockquote-info-icon {
    margin: 0 0 1rem 5rem;
    padding: .5625rem 2.25rem 0 1.1875rem;
    border-left: 1px solid #ddd;
    position: relative;
}
blockquote.blockquote-cite-icon:before  {
    position: absolute;
    left: -5rem;
    font-weight: 900;
    top: 0;
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    content: "\f10e";
    text-align: center;
    width: 1.25em;
    color: #ddd
}
blockquote.blockquote-info-icon:before  {
    position: absolute;
    left: -5rem;
    font-weight: 900;
    top: 0;
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    content: "\f129";
    text-align: center;
    width: 1.25em;
    color: #ddd
}
blockquote, blockquote p {
    line-height: 1.7;
    color: #555;
    font-style: italic;
    font-size: 120%;
    font-size: 1.2rem;
}
.blockquote-reverse {
    text-align:right;
}
/* # ~~~~~ langmenu ~~~~~ # */
.langmenue {
    text-align: right;
}
.langbuttons ul,
.langbuttons li {
    list-style-type: none;
}
.langbuttons img {
    display: block;
    float:right;
    margin-right:10px;
    max-width:45px;
    height:auto;
}
#languageNavigation,
#languageNavigation li {
    list-style: none;
    list-style-type: none;
}
#languageNavigation {
    display: block;
    min-width: 120px;
}
#languageNavigation img {
    max-width: 30px;
    height: auto;
    float: right;
    margin-left: .2em
}
#languageNavigation .na {
    display: none;
}



/* ~~~~~  Forms:*/

.error {
    margin: 0 0 3px 0 !important;
    padding: 10px 3px 3px 3px !important;
    font-size: .85em !important;
}

/* # ~~~~~ back to top: ~~~~~ # */
#back-top {
    position: fixed !important;
    bottom: 20px !important;
    right: 10px !important;
}
#back-top {
    background: #888 none repeat scroll 0 0;
    border-radius: 30px;
    bottom: 30px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    color: #fff;
    display: none;
    font-size: 24px;
    height: 50px;
    line-height: 44px;
    position: fixed;
    right: 20px;
    text-align: center;
    width: 50px;
    z-index: 2147483647;
}
#back-top a {
    color: #fff;
}
#back-top span:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: var(--font-all);
    font-weight: bold;
    /*font-family: "Ionicons";*/
    font-family: "Font Awesome 6 Pro";
    content: "\f106";
    text-align: center;
}
#back-top:hover {
    background: #da5433;
}
.is-arrow-down a.rte-mag {
    font-size: 0;
    /*text-align: center;*/
    /*width: 100%;*/
    display: block;
}
.is-arrow-down a.rte-mag:before {
    position: relative;
    padding-right:5px;
    font-family: "Font Awesome 6 Pro";
    content: "\f107";
    font-size: 50px;
}

/* # ~~~~~ Breadcrumb ~~~~~ # */
.bcnav {
    background: none;
    border: none;
    padding: 5px 0;
    text-align: left;
    /*float: right;*/
}
.bcnav .bprefix {
    display: block;
    float: left;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 95% !important;
}
.bcnav ul {
    margin: 0 !important;
    padding: 0 !important;
}
.bcnav ul li {
    list-style: none;
    display: inline-block;
    margin: 0 !important;
    padding: 0 5px !important;
    line-height: normal;
    font-size: 95% !important;;
}
.bcul > *:before {
    content: "/";
}
.bcul > *:first-child:before,  .bcul > *:last-child:before {
    content: "";
}
.bcul > *:before {
    color: #C3BCBD;
    /*padding-right: 10px;*/
}
.bcnav a {
    color: #C3BCBD;
    font-size: 95% !important;;
}
.bcnav a:hover {
    color: #5D5E55;
}
.bcnav span {
    color: #C3BCBD;
}
.bcnav > * {
    font-size: 95% !important;
    line-height: normal
}
a[href^="tel"]:link,  a[href^="tel"]:visited,  a[href^="tel"]:hover {
    text-decoration: none;
}
@media only screen and (max-width: 40.063em) {
    a[href^="tel"]:link,  a[href^="tel"]:visited,  a[href^="tel"]:hover {
        /*text-decoration: underline !important;*/
    }
}

#tophero a.prevbutton:before {
    position: absolute;
    width: 50%;
    height: 50%;
    overflow: auto;
    margin: auto;
    top: 0; left: 1%; bottom: 0; right: auto;
    text-align: left;
    font-size: 140px;
    color: #fff;
    /*font-family: "Ionicons";*/
    font-family: "Font Awesome 6 Pro";
    content: "\f150";
    opacity: .5;
    transition: all .5s;
}
#tophero a.nextbutton:before {
    position: absolute;
    width: 50%;
    height: 50%;
    overflow: auto;
    margin: auto;
    top: 0; right: 1%; left:auto; bottom: 0;
    text-align: right;
    font-size: 140px;
    color: #fff;
    /*font-family: "Ionicons";*/
    font-family: "Font Awesome 6 Pro";
    content: "\f152";
    opacity: .5;
    transition: all .5s;
}
#tophero a.prevbutton:hover:before {
    opacity: 1;
    transition: all .5s;
}
#tophero a.nextbutton:hover:before {
    opacity: 1;
    transition: all .5s;
}


.row.columns.onecol {
    padding: 10px !important;
}
.special-header {
    font-size: 110%;
    padding: 10px;
    background: #999;
    color: #fff;
}


button.close-button {
    color: #999;
}
a.statlink-wrapper {
    cursor: inherit;
}
.statlink img {
    max-width: 120px;
}



.mega-menu .ce-anchor {
    display: none;
    visibility: hidden;
}
/* # ~~~~~ nested lists ~~~~~ # */
html > /**/ body ol {
    /* Won't be interpreted by IE6/7. */
    list-style-type: none;
    counter-reset: level1;
}
ol li:before {
    content: counter(level1) ". ";
    counter-increment: level1;
    margin-left: -1em;
}
ol li ol {
    list-style-type: none;
    counter-reset: level2;
    margin-left: 1.75em;
}
ol li ol li:before {
    content: counter(level1) "." counter(level2) " ";
    counter-increment: level2;
    margin-left: -1.5em;
}
ol li span {
    /* For IE6/7. */
    margin: 0 5px 0 -25px;
}



.copyright-container {
    margin: 5px 0;
    padding: 5px 0;
}

/* # ~~~~~ breadcrumb fluid ~~~~~ # */

.breacrumb-menu span,
.breacrumb-menu span a {
    font-size: 100%;
    font-size: 1.0rem;
    text-transform: lowercase;
    font-style: italic;
    color: #999
}

/*helpers for small:*/
.nopadding-1col {
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
}
.nopadding-all {
    margin-left: 1rem;
    margin-right: 1rem;
}
@media only screen and (max-width: 1440px) {
    .nopadding {
        margin-left: -1rem;
        margin-right: -1rem;
    }
}
@media only screen and (max-width: 1024px) {
    .nopadding-sm {
        margin-left: -1rem;
        margin-right: -1rem;
    }
}


    @media only screen and (max-width: 40.063em) {
    .main-innercol,
    .breacrumb-menu{
        padding: 1rem !important;
    }
    .nopadding-s {
        margin-left: -1rem;
        margin-right: -1rem;
    }
}

/* # ~~~~~ feedit ~~~~~ # */
.typo3-editPanel img {
    max-width:20px !important;
    height: auto;
}

/*visibility classes:*/

.no-display,
.display-no,
.display-none,
.hidden,
.hideme {
    display: none;
}
.stage .nostagecontent {
    display: none;
    visibility: hidden;
}

/*fullwidth header pics:*/
.is-fullfit,
.is-fullfit img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}
.is-fullwidth img,
.fullwidth img,
.stage img,
.flexone img {
    width: 100vw;
    height: auto;
}
.is-fullframe-50vh img {
    height: 50vh;
    /*width: auto;*/
    object-fit: cover;
}
.is-heropic {
    margin: 0 !important;
    padding: 0 !important;
}
.is-heropic img {
    height: 100vh;
    width: 100vw;
    object-fit: cover;
}

.stage .grid-margin-x .cell {
    margin: 0 !important;
}
.stage .grid-margin-x>.small-12 {
    width: calc(100%) !important;
}
.sticky {
    z-index: 5 !important;
}
.ls-inner {
    z-index: 1 !important;
}


.hr-divider hr {
    clear: both;
    max-width: 75rem;
    height: 0;
    margin: 1.25rem auto;
    border-top: 0;
    border-right: 0;
    border-bottom: 1px solid #cacaca;
    border-left: 0;
}

.hr-divider-v2 hr {
    clear: both;
    max-width: 15rem;
    height: 0;
    margin: 1.25rem auto;
    border-top: 0;
    border-right: 0;
    border-bottom: 1px solid #cacaca;
    border-left: 0;
}

.hr-divider-invisible hr {
    clear: both;
    max-width: 75rem;
    height: 15px;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-bottom: inherit;
    border-left: 0;
}
.ce-gallery,
.stage .ce-gallery,
.stage .ce-gallery .image,
.image-no-padding-margin .ce-gallery .image,
.stage .ce-gallery .grid-padding-x > .cell,
.stage .ce-gallery .grid-margin-x > .cell,
.image-no-padding-margin .ce-gallery .image,
.image-no-padding-margin .ce-gallery,
.image-no-padding-margin.ce-gallery,
.image-no-padding-margin.ce-gallery .img-pb,
.no-margin-bottom .image {
    margin: 0 !important;
    padding: 0 !important;
}

@media only screen and (max-width: 40.063em) {
    .ce-bg-pic {
        padding: 20px !important;
    }
}

/* # ~~~~~ RTE STUFF ~~~~~ # */

p.lead {
    font-size: 120%;
    font-weight: 400;
    line-height: 1.4;
}



.text-muted {
    color: #999999;
}
.text-primary {
    color: #428BCA;
}
.text-warning {
    color: #8A6D3B;
}
.text-danger {
    color: #A94442;
}
.text-success {
    color: #3C763D;
}
.text-info {
    color: #31708F;
}
.text-info:hover {
    color: #245269;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-justify {
    text-align: justify;
}
.text-center {
    text-align: center;
}
.text-justify {
    text-align: justify;
}
.text-uppercase {
    text-transform: uppercase;
}
.text-lowercase {
    text-transform: lowercase;
}
.text-capitalize {
    text-transform: capitalize;
}
.text-lineheight {
    line-height: 200%;
}
.text-lineheightn {
    line-height: normal;
}
.text-lineheight1 {
    line-height: 100%;
}


.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 4px;
}

.alert-success {
    background-color: #dff0d8;
    border-color: #d6e9c6;
    color: #3c763d;
}

.alert-info {
    background-color: #d9edf7;
    border-color: #bce8f1;
    color: #31708f;
}

.alert-warning {
    background-color: #fcf8e3;
    border-color: #faebcc;
    color: #8a6d3b;
}

.alert-danger {
    background-color: #f2dede;
    border-color: #ebccd1;
    color: #a94442;
}


/*
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
# hero-stuff
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

/* # ~~~~~ hero-stuff ~~~~~ # */
#tophero {
    background: #6E6E6D
}

#tophero {
    position: relative;
}
@media only screen and (min-width: 768px) {
    .blayout-pagets__heroimage_pure #tophero,
    .blayout-pagets__heroimage #tophero {
        min-height: 100%;
    }
    #herofrompage .stage{
        height: 100%;
    }
}

.herotext {
    position: absolute;
    top: 20%;
    /*margin-left: auto;*/
    /*margin-right: auto;*/
    left: 5%;
    /*right: 0;*/
}

/* # ~~~~~ start vegas area ~~~~~ # */
.vegas-arrows {
    z-index: 999;
    position: absolute;
    top: 50%
}

.vegas-arrows .next,
.vegas-arrows .previous{
    font-size: 0;
    padding: 0 10px;

}
.vegas-arrows .next:before,
.vegas-arrows .previous:before{
    font-family: "Font Awesome 6 Pro";
    font-family: 'Font Awesome 6 Pro';
    font-size: 50px;
    color: white;
    opacity: .5;
}
.vegas-arrows .next:before {
    content: "\f0a8";
}
.vegas-arrows .previous:before {
    content: "\f0a9";
}
.is-video-hero,
.is-media-slider {
    position: relative;
}
.is-video-hero .section-arrow-down,
.is-media-slider .section-arrow-down {
    position: absolute;
    max-height: 100vh;
    top: 90vh;
    z-index: 200;
    /*top: inherit;*/
    left: 50%;
    transform: translateX(-50%);
}
@media only screen and (max-width: 40.063em) {
    .is-video-hero .section-arrow-down,
    .is-media-slider .section-arrow-down {
        top: 85vh;
    }
}
.is-video-hero ul.section-arrow-down li ul li,
.is-media-slider ul.section-arrow-down li ul li {
    display: none;
}
.is-video-hero ul.section-arrow-down li ul li:first-child,
.is-media-slider ul.section-arrow-down li ul li:first-child {
    display: block;
}
.is-video-hero .section-arrow-down ul a:after,
.is-media-slider .section-arrow-down ul a:after {
    color: #fff;
    font-size: 80px;
}
@media only screen and (min-width: 40.063em) {
    .is-video-hero #wrapper,
    .is-hero #wrapper,
    .blayout-pagets__heroimage #wrapper,
    .blayout-pagets__heroimage_pure #wrapper,
    .is-media-slider #wrapper {
        padding: 0 !important;
    }

    .is-video-hero .scrollhidetop,
    .is-media-slider .scrollhidetop {
        position: fixed;
        background: 0 !important;
        border: inherit !important;
    }
}
/* # ~~~~~ end vegas area ~~~~~ # */
/* # ~~~~~ backstretch ~~~~~ # */
.bsbuttons {
    display: none;
}
.show-bs-arrows .bsbuttons {
    display: block;
    position: absolute;
    z-index: 99;
    top: 45%;
    width: 100%
}

.show-bs-arrows .bsbuttons .nextbutton,
.show-bs-arrows .bsbuttons .prevbutton{
    font-size: 0;
    padding: 0 10px;
    position: absolute;
}
.show-bs-arrows .bsbuttons .nextbutton {
    content: "\f0a9";
    right: 2em;
}
.show-bs-arrows .bsbuttons .prevbutton {
    content: "\f0a8";
    left: 2em;
}
.show-bs-arrows .bsbuttons .nextbutton:before,
.show-bs-arrows .bsbuttons .prevbutton:before{
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    color: white;
    opacity: .5;
}
.show-bs-arrows .bsbuttons .nextbutton:before {
    content: "\f0a9";
}
.show-bs-arrows .bsbuttons .prevbutton:before {
    content: "\f0a8";
}
.is-bs-body-slider #herofrompage.hv100 {
    min-height: inherit !important;
}
body.is-bs-body-slider {
    padding-bottom: 0 !important;
}
.is-bs-body-hero #wrapper {
    background: unset !important
}
/* # ~~~~~ jarallax  ~~~~~ # */
.jarallax {
    position: relative;
    z-index: 0;
}
.jarallax > .jarallax-img {
    position: absolute;
    object-fit: cover;
    /* support for plugin https://github.com/bfred-it/object-fit-images */
    font-family: 'object-fit: cover;';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}


.allinner-half {
   /*background: #ffffff !important;*/
    margin-left: auto;
    margin-right: auto;
    max-width: 720px;
    height: auto;
}
.allinner-half-content-right {
    /*background: #ffffff !important;*/
    margin-left: auto;
    margin-right: 0;
    max-width: 720px;
    height: auto;
}
.allinner-half-content-left {
    /*background: #ffffff !important;*/
    margin-left: 0;
    margin-right: auto;
    max-width: 720px;
    height: auto;
}
@media only screen and (max-width: 1440px) {
    .flex-align-bottom75-center,
    .flex-align-bottom,
    .flex-align-bottom90-center,
    .flex-align-center {
        width: 100vw;
    }
}
.large-h100-medium-h50 {
    height: 100%;
}

@media only screen and (min-width: 40.063em) and (max-width: 64em){
    .large-h100-medium-h50 {
        height: 50%;
    }
}
@media only screen and (max-width: 40.063em) {
    .large-h100-medium-h50 {
        height: 50%;
    }
    .small-h25 {
        height: 25%;
    }
}

.opacity-1 {
    opacity:0.1
}
.opacity-2 {
    opacity:0.2
}
.opacity-3 {
    opacity:0.3
}
.opacity-4 {
    opacity:0.4
}
.opacity-5 {
    opacity:0.5
}
.opacity-6 {
    opacity:0.6
}
.opacity-7 {
    opacity:0.7
}
.opacity-8 {
    opacity:0.8
}
.opacity-9 {
    opacity:0.9
}
/*owl*/
.owl-prev {
    /*width: 15px;*/
    /*height: auto;*/
    position: absolute;
    top: 40%;
    margin-left: -25px !important;
    display: block !important;
    border: 0 solid black;
}

.owl-next {
    /*width: 15px;*/
    /*height: auto;*/
    position: absolute;
    top: 40%;
    right: -25px;
    display: block !important;
    border: 0 solid black;
}
.clearfix,
.clearing::after {
    clear:both;
}

/* # ~~~~~ textmedia - layout pic with absolure bodytext ~~~~~ # */
.ceimgbg-frame {
    position: relative;
    overflow: visible;
}
.ceimgbg-frame .picframe-absolute-bodytext {
    height: 100%;
    /*background: rgba(255,255,255, 0.9);*/
}
.picframe-absolute-bodytext {
    position: absolute;
    top: 0;
    left: 0
}
@media only screen and (min-width: 1440px) {
    .picframe-absolute-bodytext .allinner {
        min-width: 1440px;
        /*-webkit-transform: translateY(-50%);*/
        /*-ms-transform: translateY(-50%);*/
        /*transform: translateY(-50%);*/
    }
}
.picframe-absolute-bodytext .offset-ce {
    left: 10%;
    bottom: -15%;
}
.picframe-absolute-bodytext .ce-bottom-center {
    left: 30%;
    right: 30%;
    width: 40%;
    bottom: 5%;
}
@media only screen and (max-width: 40.063em) {
    .picframe-absolute-bodytext .ce-bodytext {
        position: relative;
    }

}
/*bodytext-tools:*/
.offset-bodytext,
.grid-offset-content,
.grid-offset-content .cell {
    z-index: 2;
}
.frame-no-gap.frame-type-gallerycontent .space {
    width: auto !important;
    padding: inherit !important;
}
.frame-no-gap.frame-type-gallerycontent .gallerycontent.colcount-3 .item {
    width: 33.33333333333333333% !important;
}
.frame-no-gap.frame-type-gallerycontent .gallerycontent.colcount-4 .item {
    width: 25% !important;
}
.offset-content {
    opacity:.99;
    margin-top: -100px;
    z-index:1
}

@media only screen and (min-width: 40.063em) {
    .minus-margin-top-150 {
        margin-top: -150px !important;
    }
    .minus-margin-bottom-150 {
        margin-bottom: -150px !important;
    }
}


.is-video-hero .section-arrow-down ul a:after, .is-media-slider .section-arrow-down ul a:after,
.ce-arrow-down a:after, .ce-arrow-downn a:after {
    color: #fff;
    -o-animation: fadeIt 10s ease-in-out;
    animation: fadeIt 10s ease-in-out;
}


/* # ~~~~~ tables ~~~~~ # */
.table-transparent tbody tr,
.table-transparent tbody {
    background: none !important;
}




/* # ~~~~~ hero content elements ~~~~~ # */
#hero-ce,
.hero-ce {
    min-height: 100vh;
}

#hero-ce img,
.hero-ce img {
    min-width: 100vw !important;
    width: 100vw !important;
    height: auto;
}


.split-container-inline,
header.split-button-inline,
header.split-button-inline h1 {
    display: inline-block !important;
}

.border-round img {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.fixed {
    position: fixed;
}

/* # ~~~~~ ie11 (Fu** it!) ~~~~~ # */
@media all and (-ms-high-contrast:none) {
    /*.beispiel { color: green } !* IE10 *!*/
    *::-ms-backdrop,
    .ief,
    .ief img{
        max-height: 200px;
        width: auto;
    } /* IE11 */
}


/*TYPO3-uploads*/
.ce-uploads img {
    max-height: 50px;
    width: auto;
}

/*sys_cat in tt_content - default (if active)!*/
.cecat-default {
    font-weight: normal;
}
.cecat-default .cc-cat-prefix {
    font-weight: bold;
    text-transform: uppercase;
    font-style: italic;
}



.cc-window.cc-floating {
    max-width: 34em;
}
.cc-window * {
    font-size: 100%;
    font-size: 1.0rem;
}

/*
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
# some overrides
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
*/


/* # ~~~~~ sticky in stage-top ~~~~~ # */
.blayout-pagets__heroimage_pure .stagetop .sticky-container,
.blayout-pagets__heroimage .stagetop .sticky-container,
.is-hero .stagetop .sticky-container {
    position: absolute;
    width: 100%
}
.is-hero .logonavheader,
.blayout-pagets__hero_from_page .logonavheader,
.blayout-pagets__heroimage .logonavheader,
.blayout-pagets__heroimage_pure .logonavheader {
    background: inherit;
}
.is-hero.offhero .logonavheader {
    background: rgba(0,0,0, 0.2);
}

.jump-to-content {
    position: fixed;
    top: 150px;
    right: 0;
    z-index: 300;
    /*background: #fff;*/
    padding: 0;
}
.jump-to-content p {
    margin: 0 !important;
    padding: 0 !important;
    background: none;
}
.jump-to-content .prefix-contact.scroll {
    font-size: 0 !important;
}
.jump-to-content .prefix-contact.scroll:before {
    font-family: "Font Awesome 5 Duotone";
    font-size: 75px;
    text-align: center;
    color: #ccc;
    margin: 0 !important;
    padding: 0 !important;
    content: "\10f2c1";
    line-height: 100%;
    background: inherit;
}

.hide-reveal-title-link {
    display: none;
}

.sticky-box {
    position: absolute;
}

.sticky-box {
    z-index: 9;
}
.z-index-2 {
    z-index: 2;
}


@media only screen and (max-width: 40.063em) {
    .grid-bg-inner {
        position: relative;
    }
}
.ce-grow {
    transform: scale(1);
    transition: all 0.285s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s;

}
.ce-grow:hover {
    transform: scale(1.1);
    z-index: 2;
    background: #fff;
}
p:empty {
    display:none
}
.home-button {
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    content: "\f107";
}
/* # ~~~~~ back to home: ~~~~~ # */
#back-home {
    position: fixed !important;
    top: 20px !important;
    right: 20px !important;
    z-index: 2;
}

#back-home a:after {
    font-size: 40px;
    font-weight: bold;
    /*font-family: "Ionicons";*/
    font-family: "Font Awesome 6 Pro";
    content: "\f015 ";
    text-align: center;
    color: #999;
    transition: all 0.5s;
}
#back-home a:hover:after {
    color: #67251a !important;
    transition: all 0.5s;
}
.home-button {
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    content: "\f107";
}
/* # ~~~~~ go back back to last page: ~~~~~ # */
#back-history {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 2;
}

#back-history a:after {
    font-size: 40px;
    font-weight: bold;
    /*font-family: "Ionicons";*/
    font-family: "Font Awesome 6 Pro";
    content: "\f04a ";
    text-align: center;
    color: #999;
    transition: all 0.5s;
}
#back-history a:hover:after {
    color: #67251a !important;
    transition: all 0.5s;
}


/* # ~~~~~ scrollnav ~~~~~ # */
@media only screen and (min-width: 40em) {
    .main-innercol #scrollnav-wrapper {
        padding: 0 2em;
    }
    .main-innercol .allinner #scrollnav-wrapper {
        padding: 0;
    }
    .scrollnav-nav {
        min-width: 250px;
        max-width: 250px;
        margin: 0 1em 1em 0;
    }
}
@media only screen and (max-width: 40.063em) {
    .scrollnav-nav {
        margin: 1em 0;
    }
}

.scrollnav-nav .section-menu.scrollnav {
    background: #f3f3f3;
    padding: 1em;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}
ul.section-menu.scrollnav li.section-menu-item a {
    transform: scale(1);
    transition: all 0.285s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s;
    text-decoration: underline      ;
}
ul.section-menu.scrollnav li.section-menu-item a.is-active {
    transform: scale(1.1);
    text-decoration-color: #999;
    color: #999
}

.logonavheader  {
    z-index: 2 !important;
}


.small-center {
    max-width:768px;
    margin: 0 auto;
}
.medium-center {
    max-width:1024px;
    margin: 0 auto;
}

.header-icon-left {
    display: inline-block;
    min-width: 100px;
    max-width: 200px;
    height: auto;
}
.default-header-has-icon {
    display: inline-block;
}
/*SVG - Color Generator: https://codepen.io/sosuke/pen/Pjoqqp*/

.video-embed {
    position: relative;
}
.video-embed video {
    max-width: 100%;
}

video.responsive-video {
    width: 100vw !important;
    height: auto !important;
}
.reveal.tutorial-video {
    background: #333 !important;
}
.reveal-tutorial {
    display: block;
    margin-bottom: 1em !important;
}

.svg-color-default img.min-icon-item {
    filter: invert(91%) sepia(7%) saturate(2754%) hue-rotate(5deg) brightness(92%) contrast(93%);
}
.svg-color-white img.min-icon-item {
    filter: invert(99%) sepia(100%) saturate(3%) hue-rotate(222deg) brightness(104%) contrast(100%);
}
.svg-color-black img.min-icon-item {
    filter: invert(0%) sepia(100%) saturate(28%) hue-rotate(68deg) brightness(103%) contrast(108%);
}

.hide-from-screens {
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    width: 1px;
    height: 1px;
    overflow-wrap: normal;
    position: absolute !important;
}


.herovideo-outer {
    justify-content: flex-start;
    align-items: stretch;
    height: 100vh;
    min-height: 100vh;
    display: flex;
    flex-flow: column;
    /*position: sticky;*/
    top: 0;
}

.herovideo-video,
.herovideo-video video{
    pointer-events: none;
    object-fit: cover;
    min-height: 100vh;
    width: auto !important;
}
/*css stuff for reels*/
.herovideo-split {
    display: flex;
    flex-direction: row; /* Zeilenweise Anordnung */
    justify-content: flex-start;
    align-items: stretch;
    height: 100vh;
    min-height: 100vh;
    /*position: sticky;*/
    top: 0;
}

.herovideo-split-item {
    width: auto;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ccc; /* optional, falls Seitenränder beim Einpassen sichtbar */
    flex-shrink: 1;
    overflow: hidden;
}
.herovideo-split-item video{
    width: auto !important;
    height: 100vh !important;
    object-fit: cover; /* Wichtig für Video-Tag */
    flex-shrink: 0;
}

.herovideo-fullheight video{
    width: auto !important;
    height: 100vh !important;
    object-fit: cover; /* Wichtig für Video-Tag */
    flex-shrink: 0;
}

/*some settings for reponsive images:*/
@media only screen and (max-width: 640px) {
    .ce-textpic.ce-right.ce-intext .ce-gallery {
        float: unset;
    }
    .ce-textpic.ce-right.ce-intext .ce-gallery .img-pl {
        padding-left: unset;
    }
}
@media only screen and (max-width: 640px) {
    .ce-textpic .tmg-bot .tmpm {
        padding-bottom: 1em;
    }
    .ce-gallery.tmg-flow .small-12 {
        width: auto !important;
    }
}

.card-back-absolute {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0
}

/*some specials for themes:*/
.color-bar {
    min-height: 10px;
    background: var(--linear-gradient)
}
ul.language {
    margin: 0 !important;
    padding: 0 !important;
}
.mcenter {
    margin-left: auto !important;
    margin-right: auto !important;
}
.icon-phone:before,
.icon-mail:before,
.icon-office:before{
    font-family: "Font Awesome 6 Pro";
    font-size: var(--footer-icons-size);
    font-weight: var(--footer-icons-weight);
    content: var(--footer-icons-fon);
    padding-right: 0.5rem;
}
.icon-mail:before {
    content: var(--footer-icons-mail);
}
.icon-office:before {
    content: var(--footer-icons-office);
}
/*
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
# Settings for small screens
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
@media only screen and (min-width: 40.063em) and (max-width:1441px) {
    #wrapper {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .nopadding-m {
        margin-left: -1rem;
        margin-right: -1rem;
    }
    .fleximage-all {
        background-attachment: inherit !important
    }
}

/*end filter*/
.color-medium * {
    color: var(--color-medium);
}
/*gallerycontent 4col*/
@media only screen and (max-width: 40.063em) {
    .gc4col .gallerycontent .item{
        width: 99.9% !important;
        padding-bottom: 1.5% !important;
    }
}
@media only screen and (min-width: 40.063em) and (max-width:1439px) {
    .gc4col .gallerycontent .item{
        width: 48.4% !important;
        padding-bottom: 1.5% !important;
        padding-left: 1.5%;
    }
}

/*
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
# Addon_Area
#+++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

.osm-map .olLayerDiv img {
    max-width: unset !important
}
.tx-feediting-fluidtemplate .popover-container {
    /*position: absolute;*/
    top: 0 !important;
    /*right: 10px;*/
    /*left: unset !important;*/
    /*transform: unset !important;*/
}
.tx-feediting-panel.tt_content {
    z-index: 9 !important;
}
.feediting-popover-trigger {
    margin-top: 1rem !important;
    background-color: #fff;
    border: 1px solid var(--cone) !important;
    border-radius: unset !important;
    width: 25px !important;
    height: 25px !important;
}
.stage .feediting-popover-trigger {
    margin-top: 10rem !important;
}
.stagetop .feediting-popover-trigger,
.meta-footer .feediting-popover-trigger,
.precontent .feediting-popover-trigger {
    display: none !important;
}

