.swiper {
    /*max-height: 315px;*/
    width: 100%;
}

.swiper img {
    width: 100%;
    height: auto;
    display: block;
}

.swiper-button-next, .swiper-button-prev { background-color: rgba(255,255,255,0.95); padding: 10px; height: 30px; width: 40px; background-size: 30%;}
.swiper-button-next {right: 0;}
.swiper-button-prev {left: 0;}
.swiper-button-next:hover, .swiper-button-prev:hover {background-color: rgba(0,100,180,.8);}

.docsearch #menu-container {position: absolute;}
.docsearch #menu-container > ul {padding: 8px 8px 4px 8px;  position: relative;column-count: unset;}
.docsearch #menu-container > ul > li {height: auto !important; width: auto; display: block; padding-right: 0 !important;}

.docsearch #menu-container1 {position: absolute;}
.docsearch #menu-container1 > ul {padding: 8px 8px 4px 8px;  position: relative;column-count: unset;}
.docsearch #menu-container1 > ul > li {height: auto !important; width: auto; display: block; padding-right: 0 !important;}

#c98 label {
    padding-left: 10px;
}

#c98 button, #c100 button {
    background-color: rgb(0,100,180) !important;
}


/*FIX DISPLAY FLEX FORM CHROME BUG*/
.form-cols {display: flex; width: 100%;}

.tx-t3kvdownload form .form-cols label.halb { display: unset;  flex: 0 0 50%; max-width: 50%; position: relative;}

.tx-t3kvclient form .form-cols label.halb { display: unset;  flex: 0 0 50%; max-width: 50%; position: relative;}
.tx-t3kvclient form .form-cols label.zweidrittel {  display: unset;  flex: 0 0 66.66666%; position: relative; padding-right: 16px;}
.tx-t3kvclient form .form-cols label.drittel {  display: unset;  flex: 0 0 33.3333%; position: relative; padding-right: 0 !important;}

a[data-mailto-token] {
    hyphens: none !important;
}

/*FIX RELOAD BUG BEI ARZTSUCHE */
form.arztsuche fieldset#filter > a:nth-of-type(2)::before {transform: translateY(2px);}



/******************************
*
*       HEADER
*
*/
.headerinfo {
    /*background:  white;*/
}
.headerinfo a {
    color: white;
    background: rgb(200,0,0);
    width: 100%;
    display: inline-block;
    padding: 4px 25px 6px 25px;
}
.headerinfo a:hover {
   /*color: rgb(0,100,180);*/
    background: rgba(200,0,0, 0.8);
    border: none;
    cursor: pointer;
}
@media only screen and (max-width: 680px) {
    .headerinfo a {
        padding: 4px 8px 6px 8px;
    }
}

/******************************
*
*       TYPO3
*
*/


.ce-uploads div {
    overflow: visible;
}

/******************************
*
*       FELOGIN
*
*/
.tx-felogin-pi1 > form > fieldset > legend {
    display: none;
}

/******************************
*
*       KESEARCH
*
*/
#kesearch_results .result-list-item {
    margin: 20px 15px 30px 15px;
}


.contentpage .ordering,
#kesearch_num_results,
.contentpage .resetbutt {
    display: none;
}
.contentpage .kesearchbox input {
    border: 1px solid black !important;
}
.contentpage .submitbutt input {
    width: 150px !important;
}
.contentpage .submitbutt input::after {
    content:" Suche ";
    width: 100px;
    position: absolute;
}
.contentpage #kesearch_results .result-list-item .result-teaser {
    color: #333 !important;
}

/******************************
*
*       NEWS
*
*/
.news > .page-navigation > p {
    display: none;
}


/******************************
*
*       MEMBERS - DB
*
*/
.openmembers {
    cursor: pointer;
    color: rgb(0,100,180);
}

.openmembers-container {
    padding-top: 5px;
    display: none;
}


/******************************
*
*       MARKET - DB
*
*/

.tx-t3kvmarket2 {
    display: flex;
    flex-flow: row wrap;
}


.tx-t3kvmarket h1, .tx-t3kvmarket h2 {
    width: 100%;
}

.infotext {
    background-color: rgb(235,243,249);
    padding: 16px;
}


.tx-felogin-pi1 input, .tx-t3kvlogin input, .tx-femanager input, .tx-t3kvmarket input, .frame-type-form_formframework input, .frame-type-form_formframework textarea {
    border: 1px solid #999 !important;
}
.tx-femanager textarea, .tx-t3kvmarket textarea {
    border: 1px solid #999;
    width: 100%;
    height: 120px;
}

.tx-femanager label, .tx-t3kvmarket label {
    width: 100%;
    display: inline-block;
}


.news-single .teaser-text {
    color: inherit;
}




/******************************
*
*       FORMS
*
*/
#online-Formularbestellung #online-Formularbestellung-fieldset-3, #online-Formularbestellung #online-Formularbestellung-fieldset-3 , #online-Formularbestellung #online-Formularbestellung-fieldset-3 label {margin-bottom: 0;}
#online-Formularbestellung .actions button {margin-top: 30px;}

#feedbackVertragsseiten-7812 > label:nth-of-type(1) {margin-bottom: 10px; display: block;}
#feedbackVertragsseiten-7812 > label:nth-of-type(2) {margin-bottom: 30px; display: block;}
#feedbackVertragsseiten-7812 p[for='feedbackVertragsseiten-7812-status-sonstiges'],
#feedbackVertragsseiten-7812 #feedbackVertragsseiten-7812-status-sonstiges {display: none;}
#feedbackVertragsseiten-7812 h3 {    border: 0;	font-size: 1.25em;	line-height: 1.35em;	font-weight: bold;	color: rgb(0,100,180);	margin: 1em 0 .5em 0;	clear: both;}

form input[type="radio"] {margin-top: 2px; margin-right: 16px;}
form textarea {display: block;padding: 2px 8px 3px 8px;margin: 0 0 8px 0;-webkit-appearance: none;-moz-appearance: none;appearance: none;border-radius: 0;width: 100%;}

form .small {font-size: 14px;}


form .info {
    margin-top: 20px;
    border: 1px solid #dba102;
    background: #fff8d8;
    padding: 10px 15px;
}

form.arztsuche fieldset label:nth-of-type(1) { 
    color: rgb(42 123 187);
}

/* -- barrierefreie styles -- */

form.arztsuche {
    background-color: rgb(42 123 187);
}


article form.arztsuche select {
    color: rgb(42 123 187);
    background-color: #ffffff !important;
}

.tx-t3kvclient ::placeholder {
    color: rgb(42 123 187);
    opacity: 1;
}







/******************************
*
*       KARRIERE
*
*/
.dvinci-job-widget .grid .row .col-sm-5, .dvinci-job-widget .grid .row .col-sm-7  {
    width: 100%;
}
.dvinci-job-widget .well {
    background-color: inherit;
    border: none;
    box-shadow: none;
}

/******************************
*
*       TYPO3
*
*/

@media only screen and (max-width: 768px) {

    .ce-textpic .ce-bodytext {
        clear: both;
    }
}


/******************************
*
*       TABLE TAGUNGSZENTRUM
*
*/

.table-tz th:nth-child(1){
    width: 25%;
    min-width: 125px;
}



/******************************
*
*       TOPHEAD
*
*/

.tophead {
    background: #ffffff;
    padding: 50px;
    display: flex;
    justify-content: space-between;
}
.tophead-item {
    background: #efefef;
    padding: 20px 60px;
}
.tophead-item.search-item {
    padding: 0;
}
.tophead-item .searchlink {
    cursor: pointer;
    background: rgb(208, 228, 244);
    padding: 20px 60px;
    display: inline-block;
}


/******************************
*
*       SEARCHTEMPLATE
*
*/

.searchtemplate {
    background-color: #000;
}
.searchtemplate .brot {
    display: none;
}


.searchtemplate main {
    background: #000;
}
.searchtemplate h1, 
.searchtemplate h2,
.searchtemplate h3 {
    color: #fff;
}
.searchtemplate a {
    color: #ffffff;
}
.searchtemplate input {
    color: #ffffff !important;
    background: #666666 !important;
}
.searchtemplate input::placeholder {
    color: #ffffff;
}
.searchtemplate .kesearch_searchbox {
    display: flex;
    align-items: center;
    margin-bottom: 0 !important;
}
#lg-close-1{
    width: 50px;
    height: 50px;
}
.searchtemplate .resetbutt {
    display: none;
}
.searchtemplate .submitbutt input:hover{
    box-shadow: unset;
}
.searchtemplate #ke_search_sword {
    position: relative;
    padding: 15px 35px;
}
.searchtemplate .submitbutt input {
    margin-left: 10px !important;
    margin-top: 1px !important;
    min-width: 120px !important;
    padding: 16px 35px !important;
    background: #333 !important;
}
.searchtemplate .pages_total {
    background: none !important;
}

.searchtemplate ul.pagination li a {
    color: #fff;
    background: rgb(97 97 97) !important;
}


.searchselect {
    display: flex;
    padding-bottom: 50px;
}
.searchselect .select-item {
    background: #333 !important;
    padding: 15px 35px;
    margin-right: 15px;
    color: #fff;
}
.searchselect .select-item.active {
    background: #666666 !important;
}


.searchtemplate .tx-kesearch-pi1 #kesearch_results .result-list-item .hit {
    color: #ccdcff !important;
    font-weight: 300 !important;
}

.searchtemplate .tx-kesearch-pi1 #kesearch_results .result-title .hit {
    color: #ffffff !important;
}


body {
    background-color: unset;
    background-image: linear-gradient(to bottom, rgba(0,100,180,1) 0%, rgba(0,100,180,.8) 70%, rgba(59, 103, 197, 0.7) 100%);
}

header div.head {
    justify-content: space-between;
}
header div.head nav {
    margin-left: unset;
}
.tophead.search-item{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
header #open-website{
    position: relative;
    font-size: 18px;
    color: rgb(0,100,180);
    background-color: rgb(172 194 255 / 30%);
    border: 2px solid;
    border-color: rgba(0,100,180,0);
    border-radius: 20px;
    padding: 8px 20px 8px 50px;
    cursor: pointer;
}
header #open-website::before{
    position: absolute;
    content: '';
    background-image: url(../Img/icon_suche.svg);
    background-repeat: no-repeat;
    background-size: 25px 25px;
    top: 50%;
    left: 20px;
    transform: translateY(-50%) translateX(-5px);
    width: 25px;
    height: 25px;
}
header .searchlink_arztsuche{
    position: relative;
    font-size: 18px;
    color: rgb(0,100,180);
    border: 2px solid;
    border-color: rgba(0,100,180,.3);
    border-radius: 20px;
    padding: 8px 20px 8px 50px;
    cursor: pointer;
}
header .searchlink_arztsuche::before{
    position: absolute;
    content: '';
    background-image: url(../Img/icon_arztsuche.svg);
    background-repeat: no-repeat;
    background-size: 25px 25px;
    top: 50%;
    left: 20px;
    transform: translateY(-50%) translateX(-5px);
    width: 25px;
    height: 25px;
}

nav.main{
    background: rgba(0,37,106,0.8) !important;
}
nav.main li a{
    color: white;
}

.swiper{
    margin-top: -82px;
}

body.searchtemplate{
    height: 100dvh;
}



body.searchtemplate{
    background: transparent;
}
div.kesearchbox {
    margin: 0;
    height: 38px;
}
.tx-kesearch-pi1 .clearer {
    height: 0;
}
main.popupsearch{
    display: grid;
    grid-template-columns: 35% 65%;
    max-width: unset;
    padding: 0;
    background: unset;
    height: 100%;
}
main.popupsearch .content-left{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    background-color: rgba(0, 36, 114, .93);
    color: white;
    padding: 50px;
}
main.popupsearch .content-right{
    background-color: rgba(0, 104, 189, 0.93);
    color: white;    
    padding: 50px;
}
#kesearch_num_results {
    color: white;
    float: left;
}
#kesearch_results .result-list-item .result-teaser {
    color: #ccdcff;
}
#lg-toolbar-1{
    background: unset;
}
.lg-backdrop {
    background-color: transparent;
}
#lg-content-1{
    backdrop-filter: blur(10px);
}
#kesearch_ordering{
    height: 100%;
    margin-right: 75px;
}
.ordering{
    position: sticky;
    top: 30px;
}
.ordering ul li:first-of-type{
    text-transform: uppercase;
    font-size: 25px;
    margin-bottom: 40px;
    color: #a5bff0;
}



.searchtemplate #ke_search_sword {
    z-index: 2;
    position: relative;
    padding: 12px 25px 11px 25px;
    margin-top: -2px;
    border-radius: 100vmax;
    background: rgb(188, 205, 235) !important;
    color:rgb(20, 26, 99) !important;
    border: unset;
    box-shadow: unset;
    min-width: 500px;
}
.searchtemplate #ke_search_sword:focus-visible {
    border: unset !important;
    box-shadow: unset !important;
    border-inline-start-color: unset !important;
    border-inline-end-color: unset !important;
    outline: unset;
}
.searchtemplate #ke_search_sword::placeholder {
    color: rgb(20, 26, 99);
    opacity: 1      ;
}
.searchtemplate .submitbutt input {
    margin-left: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-width: unset !important;
    padding: 0 !important;
    background: transparent !important;
    background-image: url(../Img/icon_suche_white.svg) !important;
    background-repeat: no-repeat !important;
    background-size: 38px 38px !important;
    width: 38px !important;
    height: 38px !important;
}
.autocomplete-suggestions{
    z-index: 1;
    padding-top: 30px;
    padding-bottom: 10px;
    margin-top: -20px;
    color: rgb(3, 125, 224) !important;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    background: rgb(216, 224, 243) !important;
}
.autocomplete-suggestion{
    color: rgb(3, 125, 224) !important;
}


.searchtemplate .result-title a:after {
    display: none !important;
}

.searchtemplate .tx-kesearch-pi1 #kesearch_results .result-list-item .result-teaser {
    display: inline-block;
    padding-top: 8px;
}

.kesearch_searchbox{
    display: flex;
    align-items: center;
}
.tx-kesearch-pi1{
    max-width: 800px;
    padding-top: 25px;
}
.logo_search_overlay{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    margin-bottom: 100px;
}
.logo_search_overlay img{
    width: 100%;
    max-width: 80px;
}
.logo_search_overlay .logo_text{
    display: flex;
    flex-direction: column;
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid white;
    height: 100%;
    width: max-content;
}
.logo_search_overlay .logo_text span{
    font-size: 13px;
    line-height: 15px;
}
.logo_search_overlay .logo_text span:first-of-type{
    font-size: 35px;
    line-height: 38px;
}

.result-list-item{
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    padding-bottom: 15px !important;
}

#kesearch_num_results{
    margin: 0 15px 50px 15px;
    font-size: 25px;
}
.sortlink{
    position: relative;
    display: flex;
    align-items: center;
    font-size: 22px;
    margin-bottom: 20px;
    border: unset;
}
.sortlink a{
    border: unset;
    margin-left: 25px;
}
.sortlink span{
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    margin-right: 15px;
    left: 0;
}
.sortlink span.up{
    background-color: white;
    width: 13px;
    height: 13px;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.sortlink span.down{
    background-color: white;
    width: 13px;
    height: 13px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}
.teaser_icon{
    display: none;
}
.result-number{
    display: none;
}
.result-teaser{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    overflow-wrap: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    overflow: hidden;
    word-break: break-word;
    padding-right: 120px;
}

.searchtemplate .kesearch_pagebrowser {
    padding-top: 20px;
}

.searchtemplate ul.pagination li a {
    color: white;
    background: rgba(255, 255, 255, 0.3) !important;
    border-radius: 15px;
    line-height: 25px;
    width: 30px;
    height: 30px;
}
.searchtemplate ul.pagination li.active span {
    display: block;
    color: white;
    background: rgba(18, 51, 124, 1) !important;
    border-radius: 15px;
    line-height: 31px;
    width: 30px;
    height: 30px;
}

ul.pagination li a.next::after, ul.f3-widget-paginator li.next a::after {
    content: '';
}

.result_txt{
    color: white;
}

.searchtemplate .tx-kesearch-pi1 #kesearch_results .result-list-item .hit {
    /*color: rgb(0, 31, 57) !important;*/
}


.lg-toolbar .lg-icon {
    color: white;
    font-size: 40px;
    border: 2px solid white;
    border-radius: 100vmax;
    line-height: 10px;
}

#lg-close-1{
    position: absolute;
    top: 67px;
    right: 50px;
}

nav.main li a:hover {
    background-color: transparent;
}