.floatstop { clear: both; }

.pswp__bg {
    background: rgba(3,50,67,.8);
}

body { 
	hyphens: auto; 
}

.body-bg { 
	background-image: url('../Images/bg_winnenden.png');
	background-color: #FDFDFD;
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
}

.breadcrumb-section ol li.active.breadcrumb-link-title {
  color: var(--black-color);
  font-weight: 700;
  font-size: 14px;
}
	
/* --- badges --- */

.badges-wrapper .badge{
  border-radius: 4px;
  right: 10px;
} 
.badges-wrapper .badge a {
  border-radius: 4px;
}
.badges-wrapper .badge:hover .badge-body {
	border-radius: 4px;
}
.badges-wrapper .badge:hover .badge-body.no-bg-only-padding {
	background: none;
    padding: 0px 10px 0px 0px;
}
.badges-wrapper .badge:hover .badge-body.bg-only {
    position: static;
}

.main-menu .has-child {
    cursor: pointer;
}

/* --- Banner Content Page --- */

.bg-overlay {
	/* background: linear-gradient(216deg, rgb(255, 255, 255) 15%, rgba(255, 255, 255, 0.60) 50%, rgba(255, 255, 255, 0.40) 65%); */
}
.inner-banner-info h1 {
	text-shadow: 0px 0px 15px #fff;
}

/* --- Navigation --- */
a.no-click {
    pointer-events: none;
}

/* --- Breadcrumb --- */
.breadcrumb-item {
    color: var(--secondary);
    font-weight: 300;
    font-size: 14px;
}

/* --- Form --- */

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

/* --- Footer --- */
#c741 {
    padding-bottom: 0;
}
#c742 {
    padding-top: 1rem;
}
.footer-address {
    margin-top: 0 !important;
}

/* --- Kalender --- */

.fc-view {
    background-color: var(--white-color);
}
.fc-head-container table {
    margin-bottom: 0;
}

#c1138 > .frame-group-container,
#c1290 > .frame-group-container{
    box-shadow: 0px 20px 15px #00000029;
    border-radius: 10px;
    background: var(--white-color);
    padding: 2rem 2rem 1rem 2rem;
    margin-bottom: 2rem;
}

/* --- Lightbox --- */

.pswp__bg {
  background-color: #fff !important;
  opacity: 0.8 !important;
}
	
/* --- Content Elemente --- */

ul li {
    background-size: 8px;
}

/* --- Content Element: Accordion --- */

.accordion-item .accordion-header .accordion-button,
.accordion-item .accordion-header .accordion-button:not(.collapsed){
	background: #fff;
}
.accordion {
	--bs-accordion-bg: transparent;
}


.no-banner { height: 150px; }
@media (min-width: 576px) { .no-banner { height: 150px; } }
@media (min-width: 768px) { .no-banner { height: 150px; } }
@media (min-width: 992px) { .no-banner { height: 150px; } }
@media (min-width: 1200px) { .no-banner { height: 150px; } }
@media (min-width: 1400px) { .no-banner { height: 150px; } }


/* --- Datatable  --- */

.dt-paging-button.page-item.disabled {
    display: none;
}

/* --- Header Schriftgröße (AGENTUR-5616)  --- */

.home-slider-box-inner > h1 > span,
.inner-banner-info > h1 > span {
    font-size: 75%;
}

/* --- Anpassung Kalender (WINNENDEN-234)  --- */

.fc-day-header > span::before {
    content: attr(data-full);
    display: inline-block;
}

@media (max-width: 768px) {
    .fc-day-header > span::before {
        content: attr(data-short);
    }
}
/*
.fc-day-header > span {
    display: inline-block;
    white-space: nowrap;
    text-indent: -9999px;
}
*/


/* Width of Image Area [image_area_width] */

.image-area-width-100 { max-width: 100% !important; }
.textpic-right .text-area-width-0,
.textpic-left .text-area-width-0
{ max-width: 100% !important; width: 100% !important; }

.image-area-width-66 { max-width: 100% !important; }
.textpic-right .text-area-width-34,
.textpic-left .text-area-width-34
{ max-width: 100% !important; width: 100% !important; }

.image-area-width-50 { max-width: 100% !important; }
.textpic-right .text-area-width-50,
.textpic-left .text-area-width-50
{ max-width: 100% !important; width: 100% !important; }

.image-area-width-33 { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }
.textpic-right .text-area-width-67,
.textpic-left .text-area-width-67
{ max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }

.image-area-width-25 { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }
.textpic-right .text-area-width-75,
.textpic-left .text-area-width-75
{ max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }

/* Small devices (landscape phones, 576px and up) */
/* @media (min-width: 576px) { ... } */

/* Medium devices (tablets, 768px and up) */
/* @media (min-width: 768px) { ... } */

/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
    .image-area-width-100 { max-width: 100% !important; }
    .textpic-right .text-area-width-0,
    .textpic-left .text-area-width-0
    { max-width: 100% !important; width: 100% !important; }

    .image-area-width-66 { max-width: 66% !important; width: calc(66% - (20px / 2)) !important; }
    .textpic-right .text-area-width-34,
    .textpic-left .text-area-width-34
    { max-width: 34% !important; width: calc(34% - (20px / 2)) !important; }

    .image-area-width-50 { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }
    .textpic-right .text-area-width-50,
    .textpic-left .text-area-width-50
    { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }

    .image-area-width-33 { max-width: 33% !important; width: calc(33% - (20px / 2)) !important; }
    .textpic-right .text-area-width-67,
    .textpic-left .text-area-width-67
    { max-width: 67% !important; width: calc(67% - (20px / 2)) !important; }

    .image-area-width-25 { max-width: 25% !important; width: calc(25% - (20px / 2)) !important; }
    .textpic-right .text-area-width-75,
    .textpic-left .text-area-width-75
    { max-width: 75% !important; width: calc(75% - (20px / 2)) !important; }
}

/* X-Large devices (large desktops, 1200px and up) */
/* @media (min-width: 1200px) { ... } */

/* XX-Large devices (larger desktops, 1400px and up) */

@media (min-width: 1400px) {

    .image-area-width-100 { max-width: 100% !important; }
    .textpic-right .text-area-width-0,
    .textpic-left .text-area-width-0
    { max-width: 100% !important; width: 100% !important; }

    .image-area-width-66 { max-width: 66% !important; width: calc(66% - (20px / 2)) !important; }
    .textpic-right .text-area-width-34,
    .textpic-left .text-area-width-34
    { max-width: 34% !important; width: calc(34% - (20px / 2)) !important; }

    .image-area-width-50 { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }
    .textpic-right .text-area-width-50,
    .textpic-left .text-area-width-50
    { max-width: 50% !important; width: calc(50% - (20px / 2)) !important; }

    .image-area-width-33 { max-width: 33% !important; width: calc(33% - (20px / 2)) !important; }
    .textpic-right .text-area-width-67,
    .textpic-left .text-area-width-67
    { max-width: 67% !important; width: calc(67% - (20px / 2)) !important; }

    .image-area-width-25 { max-width: 25% !important; width: calc(25% - (20px / 2)) !important; }
    .textpic-right .text-area-width-75,
    .textpic-left .text-area-width-75
    { max-width: 75% !important; width: calc(75% - (20px / 2)) !important; }

}

/* -------------- KORREKTUREN Badges ----------------------------------------------------------------------------- */

.scroll-top,
.badges-wrapper .badge-contrast,
.badges-wrapper .badge-contrast a,
.badges-wrapper .badge-search,
.badges-wrapper .badge-search a,
.badges-wrapper .badge-call,
.badges-wrapper .badge-call a,
.badges-wrapper .badge-call,
.badges-wrapper .badge-call .badge-body,
.badges-wrapper .badge-email,
.badges-wrapper .badge-email a,
.badges-wrapper .badge-email,
.badges-wrapper .badge-email .badge-body,
.badges-wrapper .badge:hover .badge-body.bg-only,
.badges-wrapper .badge-search .badge-body{ background-color: #009F97 }

@media (min-width: 992px) {
    .badges-wrapper {
        top: 160px; 
    }
}

/* -------------- KORREKTUREN DARK MODE ----------------------------------------------------------------------------- */

[data-bs-theme="dark"] img { filter: saturate(0) contrast(1.75); }
[data-bs-theme="dark"] video { filter: saturate(0) contrast(1.75); }
[data-bs-theme="dark"] .inner-banner { filter: saturate(0) contrast(1.75); }
[data-bs-theme="dark"] iframe { filter: saturate(0) contrast(1); }

[data-bs-theme="dark"] .body-bg {
    background: #ffffff;
}
[data-bs-theme="dark"] .bg-overlay {
    background: linear-gradient(216deg, rgb(255, 255, 255) 15%, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 65%) !important;
}
[data-bs-theme="dark"] .inner-banner-info h1 { color: #000000 }
[data-bs-theme="dark"] .inner-banner-info h1 span { color: #000000 }
[data-bs-theme="dark"] .navbar-brand-logo-normal.dark-logo,
[data-bs-theme="dark"] h2::before{
    filter: grayscale(100%) contrast(100);
}

[data-bs-theme="dark"] .fc-day-header span,
[data-bs-theme="dark"] table tr th, [data-bs-theme="dark"] table tr td,
[data-bs-theme="dark"] .fc-day-number { color: #000000 }
[data-bs-theme="dark"] .fc-other-month .fc-day-number { display: none; }

[data-bs-theme="dark"] .scroll-top,
[data-bs-theme="dark"] .badges-wrapper .badge-contrast,
[data-bs-theme="dark"] .badges-wrapper .badge-contrast a,
[data-bs-theme="dark"] .badges-wrapper .badge-search,
[data-bs-theme="dark"] .badges-wrapper .badge-search a,
[data-bs-theme="dark"] .badges-wrapper .badge-call,
[data-bs-theme="dark"] .badges-wrapper .badge-call a,
[data-bs-theme="dark"] .badges-wrapper .badge-call,
[data-bs-theme="dark"] .badges-wrapper .badge-call .badge-body,
[data-bs-theme="dark"] .badges-wrapper .badge-email,
[data-bs-theme="dark"] .badges-wrapper .badge-email a,
[data-bs-theme="dark"] .badges-wrapper .badge-email,
[data-bs-theme="dark"] .badges-wrapper .badge-email .badge-body { background-color: #000000 }

#tx_indexedsearch #tx-indexedsearch-searchbox-sword {
    border: 1px solid #ffffff;
}

[data-bs-theme="dark"] .badges-wrapper .badge-contrast:hover .badge-body.bg-only {
    background-color: #ffffff;
    color: #000000;
    border: 3px solid #000000;
}

[data-bs-theme="dark"] .footer-section .list-normal li{
    filter: grayscale(100%) contrast(100);
}
/*
[data-bs-theme="dark"] [style="color: #ffffff; background-color: #d61f26;"] { background-color: #000000 !important;; }
*/

[data-bs-theme="dark"] .teaser-info-box-content h3 { color: #ffffff }

[data-bs-theme="dark"] .teaser-img-box .teaser-info-box-content{
    background: linear-gradient(0deg,rgb(0, 0, 0) 35%,rgba(0,0,0,0.0) 69.4%);
}
[data-bs-theme="dark"] .news-widget .owl-theme .owl-dots .owl-dot.active span,
[data-bs-theme="dark"] .news-widget .owl-theme .owl-dots .owl-dot:hover span,
[data-bs-theme="dark"] .home-slider .owl-theme .owl-dots .owl-dot.active span,
[data-bs-theme="dark"] .home-slider .owl-theme .owl-dots .owl-dot:hover span {
    background: #000000;
    width: 16px;
    height: 16px;
}
[data-bs-theme="dark"] .teaser-info-box .theme-btn { color: #000000 !important; }
[data-bs-theme="dark"] .teaser-info-box { background-color: #000000 !important; }
[data-bs-theme="dark"] .tiles-container .tile-card { background-color: #000000 !important; }

[data-bs-theme="dark"] .main-menu > ul > li .submenu-menu,
[data-bs-theme="dark"] .main-menu ul.submenu-menu > li.has-has-child .sub-submenu-show {
    background: #000000;
}

/* -------------- RTE Editor ---------------------------------------------------------------------------------------- */
/* --- HINWEIS: Diese formatierungen müssen mit angepasster Definition auch in rte.css abgelegt werden! ------------- */

p.infobox::before{
    content: "";
    background: url('../Images/information-line.svg') no-repeat center center;
    background-size: auto;
    width: 24px;
    height: 24px;
    display: inline-block;
    margin-right: 6px;
    background-size: 22px auto;
    vertical-align: middle;
    position: relative;
    top: -1px;
}

/* --- Links --- */


.section .frame-inner a[target="_blank"]::after {

    content: '';
    -webkit-mask: url('../Images/external-link.svg') no-repeat 50% 50%;
    mask: url('../Images/external-link.svg') no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;

    width: 16px;
    height: 16px;
    display: inline-block;
    background-size: 14px auto;
    margin-left: 5px;
    vertical-align: middle;
    position: relative;
    top: -1px;

    background-color: currentColor;
}

.section .frame-inner a[href^="mailto:"]::before {

    content: '';
    -webkit-mask: url('../Images/email-icon.svg') no-repeat 50% 50%;
    mask: url('../Images/email-icon.svg') no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;

    width: 16px;
    height: 16px;
    display: inline-block;
    margin-right: 5px;
    vertical-align: middle;
    position: relative;
    top: -1px;

    background-color: currentColor;
}

.section .frame-inner a[href^="tel:"]::before { /* Telefon Icon */

    content: '';
    -webkit-mask: url('../Images/phone.svg') no-repeat 50% 50%;
    mask: url('../Images/phone.svg') no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;

    width: 16px;
    height: 16px;
    display: inline-block;
    margin-right: 6px;
    background-size: 14px auto;
    vertical-align: middle;

    background-color: currentColor;
}

.section .frame-inner a[href*="fileadmin/"]::before { /* Seitenlink Icon entfernen, wenn Filelink */
    content: "";
}
.section .frame-inner a[href*="fileadmin/"]:not(.lightbox)::after { /* Filelink Icon */
    content: '';
    -webkit-mask: url('../Images/file.svg') no-repeat 50% 50%;
    mask: url('../Images/file.svg') no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;

    width: 16px;
    height: 16px;
    display: inline-block;
    background-size: 14px auto;
    margin-left: 5px;
    vertical-align: middle;
    position: relative;
    top: -1px;

    background-color: currentColor;
}
/* Sonderlösung: Verlinkte Bilder (JS beachten) */
a.no-after::after {
    content: '' !important;
    display: none !important;
}

/* Sonderlösung: Kalender anpassen (mobil) */
.fc-day-grid-container, .fc-time-grid-container {
    height: auto !important;
}

/* Sonderlösung: Falsche Einrückung bei eingebundenen Contentelementen */
/*
.frame > .frame-group-container > .frame-group-inner > .frame-container > .frame-inner > .frame {
    padding: 0;
}
*/

/* Klasse zur Entfernung von Icons [AGENTUR-7039] */
.ohneicon::before,
.ohneicon::after {
    content: none !important;
    -webkit-mask: none !important;
    mask: none !important;
}
/* Carousel-Inhalt besser an Inhalte anpassen [AGENTUR-8644] */
.carousel-small .item, .carousel .item {
    height: stretch !important;
    aspect-ratio: unset !important;
}
.carousel-item-type-image .carousel-image img {
     margin: 5rem auto;
 }