/* -----------------------------------------------------------------------------------
Basic Styles
----------------------------------------------------------------------------------- */
* {
	margin: 0; padding: 0;
	outline: 0;
}

body {
	font-family:"urw-din", Arial, sans-serif; font-size: 16px; line-height: 26px; font-weight: 400; color: #1d4157;
    background-color: #f3f3f1;
}

h1, h2, h3, h4 {
	margin:0; padding:0;
	font-weight: 500; text-transform: uppercase;
}
@media (max-width: 575px) {		
    h1, h2, h3, h4 {
        hyphens: auto;
        overflow-wrap: break-word;
        word-break: normal;
    }
}
h1 {
	margin-bottom: 30px;
	font-size: 24px; line-height: 34px; color: #d22c25;
}
h2 {
	margin-bottom: 20px;
	font-size: 22px; line-height: 32px;
}
h3 {
	margin-bottom: 10px;
	font-size: 18px; line-height: 28px;
}
h3.bigger-space {
	margin-bottom: 20px;
}
h4 {
	margin-bottom:10px;
	font-size: 16px; line-height: 26px; font-weight: 600;
}
@media (max-width: 767px) {
	h1 {
		margin-bottom: 20px;
	}
}
@media (min-width: 768px) {
    h1 {
        font-size: 26px; line-height: 36px;
    }
    h2 {
        font-size: 22px; line-height: 32px;
    }
}

a {
	color: #1d4157; text-decoration: none;
}
a:hover { color:inherit; text-decoration:none; }
a:focus { color:inherit; text-decoration:none; outline:none; }
main p a, main p a:hover, main li a, main li a:hover {
    text-decoration:underline;
    text-underline-offset: 4px;
}
@media (min-width: 768px) {		
    main a[href^="tel:"],
    main a:hover[href^="tel:"],
    main a:focus[href^="tel:"]{
        text-decoration: none;
    }
}

p {
	margin-bottom: 30px;
}
@media (max-width: 575px) {
    p {
        hyphens: auto;
        overflow-wrap: break-word;
        word-break: normal;
    }
}

img {
	border: none;
}

b,strong { font-weight: 600; }

img { border: none; }

ul, ol, li { margin:0; padding:0; }
main ul,
main ol {
    margin:0 0 30px 20px;
}
main ol li {
    margin-bottom: 20px;
}

main .foto-gross-text ul,
main .textabschnitt ul {
    list-style: none;
    padding: 0; margin: -5px 0 30px 0; }

    main .foto-gross-text ul li,
    main .textabschnitt ul li {
        position: relative;
        padding-left: 30px;
    }
    main .foto-gross-text ul li::before,
    main .textabschnitt ul li::before {
        content: "";
        position: absolute; left: 0; top: 14px;
        width: 17px; height: 17px;
        transform: translateY(-50%);
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1200'><path fill='%23d22c25' d='m600.14 0c-330.94 0-600.14 268.92-600.14 599.86 0 330.94 269.21 600.14 600.14 600.14s599.86-269.21 599.86-600.14-268.92-599.86-599.86-599.86zm0 75c290.39 0 524.86 234.47 524.86 524.86s-234.47 525.14-524.86 525.14-525.14-234.74-525.14-525.14c0-290.4 234.74-524.86 525.14-524.86zm254.58 329.86c-9.9375 0.09375-19.5 4.125-26.484 11.25l-285.66 288.14-170.81-172.18v-0.046875c-14.531-14.625-38.156-14.766-52.875-0.28125-7.125 6.9844-11.156 16.547-11.203 26.531-0.046875 9.9375 3.8906 19.547 10.922 26.625l197.39 198.79c7.0312 7.0312 16.594 11.016 26.531 11.016 9.9844 0 19.5-3.9844 26.578-11.016l312.28-314.72c7.0781-7.0781 11.062-16.641 11.062-26.625s-3.9844-19.547-11.062-26.578-16.688-10.969-26.672-10.922z'/></svg>");
        background-size: contain;
        background-repeat: no-repeat;
    }
    main .foto-gross-text.bg-color ul li::before {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1200'><path fill='%23ffffff' d='m600.14 0c-330.94 0-600.14 268.92-600.14 599.86 0 330.94 269.21 600.14 600.14 600.14s599.86-269.21 599.86-600.14-268.92-599.86-599.86-599.86zm0 75c290.39 0 524.86 234.47 524.86 524.86s-234.47 525.14-524.86 525.14-525.14-234.74-525.14-525.14c0-290.4 234.74-524.86 525.14-524.86zm254.58 329.86c-9.9375 0.09375-19.5 4.125-26.484 11.25l-285.66 288.14-170.81-172.18v-0.046875c-14.531-14.625-38.156-14.766-52.875-0.28125-7.125 6.9844-11.156 16.547-11.203 26.531-0.046875 9.9375 3.8906 19.547 10.922 26.625l197.39 198.79c7.0312 7.0312 16.594 11.016 26.531 11.016 9.9844 0 19.5-3.9844 26.578-11.016l312.28-314.72c7.0781-7.0781 11.062-16.641 11.062-26.625s-3.9844-19.547-11.062-26.578-16.688-10.969-26.672-10.922z'/></svg>");
}

span.red,
span.red a {
	color: #d22c25;
}


/* Icons */
i.bi {
    display: inline-block;
    position: relative;
    margin-right: 5px;
}
i.bi:before {
    display: inline-block;
    width: 16px; height: 16px;
    content: '';
    vertical-align: -3px;
}
i.bi.lg:before {
    width: 24px; height: 24px;
}
i.bi.bi-calendar:before {
    background-image: url("data:image/svg+xml,<svg viewBox='0 0 16 16' fill='%231d4157' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z'/><path d='M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2'/></svg>");
    background-repeat: no-repeat;
}

a.button,
button.button {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 14px 70px 14px 35px;
    text-decoration: none !important;
    overflow: hidden;
    background-color: #fff;
    border: none; border-radius: 28px;
    transition: padding 0.3s ease;
}
button.button {
    background-color: #f3f3f1;
}
a.button.white,
button.button.white {
    border: 1px solid #fff;
}

/* Hintergrund */
a.button::before,
button.button::before {
    content: "";
    position: absolute; top: 0; right: 0; z-index: 1;
    width: 100%; height: 100%;
    background-color: #d22c25;
    border-radius: 2rem;
    transition: width 0.3s ease;
}

/* Button-Text */
a.button .txt,
button.button .txt {
    z-index: 2;
    color: #fff;
    transition: color 0.3s ease;
    white-space: nowrap;
}

/* Pfeil */
a.button::after,
button.button::after {
    position: absolute; right: 30px;
    z-index: 1;
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1200' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='m205.37 994.63c5.9805 5.9805 14.09 9.3438 22.551 9.3438 8.457 0 16.566-3.3633 22.547-9.3438l813.75-813.75v915.23c0 11.395 6.0781 21.922 15.945 27.617 9.8672 5.6992 22.023 5.6992 31.891 0 9.8672-5.6953 15.945-16.223 15.945-27.617v-992.22c-0.003906-2.0977-0.21484-4.1875-0.62891-6.2461-0.1875-0.94531-0.53906-1.8164-0.80859-2.7305-0.27734-1.0898-0.60938-2.1641-1-3.2188-0.48047-1.0469-1.0195-2.0664-1.6094-3.0547-0.44531-0.8125-0.80078-1.6562-1.3203-2.4336-2.3359-3.4961-5.3398-6.5-8.832-8.8359-0.80469-0.53906-1.6758-0.91016-2.5156-1.3672-0.96484-0.57422-1.957-1.0938-2.9727-1.5625-1.0742-0.39844-2.168-0.73828-3.2773-1.0195-0.89453-0.26172-1.75-0.60938-2.6758-0.79297-2.0586-0.41406-4.1523-0.625-6.25-0.62891h-992.22c-11.395 0-21.922 6.0781-27.617 15.945-5.6992 9.8672-5.6992 22.023 0 31.891 5.6953 9.8672 16.223 15.945 27.617 15.945h915.23l-813.75 813.75c-5.9805 5.9805-9.3438 14.09-9.3438 22.547 0 8.4609 3.3633 16.57 9.3438 22.551z'/%3e%3c/svg%3e");
    transform: rotate(0deg);
    transition: all 0.3s ease;
}

@media (max-width: 991px) {
    a.button .txt,
    button.button .txt {
        overflow: hidden; /* Versteckt den überlaufenden Text */
        text-overflow: ellipsis; /* Zeigt „…“ am Ende des Textes */
        max-width: 200px; /* Feste Breite (oder nach Bedarf anpassen) */
    }
}

main ol.breadcrumb {
    margin-left: 0;
}



/* -----------------------------------------------------------------------------------
Global Layout Styles
----------------------------------------------------------------------------------- */
.container-fluid,
.container {
    padding-left: 20px; padding-right: 20px;
}

.container-fluid.no-padding,
.container.no-padding {
    padding-left: 0; padding-right: 0;
}
.container {
	max-width: 1200px;
}
.container-fluid.lg {
	max-width: 1200px;
}
.container-fluid.xl {
	max-width: 1430px;
}
.container-fluid.xxl {
	max-width: 1700px;
}

.row {
    margin-left: -10px; margin-right: -10px; }

    .row [class^="col-"] {
        padding-left: 10px; padding-right: 10px;
}
.row.no-space {
    margin-left: 0; margin-right: 0; }

    .row.no-space .no-space[class^="col-"] {
        margin-bottom: 0; padding: 0;
}
@media (min-width: 992px) {
    .container.sm {
        max-width: 800px;
    }
}
@media (min-width: 768px) {
    .row {
        margin-left: -15px; margin-right: -15px; }

        .row [class^="col-"] {
            padding-left: 15px; padding-right: 15px;
    }
    .row.small-space {
        margin-left: -10px; margin-right: -10px; }

        .row.small-space .small-space[class^="col-"] {
            padding-left: 10px; padding-right: 10px;
    }
    
    .container-fluid,
    .container {
        padding-left: 30px; padding-right: 30px;
    }
}
@media (min-width: 992px) {
    .container-fluid,
    .container {
        padding-left: 40px; padding-right: 40px;
    }
    .container.small-padding {
        padding-left: 30px; padding-right: 30px;
    }
	.row {
		margin-left: -20px; margin-right: -20px; }

		.row [class^="col-"] {
			padding-left: 20px; padding-right: 20px;
	}
}


/* -----------------------------------------------------------------------------------
Navigation
----------------------------------------------------------------------------------- */
.navbar {
    margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px;
    background-color: #fff;
    -webkit-box-shadow: 0 1px 4px 0 rgba(0,0,0,0.1); 
            box-shadow: 0 1px 4px 0 rgba(0,0,0,0.1); }

    .navbar .navbar-brand img {
        margin-top: 5px; margin-bottom: 5px;
        max-height: 45px; width: auto;
    }
    .navbar-toggler {
        padding-bottom: 8px;
        height: 40px; width: 40px;
        background-color: #eaeef2;
        border: none; border-radius: 100%; }

        .navbar-toggler .icon-bar {
            width: 16px; height: 1.5px;
            background-color: #1d4157;
            display: block;
            transition: all 0.2s;
            margin-top: 4px;
            border-radius: 1rem;
        }
        .navbar-toggler .icon-bar.top-bar {
            transform: translateX(0) translateY(5px) rotate(45deg);
        }
        .navbar-toggler .icon-bar.middle-bar {
            opacity: 0;
        }
        .navbar-toggler .icon-bar.bottom-bar {
            transform: translateX(0) translateY(-6px) rotate(-45deg);
        }
        .navbar-toggler.collapsed .icon-bar.top-bar {
            width: 10px;
            transform: rotate(0);
        }
        .navbar-toggler.collapsed .icon-bar.middle-bar {
            opacity: 1;
        }
        .navbar-toggler.collapsed .icon-bar.bottom-bar {
            width: 10px;
            transform: rotate(0);
    }

    .navbar .navbar-nav a.nav-link {
        font-size: 17px; line-height: 27px; color: #1d4157; font-weight: 400; text-transform: uppercase;
        -webkit-transition: all .2s ease;
                transition: all .2s ease;
    }
    .navbar .navbar-nav a.nav-link:hover,
    .navbar .navbar-nav a.nav-link:focus {
        color: #1d4157;
    }
    .navbar .navbar-nav a.nav-link.active {
        color: #d22c25;
    }
    .navbar .navbar-nav a.nav-link:focus-visible {
        box-shadow: none; }

        .dropdown-toggle::after {
            content: "";
            display: inline-block;
            margin-left: 10px;
            width: 6px; height: 6px;
            border: none; border-bottom: 1px solid #1d4157; border-right: 1px solid #1d4157;
            -webkit-transform: rotate(45deg);
                    transform: rotate(45deg);
        }

        .navbar .navbar-nav .dropdown-menu {
            padding: 20px 25px 25px 25px;
            background-color: #d22c25;
            border: none; border-radius: 5px; }

            .navbar .navbar-nav .dropdown-menu a {
                padding: 4px 20px 4px 0;
                font-size: 16px; line-height: 26px; font-weight: 400; color: #fff; text-decoration: none;
                background-color: transparent;
                -webkit-transition: all .2s ease;
                        transition: all .2s ease;
            }
            .navbar .navbar-nav .dropdown-menu a:hover,
            .navbar .navbar-nav .dropdown-menu a:focus {
                color: #fff;
            }
            .navbar .navbar-nav .dropdown-menu a.active {
                color: #fff;
            }
            .navbar .navbar-nav .dropdown-menu .dropdown-item {
                white-space: normal;
}
@media (max-width: 1199px) {
    /* Fix: */
    .navbar-collapse {
        padding-top: 10px; padding-bottom: 20px;
        max-height: calc(100vh - 100px);
        overflow-y: auto;
    }
    .navbar .navbar-nav a.nav-link {
        margin: 0;  padding-top: 10px; padding-bottom: 10px;
        font-size: 20px; line-height: 30px; }
    
        .navbar .navbar-nav .dropdown-menu {
            margin-bottom: 15px; }
    
            .navbar .navbar-nav .dropdown-menu a {
                padding: 5px 20px 5px 0;
                font-size: 18px; line-height: 28px;
    }
}
@media (min-width: 768px) {
    .navbar {
        margin: 20px 0 0 0; padding-left: 40px; padding-right: 40px;
        border-radius: 8px; }
    
        .navbar .navbar-brand img {
            max-height: 50px;
    }
}
@media (min-width: 992px) {
    .navbar .navbar-brand img {
        margin-top: 10px; margin-bottom: 10px;
    }
}
@media (min-width: 1200px) {
    .navbar .navbar-brand img {
        max-height: 55px;
    }
    .navbar .navbar-nav a.nav-link {
		margin-top: 10px; margin-left: 25px; margin-bottom: 10px; padding: 0;
    }
    .navbar .navbar-nav .dropdown-menu {
        min-width: 300px;
    }
}

/* slideIn */
@keyframes slideIn {
    0% {
        transform: translateY(1rem);
        opacity: 0;
    }
    100% {
        transform:translateY(0rem);
        opacity: 1;
    }
    0% {
        transform: translateY(1rem);
        opacity: 0;
    }
}
.slideIn {
    -webkit-animation-delay: 0.1s;
            animation-delay: 0.1s;
    -webkit-animation-duration: 0.35s;
            animation-duration: 0.35s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-name: slideIn;
            animation-name: slideIn;
}


/* -----------------------------------------------------------------------------------
Header
----------------------------------------------------------------------------------- */
header.unterseite {
	position: relative;
    margin: 80px auto 40px auto; }

    header.unterseite img.image {
        height: 100%; width: 100%;
        min-height: 260px;
        object-fit: cover;
    }

    header.unterseite .content-container {
        position: absolute; bottom: 30px; z-index: 1;
        width: 100%; }

        header.unterseite .content-container .text-container {
            float: right;
            max-width: 450px;
            text-align: right; }

            header.unterseite .content-container .text-container span {
                padding: 5px 10px; /* seitlicher Weißrand NUR links/rechts */
                font-size: 16px; font-weight: 500; color: #d22c25; text-transform: uppercase;
                line-height: 33px; /* steuert den vertikalen Abstand zwischen Zeilen */
                background-color: #fff;
                /* Weiß hinter dem Text, pro Zeile neu beginnen */
                -webkit-box-decoration-break: clone;
                        box-decoration-break: clone; }

                header.unterseite .content-container .text-container span i {
                    font-size: 20px; color: #1d4157; font-style: normal;
}
@media (min-width: 768px) {
    header.unterseite {
        margin-top: 0; margin-bottom: 60px; }
    
        header.unterseite img.image {
            min-height: 480px;
        }
    
        header.unterseite .content-container .text-container {
            max-width: 600px; }
    
            header.unterseite .content-container .text-container span {
                font-size: 20px;
                line-height: 40px; /* steuert den vertikalen Abstand zwischen Zeilen */ }

                header.unterseite .content-container .text-container span i {
                    font-size: 24px; }
}
@media (min-width: 992px) {
    header.unterseite .content-container {
        bottom: 60px; }
    
        header.unterseite .content-container .text-container span {
            font-size: 24px;
            line-height: 45px; /* steuert den vertikalen Abstand zwischen Zeilen */ }

            header.unterseite .content-container .text-container span i {
                font-size: 30px;
    }
}


/* -----------------------------------------------------------------------------------
Impressionen
----------------------------------------------------------------------------------- */
.impressionen {
	margin-bottom: 80px; }

    .impressionen .image-container {
        margin-bottom: 20px;
        border-radius: 8px;
}
@media (min-width: 768px) {
    .impressionen {
        margin-bottom: 70px; }

        .impressionen .image-container {
            margin-bottom: 30px;
    }
}
@media (min-width: 992px) {
    .impressionen {
        margin-bottom: 60px; }

        .impressionen .image-container {
            margin-bottom: 40px;
    }
}


/* -----------------------------------------------------------------------------------
Großes Foto + Text
----------------------------------------------------------------------------------- */
.foto-gross-text {
    margin-bottom: 60px; }

    .foto-gross-text .container {
        max-width: 550px;
    }
    .foto-gross-text h3 {
        margin-bottom: 15px;
    }
    .foto-gross-text img.image {
        border-radius: 8px;
}
@media (max-width: 767px) {
	.foto-gross-text img.image {
        margin-bottom: 30px;
    }
}
@media (min-width: 768px) {
    .foto-gross-text img.image {
        margin-top: 7px;
    }
}
@media (min-width: 992px) {
    .foto-gross-text {
        margin-bottom: 100px;
    }
}


/* -----------------------------------------------------------------------------------
Vereine und Einrichtungen
----------------------------------------------------------------------------------- */
/* Überblick */
.vereine-einrichtungen {
    margin: -40px 0 100px 0; }

    .vereine-einrichtungen .vereine-einrichtungen-zeile {
        padding: 60px 0;
        border-bottom: 1px solid #b2bdc2; }

        .vereine-einrichtungen .vereine-einrichtungen-zeile a,
        .vereine-einrichtungen .vereine-einrichtungen-zeile a:hover{
            position: relative;
            display: block;
            margin: 5px 0; padding-left: 24px;
            text-decoration: none;
        }
        .vereine-einrichtungen .vereine-einrichtungen-zeile a:before {
            position: absolute; left: 0; top: 9px;
            content: '';
            width: 8px; height: 8px;
            border-top: 2px solid #d22c25; border-right: 2px solid #d22c25;
            -webkit-transform: rotate(45deg);
                    transform: rotate(45deg); }

            .vereine-einrichtungen .vereine-einrichtungen-zeile a span {
                 font-size: 18px; font-weight: 600; text-decoration: none;
                 border-bottom: 2px solid transparent;
                -webkit-transition: all .2s ease;
                        transition: all .2s ease;
            }
            .vereine-einrichtungen .vereine-einrichtungen-zeile a span:hover {
                border-bottom: 2px solid #0c2744;
}
@media (max-width: 767px) {
    .vereine-einrichtungen .vereine-einrichtungen-zeile .alphabet {
        margin-bottom: 10px;
    }
}
@media (max-width: 768px) and (min-width: 992px) {		
    .vereine-einrichtungen .vereine-einrichtungen-zeile  h2 {
        hyphens: auto;
        overflow-wrap: break-word;
        word-break: normal;
    }
}



/* -----------------------------------------------------------------------------------
Textabschnitt
----------------------------------------------------------------------------------- */
.textabschnitt {
    margin-bottom: 100px;
}


/* -----------------------------------------------------------------------------------
Termine
----------------------------------------------------------------------------------- */
.termine {
    margin-bottom: 100px; }

    .termine .event {
        margin-bottom: 40px; padding: 40px 0 10px 0;
        background-color: #fff;
        border-radius: 8px; }

    .termine .event .datum-uhrzeit {
        margin-bottom: 20px;
        font-size: 15px; line-height: 22px; }

        .termine .event .datum-uhrzeit i.bi {
            margin: 4px 20px 0 0;
        }
        .termine .event .datum-uhrzeit i.bi:before {
            width: 36px; height: 36px;
}


/* -----------------------------------------------------------------------------------
Image Hover Effect
----------------------------------------------------------------------------------- */
a.image-hover-effect,
a.image-hover-effect:hover {
    overflow: hidden;
    text-decoration: none;
    -webkit-transform: translateY(0);
            transform: translateY(0) }

    a.image-hover-effect .image-container,
    a.image-hover-effect .image-container img {
        position: relative;
        -webkit-transition: transform .3s ease-in-out;
                transition: transform .3s ease-in-out;
    }
    a.image-hover-effect .image-container {
        overflow: hidden;
    }
    a.image-hover-effect.inset-shadow .image-container:after {
        position: absolute; top: 0; right: 0; left: 0; bottom: 0;
        content: '';
        box-shadow: inset 0px 0px 60px rgba(44,45,47,0.2);}

        a.image-hover-effect .image-container img {
            display: block;
            margin: 0;
            width: 100%; height: auto; max-width: 100%;
            -webkit-transform: scale(1);
                    transform: scale(1)
        }
        a.image-hover-effect:hover .image-container img {
            -webkit-transform: scale(1.05);
                    transform: scale(1.05)
}



/* -----------------------------------------------------------------------------------
Footer
----------------------------------------------------------------------------------- */
footer {
    padding: 80px 0 60px 0;
	color: #fff;
	background-color: #1d4157; }

    footer .kontakt-spalten {
        margin-bottom: 40px; }

        footer .kontakt-spalten h3 {
            margin-bottom: 5px;
            font-size: 16px; line-height: 26px; color: #fff; opacity: 0.4;
        }
        footer a {
            color: #fff;
    }

    footer .logo img.image {
        max-height: 45px; width: auto;
    }
footer .logo {
    margin-bottom: 40px;
}
@media (max-width: 767px) {
    footer .logo img.image {
        margin-bottom: 40px;
    }
}


    footer .abschlussleiste {
        text-align: center;
    }
    footer .abschlussleiste p {
        margin-bottom: 20px;
    }
    footer .abschlussleiste p a {
        margin: 0 5px;
    }
    footer a,
    footer a:hover {
        text-decoration: none;
}
@media (max-width: 767px) {
    footer {
        text-align: center; }
    
        footer .content {
            margin-bottom: 40px;
    }
}
@media (min-width: 768px) {
    
    footer .content {
    margin-right: 50px;
}
	footer .rechte-spalte {
		text-align: right; }
}
@media (min-width: 1200px) {   
    footer .content {
        margin-right: 60px;
    }
}



/* -----------------------------------------------------------------------------------
Cookie Consent
----------------------------------------------------------------------------------- */
:root{
    --cc-bg: #1d4157;
    --cc-bg-light: rgba(255, 255, 255, .2);
    --cc-text: #fff;
    --cc-border-radius: 0;
    --cc-btn-primary-bg: var(--cc-bg);
    --cc-btn-primary-text: var(--cc-text);
    --cc-btn-primary-hover-bg: var(--cc-bg);
    --cc-btn-secondary-bg: var(--cc-bg);
    --cc-btn-secondary-text: var(--cc-text);
    --cc-btn-secondary-hover-bg: var(--cc-bg);
    --cc-btn-border-radius: 0;
    --cc-toggle-bg-off: var(--cc-bg);
    --cc-toggle-bg-on: var(--cc-bg);
    --cc-toggle-bg-readonly: var(--cc-bg);
    --cc-toggle-knob-bg: var(--cc-text);
    --cc-toggle-knob-icon-color: var(--cc-text);
    --cc-block-text: var(--cc-text);
    --cc-cookie-category-block-bg: var(--cc-bg-light);
    --cc-cookie-category-block-bg-hover: var(--cc-bg-light);
    --cc-section-border: var(--cc-text);
    --cc-cookie-table-border: var(--cc-text);
    --cc-overlay-bg: rgba(0, 0, 0, .4);
    --cc-webkit-scrollbar-bg: var(--cc-text);
    --cc-webkit-scrollbar-bg-hover: var(--cc-text);
}
.cc_div .cc-link,
.cc_div .cc-link:hover {
    border-color: var(--cc-text);
    color: var(--cc-text);
}
.cc_div .c-bn {
    border: 1px solid var(--cc-text);
}
#s-c-bn.c-bn {
    border: none;
}
#s-c-bn {
    font-size: 40px;
}


/* -----------------------------------------------------------------------------------
iframemanager
----------------------------------------------------------------------------------- */
:root{
    --im-color: #fff;
    --im-bg: #1d4157;
    --im-link-color: var(--im-color);
    --im-link-hover-color: var(--im-color);
    --im-btn-color: var(--im-color);
    --im-btn-bg: #d22c25;
    --im-btn-hover-bg: var(--im-btn-bg);
    --im-btn-active-box-shadow: none;
    --im-btn-s-color: var(--im-color);
    --im-btn-s-bg: var(--im-btn-bg);
    --im-btn-s-hover-bg: var(--im-btn-bg);
    --im-btn-s-active-bg: var(--im-btn-bg);
    --im-overlay-bg: linear-gradient(14deg,#1e3861,rgba(206,220,233,.118))
}
div.c-an[data-widget] {
    margin-bottom: 0;
}
div[data-service] {
    font-family:"urw-din", Arial, sans-serif; font-size: 18px; line-height: 28px; font-weight: 400;
    background: url("../images/karte.jpg") center center; background-size: cover;
}
div[data-service] .cll .c-l-b,
div[data-service] .cll .c-la-b {
    position: relative;
	display: inline-block;
	padding: 18px 70px 18px 35px;
	font-family:"urw-din", Arial, sans-serif; font-size: 16px; line-height: 16px; color: #fff; font-weight: 400; cursor: pointer; text-decoration: none;
	outline: none;
	background-color: #d22c25;
    border: none; border-radius: 28px;
    box-shadow: inset 0px 0px 0px 2px #d22c25;
    -webkit-transition: all .2s ease;
            transition: all .2s ease;
}
div[data-service] .cll .c-l-b:before {
    display: none;
}
div[data-service] .cll .c-l-b::after,
div[data-service] .cll .c-la-b::after {
    position: absolute; right: 30px;
    width: 16px; height: 16px;
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1200' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='m205.37 994.63c5.9805 5.9805 14.09 9.3438 22.551 9.3438 8.457 0 16.566-3.3633 22.547-9.3438l813.75-813.75v915.23c0 11.395 6.0781 21.922 15.945 27.617 9.8672 5.6992 22.023 5.6992 31.891 0 9.8672-5.6953 15.945-16.223 15.945-27.617v-992.22c-0.003906-2.0977-0.21484-4.1875-0.62891-6.2461-0.1875-0.94531-0.53906-1.8164-0.80859-2.7305-0.27734-1.0898-0.60938-2.1641-1-3.2188-0.48047-1.0469-1.0195-2.0664-1.6094-3.0547-0.44531-0.8125-0.80078-1.6562-1.3203-2.4336-2.3359-3.4961-5.3398-6.5-8.832-8.8359-0.80469-0.53906-1.6758-0.91016-2.5156-1.3672-0.96484-0.57422-1.957-1.0938-2.9727-1.5625-1.0742-0.39844-2.168-0.73828-3.2773-1.0195-0.89453-0.26172-1.75-0.60938-2.6758-0.79297-2.0586-0.41406-4.1523-0.625-6.25-0.62891h-992.22c-11.395 0-21.922 6.0781-27.617 15.945-5.6992 9.8672-5.6992 22.023 0 31.891 5.6953 9.8672 16.223 15.945 27.617 15.945h915.23l-813.75 813.75c-5.9805 5.9805-9.3438 14.09-9.3438 22.547 0 8.4609 3.3633 16.57 9.3438 22.551z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 16px;
  transition: transform 0.2s ease-in-out;
}


/* -----------------------------------------------------------------------------------
Fullscreen Lightbox v3.6.0 Pro
----------------------------------------------------------------------------------- */
.fslightbox-container{
    background: #fff !important;
}
.fslightbox-svg-path{
	fill: #1d4157 !important;
}
.fslightbox-slide-number-container{
	color: #1d4157 !important; display: none !important;
}
.fslightbox-slash{
	background: #1d4157 !important;
}
.fslightbox-toolbar{
	background: rgba(255,255,255,.65) !important;
}
.fslightbox-slide-btn{
	background: rgba(35,35,35,.06) !important;
}
.fslightbox-toolbar-button:nth-child(1),
.fslightbox-toolbar-button:nth-child(2),
.fslightbox-toolbar-button:nth-child(3),
.fslightbox-toolbar-button:nth-child(4),
.fslightbox-toolbar-button:nth-child(5) {
	display: none !important;
}
.fslightboxc:after {
    background: none !important;
}
.fslightboxci {
    color: #1d4157 !important;
    font-size: 16px !important;
}