
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}
body.kontakt, body.ueber-mich, body.datenschutz, body.impressum{
    background: transparent url(../img/icons/triskele.svg) top center no-repeat;
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

fieldset {
    padding: 0.35em 0.75em 0.625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}
.shadow{
    box-shadow: 0 20px 25px -5px #ccc;
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

    [type="search"]::-webkit-search-decoration {
        -webkit-appearance: none
    }

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

.invisible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    float: left
}

.divider--top {
    position: relative
}

    .divider--top:before {
        position: absolute;
        height: 0.0625rem;
        left: 0;
        right: 0;
        top: calc(-1 * (2.5rem - (.5 * 0.0625rem)));
        background: #dde1e4;
        content: ""
    }

.grid-column--full-width, .login .widget-checkbox {
    grid-column: 1 / -1
}

.grid-box {
    display: flex;
    flex-direction: column;
    gap: 2rem 1rem
}

    .grid-box h2, .grid-box h3 {
        margin-block-end: 1rem
    }

.content-text + .grid-box {
    margin-block-start: 2rem
}

[class*="col-"] .grid-box {
    flex-grow: 1
}

@media only screen and (min-width: 64rem) {
    .col--center.col-6 {
        grid-column: 3 / 11
    }
}

@media only screen and (min-width: 64rem) {
    .col--center.col-8 {
        grid-column: 2 / 12
    }
}

.confirm {
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 700
}

nav ul, .mod_newsmenu ul {
    list-style: none;
    margin: 0;
    padding: 0
}
#sub-header-image .mod_article__inner{
    padding:0;
}
[id="sub-header"], .layout--1-column .mod_article, .layout--1-column-8-12 [id="container"], .layout--2-column [id="container"], [id="header"], [id="footer"] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-inline: 1.5rem
}

    [id="sub-header"] .inside, .layout--1-column .mod_article__inner, .layout--1-column-8-12 [id="container"], .layout--2-column [id="container"], [id="header"] .inside, [id="footer"] .inside {
        width: 100%;
        /*max-width: 100rem*/
    }

.prevent-scrolling {
    position: fixed;
    overflow: hidden
}

.img--width-auto {
    width: auto
}

.img--full-width {
    max-width: none;
    width: 100%
}

[class*="col-"] {
    grid-column: 1 / -1
}

@media only screen and (min-width: 64rem) {
    .col-1 {
        display: flex;
        flex-direction: column;
        grid-column: span 1
    }
}

@media only screen and (min-width: 64rem) {
    .col-2 {
        display: flex;
        flex-direction: column;
        grid-column: span 2
    }
}

@media only screen and (min-width: 64rem) {
    .col-3 {
        display: flex;
        flex-direction: column;
        grid-column: span 3
    }
}

@media only screen and (min-width: 64rem) {
    .col-4 {
        display: flex;
        flex-direction: column;
        grid-column: span 4
    }
}

@media only screen and (min-width: 64rem) {
    .col-5 {
        display: flex;
        flex-direction: column;
        grid-column: span 5
    }
}

@media only screen and (min-width: 64rem) {
    .col-6 {
        display: flex;
        flex-direction: column;
        grid-column: span 6
    }
}

@media only screen and (min-width: 64rem) {
    .col-7 {
        display: flex;
        flex-direction: column;
        grid-column: span 7
    }
}

@media only screen and (min-width: 64rem) {
    .col-8 {
        display: flex;
        flex-direction: column;
        grid-column: span 8
    }
}

@media only screen and (min-width: 64rem) {
    .col-9 {
        display: flex;
        flex-direction: column;
        grid-column: span 9
    }
}

@media only screen and (min-width: 64rem) {
    .col-10 {
        display: flex;
        flex-direction: column;
        grid-column: span 10
    }
}

@media only screen and (min-width: 64rem) {
    .col-11 {
        display: flex;
        flex-direction: column;
        grid-column: span 11
    }
}

*, *:before, *:after {
    box-sizing: border-box
}

html {
    font-size: 16px;
    scroll-behavior: smooth
}

::selection {
    background: #f57a00;
    color: white;
    text-shadow: none
}

body {
    font-size: 1rem;
    line-height: 1.5;
    background: #f9fafb;
    font-family: "Open Sans", "times", Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, Arial, sans-serif;
    color: #48535b;
    letter-spacing: -0.01em;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-y: auto
}

[id="wrapper"] {
    margin: 0 auto;
    max-width: 2560px
}

[id="container"] {
    padding-block: 1rem 1rem
}

@media only screen and (min-width: 64rem) {
    [id="container"] {
        padding-block-end: 4rem
    }
}

.layout--1-column-8-12 [id="container"] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 0 1.5rem;
    margin: 0 auto;
    max-width: 103rem
}

@media only screen and (min-width: 40rem) {
    .layout--1-column-8-12 [id="container"] {
        grid-gap: 0 2rem
    }
}

.layout--1-column-8-12 [id="container"] [id="main"] {
    grid-column: 1 / -1;
    grid-row: 1 / -1
}

@media only screen and (min-width: 48rem) {
    .layout--1-column-8-12 [id="container"] [id="main"] {
        grid-column: 2 / 12
    }
}

@media only screen and (min-width: 64rem) {
    .layout--1-column-8-12 [id="container"] [id="main"] {
        grid-column: 3 / 11
    }
}

.layout--2-column [id="container"] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 0 1.5rem;
    margin: 0 auto;
    max-width: 103rem
}

@media only screen and (min-width: 40rem) {
    .layout--2-column [id="container"] {
        grid-gap: 0 2rem
    }
}

.layout--2-column [id="main"] {
    grid-column: 1 / -1;
    grid-row: 1 / -1
}

@media only screen and (min-width: 64rem) {
    .layout--2-column [id="main"] {
        grid-column: 5 / 13
    }
}

@media only screen and (max-width: 63.999rem) {
    .layout--2-column [id="left"] {
        display: none
    }
}

@media only screen and (min-width: 64rem) {
    .layout--2-column [id="left"] {
        grid-column: 1 / 5;
        margin-block: 4rem 8rem
    }
}

@media only screen and (min-width: 75rem) {
    .layout--2-column [id="left"] {
        grid-column: 1 / 4
    }
}

[id="header"] {
    background-image: url(../img/schaum.webp);
    border-bottom: 0.0625rem solid #dde1e4;
    background-size: cover;
}

[id="header"] .inside {
        display: flex;
        justify-content: space-between;
        gap: 2rem 1rem;
        padding-block: 1.5rem
    }

@media only screen and (min-width: 30rem) {
    [id="header"] .inside {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-areas: "logo logo mainbar" "metabar metabar metabar"
    }
}

@media only screen and (min-width: 48rem) {
    [id="header"] .inside {
        grid-template-areas: "metabar metabar metabar" "logo . mainbar"
    }
}

@media only screen and (min-width: 64rem) {
    [id="header"] .inside {
        grid-template-areas: "logo metabar metabar" "logo mainbar mainbar"
    }
}

@media only screen and (min-width: 40rem) {
    [id="header"] .inside {
        padding-block: 2rem
    }
}

.header-top-bar {
    display: block;
    grid-area: metabar
}

    .header-top-bar .inner {
        display: flex;
        gap: 1rem 2rem;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center
    }

@media only screen and (max-width: 29.999rem) {
    .header-top-bar {
        display: none
    }
}

.logo {
    grid-area: logo;
    display: flex;
    align-items: center;
    max-width: 7.25rem
}

@media only screen and (min-width: 30rem) {
    .logo {
        max-width: 18rem
    }
}

@media only screen and (min-width: 48rem) {
    .logo {
        max-width: 28rem
    }
}

.logo img {
    display: block
}

.mod_article {
  /*  display: flex;
    justify-content: center*/
}

.mod_article__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 0 1.5rem;
    width: 100%;
    padding-block: calc(.5 * (8rem - 5rem))
}

@media only screen and (min-width: 40rem) {
    .mod_article__inner {
        grid-gap: 0 2rem
    }
}

.mod_article__inner > *.spacer--bottom-2 {
    margin-block-end: 2rem
}

.mod_article__inner > *.spacer--bottom-2 + * {
        margin-block-start: 0
    }

.mod_article__inner > *:not([class*="sibling-space--"]) {
    margin-block: calc(.5 * 5rem)
}

.mod_article__inner > *.sibling-space--1, .mod_article__inner > *.sibling-space--2 {
    margin-block-start: calc(.5 * 5rem)
}

.mod_article__inner > *.sibling-space--1 + *, .mod_article__inner > *.sibling-space--2 + * {
        margin-block-end: calc(.5 * 5rem)
    }

.mod_article__inner > *.sibling-space--1 {
    margin-block-end: 0.5rem
}

    .mod_article__inner > *.sibling-space--1 + * {
        margin-block-start: 0.5rem
    }

.mod_article__inner > *.sibling-space--2 {
    margin-block-end: 1rem
}

.mod_article__inner > *.sibling-space--2 + * {
        margin-block-start: 1rem
    }

.mod_article__inner > *:not([class*="col-"]) {
    grid-column: 1 / -1
}

    .mod_article__inner > *:not([class*="col-"]):first-child {
        margin-block-start: 0
    }

    .mod_article__inner > *:not([class*="col-"]):last-child {
        margin-block-end: 0
    }

.mod_article:first-child .mod_article__inner {
    padding-block-start: calc(.5 * 3rem)
}

@media only screen and (min-width: 64rem) {
    .mod_article:first-child .mod_article__inner {
        padding-block-start: calc(.5 * 8rem)
    }
}

.mod_article:last-child .mod_article__inner {
    padding-block-end: calc(.5 * 3rem)
}

@media only screen and (min-width: 64rem) {
    .mod_article:last-child .mod_article__inner {
        padding-block-end: calc(.5 * 8rem)
    }
}

@media only screen and (max-width: 63.999rem) {
    .mod_article.header-image {
        margin-inline: -1.5rem
    }
}

@media only screen and (max-width: 63.999rem) {
    .mod_article.header-image .mod_article__inner {
        margin-block-start: -1rem;
        padding-block-start: 0
    }
}

h3{font-weight:300}

.display-title {
    letter-spacing: -0.02em
}

.display-title-1, .swiper-wrapper .content-text .title, .swiper-wrapper .content-text .text-wrapper > h2, .slider-wrapper .content-text .title {
    font-size: 3rem;
    line-height: 1.2
}

@media only screen and (min-width: 40rem) {
    .display-title-1, .swiper-wrapper .content-text .title, .swiper-wrapper .content-text .text-wrapper > h2, .slider-wrapper .content-text .title {
        font-size: 3.5rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .display-title-1, .swiper-wrapper .content-text .title, .swiper-wrapper .content-text .text-wrapper > h2, .slider-wrapper .content-text .title {
        font-size: 3.75rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .display-title-1, .swiper-wrapper .content-text .title, .swiper-wrapper .content-text .text-wrapper > h2, .slider-wrapper .content-text .title {
        font-size: 4rem;
        line-height: 1.2
    }
}

.display-title-2 {
    font-size: 2.5rem;
    line-height: 1.2
}

@media only screen and (min-width: 40rem) {
    .display-title-2 {
        font-size: 3rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .display-title-2 {
        font-size: 3.5rem;
        line-height: 1.2
    }
}
.grid-box h3{
    font-weight: 300;
}

.title-1, h1, .title-2, .title-2--regular, h2, .title-3, .title-3--regular, h3, .layout_short h2, .layout_latest h2, .ce_comments h2:nth-of-type(2), .rss_default h1, .rss_default h2, .rss_default h3, .rss_items_only h1, .rss_items_only h2, .rss_items_only h3, .title-4, .title-4--regular, h4, .title-5, .title-5--regular, h5, form legend, .title-6, .title-6--regular, h6 {
    margin-block-end: 2rem;
    font-weight: 300;
    color: #25455f
}

.title-1:first-child, h1:first-child, .title-2:first-child, .title-2--regular:first-child, h2:first-child, .title-3:first-child, .title-3--regular:first-child, h3:first-child, .layout_short h2:first-child, .layout_latest h2:first-child, .ce_comments h2:nth-of-type(2):first-child, .rss_default h1:first-child, .rss_default h2:first-child, .rss_default h3:first-child, .rss_items_only h1:first-child, .rss_items_only h2:first-child, .rss_items_only h3:first-child, .title-4:first-child, .title-4--regular:first-child, h4:first-child, .title-5:first-child, .title-5--regular:first-child, h5:first-child, form legend:first-child, .title-6:first-child, .title-6--regular:first-child, h6:first-child {
        margin-block-start: 0
    }

.title-1, h1 {
    font-size: 2.5rem;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -0.02em
}

@media only screen and (min-width: 40rem) {
    .title-1, h1 {
        font-size: 2.75rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .title-1, h1 {
        font-size: 2.875rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .title-1, h1 {
        font-size: 3rem;
        line-height: 1.2
    }
}

.title-2, .title-2--regular, h2 {
    font-size: 2.25rem;
    line-height: 1.2;
    letter-spacing: -0.02em
}

@media only screen and (min-width: 40rem) {
    .title-2, .title-2--regular, h2 {
        font-size: 2.375rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .title-2, .title-2--regular, h2 {
        font-size: 2.5rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .title-2, .title-2--regular, h2 {
        font-size: 2.5rem;
        line-height: 1.2
    }
}

    .title-3, .title-3--regular, h3, .layout_short h2, .layout_latest h2, .ce_comments h2:nth-of-type(2), .rss_default h1, .rss_default h2, .rss_default h3, .rss_items_only h1, .rss_items_only h2, .rss_items_only h3 {
        font-size: 1.875rem;
        line-height: 1.2;
        margin-block-end: 1rem;
        letter-spacing: -0.01em
    }

@media only screen and (min-width: 40rem) {
    .title-3, .title-3--regular, h3, .layout_short h2, .layout_latest h2, .ce_comments h2:nth-of-type(2), .rss_default h1, .rss_default h2, .rss_default h3, .rss_items_only h1, .rss_items_only h2, .rss_items_only h3 {
        font-size: 2rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .title-3, .title-3--regular, h3, .layout_short h2, .layout_latest h2, .ce_comments h2:nth-of-type(2), .rss_default h1, .rss_default h2, .rss_default h3, .rss_items_only h1, .rss_items_only h2, .rss_items_only h3 {
        font-size: 2rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .title-3, .title-3--regular, h3, .layout_short h2, .layout_latest h2, .ce_comments h2:nth-of-type(2), .rss_default h1, .rss_default h2, .rss_default h3, .rss_items_only h1, .rss_items_only h2, .rss_items_only h3 {
        font-size: 2rem;
        line-height: 1.2
    }
}

.title-3--regular {
    font-weight: 400
}

.title-4, .title-4--regular, h4 {
    font-size: 1.625rem;
    line-height: 1.2
}

@media only screen and (min-width: 40rem) {
    .title-4, .title-4--regular, h4 {
        font-size: 1.625rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .title-4, .title-4--regular, h4 {
        font-size: 1.75rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .title-4, .title-4--regular, h4 {
        font-size: 1.75rem;
        line-height: 1.2
    }
}

.title-4--regular {
    font-weight: 400
}

.title-5, .title-5--regular, h5, form legend {
    font-size: 1.625rem;
    line-height: 1.2
}

@media only screen and (min-width: 40rem) {
    .title-5, .title-5--regular, h5, form legend {
        font-size: 1.625rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 48rem) {
    .title-5, .title-5--regular, h5, form legend {
        font-size: 1.75rem;
        line-height: 1.2
    }
}

@media only screen and (min-width: 75rem) {
    .title-5, .title-5--regular, h5, form legend {
        font-size: 1.75rem;
        line-height: 1.2
    }
}

.title-5--regular {
    font-weight: 400
}

.title-6, .title-6--regular, h6 {
    font-size: 1.375rem;
    line-height: 1.2;
    margin-block-end: 1rem;
    letter-spacing: -0.02em
}

.title-6--regular {
    font-weight: 400
}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
    margin-block-start: 0
}

.text--xs {
    font-size: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.01em
}

.text--sm {
    font-size: 0.875rem;
    line-height: 1.5
}

.text--md {
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: -0.01em
}

.text--lg, .mod_eventreader .info time {
    font-size: 1.25rem;
    line-height: 1.5;
    letter-spacing: -0.01em
}

figure {
    margin: 0
}

    figure.float_left {
        margin: 0 0 2rem 0
    }

@media only screen and (max-width: 29.999rem) {
    figure.float_left {
        margin-block-end: 2rem
    }
}

figure.float_right {
    margin: 0 0 2rem 0
}

@media only screen and (max-width: 29.999rem) {
    figure.float_right {
        margin-block-sstart: 2rem
    }
}

figure.float_above {
    margin-block-end: 2rem
}

figure.float_below {
    margin-block-start: 2rem
}

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

figcaption {
    font-size: 0.875rem;
    line-height: 1.5;
    margin-block-start: 1rem;
    font-style: italic
}

a {
    display: flex;
    align-items: center;
    gap: 0 0.25rem
}

    .link, .pagination a, .mod_sitemap a, .hyperlink_txt, .external-link, a:not([class]) {
        display: inline-flex;
        color: #25455f;
        transition: color 0.2s ease-in-out, text-decoration 0.2s ease-in-out;
        text-decoration: underline currentColor 0.0625rem;
        text-underline-offset: 0.4em
    }

        .link:hover, .pagination a:hover, .mod_sitemap a:hover, .link:focus, .pagination a:focus, .mod_sitemap a:focus, .hyperlink_txt:hover, .hyperlink_txt:focus, .external-link:hover, .external-link:focus, a:not([class]):hover, a:not([class]):focus {
            color: #f57a00
        }

p, ul, ol {
    margin: 1rem 0
}

    p:first-child, ul:first-child, ol:first-child {
        margin-block-start: 0
    }

    p:last-child, ul:last-child, ol:last-child {
        margin-block-end: 0
    }

ul, ol {
    padding-left: 1.5rem
}

blockquote {
    margin: 2rem 0;
    padding-inline-start: 1rem;
    border-left: 0.0625rem solid #dde1e4;
    font-style: italic
}

dl {
    margin-block: 0
}

dd {
    margin-inline-start: 0;
    padding-inline-start: 1rem;
    border-left: 0.0625rem solid #dde1e4
}

.mod_article__inner .content-headline + * {
    margin-block-start: 0
}

.content-text h1:first-child, .content-text h2:first-child, .content-text h3:first-child, .content-text h4:first-child, .content-text h5:first-child, .content-text h6:first-child {
    margin-block-start: 0
}

.searchbar .formbody {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.searchbar .text {
    border-radius: 5rem;
    padding-inline: 1.5rem 3.5rem
}

    .searchbar .text:focus {
        outline: none
    }

@media only screen and (max-width: 63.999rem) {
    .searchbar .text {
        padding-block: 0.75rem
    }
}

.searchbar .widget-text {
    position: relative
}

    .searchbar .widget-text:before {
        position: absolute;
        top: 50%;
        right: 1.5rem;
        z-index: 5;
        transform: translateY(-50%);
        width: 1.5rem;
        height: 1.5rem;
        background: white url("../img/icons/search.svg") center center no-repeat;
        content: "";
        pointer-events: none
    }

.searchbar .widget-radio {
    width: 100%
}

.searchbar .widget-submit {
    /*display: none;*/
    position: absolute;
    top: 50%;
    right: 1.5rem;
    z-index: 5;
    transform: translateY(-50%);
    overflow: hidden;
    width: 1.5rem;
    height: 1.5rem;
    opacity: 0;
}

.searchbar .submit {
    position: relative;
    display: flex;
    gap: 0.5rem;
    width: 1.5rem;
    padding: 0;
    border: none;
    background-color: transparent
}

    .searchbar .submit:focus, .searchbar .submit:hover {
        background: transparent
    }

    .searchbar .submit:hover {
        cursor: pointer
    }

@media only screen and (max-width: 29.999rem) {
    .searchbar--simple {
        display: none
    }
}

@media only screen and (max-width: 47.999rem) {
    .searchbar--simple, .searchbar--simple .widget-text {
        max-width: 100%;
        width: 100%
    }
}

.searchbar--extended .widget-text {
    max-width: 32rem
}

.searchbar--extended .radio_container {
    flex-direction: row
}

.searchbar--extended .header {
    margin-top: 2.5rem
}

.swiper-wrapper {
    display: flex;
    position: relative;
}

/* Textkasten und Bild als zwei eigene abgerundete Flaechen nebeneinander */
.swiper-wrapper .content-text {
    gap: 1.5rem;
}

.swiper-wrapper .content-text .text-wrapper {
    background: #fffcfa;
    border-radius: 20px;
}

/* Handy: Pfeile liegen im Slider, Platz fuer den linken Pfeil
   (spezifischer als die padding-Regel weiter unten) */
@media (max-width: 900px) {
    .swiper .swiper-wrapper .content-text .text-wrapper {
        padding-left: 4rem;
    }
}

/* Slider so breit wie Produktkacheln und Footer: Spalte 2-11 des 12er-Rasters */
@media (min-width: 901px) {
    #header-image-wrapper .content-swiper {
        position: relative;
        margin-inline: calc((100% - 11 * 1.5rem) / 12 + 1.5rem);
    }

    /* Pfeile ausserhalb neben den Slider: .swiper wird "static", damit sich die
       Pfeile an .content-swiper ausrichten und nicht abgeschnitten werden */
    #header-image-wrapper .content-swiper .swiper {
        position: static;
    }

    #header-image-wrapper .swiper-button-prev {
        left: -56px;
    }

    #header-image-wrapper .swiper-button-next {
        right: -56px;
    }
}

/* Alle Slide-Ueberschriften wie die erste (.title): gleicher Abstand */
.swiper-wrapper .content-text .text-wrapper > h2 {
    margin-block: 0 3rem;
}

    .swiper-wrapper > * {
        float: none
    }

    .swiper-wrapper .content-text {
        display: flex;
        overflow: hidden
    }

@media only screen and (max-width: 63.999rem) {
    .swiper-wrapper .content-text {
        flex-direction: column
    }
}

@media only screen and (min-width: 64rem) {
    .swiper-wrapper .content-text figure, .swiper-wrapper .content-text .text-wrapper {
        flex: 1 1 50%
    }
}

.swiper-wrapper .content-text figure {
    aspect-ratio: 1.6666666667
}

@media only screen and (min-width: 64rem) {
    .swiper-wrapper .content-text figure {
        order: 1
    }
}

.swiper-wrapper .content-text img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    border-radius: 20px;
}

.swiper-wrapper .content-text .text-wrapper {
    font-size: 1rem;
    line-height: 1.5;
    padding: 2rem
}

@media only screen and (min-width: 48rem) {
    .swiper-wrapper .content-text .text-wrapper {
        font-size: 1.25rem;
        line-height: 1.5;
        display: flex;
        flex-direction: column;
        justify-content: center
    }
}

.swiper-wrapper figure {
    margin: 0
}

.content-accordion .handorgel__header {
    font-size: 1.25rem;
    line-height: 1.5;
    position: relative
}

    .content-accordion .handorgel__header button {
        font-weight: 600;
        color: #48535b
    }

        .content-accordion .handorgel__header button:hover, .content-accordion .handorgel__header button:focus {
            color: #f57a00
        }

    .content-accordion .handorgel__header:after, .content-accordion .handorgel__header:before {
        transition: opacity ease-in-out 0.2s;
        position: absolute;
        top: 1rem;
        right: 1.5rem;
        z-index: 5;
        width: 2rem;
        height: 2rem;
        background: transparent url("../img/icons/plus-circle.svg") center center no-repeat;
        content: ""
    }

    .content-accordion .handorgel__header:before {
        opacity: 1
    }

    .content-accordion .handorgel__header:after {
        opacity: 0;
        background: transparent url("../img/icons/minus-circle.svg") center center no-repeat
    }

.content-accordion .handorgel__header--opened:before {
    opacity: 0
}

.content-accordion .handorgel__header--opened:after {
    opacity: 1
}

.content-accordion .handorgel__content {
    font-size: 0.875rem;
    line-height: 1.5;
    background: #f4f5f6;
    color: #48535b
}

.ce_accordion {
    border-bottom: 0.0625rem solid #dde1e4
}

    .ce_accordion:not(:first-child) {
        margin-block-end: 0
    }

    .ce_accordion + .ce_accordion {
        margin-block-start: 0
    }

.ui-accordion-header {
    font-size: 1.25rem;
    line-height: 1.5;
    position: relative;
    transition: color ease-in-out 0.2s;
    padding: 1.5rem calc(2rem + 2rem + 1.5rem) 1.5rem 1.5rem;
    background: white;
    font-weight: 400
}

    .ui-accordion-header:hover {
        cursor: pointer
    }

    .ui-accordion-header:hover, .ui-accordion-header:focus {
        color: var(--color-rosa-dunkel)
    }

    .ui-accordion-header:after, .ui-accordion-header:before {
        transition: opacity ease-in-out 0.2s;
        position: absolute;
        top: 1.5rem;
        right: 1.5rem;
        z-index: 5;
        width: 2rem;
        height: 2rem;
        background: transparent url("..//img/icons/plus-circle.svg") center center no-repeat;
        content: ""
    }

    .ui-accordion-header:before {
        opacity: 1
    }

    .ui-accordion-header:after {
        opacity: 0;
        background: transparent url("../img/icons/minus-circle.svg") center center no-repeat
    }

.ui-accordion-header-active:before {
    opacity: 0
}

.ui-accordion-header-active:after {
    opacity: 1
}

.ui-accordion-header-icon {
    display: none
}

.ui-accordion-content {
    font-size: 0.875rem;
    line-height: 1.5;
    padding: 2rem 1.5rem;
    background: #f4f5f6;
    color: #48535b
}

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

.download-element a {
    padding-left: 2rem
}

    .download-element a:before {
        margin-inline-start: -2rem;
        width: 1.5rem;
        height: 1.5rem;
        background: transparent url("../img/icons/file-arrow-down.svg") center center no-repeat;
        content: ""
    }

.content-gallery ul {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 1.5rem;
    list-style: none;
    margin: 0;
    padding: 0
}

@media only screen and (min-width: 40rem) {
    .content-gallery ul {
        grid-gap: 2rem
    }
}

.content-gallery li {
    grid-column: span 12
}

@media only screen and (min-width: 30rem) {
    .content-gallery li {
        grid-column: span 6
    }
}

.content-gallery figure {
    transition: border-color 0.2s ease-in-out;
    padding: 0.25rem;
    background: white;
    border: 1px solid #dde1e4
}

    .content-gallery figure:hover, .content-gallery figure:focus {
        border-color: #f57a00
    }

@media only screen and (min-width: 64rem) {
    .content-gallery--cols-3 li {
        grid-column: span 4
    }
}

.content-gallery--cols-4 li {
    grid-column: span 3
}

.content-gallery--cols-6 li {
    grid-column: span 2
}

.content-youtube figure, .content-vimeo figure {
    margin: 0
}

    .content-youtube figure.aspect, .content-vimeo figure.aspect {
        position: relative;
        width: 100%
    }

        .content-youtube figure.aspect iframe, .content-vimeo figure.aspect iframe {
            position: absolute;
            inset: 0;
            z-index: 5;
            width: 100% !important;
            height: 100% !important
        }

.back {
    margin-block-start: 2.5rem
}

@media only screen and (min-width: 75rem) {
    .mod_article__inner > .mod_newsarchive:not([class*="col-"]), .mod_article__inner > .mod_newslist:not([class*="col-"]), .mod_article__inner > .mod_eventlist:not([class*="col-"]) {
        grid-column: 1 / 10
    }
}

.mod_eventreader .info time {
    font-weight: 600
}

.layout_full h1 {
    margin-block-end: 1rem
}

.layout_full .info {
    position: relative;
    margin-bottom: 5rem
}

    .layout_full .info:after {
        position: absolute;
        left: 0;
        right: 0;
        bottom: calc(-1 * (2.5rem + 0.0625rem));
        z-index: 5;
        height: 0.0625rem;
        background: #dde1e4;
        content: ""
    }

.info {
    font-size: 0.875rem;
    line-height: 1.5;
    font-style: italic
}

    .info time {
        font-style: normal
    }

.syndication {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem 2rem;
    margin-block-end: 0
}

    .syndication img {
        display: none
    }

    .syndication a {
        position: relative;
        width: 1.5rem;
        aspect-ratio: 1;
        border-radius: 50%
    }

        .syndication a:before {
            position: absolute;
            inset: 0;
            content: ""
        }

    .syndication .print:before {
        background: transparent url("../img/icons/printer.svg") center center no-repeat
    }

    .syndication .facebook:before {
        background: transparent url("../img/icons/facebook.svg") center center no-repeat
    }

    .syndication .twitter:before {
        background: transparent url("../img/icons/twitter-circle.svg") center center no-repeat
    }

#cboxOverlay {
    background: #121517
}

#cboxWrapper, #colorbox {
    overflow: visible
}

    #colorbox [id="cboxLoadedContent"] {
        background: #121517;
        border: none
    }

    #colorbox [id="cboxTitle"], #colorbox [id="cboxCurrent"] {
        font-size: 0.875rem;
        line-height: 1.5;
        top: -2.25rem;
        color: #afb8c0
    }

    #colorbox [id="cboxClose"], #colorbox [id="cboxPrevious"], #colorbox [id="cboxNext"] {
        width: 2.25rem;
        height: 2.25rem;
        transition: background ease-in-out 0.2s
    }

        #colorbox [id="cboxClose"]:hover, #colorbox [id="cboxClose"]:focus-visible, #colorbox [id="cboxPrevious"]:hover, #colorbox [id="cboxPrevious"]:focus-visible, #colorbox [id="cboxNext"]:hover, #colorbox [id="cboxNext"]:focus-visible {
            background-color: #f57a00
        }

@media only screen and (min-width: 64rem) {
    #colorbox [id="cboxClose"], #colorbox [id="cboxPrevious"], #colorbox [id="cboxNext"] {
        width: 3rem;
        height: 3rem
    }
}

#colorbox [id="cboxPrevious"], #colorbox [id="cboxNext"] {
    margin-block-start: 0;
    transform: translateY(-50%)
}

#colorbox [id="cboxClose"] {
    top: 0;
    right: 0;
    background: #142533 url("../img/icons/close-x.svg") center center no-repeat
}

#colorbox [id="cboxPrevious"] {
    left: 0;
    background: #142533 url("../img/icons/caret-left--white.svg") center center no-repeat;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem
}

#colorbox [id="cboxNext"] {
    right: 0;
    background: #142533 url("../img/icons/caret-right--white.svg") center center no-repeat;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem
}

