body {
    overflow-x: hidden !important;
    overflow-y: scroll;
}
.headline_intro {
    hyphens: manual;
}
.nav-menu {
    max-height: calc(100vh - 153px);
    height: auto;
    overflow-y: auto;
}
.shadow {
    max-height: calc(100vh - 220px);
    overflow-y: auto;
}
@media only screen and (max-width: 991px) {
    .nav-menu {
        height: calc(100vh - 76px);
        max-height: calc(100vh - 76px);
    }
    .shadow {
        max-height: calc(100vh - 240px);
    }
}
@media only screen and (max-width: 767px) {
    .nav-menu {
        height: calc(100vh - 60px);
        max-height: calc(100vh - 60px);
    }
    .servicebutton__dropup-list {
        max-width: calc(92vw - var(--scrollbar-width));
    }
    .shadow {
        max-height: calc(100vh - 225px);
    }
}
h1 {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
}
p {
    word-break: break-word;
}
.w-lightbox-backdrop{
    z-index: 9999;
}
/* ---------------- Breadcrumbs ---------------- */
.breadcrumb__link:after{
    padding-left: 10px;
    content:"/";
}
.breadcrumb__li--notarget:after{
    padding-left: 10px;
    content:"/";
}
/* ---------------- Laufschrift / Marquee ---------------- */
.marquee-content {
    animation: marquee 60s linear infinite;
    -webkit-animation: marquee 60s linear infinite;
}
.marquee:hover > .marquee-content{
    animation-play-state: paused;
}
@-webkit-keyframes marquee {
    0% {transform: translate(0%, 0);}
    100% {transform: translate(-100%, 0);}
}
@keyframes marquee {
    0% {transform: translate(0, 0);}
    100% {transform: translate(-100%, 0); }
}
/* ---------------- Tabellen ---------------- */
table.swd-table {
    border: none;
    width: 100%;
    text-align: left;
    border-collapse: collapse;
    margin-bottom: 15px;
}
table.swd-table tr {
    border-bottom: 1px solid #ddd;
}
table.swd-table td, table.swd-table th {
    border: 0px solid #FFFFFF;
    padding: 5px 5px;
}
table.swd-table tbody td {
}
table.swd-table thead {
    border-bottom: 4px solid #ddd;
}
table.swd-table thead th {
    font-weight: bold;
    text-align: left;
    color: #000;
    font-size: 1.1em;
}
table.swd-table-white thead th {
    font-weight: bold;
    text-align: left;
    color: #fff;
    font-size: 1.1em;
}
/* ---------------- Formulare ---------------- */
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select .option {
    color: #757575 !important;
}
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #757575 !important;
    opacity: 1; /* Firefox */
}
::-ms-input-placeholder { /* Microsoft Edge */
    color: #757575 !important;
}
/* ---------------- Mehrstufige Formulare ---------------- */
.form__slider-nav .w-slider-dot {
    font-family: inherit !important;
    color: #757575;
    font-size: 1.1em !important;
    line-height: 1em !important;
    margin-right: 2vw;
    margin-bottom: 1vw;
    margin-top: 1vw;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    background-color: #ffffff00 !important;
    border-radius: 0px !important;
}
.form__slider-nav .w-slider-dot:hover {
    color: #da0032 !important;
}
.form__slider-nav .w-slider-dot:active {
    color: #da0032 !important;
    border: solid 0px #fff !important;
    box-shadow: inset 0 -2px 0 0 #da0032 !important;
}
.form__slider-nav .w-slider-dot:after {
    content: ". Schritt";
}
.form__slider-nav .w-active{
    background-color: #ffffff00 !important;
    color: #da0032 !important;
    box-shadow: inset 0 -2px 0 0 #da0032 !important;
}
.form__slider-nav .w-slider-nav.w-round > div {
    border-radius: 0px !important;
}
.form__slider-nav .w-slider-nav.w-num>div {
    padding: 15px 0 !important;
}
/* ---------------- Breaking Suchergebnisse ---------------- */
.searchlink p {
    overflow-wrap: break-word;
}
.searchlink h4 {
    overflow-wrap: anywhere;
}
/* ---------------- Pagination ---------------- */
.paginationjs {
    display: flex;
    line-height: 1.6;
    font-family: inherit;
    font-size: 14px;
    box-sizing: initial;
}
.paginationjs:after {
    display: table;
    content: " ";
    clear: both;
}
.paginationjs .paginationjs-pages {
    float: left;
    margin-left: 10px;
}
.paginationjs .paginationjs-pages ul {
    float: left;
    margin: 0;
    padding: 0;
}
.paginationjs .paginationjs-go-button,
.paginationjs .paginationjs-go-input,
.paginationjs .paginationjs-size-changer {
    margin-left: 10px;
    float: left;
    font-size: 14px;
}
.paginationjs .paginationjs-pages li {
    margin-right: 10px;
    margin-bottom: 10px;
    float: left;
    border-radius: 50%;
    border: 1px solid #e7e7e7;
    list-style: none;
}
.paginationjs .paginationjs-pages li > a {
    width: 28px;
    height: 28px;
    line-height: 28px;
    border-radius: 50%;
    display: block;
    background: #fff;
    font-size: 14px;
    color: #6e6e6e;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
}
.paginationjs .paginationjs-pages li > a:hover {
    background: #da0032;
    color: #fff;
}
.paginationjs .paginationjs-pages li.active > a {
    height: 28px;
    line-height: 28px;
    background: #da0032;
    color: #fff;
    cursor: default;
}
.paginationjs .paginationjs-pages li.disabled > a {
    opacity: 0.5;
    cursor: default;
}
.paginationjs .paginationjs-pages li.disabled > a:hover {
    background: 0 0;
}
.paginationjs .paginationjs-pages li:first-child,
.paginationjs .paginationjs-pages li:first-child > a {
    border-radius: 50%;
}
.paginationjs .paginationjs-pages li:last-child {
    border-radius: 50%;
}
.paginationjs .paginationjs-pages li:last-child > a {
    border-radius: 50%;
}

.result-list span.hit {
    font-weight: bold;
}
