body {
    font-family: var(--fontfamily);
    font-weight: 400;
    font-size: var(--fontsize);
    color: var(--primarycolor);
}

/*eigene Layoutformatierung*/

.ce-bodytext .text-center{
    font-size: 4rem;
    margin-top: -36rem;
    color: white;
    text-shadow: 11px 1px 12px gray;
    line-height: 6rem;
}
.text-huge{
    font-size: 2.3rem;
    font-weight: 100;
}

.text-big{
    font-size: 1.4rem;
    font-weight: 100;
}


.slider-slide img{
    margin-top: 42px;
}

.frame-layout-5{
    column-count: 2;
    column-gap: 40px;
}


/* maskelemenet bild und text*/

li{
    /*! list-style: none; */
}

.bildtext{
    float: right;
}
.bildelement{
    width: 456px;
}
/*Ende*/


.square p{
    padding: 12px;
    font-size: 1rem;
}
.container{

}
.telefon{
    width: 234px;
}
.email{
    width: 234px;
}

.horizontal-list {
    list-style: none;
    padding: 0;
    margin: 5px 5px;
    display: flex;
    padding-left: 15%;
    gap: 30px; /* Abstand zwischen den Listenelementen */
    background-color: #0d2a57;
    color: white;
}
.impressum{
    list-style: none;

    display: flex;
}

.horizontal-list li a{
    color: white;
    padding: 3px 12px;
}

div#navbarNavDropdown {
    float:;
    margin-left: 4rem;
}

@media (max-width: 1300px) {
    .frame-layout-11{
        display: flex;
        flex-direction: column;
        gap: 0px;
        width: 66%;
    }
    .frame-layout-8{
        width: 130px;
    }
    .frame-layout-12{
        width: 130px;
    }
}

.frame-layout-6 img{
    width: 628px;
    height: 626px;
    border-radius: 0px;
}

.frame-layout-8{
    background-color: #001b54;
    color: white;
    padding: 12px;
    width: 297px;
    aspect-ratio: 1 / 1;
}

.frame-layout-12 h5.text-center {
    font-size: 1.1rem;
    color: #4778BD;
    text-align: left;
    font-weight: 300;
    line-height: 1.3rem;
    padding-bottom: 1rem;
    margin-top: 0rem;
    text-shadow: 0px 0px 0px white;


}

.slider-slide .ce-bodytext .text-center {
    font-size: 4rem;
    margin-top: -36rem;
    color: white;
    text-shadow: 11px 1px 12px gray;
    line-height: 6rem;
}
.slider-slide .image-embed-item img{
    width: 100%;
    height: auto;
}

.slider-container{
    margin-top: 5rem;
}
#c31 {
    margin-bottom: 12rem;
}

#c31 p{
    font-size: 3rem;
    line-height: 4rem;
    margin-top:-22rem;
}

span.news-list-date time{
    display: none;
}

.form-check-label input{
    margin-right: 0.4rem;
}

.form-navigation button{
    display: block;
    color: var(--buttonschriftfarbe);
    background-color: var(--buttoncolor);
    margin-top: 1rem;
}

.form-group{
    margin-top: 1rem;
}

/* Icons Home*/

/* #c12  figure:hover img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
    filter: alpha(opacity=50);
}
#c12 figure img  {
    display: block;
    margin: 0px;
    padding: 34px;
    -webkit-transition: all 0.9s ease;
    -moz-transition: all 0.9s ease;
    transition: all 0.9s ease;
    clip-path: circle(30%);
    max-width: 414px;
}
#c13  figure:hover img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
    filter: alpha(opacity=50);
}
#c13 figure img  {
    display: block;
    margin: 0px;
    padding: 34px;
    -webkit-transition: all 0.9s ease;
    -moz-transition: all 0.9s ease;
    transition: all 0.9s ease;
    clip-path: circle(30%);
    max-width: 414px;
}
#c14  figure:hover img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
    filter: alpha(opacity=50);
}
#c14 figure img  {
    display: block;
    margin: 0px;
    padding: 34px;
    -webkit-transition: all 0.9s ease;
    -moz-transition: all 0.9s ease;
    transition: all 0.9s ease;
    clip-path: circle(30%);
    max-width: 414px;
}

/* Ende Icons Home*/
*/
/* Rootline Navigation */

ul.rootline {
    margin: 0rem 0 1rem 0;
    padding: 0 0 .5rem 0;
    list-style-type: none;
    font-size: 80%;
    border-bottom: 1px solid #eee;
}

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

ul.rootline a,
ul.rootline a:visited {
    margin: 0;
    padding: 0;
    color: #666;
}

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

ul.rootline span {
    color: #999;
}

ul.rootline a:after {
    display: inline-block;
    content: "/";
    margin: 0 .5rem;
}

/* Ende CSS Rootline Navigation */

/* Formatierung Accordion */
.accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1rem 1.25rem;
    font-size: 1rem;
    color: var(--accordioncolorueberschrift);
    text-align: left;
    background-color: var(--accordioncolor);
    border: 0;
    border-radius: 0;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    overflow-anchor: none;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;
}
h4#accordion-heading-45.accordion-header{
    line-height: 0px;
    margin-bottom: -20px;
}
.accordion-button.collapsed{
    background-color: var(--accordioncolor);
    color: var(--accordioncolorueberschrift);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: calc(100% - 20px) center;
    background-size: 28px 28px;
}

.accordion-button:not(.collapsed){
    background-color: var(--accordioncolor);
    color: var(--accordioncolorueberschrift);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: calc(100% - 20px) center;
    background-size: 28px 28px;
}

.accordion-button::after {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    /* background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    */
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform .2s ease-in-out;
}

.accordion-item{
    margin-top: 1rem;
}

.ce-accordion-body a{
    border: 1px solid var(--accordioncolor);
    padding: 13px 12px;
    border-radius: 8px;
    float: right;
    margin-right: 12rem;
}
.ce-accordion-body a::before{
    content: "";
    display: inline-block;
    width: 33px;
    height: 33px;
    margin-right: 8px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ccircle cx='16' cy='16' r='16' fill='%234778BD'/%3e%3cpolygon points='12,10 22,16 12,22' fill='white'/%3e%3c/svg%3e");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
}

/* Ende der Formatierung des Accordions */

/*div.ce-column .image-embed-item {
    border-radius: 21px;
}*/

.tx-sf-event-mgt{
    display: flex;
    flex-direction: column;
    align-items:left;
    row-gap: 1rem;
}

.event-registration-row{
    display: flex;
    flex-direction: row;
    column-gap: 1rem;
    align-items:left;
    row-gap: 0.3rem;
    color: ;
}
fieldset .event-registration-row{
    display: flex;
    flex-direction: row;
    background-color: ;
    margin-top: 1rem;
}

div.event-list-item{
    display: flex;
    flex-direction: column;
    align-items:left;
    row-gap: 1rem;
}

div.event-list-label{
    background-color:#ffffff;
}

div.event-list-label:empty:after{
    content: " "
}

div.event-list-label:after{
    content: ": "
}

div.event-list-row{
    display: flex;
    flex-direction: row;
    column-gap: 1rem;
    align-items:left;
    row-gap: 0.3rem;
}

div.event-list-value.event-registration a{
    color: orange;
}

div.event-list-value.event-registration a:after{
    content: " << "
}

div.event-list-value.event-registration a:before{
    content: " >> "
}
.event-registration-row label{
    width: 123px;
}




.ps-logo {
    width: var(--siteLogoWidth);
}

.navbar-toggler-icon{
    background-color: var(--burgerfarbe);
}
button.navbar-toggler{
    background-color: var(--burgerfarbe);;
}

figcaption.image-caption{
    position: relative;
    color: #4778BE;
    text-align: center;
    margin-top: 0px;
    margin-left: -23px;
    padding: 2px 5px;
    width: 150px;
}

#c20 .ce-column {
    height: auto;
    padding: 0px 43px 0px 53px;
    display: flex;
    align-items: center;
}


.frame-layout-7{
    border: 1px solid orange;
    padding: 12px;
}

/* ende*/

.bg-light {
    background-color: white !important;
}

.navbar-toggler {
    background-color: #4acadfc2;
    border: 1px solid green;
}
nav.navbar.navbar-expand-lg.navbar-light.bg-light.fixed-top{
    box-shadow: rgba(149, 157, 165, 0.9) 0px 8px 10px;
}

.main{
    max-width: 1280px;
    width: 90%;
    margin: 0px auto;
    z-index: 1;
}

.mainunten{
    max-width: 1280px;
    width: 90%;
    margin: 0px auto;
    z-index: 1;
}

div.slidersection {
    display: flex;
    align-items: center;
    justify-content: center;
}

.slidersection h2{
    color: white;
}

.sliderunten{
    width: 100%;
    overflow: hidden;
    margin: 20px auto;
    /*  height: var(--sliderhoehe);*/
}

.sliderunten img{
    width: 100%;
}

/*
.sliderinhalt img.image-embed-item {
    height: calc(var(--sliderhoehe) / 1.4);
    width: auto;
}
*/
.sliderinhalt {
    position: absolute;
    color: white;
    width:auto;
}

.button {
    display: inline-block;
    margin-top: 30px;
    /*! background-color: #ffc800; */
    color: #002a66;
    /*! padding: 10px 20px; */
    text-decoration: none;
    font-weight: bold;
}

.button {
    /*! display: inline-block; */
    /*! margin-top: 30px; */
    /*! background-color: #ffc800; */
    /*! color: #002a66; */
    /*! padding: 10px 20px; */
    /*! text-decoration: none; */
    /*! font-weight: bold; */
}


div.button {
    max-width:unset;
    width:  fit-content;
    background-color: var(--buttoncolor);
    border-radius: var(--buttonradius);
}

div.button a {
    display: block;
    color: var(--buttonschriftfarbe);
    border-radius:var(--buttonradius);
    padding: var(--buttonpadding);
    width: var(--buttonwidth);
    background-color: var(--buttoncolor);
    font-weight: 300;
}

div.button2 {
    display: inline-block; /* Damit die Breite nur so groß wie nötig ist */
    max-width: unset;
    width: fit-content;
    background-color: white;
    border-radius: var(--buttonradius);
    border: 2px solid var(--buttoncolor);
    padding: 10px 15px;
}

div.button2 a {
    display: flex; /* Bild und Text nebeneinander */
    align-items: center; /* Vertikal mittig */
    color: var(--buttoncolor);
    background-color: white;
    font-weight: 600;
    font-size: 1.7rem;
    text-decoration: none; /* sonst kriegst du noch den Unterstrich */
}

.button2 a::before {
    content: "";
    display: inline-block;
    width: 1.6em; /* Größe anpassen */
    height: 1.6em;
    background: url("linkpfeil.png") no-repeat center;
    background-size: contain;
    margin-right: 0.6em;
}


.abstand2{
    padding-top: 8rem;
}

ce-bodytext{
    font-family: var(--fontfamily);
    font-weight: 400;
    font-size: var(--fontsize);
    color: var(--primarycolor);
}

.text-justify  {
    hyphens: auto;
    position: relative;
    text-align: justify;
}

a {
    color: #0055a5;
    text-decoration: none;
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}
a:hover{
    text-decoration: underline;
}

hr {
    color: var(--farbeTrenner);
    margin-top: var(--abstandtrenneroben);
    margin-bottom: var(--abstandtrennerunten);
    border-top: var(--hoehetrenner) solid transparent;
    opacity: 1;
    background-image:url('var(--imagetrenner)');
    text-align: center;
}
hr:after {
    content: "______________________";
    display: inline-block;
    position: relative;
    top: -0.8em;
    font-size: 1.5em;
    font-weight: 800;
    background: transparent;
    color: ;
    opacity: 1;
    letter-spacing: -3px
}


/* Media-Queries*/

@media only screen and (min-width: 80px) and (max-width: 400px) {

}

@media only screen and (min-width: 401px) and (max-width: 920px) {

}

@media only screen and (min-width: 921px) and (max-width: 1021px) {

}

@media only screen and (min-width: 1022px) and (max-width: 2600px) {

}

/* Footer */

div.footer {
    margin-top: 1.5rem;
    background-color:var(--footerfarbe2);
    color: #ffffff;
    padding: var(--footerrandbreite) 0px 10px 0px;
}

.footer .main{
    color: var(--footerschriftoben);
}

.footer {
    color: var(--primarycolor);
    width: 100%;
}

.footer p{
    color: var(--footerschriftoben);
    font-size: 0.8rem;
}

.news .footer p{
    background-color: white;
    color: black;
}
.news .footer {
    background-color: white;
    color: black;
}

.footer a{
    color: var(--footerlinks);
}
.frame-layout-12 p{
    width: 100%;
    padding: 5px 23px;
    color:var(--primarycolorh1);
    background-color: #ffffff;
}


/*Überschriften*/

h1, .h1  {
    font-size: var(--fontSizeH1);
    color: var(--primarycolorh1);
    text-align: left;
    font-family: var(--family1);
    font-weight: 400;
    line-height: 1.6rem;
    padding-bottom: 1rem;
}

h2, .h2  {
    font-family: var(--family2);
    font-size: var(--fontSizeH2);
    color: var(--primarycolorh2);
    text-align: left;
    font-weight: 400;
    line-height: 1.9rem;
    padding-top: 0.2rem;
    padding-bottom: 1rem;
}

h3 {
    font-family: var(--family3);
    font-size: 1.4rem;
    color: var(--primarycolorh3);
    text-align: left;
    font-weight: 300;
    line-height: 1.7rem;
    padding-bottom: 1rem;
}

h4 {
    font-family: var(--family4);
    font-size: 1.2rem;
    color: var(--primarycolorh4);
    text-align: left;
    font-weight: 300;
    line-height: 1.7rem;
    padding-bottom: 1rem;
}

h5 {
    font-size: 1.1rem;
    color: #4778BD;
    text-align: left;
    font-weight: 300;
    line-height: 1.3rem;
    padding-bottom: 1rem;
}

.languagemenue li{
    list-style: none;
}

.produkte-wrapper {
    max-width: 1200px;
    margin: 20px auto;
    display: flex;
    gap: 10px;
    padding: 10px;
    box-sizing: border-box;
}

.left-box {
    flex: 2;
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.bg-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 97.5%;
    object-fit: cover;
    z-index: 1;
}

.overlay {
    position: relative;
    z-index: 2;
    background: rgba(0, 42, 102, 0.85);
    padding: 40px;
    width: 100%;
    color: white;
}

.overlay h2 {
    color: #ffc800;
    font-size: 28px;
    margin-bottom: 10px;
}

.overlay p {
    font-size: 22px;
    font-weight: bold;
}

.right-box {
    flex: 2;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pair {
    display: flex;
    gap: 10px;
}

.pair img {
    width: 50%;
    object-fit: cover;
    height: 100%;
}

.text-box {
    background: #002a66;
    color: white;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 50%;
}

.text-box h3 {
    margin-top: 0;
    font-size: 18px;
}

.text-box a {
    color: white;
    font-weight: bold;
    text-decoration: none;
    margin-top: 10px;
}

.icon {
    font-size: 22px;
    margin-left: 8px;
}

@media (max-width: 880px) {
    .produkte-wrapper {
        flex-direction: column;
        body {
            font-family: var(--fontfamily);
            font-weight: 400;
            font-size: var(--fontsize);
            color: var(--primarycolor);
        }

        /*eigene Layoutformatierung*/


        .frame-layout-6 img{
            width: 628px;
            height: 626px;
            border-radius: 0px;
        }

        .frame-layout-8{
            background-color: #001b54;
            color: white;
            padding: 12px;
            width: 297px;
            aspect-ratio: 1 / 1;
        }

        .slider-slide .image-embed-item img{
            width: 100%;
            height: auto;
        }

        .slider-container{
            margin-top: 5rem;
        }

        span.news-list-date time{
            display: none;
        }

        .form-check-label input{
            margin-right: 0.4rem;
        }

        .form-navigation button{
            display: block;
            color: var(--buttonschriftfarbe);
            background-color: var(--buttoncolor);
            margin-top: 1rem;
        }

        .form-group{
            margin-top: 1rem;
        }



        /* Rootline Navigation */

        ul.rootline {
            margin: 0rem 0 1rem 0;
            padding: 0 0 .5rem 0;
            list-style-type: none;
            font-size: 80%;
            border-bottom: 1px solid #eee;
        }

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

        ul.rootline a,
        ul.rootline a:visited {
            margin: 0;
            padding: 0;
            color: #666;
        }

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

        ul.rootline span {
            color: #999;
        }

        ul.rootline a:after {
            display: inline-block;
            content: "/";
            margin: 0 .5rem;
        }

        /* Ende CSS Rootline Navigation */

        /* Formatierung Accordion */
        .accordion-button {
            position: relative;
            display: flex;
            align-items: center;
            width: 100%;
            padding: 1rem 1.25rem;
            font-size: 1rem;
            color: var(--accordioncolorueberschrift);
            text-align: left;
            background-color: var(--accordioncolor);;
            border: 0;
            border-radius: 0;
            border-top-left-radius: 0px;
            border-top-right-radius: 0px;
            overflow-anchor: none;
            transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;
        }

        .accordion-button:not(.collapsed) {
            background-color: var(--accordioncolorueberschrift);
            color: var(--accordioncolor);
        }

        .accordion-button.collapsed::after {
            content: " ▽" " ";
            font-size: 1rem;
        }

        .navbar-toggler-icon{
            background-color: var(--burgerfarbe);
        }
        button.navbar-toggler{
            background-color: var(--burgerfarbe);;
        }

        figcaption{
            position: relative;
            color: white;
            background: rgba(0,0,0,.3);
            margin-left: 3px;
            margin-top: -30px;
            padding: 2px 5px;
            width: auto;
        }

        .bg-light {
            background-color: white !important;
        }

        .navbar-toggler {
            background-color: #4acadfc2;
            border: 1px solid green;
        }

        .main{
            max-width: 1280px;
            width: 90%;
            margin: 0px auto;
            z-index: 1;
        }

        .mainunten{
            max-width: 980px;
            width: 90%;
            margin: 0px auto;
            z-index: 1;
        }

        div.slidersection {
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .slidersection h2{
            color: white;
        }

        .sliderunten{
            width: 100%;
            overflow: hidden;
            margin: 20px auto;
            /*  height: var(--sliderhoehe);*/
        }

        .sliderunten img{
            width: 100%;
        }

        .sliderinhalt {
            position: absolute;
            color: white;
            width:auto;
        }


        div.button {
            max-width:unset;
            width:  fit-content;
            padding: 6px 10px;
            background-color: var(--buttoncolor);
            margin: var(--buttonmargin);
            border-radius: var(--buttonradius);
        }

        div.button a {
            display: block;
            color: var(--buttonschriftfarbe);
            border-radius:var(--buttonradius);
            padding: var(--buttonpadding);
            width: var(--buttonwidth);
            background-color: var(--buttoncolor);
        }

        .abstand2{
            padding-top: 8rem;
        }

        ce-bodytext{
            font-family: var(--fontfamily);
            font-weight: 400;
            font-size: var(--fontsize);
            color: var(--primarycolor);
        }

        .text-justify  {
            hyphens: auto;
            position: relative;
            text-align: justify;
        }

        a {
            color: #0055a5;
            text-decoration: none;
            background-color: transparent;
            -webkit-text-decoration-skip: objects;
        }
        a:hover{
            text-decoration: underline;
        }

        hr {
            color: var(--farbeTrenner);
            margin-top: var(--abstandtrenneroben);
            margin-bottom: var(--abstandtrennerunten);
            border-top: var(--hoehetrenner) solid transparent;
            opacity: 1;
            background-image:url('var(--imagetrenner)');
            text-align: center;
        }
        hr:after {
            content: "______________________";
            display: inline-block;
            position: relative;
            top: -0.8em;
            font-size: 1.5em;
            font-weight: 800;
            background: transparent;
            color: ;
            opacity: 1;
            letter-spacing: -3px
        }


        /* Media-Queries*/

        @media only screen and (min-width: 80px) and (max-width: 400px) {

        }

        @media only screen and (min-width: 401px) and (max-width: 920px) {

        }

        @media only screen and (min-width: 921px) and (max-width: 1021px) {

        }

        @media only screen and (min-width: 1022px) and (max-width: 2600px) {

        }
