@charset "UTF-8";
/*
*
*	Leading Medicine Guide 2020
*	Author: SECONDRED Newmedia GmbH
*	Web: http://www.secondred.de
*
*/
:root {
    /* -- Schriftgrößen -- */
    --font-size: 1rem;
    --line-height: 175%;
    --font-familiy: 'Inter', sans-serif;
    --headline-font-familiy: 'Inter', sans-serif;
    
    /* -- Farben -- */
    --body-color: #f7f4ef;
    --headline-color: #25262b;
    --text-color: #25262b;
    --link-color: #25262b;
    --primary-color: #269CAC;
    --secondary-color: #f9f9f9;
    --yellow-color: #e6a928;
    --error-color: red;
    
    --content-width: 1280px;
    --full-width: 100%;
    
    --dark-color: #565554;
    --light-blue: #e1ebed;
    /* -- Abstände -- */
    --elem-margin-bottom: 30px;
    /* Contentpart Padding */
    --cp-padding: 100px 30px;
    
    --color-yellow: #d3a237; /* #e5a927; */
    --color-grayorange: #e5dfd6;
    --color-goldbrown: #a97b21;
    --color-brown: #7d7a75;
    --color-lightcyan: #e1ebed;
    --color-darkcyan: #4c6063;
    --color-deepcyan: #4a5f60;
    --color-darkmint: #669999;
}
/* inter-300 - latin */
@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 300;
  src: local(''),
       url('../fonts/inter-light-beta-webfont.woff2') format('woff2'), 
       url('../fonts/inter-light-beta-webfont.woff') format('woff');
     font-display: swap;
}
/* inter-regular - latin */
@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 400;
  src: local(''),
       url('../fonts/inter-regular-webfont.woff2') format('woff2'), 
       url('../fonts/inter-regular-webfont.woff') format('woff'); 
     font-display: swap;
}
/* inter-500 - latin */
@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 500;
  src: local(''),
       url('../fonts/Inter-Medium.woff2') format('woff2'), 
       url('../fonts/Inter-Medium.woff') format('woff');
font-display: swap;
}
/* inter-600 - latin */
@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 600;
  src: local(''),
       url('../fonts/Inter-SemiBold.woff2') format('woff2');
  font-display: swap;
}
/* inter-700 - latin */
@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 700;
  src: local(''),
       url('../fonts/inter-bold-webfont.woff2') format('woff2'),
       url('../fonts/inter-bold-webfont.woff') format('woff'); 
     font-display: swap;
}
/* -- Icons -- */
@font-face {
  font-family: "leading";
  src:url("../fonts/leading.eot");
  src:url("../fonts/leading.eot?#iefix") format("embedded-opentype"),
    url("../fonts/leading.woff") format("woff"),
    url("../fonts/leading.ttf") format("truetype"),
    url("../fonts/leading.svg#leading") format("svg");
  font-weight: normal;
  font-style: normal;
    font-display: swap;
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "leading" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-print:before{content:'\0041';}
.icon-mail:before{content:'\0042';}
.icon-pinterest:before{content:'\0043';}
.icon-facebook:before{content:'\0044';}
.icon-lupe:before{content:'\0045';}
.icon-map:before{content:'\0046';}
.icon-grid:before{content:'\0047';}
.icon-arrow-lft:before{content:'\0048';}
.icon-arrow-rt:before{content:'\0049';}
.icon-vkontakte:before{content:'\004a';}
.icon-phone:before{content:'\004b';}
.icon-map-at:before{content:'\004c';}
.icon-map-ch:before{content:'\004d';}
.icon-cross:before{content:'\004e';}
.icon-blog:before{content:'\004f';}
.icon-youtube:before{content:'\0050';}
.icon-location:before{content:'\0051';}
.icon-removefilter:before{content:'\0052';}
.icon-screen:before{content:'\0053';}
.icon-arrow-down:before{content:'\0054';}
.icon-email:before{content:'\0055';}
.icon-telefon:before{content:'\0056';}
.icon-linkedin:before{content:'\0057';}
.icon-xing:before{content:'\0058';}
.icon-instagram:before{content:'\0059';}
.icon-youtube-logo:before{content:'\005a';}
.icon-twitter:before{content:'\0061';}
.icon-whatsapp:before{content:'\0062';}
.icon-share:before{content:'\0063';}
.icon-arrow-up:before{content:'\0064';}
.icon-telemedizin:before{content:'\0065';}
.icon-doc:before{content:'\0066';}
.icon-pin:before{content:'\0067';}
.icon-gallery:before{content:'\0068';}
.icon-lock:before{content:'\0069';}

.icon-email:before{content:'\006a';}
.icon-list:before{content:'\006b';}
.icon-newspaper:before{content:'\006c';}
.icon-telephone:before{content:'\006d';}
.icon-download:before{content:'\006e';}
.icon-scroll-top:before{content:'\006f';}
.icon-success:before{content:'\0070';}
/* -- Global Reset -- */
* { padding:0; margin:0}
*:focus { outline:none }
*, *::before, *::after {box-sizing: border-box}

html[dir="rtl"] {direction: rtl}
html {font-size: 100%;text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: 110px}
html, body  {  height:100%; width:100%;font-smooth: always;-webkit-font-smoothing: antialiased;-moz-font-smoothing: antialiased} 

p { margin-bottom:30px}
button,
input.formText, textarea { font-family: var(--font-familiy);-webkit-border-radius:0;border-radius:0;}
select {-webkit-appearance: none; -webkit-border-radius: 0px;border-radius:0;}
button { cursor:pointer;overflow: hidden; user-select: none}
textarea { resize:vertical; overflow:auto}

.animation_image { height:60px; width:100%; margin:-30px 0 30px}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {-webkit-appearance: button;cursor: pointer}

::-webkit-input-placeholder {color: #aaa;-webkit-transition: color .25s  ease}
:-moz-placeholder { color: #aaa;-moz-transition: color .25s  ease}
::-moz-placeholder { color: #aaa; -moz-transition: color .25s  ease}

:focus::-webkit-input-placeholder {color: #ccc}
:focus:-moz-placeholder { color: #ccc}
:focus::-moz-placeholder { color: #ccc; }

ul {padding-left:23px}
ol {padding-left:50px}

hr {margin: 20px 0;border: 0;height: 2px;background-color: #dcd9d0}

img {border: 0;-ms-interpolation-mode: bicubic}
canvas { -ms-touch-action: double-tap-zoom}
svg:not(:root) {overflow: hidden}

a,button, img, input, textarea  {
     transition: color .13s  ease, border-color .13s  ease, background-color .13s  ease, opacity .15s  ease, box-shadow .25s  ease;
}
.ht,
.sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);border: 0}

audio,canvas,progress,video {display: inline-block;vertical-align: baseline}
audio:not([controls]) { display: none; height: 0}
abbr[title], dfn[title] {border-bottom:1px dotted;cursor:help}

a { color:#d3a237; text-decoration:none}
a:active { background-color:transparent}
a:hover { text-decoration:underline; color: #966e14}

a.videoBox { display: block; position: relative; margin-bottom: 30px}
a.videoBox img,
img.responsive { width: 100% !important; height: auto !important}
table {border-collapse:collapse; border-spacing:0}

*::-webkit-selection {background-color: #666;color: white}
*::-moz-selection {background-color: #666; color: white}
*::selection { background-color: #666; color: white}

.mobi { display:none}
.mdBtn { position:relative}

.ink {display: block !important; position: absolute; background: rgba(4,32,89, .1);	border-radius: 100%;transform: scale(0);z-index:1}
.ink.animate {-webkit-animation: ripple 0.65s linear;animation: ripple 0.65s linear;}
@keyframes ripple {
	100% {opacity: 0; transform: scale(2.5)}
}
@-webkit-keyframes ripple {
	100% {opacity: 0; transform: scale(2.5)}
}

@keyframes menuSlideDown {
    from {
        opacity: 0;
        transform: translateY(-15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes menuSlideDown {
    from {
        opacity: 0;
        -webkit-transform: translateY(-15px);
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@keyframes arrowFadeIn {
    from {
        opacity: 0;
        transform: scaleY(0.8);
    }
    to {
        opacity: 1;
        transform: scaleY(1);
    }
}

noscript.msg {position: relative; z-index: 999;background-color:#C00; color:#fff; }
.msg div{ background-color:#C00; color:#fff; font-size:12px; padding:10px 20px;display:block;position: relative; z-index: 999}

/* -- -- */
body  {
    font-family: var(--font-familiy);
    font-size: var(--font-size);
    line-height: var(--line-height);
    color: var(--text-color);
}
body.experten-detail  {
    background: var(--body-color);
}
#printheader { display:none}
#backgrnd { position:absolute; left:0; top:0; right:0; width:100%; height:1150px; z-index:1;background-position:center top; background-size:cover}

#mainContent,
#footer .inner,
.size,
.content-width { max-width: var(--content-width);margin:0 auto; width: 100%}

a.link_seo_edit { 
    color:#666; position:absolute; top:0; left:20px; padding:5px 10px; border:1px solid #ddd; 
    background:#fff; background:rgba(255,255,255,.9); z-index:888; display:block; border-top:0
}

/* -- 100% Height Layout -- */
#container {position:relative; z-index:2; text-align: left;margin: 0 auto}

a.more {
    display:inline-block; font-size:13px; text-decoration:none; font-weight: 600; color:#333;
}

a.more:hover { text-decoration:underline}

a.more.small { display:inline-block; font-size:11px; text-decoration:none; font-weight:normal; line-height:normal; position:relative; padding-left:15px}

a.more.light { color:#fff !important; font-weight:normal; display:block}

.iframe-wrap {
    position: relative;padding-bottom: 56.25%;padding-top: 30px; height: 0; overflow: hidden; margin-bottom: 30px;
}

.iframe-wrap iframe{position: absolute;top: 0;left: 0;width: 100% !important;height: 100% !important; margin-bottom: 0}
a.cta-topics {
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    padding: 10px 20px;
    display: inline-block;
    border-radius: 30px;
    background: var(--light-blue);
    color: var(--color-deepcyan);
    transition: all ease 0.2s;
}
a.cta-topics::before {
        width: 10px; height: 10px; content:""; display: block; float: right; position: relative; top: 8px;
        border-right: 2px solid;border-top: 2px solid;border-color: var(--color-deepcyan);
        margin-left: 10px;transform: rotate(45deg);
    }
a.cta-topics:hover {
        background: #4f8b9d; color: #fff;
    }
a.cta-topics:hover::before {border-color: #fff}
a.cta-topics.large {
        display: block;max-width: 400px;margin: 0 auto;padding: 9px 20px;text-align: center;
        background: #4f8b9d; color: #fff;
    }
a.cta-topics.large::before { display: none}
a.cta-topics.large:hover {
        background: var(--light-blue); color: var(--color-deepcyan);
    }

/* Sticky CTA Bar */
.cta-sticky-bar {
    position: fixed; bottom: -80px; left: 0; right: 0;
    z-index: 900; padding: 10px 20px;
    background: #fff; box-shadow: 0 -2px 12px rgba(0,0,0,.15);
    text-align: center; transition: bottom 0.3s ease;
}
.cta-sticky-bar.is-visible { bottom: 0; }
.cta-sticky-bar a.cta-topics.large { max-width: 480px; margin: 0 auto; }
@media (max-width: 576px) { .cta-sticky-bar { display: none !important; } }

/* Sticky CTA Bar – Side slide-out tab (≥ 577px) */
@media (min-width: 577px) {
    .cta-sticky-bar {
        bottom: auto !important;
        top: 50%;
        left: auto;
        right: 0;
        /* Collapsed: only the 46px tab handle peeks out at the right edge */
        transform: translateY(-50%) translateX(calc(100% - 46px));
        display: flex;
        align-items: stretch;
        padding: 0;
        width: auto;
        border-radius: 8px 0 0 8px;
        overflow: hidden;
        background: transparent;
        box-shadow: -4px 2px 20px rgba(0,0,0,.22);
        text-align: left;
        /* Hidden until JS adds .is-visible after scroll */
        opacity: 0;
        visibility: hidden;
        transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1),
                    opacity 0.3s ease,
                    visibility 0.3s ease;
        cursor: pointer;
    }
    .cta-sticky-bar.is-visible {
        bottom: auto !important;
        opacity: 1;
        visibility: visible;
    }
    .cta-sticky-bar:hover {
        transform: translateY(-50%) translateX(0);
    }
    /* Always-visible tab handle */
    .cta-sticky-bar::before {
        content: var(--cta-tab-label, 'Spezialisten');
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        display: flex;
        align-items: center;
        justify-content: center;
        width: 46px;
        min-height: 140px;
        flex-shrink: 0;
        background: #4f8b9d;
        color: #fff;
        font-size: 14px;
        font-weight: 600;
    }
    /* Slide-out link */
    .cta-sticky-bar a.cta-topics.large {
        display: flex !important;
        align-items: center;
        max-width: none;
        margin: 0;
        padding: 0 28px 0 22px;
        white-space: nowrap;
        border-radius: 0;
        font-size: 14px;
        background: var(--color-deepcyan);
        color: #fff;
        min-height: 56px;
        border-left: 1px solid rgba(255,255,255,.15);
    }
    .cta-sticky-bar a.cta-topics.large:hover { background: #3d5e60; color: #fff; }
    .cta-sticky-bar a.cta-topics.large::before { display: none !important; }
}



/* -- Layout -- */
.size { margin: 0 auto;padding:0 0}

#hamburger { 
    position: absolute; right: 20px; top: 60px;
    border: 0; background: transparent; cursor: pointer;
    transition: top 300ms ease;
}

#hamburger .burger {
        width: 30px;height: 30px;float:left; margin-right:10px;
        border-radius: 2px; position:relative;
        -webkit-transform-style: preserve-3d;
    }

:is(#hamburger .burger) em {
            width: 30px; height: 3px; background: var(--text-color); display:block; position:absolute; left:50%; margin-left:-11px; top:50%; margin-top:-1px;
            transition: transform 350ms cubic-bezier(.2, 1, .3, 1), margin 350ms cubic-bezier(.2, 1, .3, 1);
            -webkit-perspective: 1000;-webkit-backface-visibility: hidden;-webkit-transform-style: preserve-3d;
        }

.top:is(:is(#hamburger .burger) em) { margin-top:-8px}

.bottom:is(:is(#hamburger .burger) em) {margin-top:6px}

#hamburger .text { display: none}

.top:is(:is(#hamburger.open .burger) em) {margin-top:-1px;transform: rotate(45deg)}

.middle:is(:is(#hamburger.open .burger) em) {transform: scale(0,1)}

.bottom:is(:is(#hamburger.open .burger) em) {margin-top:-1px; transform: rotate(-45deg)}
@media screen and (max-width: 820px){
    #hamburger { top: 60px}
}

/* -- Header -- */
#header { 
    height:110px; z-index:888; background: var(--body-color); position: sticky; top: 0;
    transition: transform 350ms cubic-bezier(0.4, 0, 0.2, 1), background 350ms cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter 350ms cubic-bezier(0.4, 0, 0.2, 1);padding: 0 20px;
}
#header .inner{ position: relative}
#header .topbar {
        position: absolute; right: 0; top: 0; left: 385px;
        display: flex;flex-direction: row;
        justify-content: flex-end;
        /* border-bottom: 1px solid #fff; */
        transition: transform 350ms cubic-bezier(0.2, 1, 0.3, 1);
        width: 100%;
        left:0px;
        background: transparent;
        padding-right: 20px;
        border-bottom: 1px solid #4a5f6026;
    }
#header .login-btn {
        color:#25262b; display: block;
        padding: 0px 10px; font-size: 12px; font-weight: 500;display: flex;
        align-items: center;
    } 
#logo {
    position:absolute; top:38px; left:0;
    transition: transform 350ms cubic-bezier(0.4, 0, 0.2, 1);
} 
#logo a { background:url(https://www.leading-medicine-guide.com/gfx/logo-lmg-no-claim.webp.pagespeed.ce.Is-jFtgqin.webp) no-repeat; background-size: contain; display:block; width:368px;height: 62px; transform-origin: left center; transition: transform 350ms cubic-bezier(0.4, 0, 0.2, 1);}

@media screen and (max-width: 820px){
    #logo {
        z-index:4; top:55px; left: 20px;
    }
        #logo a { width:198px; height:46px; background-size:contain; background-repeat:no-repeat}
}
@media screen and (max-width: 820px){
    #header .topbar { justify-content: space-between;}
}

.fixedheader #header .topbar { transform: translate(0, -100%) }
.fixedheader #header { background: rgba(245, 240, 232, 0.96); backdrop-filter: blur(8px); }
.header-hidden #header { transform: translate(0, -110%) !important; }

@media screen and (min-width: 821px){
    /* transform statt height: kein Layout-Shift, kein Ruckler beim Zurückscrollen */
    /* Header bleibt 110px im Flow, translateY(-40px) versteckt die Topbar (40px) oberhalb des Viewports */
    .fixedheader #header { transform: translateY(-40px); }
    /* Kompensation: alle absolut positionierten Kinder verschieben sich mit dem Header-Transform um -40px */
    /* mainmenu: war top:58px normal / top:22px fixedheader → neu: 22px + 40px = 62px */
    .fixedheader #mainmenu { top: 62px; }
    /* logo: war top:38px + translateY(-31px) = visuell 7px → neu: 38-40+offset = 7 → offset = +9px */
    .fixedheader #logo { transform: translateY(9px); }
    .fixedheader #logo a { transform: scale(0.707); }
    .fixedheader #mainmenu li.expandable > ul { top: 100%; }
}

@media screen and (max-width: 820px){
    .fixedheader #header { transform: translate(0, -38px) }
}
/* -- Navigation -- */
.inline ul {
        margin:0; padding:0;
    }
:is(.inline ul) li{ float:left; margin:0; padding:0; list-style:none}

/* -- Hauptnavi -- */
#mainmenu { 
    position: absolute; top:58px; right:0; z-index:10; font-family: var(--font-familiy);
    transition: top 350ms cubic-bezier(0.4, 0, 0.2, 1);
}
:is(#mainmenu ul) li {
            position:relative; padding-right: 0.4rem;  padding-left: 0.4rem; font-size: 14px;
        }
.expandable:is(:is(#mainmenu ul) li) {
                position:relative;
            }
.expandable:is(:is(#mainmenu ul) li) a{ position:relative}
/* Unsichtbare Hover-Brücke: überbrückt den Gap zwischen li-Bottom und Dropdown-Top */
.expandable:is(:is(#mainmenu ul) li)::after {
                    content: ''; position: absolute;
                    top: 100%; left: -20px; right: -20px;
                    height: 40px;
                    background: transparent;
                    pointer-events: auto;
                }
.expandable:is(:is(#mainmenu ul) li)  > a ins {
                    display: inline-block;
                    width: 0; height: 0;
                    border-left: 4px solid transparent;
                    border-right: 4px solid transparent;
                    border-top: 4px solid currentColor;
                    text-decoration: none;
                    opacity: 0.45;
                    vertical-align: middle;
                    margin-right: 3px;
                    flex-shrink: 0;
                    transition: transform 200ms ease, opacity 200ms ease;
                }
.expandable:is(:is(#mainmenu ul) li):hover > a ins {
                    transform: rotate(180deg);
                    opacity: 0.8;
                }
.expandable:is(:is(#mainmenu ul) li)  > ul {
                    visibility: hidden; pointer-events: none;
                    position:absolute; z-index: 8000;
                    left: 50%; top: 100%; width: max-content;
                    transform: translateX(-50%) translateY(-8px);
                    background-color: rgba(245,240,232,0.98); backdrop-filter: blur(10px);
                    border-top: 2px solid var(--color-yellow); border-bottom: 1px solid #dcd9d0;
                    box-shadow: 0 8px 32px rgba(0,0,0,0.08);
                    padding: 1.5rem 2rem;
                    opacity: 0;
                    transition: opacity 220ms ease, transform 220ms ease, visibility 0ms linear 220ms;
                }
.expandable:is(:is(#mainmenu ul) li) li { display: block;}
/* > a::after{
                        content: '';position: absolute;bottom: 0;display: block;
                        left: 50%;margin: 0 0 0 -12px;width: 0;height: 0;
                        border-left: 12px solid transparent;border-right: 12px solid transparent;
                        border-bottom: 8px solid rgba(242,239,232,1);
                        opacity: 0;
                        animation: arrowFadeIn 350ms cubic-bezier(0.2, 1, 0.3, 1) 50ms forwards;
                    } */
.expandable:is(:is(#mainmenu ul) li):hover > ul { 
                        visibility: visible; pointer-events: auto;
                        opacity: 1; 
                        transform: translateX(-50%) translateY(0);
                        border-radius: 5px;
                        transition: opacity 220ms ease, transform 220ms cubic-bezier(0.2, 1, 0.3, 1), visibility 0ms linear 0ms;
                    }
@media (max-width: 1280px) {
    #mainmenu > ul > li.expandable:first-child > ul {
        transform: translateX(-40%) translateY(-8px);
    }
    #mainmenu > ul > li.expandable:first-child:hover > ul {
        transform: translateX(-40%) translateY(0);
    }
}
:is(:is(:is(#mainmenu ul) li) ul) li.cats {
                    width: 100%;
                }
:is(:is(:is(:is(#mainmenu ul) li) ul) li.cats) strong { 
                        display:block; font-weight:600; color:var(--headline-color); 
                        font-size:12px; text-transform: uppercase; letter-spacing: 0.5px;
                        border-bottom: 1px solid rgb(200 169 110); padding-bottom: 0.6rem;
                        width: 100%; margin-bottom: 31px;
                    }
:is(:is(:is(:is(#mainmenu ul) li) ul) li.cats) li { 
                        margin-bottom: 0.6rem;
                    }
:is(:is(:is(:is(:is(#mainmenu ul) li) ul) li.cats) li) a {
                            color: var(--link-color); display: block; line-height: 1.4; font-size: 14px;
                            transition: color 200ms ease, transform 200ms ease;
                        }
:is(:is(:is(:is(:is(:is(#mainmenu ul) li) ul) li.cats) li) a):hover {color:#a97b22; text-decoration: none; transform: translateX(4px);}
:is(#mainmenu > ul > li)  > a{
                padding: 0px 7px 0px 7px;
                font-size: 1rem; text-decoration:none; display:block;
                color:var(--headline-color); line-height: 28px; font-weight: 500;
            }
:is(:is(#mainmenu > ul > li) > a):hover {background: #fdfbf7; border-radius: 5px; }
.active:is(#mainmenu > ul > li) > a {
                background: #fdfbf7; border-radius: 5px;
            }
:is(:is(#mainmenu > ul > li) > ul) .wrap {
                    display: flex; gap: 0; flex-wrap: wrap;
                }
:is(:is(#mainmenu > ul > li) > ul) ul.lft {
                    display: block; flex: 0 0 auto; min-width: 200px;
                    padding: 0 1.5rem;
                    border-right: 1px solid rgba(0,0,0,0.08);
                }
:is(:is(:is(#mainmenu > ul > li) > ul) ul.lft):first-child { padding-left: 0; }
:is(:is(:is(#mainmenu > ul > li) > ul) ul.lft):last-child { border-right: none; }
:is(:is(:is(#mainmenu > ul > li) > ul) ul.lft) li { display: block; float: none; }
/* -- Breadcrumb -- */
#breadcrumb {
    font-size: .9rem;line-height: 1.1;color:#a97b22; padding:30px 20px 0; font-weight: 500;background: #fff;
}
/* #mainContent {
    padding: 20px;
} */
:is(:is(#breadcrumb ul) li) a{
                text-decoration:none; color:var(--link-color);padding: 0 .4rem 0 0;
            }
:is(:is(:is(#breadcrumb ul) li) a):hover{ color:#a97b22}
:is(:is(#breadcrumb ul) li)::before{
                content:""; float:right; margin:0 10px 0 5px; display:block; position: relative; top: 4px;
                width: 7px; height: 7px;border-right: 2px solid var(--link-color);border-top: 2px solid var(--link-color);
                transform: rotate(45deg);
            }
:is(:is(#breadcrumb ul) li):last-child::before { display:none}
:is(#breadcrumb ul)::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;height: 0}

/* -- Social Media Bar-- */
#socialBar {
    border:1px solid #eee; border-right:0; position:fixed; right:0; z-index:999; top:40px;
}
#socialBar  > ul {
        background:#fcfcfa;padding:10px 0;
    }
:is(#socialBar > ul)  > li{
            margin-bottom:10px; padding:0 10px;
        }
:is(:is(#socialBar > ul) > li):last-child { margin-bottom:0}
:is(:is(#socialBar > ul) > li)  > a{
                width:24px; height:24px; line-height:27px; text-align:center; background:#ccc;
                border-radius:50%; display:block; color:#fff;
            }
:is(:is(:is(#socialBar > ul) > li) > a) span{ display:none}
:is(:is(:is(#socialBar > ul) > li) > a):hover { text-decoration:none}
#socialBar ul {
        padding:0; list-style:none; position:relative;
    }
.sub:is(#socialBar ul) {
            position:absolute; border:1px solid #eee; background:#f2efe8; width:158px;right: 44px;top: -1px; bottom: -1px; padding:15px; z-index:-1;
            transition: transform 250ms ease-out, opacity 250ms ease-out;transform: translate(100%, 0);
        }
.sub:is(#socialBar ul) a { color:#333; padding-left:15px; display:block; font-size:11px; background:url(../gfx/orange-arrow-rt-sm.png) left center no-repeat}
#socialBar li:hover ul.sub {transform: translate(0, 0)}
.icon-logout:is(#socialBar a):hover{ background:red}
.icon-login:is(#socialBar a):hover{ background:#fab301}
.icon-print:is(#socialBar a):hover{ background:#fab301}
.icon-mail:is(#socialBar a):hover{background:#fab301}
.icon-facebook:is(#socialBar a):hover{background:#3b5998}
.icon-gplus:is(#socialBar a):hover{background:#d34836}
.icon-vkontakte:is(#socialBar a):hover{background:#5473a5}
.icon-youtube:is(#socialBar a):hover{background:#b31217}
/* -- -- */
.heading-box { padding-top:15px}

.suggestsearch-wrap {
    margin-top: 40px;position: relative;
}

.suggestsearch-wrap fieldset.quickFinder{ position: relative;left: auto; right: auto}

.suggestsearch-wrap .suggestsearch-inner {position: relative; min-height: 16px}
#mainContent .suggestsearch-wrap { margin-top: 0; margin-bottom: 40px}

h1,
h2{
    font-size: 2rem;padding: 1.15rem 0 1.65rem 0;
    line-height: 120%;font-weight: 500;margin: 0;
}
h1, h2, h3, h4 {color: var(--headline-color); font-weight: normal; line-height: 120%}
h1 {font-size: 2.188rem; font-weight: 600;}
h2 {font-size: 1.5rem; font-weight: 600;}
h3 {font-size: 1.375rem; margin-bottom: 37px;padding-top: 17px; font-weight: 600;}
h4 {font-size: 1.25rem; margin-bottom: 34px; font-weight: 600;}

.flexgrid {
    display: flex;flex-direction: row;flex-wrap: wrap;
}

.flexgrid  > .box-16 {width: 16.666666%}

.flexgrid  > .box-20 {width: 20%}

.flexgrid  > .box-25 {width: 25%}

.flexgrid  > .box-33 {width: 33.333333%}

.flexgrid  > .box-33:nth-child(3n-2) {padding-right: 16px}

.flexgrid  > .box-33:nth-child(3n-1) {padding-left: 8px; padding-right: 8px}

.flexgrid  > .box-33:nth-child(3n-0) {padding-left: 16px}

.flexgrid  > .box-36 {width: 36.25%}

.flexgrid  > .box-40 {width: 40%}

.flexgrid  > .box-45 {width: 45%}

.flexgrid  > .box-50 {width: 50%}

.flexgrid  > .box-50:nth-child(odd) {padding-right: 24px}

.flexgrid  > .box-50:nth-child(even) {padding-left: 24px}

.flexgrid  > .box-55 {width: 55%}

.flexgrid  > .box-60 {width: 60%}

.flexgrid  > .box-63 {width: 63.75%}

.flexgrid  > .box-66 {width: 66.666666%}

.flexgrid  > .box-75 {width: 75%}

.flexgrid  > .box-80 {width: 80%}
.catgrid { margin-bottom: 50px}
.news-grid { margin-bottom: 24px}

/* -- Contentpart Detault -- */
.content-part {
    background: #fff;padding-bottom: 1px;
}
.content-part img {max-width: 100%; height: auto !important}
.content-part p {line-height: 150%}
.content-part  > .content {
        padding: 30px 20px;
    }
:is(.content-part > .content) h2:last-child {padding: 0; margin-bottom: -30px}
.content-part  > .row {
        padding: 30px 0 30px 20px;display: flex;
        flex-direction: row;flex-wrap: nowrap;
        justify-content: flex-start; align-content: stretch;
    }

.contact-footer .content { padding: 0px; }

:is(.content-part > .row) .content { width: 66.666%}
:is(.content-part > .row) .sidebar { width: 33.333%; padding-left: 72px}

.cat-overview .content-part > .row .content,
.not-full .content-part > .row .content { width: 70%}

.cat-overview .content-part > .row .sidebar,
.not-full .content-part > .row .sidebar { width: 33%; padding-left: 30px}

.not-full .content-part > .row .sidebar aside{ position: sticky; top: 110px}
.fixedheader .not-full .content-part > .row .sidebar aside { top: 70px }

.experten-detail .share-bar,
.experten-detail .filled-area {padding: 0px; border-radius: 5px 5px 0px 0px}

@media screen and (max-width: 820px){
    .experten-detail .share-bar,
    .experten-detail .filled-area {padding: 30px}
}
@media screen and (max-width: 763px){
    .experten-detail .share-bar,
    .experten-detail .filled-area {padding: 20px}
}
/* -- Teaser -- */
@keyframes teaser-img-in {
    from { opacity: 0; transform: scale(1.04); }
    to   { opacity: 1; transform: scale(1); }
}
@keyframes teaser-h1-in {
    from { opacity: 0; transform: translateY(22px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes teaser-cta-in {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
.teaser {
    background: var(--body-color); padding-bottom: 0;
}
.teaser .size,.teaser  > .content { background: transparent}
.teaser h1{font-size:2.688rem; font-weight: 600;}
.teaser  > .content { position: relative;padding: 0 0 28px}
.teaser figure {
        position: relative;
    }
:is(.teaser figure) img {
    position: relative; z-index: 1; display: block; border-radius: 10px;
    animation: teaser-img-in .9s cubic-bezier(.22,.61,.36,1) both;
}
:is(.teaser figure) figcaption{position: absolute; left: 20px; bottom: 90px; z-index: 2}
:is(.teaser figure) figcaption h1 {
    animation: teaser-h1-in .75s cubic-bezier(.22,.61,.36,1) .35s both;
}
:is(.teaser figure) figcaption .cta-wrap {
    animation: teaser-cta-in .6s cubic-bezier(.22,.61,.36,1) .65s both;
}
body.diagnostic-detail.not-full .content-part > .row .content {
    width: 100%;
}
body.diagnostic-detail .mainContent .sidebar {
    display: none;
}
.teaser a.cta-btn {
        background: #c8a96e;
        color: #0f1117;
        border-radius: 999px;
        padding: 10px 28px;
        font-size: 16px;
        font-weight: 600;
        text-decoration: none;
        transition: background .2s, transform .2s;
        display: inline-block;
    }
:is(.teaser a.cta-btn)::after {
            content:""; width: 10px; height: 10px; display: inline-block;
            border-right: 2px solid #0f1117;border-top: 2px solid #0f1117; position: relative; right:-10px;
            transform: rotate(45deg);
        }
:is(.teaser a.cta-btn):hover { background: #d4ba84; transform: translateY(-1px);}
:is(.teaser a.cta-btn):focus-visible { outline: 3px solid #283d32; outline-offset: 3px; }
.teaser.small-teaser {
        background: #fff;
    }
.teaser.small-teaser h1 { padding-bottom: 0; font-size: 2.688rem}
.teaser.small-teaser  > .content {padding: 0 0 28px}
/* -- Teaser nur mit Text -- */
.teaser.text-teaser h1 { width: 66.666666%; font-weight: normal; max-width: none}
.teaser.text-teaser  > .content { padding: 0 125px}
@media screen and (max-width: 1290px){
    .teaser h1 {
        font-size: 3.333vw;
    }
}
@media screen and (max-width: 820px){
    .teaser h1 {
        font-size: 3.333vw;
    }
}
@media screen and (max-width: 680px){
    .teaser h1 {
        font-size: 3vw;
        padding-bottom: 10px;
    }
}
.mobile-headline .content {padding-top: 30px; padding-bottom: 15px}
.mobile-headline strong,.mobile-headline h1 {font-weight: 600; max-width: none; padding: 0; margin: 0; width: 100%;}
/* -- Contact Footer -- */
.contact-footer {
    background: var(--secondary-color);
    max-width: var(--full-width);
}
.contact-footer  > .content {font-size: 1.05rem;line-height: 125%;color: #495f60}
.contact-footer img{ margin-bottom: 1.8rem; max-width: 100%; height:  auto !important}
.contact-footer h4 { text-transform: uppercase; padding-bottom: 2rem}
.contact-footer address{ font-style: normal}
.contact-footer a {color: #478dc4}
:is(.contact-footer .cert-box)  > a{float: left}
:is(.contact-footer .cert-box) .cert-desc { margin-left: 120px}

/* -- Inhalt -- */
.sticky h2 { margin-bottom: 70px; padding-top: 1rem}

:is(.front .sticky) h2 {padding-bottom: 0; margin-bottom: 26px}

:is(.front .sticky) p { margin-bottom: 63px}

:is(.front .sticky) fieldset.quickFinder { margin-bottom: -45px}

body.front fieldset.quickFinder { 
        margin-bottom: -45px !important;
    }

fieldset.quickFinder { 
    background: #ffffffd1;
    padding: 15px;
    border-radius: 100px;
    backdrop-filter: blur(10px);
}

.icd-code {
    color: #71a1af;
    font-size: 100%;
    line-height: 1;
    margin-bottom: 20px;
    margin-top: 10px;
    background: #f7f4ef;
    padding: 10px 30px;
    font-weight: 600;
    border-radius: 5px;
}
.icd-map-link {
    background: #e0ebed;display: flex;flex-direction: row;
    flex-wrap: nowrap;justify-content: space-between;align-content: flex-start;
    align-items: stretch; padding: 5px 30px; margin-bottom: 38px; margin-top: -20px;
}
.icd-map-link a {
        color: #fff; text-decoration: none; font-weight: 600; background: #6fa1b0;
        padding: 5px 20px;margin: -5px -30px -5px 20px; white-space: nowrap;
        display: flex;flex-direction: row;flex-wrap: wrap;
        justify-content: flex-start;align-content: center;align-items: flex-start;
    }
:is(.icd-map-link a):hover {background: var(--yellow-color)}
.mainContent {
    background: #fff;
}
.mainContent h1,.mainContent h3 { margin-bottom:24px; font-weight: 600; }
.mainContent p {line-height: 150%}
.mainContent  > ul {
        font-size: 1.2rem; line-height: 150%; margin-bottom: 26px;
    }
:is(.mainContent > ul):last-child {margin-bottom: 0}
:is(.mainContent > ul) li{ margin-bottom: 4px}
.page-full .mainContent { margin: 0; overflow:visible}

.share-bar {
    clear: both; padding: 30px 125px; background: #fff;
    display: flex; flex-direction: row; gap: 4px;
}

.share-bar a,.share-bar button {
        color: #fff; display: block; flex:1; text-align: center;
        border-radius: 3px;padding: 5px 0 3px; margin: 0 2px; height: 36px;
        cursor: pointer; border:0;
    }

.icon-whatsapp:is(.share-bar a,.share-bar button) { background: #25D366; display: none}

.icon-twitter:is(.share-bar a,.share-bar button) { background: #0084b4}

.icon-mail:is(.share-bar a,.share-bar button) { background: #6acdea}

.icon-facebook:is(.share-bar a,.share-bar button) { background: #3b5998}

.icon-youtube:is(.share-bar a,.share-bar button) { background: #b31217}

.icon-vkontakte:is(.share-bar a,.share-bar button) { background: #5473a5}

.icon-print:is(.share-bar a,.share-bar button) { background: #fab301}

.icon-instagram:is(.share-bar a,.share-bar button) { background: #8a3ab9}

:is(.share-bar a,.share-bar button):hover {text-decoration: none;box-shadow: 0 -150px 0 0 rgba(0,0,0,0.2) inset;}
.mobile-device .share-bar a {width: calc(14.28% - 4px)}
.mobile-device .share-bar a.icon-whatsapp { display: block}

.not-full .share-bar,
.cat-overview .share-bar{ padding: 30px 33.333% 30px 125px;}

.cta-finddoc-wrapper {
    background: #fff; padding: 10px 0 10px 10px;
    position: sticky; left: 0; right: 0; top: 0;
    z-index: 9999; display: none; transform: translate(0, -100%);
	transition: transform 350ms cubic-bezier(.2, 1, .3, 1), opacity 350ms cubic-bezier(.2, 1, .3, 1);

}

.cta-finddoc-wrapper a.btn-finddoc {
        color: #fff;padding-left: 25px; display: block; margin-right: -30px; margin-bottom: 25px; position: relative;
    }

:is(.cta-finddoc-wrapper a.btn-finddoc) small {
            position: absolute; color: var(--headline-color);
            top: -30px;left: 100px; font-size: 1rem; font-weight: 600;
        }

:is(.cta-finddoc-wrapper a.btn-finddoc) i {
            width: 58px; height: 58px; line-height: 78px; text-align: center; text-indent: 1px;
            border-radius: 50%; box-shadow: 0 0 0 5px #fff, 0 0 0 14px #e6a82a;
            display: block;float: left;  font-size: 50px;  background: #a5c4cd;
            background: radial-gradient(ellipse at center, #a5c4cd 0%,#528c9a 100%);
            position: relative; z-index: 2;
        }

:is(.cta-finddoc-wrapper a.btn-finddoc) span {
            display: block;background: #e6a82a;margin: 20px 0;
            margin-left: 45px;padding:10px 30px 10px 30px;
            font-weight: 600;font-size: 16px;line-height: 120%;
            position: relative;word-break: normal;min-height: 50px;
        }

:is(:is(.cta-finddoc-wrapper a.btn-finddoc) span)::before {
                width: 14px; height: 14px;content:"";display: block; position: absolute; right: 20px;
                top:50%; margin-top: -7px;
                border-right: 3px solid #fff;border-top: 3px solid #fff;
                transform: rotate(45deg);
            }

:is(.cta-finddoc-wrapper a.btn-finddoc):hover {
            text-decoration: none;
        }

:is(.cta-finddoc-wrapper a.btn-finddoc):hover i {box-shadow: 0 0 0 10px #fff, 0 0 0 25px #4f8b9d;}

:is(.cta-finddoc-wrapper a.btn-finddoc):hover span { background: #4f8b9d}

/* -- Klinikdetail -- */
.author-info {
    margin-bottom: 30px;
}
.author-info .author {
        margin-bottom: 20px;font-size: 1.2rem;line-height: 150%;
    }
:is(.author-info .author):last-child { margin-bottom: 0}
:is(.author-info .author) .img {
            float: left; overflow: hidden;border-radius: 50%;
        }
:is(:is(.author-info .author) .img) img{ display: block}
:is(.author-info .author) .desc {
            margin-left: 100px; padding-top: 15px;
        }
:is(:is(.author-info .author) .desc) .name strong { font-weight: 400}
.mainContent .date {font-size: 1.2rem;line-height: 150%; padding-bottom: 15px}
.content-meta .date:last-child{ float: none !important; padding-top: 0; margin-bottom: 20px}

/* -- Klinikdetail Karte-- */
#location {
    overflow:hidden;
}
#location address { font-style:normal; margin-bottom:20px}
#location .size{ position:relative; z-index:2}
#location .circle{
        width:423px; height:423px; background:#fff; background:rgba(255,255,255, .85); position:absolute; top:0;right:0;
        border-radius:50%; margin-top:-130px;padding:180px 72px 0
    }
#location .map { height:400px; position:relative; z-index:1}

/* -- Ärzte -- */
.doctors{
    padding:0; margin:0;list-style:none;width:225px;
}
.doctors li{
        border-bottom:1px solid #ddd;overflow:hidden;margin:-1px 0 0;vertical-align:middle; padding-left:0;
    }
:is(.doctors li):first-child{margin:0}
:is(.doctors li)::before {display:none }
.doctors li,.doctors li:hover {transition: border-color .13s  ease-in-out, background-color .13s  ease-in-out}
.doctors a{
        color:#333;display:block;padding:6px 0 5px;overflow:hidden;
    }
.mobi:is(.doctors a) { display:none}
:is(.doctors a)::before {top:8px}
:is(.doctors a):hover{cursor:pointer;	text-decoration:none}
.medredaktion:is(.doctors a){	background:url(../images/bullet03.png) no-repeat 210px 50%}
.doctors span.photo{	float:left;	margin:3px 9px 0 0;	width:40px; height:51px;overflow: hidden}
.doctors span.about{float:left;width:160px;padding:0 16px 0 0}
.doctors em{display:block;font-size:11px;font-style:normal;line-height:14px}
:is(.doctors .text) span{
            display:block;font-weight:normal;line-height:15px; overflow:hidden;padding-bottom:4px;
        }
.flag:is(:is(.doctors .text) span) {
                display:inline; position:relative; left:0; top:0; margin-left: 5px; width: 25px;
            }
.flag:is(:is(.doctors .text) span) img { width:16px; box-shadow:0 1px 1px rgba(0,0,0,0.1)}
.doctors .location {
        font-size: 85%; font-style: normal; margin-bottom: 20px; font-weight: 500;
        display: flex; flex-direction: row; flex-wrap: nowrap;
        justify-content: flex-start; align-content: stretch;
    }
:is(.doctors .location) small { font-size: 11px; margin-left: 5px; position: relative; top: -1px; white-space: nowrap; margin-top: auto}
:is(.doctors .location) i {
            width: 26px;height: 26px;line-height: 30px;color: #fff;
            text-align: center;font-size: 16px;background: #a97b22;
            display: block;float: left;margin-right: 10px;
            border-radius: 50%;
        }
:is(.doctors .location) span {padding: 5px 0; flex: 1 1 auto}

/* -- Klinikdetail - 2019 - Arztkarte -- */
.doc-card { position: relative; z-index: 1; margin-bottom: 50px}

.doc-card .lmgctp,
.sticky-doc .btn--orange,
.sticky-doc .lmgctp,
.doc-card .btn--blue,
.doc-card .btn--orange,
.clinic-card .btn--blue,
.clinic-card .btn--orange{
    border: 0; border-radius: 30px;padding: 11px 30px;
    font-size: 18px; font-weight: 600; color: #fff;
	display: inline-block;
}
.doc-card .btn--orange,
.doc-card .lmgctp { width: max-content;}

.sticky-doc .lmgctp,
.sticky-doc .btn--orange,
.doc-card .btn--blue,
.doc-card .btn--orange,
.clinic-card .btn--blue,
.clinic-card .btn--orange{ 
    padding: 11px 30px;
}
.sticky-doc .btn--orange { margin-bottom: auto}

.sticky-doc .btn--orange::before,
.doc-card .btn--blue::before,
.doc-card .btn--orange::before,
.clinic-card .btn--blue::before,
.clinic-card .btn--orange::before { 
    position: relative; top: 3px; margin-right: 15px;
}
.doc-card .btn--blue:hover,
.doc-card .btn--orange:hover,
.clinic-card .btn--blue:hover,
.clinic-card .btn--orange:hover {
    background-image: linear-gradient(270deg, rgba(0,0,0,.2) 0%, rgba(0,0,0,.2) 100%);
	text-decoration: none;
}
/*.doc-card a.btn--orange { min-height: 61px} */
.doc-card a.btn--orange span { display: inline-block; font-size: 24px; margin-right: 5px;}

.doc-card .btn--blue,
.clinic-card .btn--blue { background: #669999}

.sticky-doc .lmgctp + small,
.doc-card .lmgctp + small { display: block; font-size: 11px; text-align: center;}

.sticky-doc .lmgctp:hover,
.sticky-doc .btn--orange:hover,
.doc-card .lmgctp:hover {  
    text-decoration: none;
}

.doc-card .lmgctp,
.sticky-doc .lmgctp,
.sticky-doc .btn--orange,
.doc-card .btn--orange,
.clinic-card .btn--orange{ background: var(--color-yellow)}

.doc-card .btn-wrap,
.clinic-card .btn-wrap {margin-top: 30px;display: flex;flex-direction: row;flex-wrap: wrap;gap: 12px;}

@media screen and (max-width: 820px){
    .doc-card .btn-wrap,
    .clinic-card .btn-wrap {
        flex-direction: column;gap: 20px;
    }
        :is(.doc-card .btn-wrap,.clinic-card .btn-wrap) a,:is(.doc-card .btn-wrap,.clinic-card .btn-wrap) button {display: block}
}
.doc-card .btn-wrap .phone-wrap  { margin-right: 20px}
.doc-card .btn-wrap .tooltip-wrap .tooltip,
.clinic-card .btn-wrap .tooltip-wrap .tooltip {top: -68px}

.doc-card .btn-wrap ul li,
.clinic-card .btn-wrap ul li{ margin-right: 20px; margin-bottom: 20px;}

.doc-card .btn-wrap ul li:last-child,
.clinic-card .btn-wrap ul li:last-child{ margin-right: 0}

.doc-card .img {float: left}

.doc-card figure{
        width: 270px; height: 270px; overflow: hidden;
        border-radius: 50%;border: 4px solid #c8a96e; margin-left: 10px;
    }

:is(.doc-card figure) img{ object-fit: cover; width: 100% !important; height:  100% !important}

:is(.doc-card figure)  + strong { display: block; margin-bottom: 10px}

.mobi-img:is(.doc-card figure) {display: none}

.doc-card .desc {
    margin-left: 60px;
    padding-right: 58px;
    font-size: 1rem;
    height: auto;
    align-content: center;
}

:is(.doc-card .desc) h1,:is(.doc-card .desc) h2{color: var(--headline-color); padding-top: 0;display: flex;align-items: center}

:is(.doc-card .desc) h1 { padding-bottom: 0; margin-bottom: 6px; font-weight: 600;font-size: 1.875rem; color: #71A1AF;}

:is(.doc-card .desc) h2{ padding-top: 0; margin-top: 0; padding-bottom: 30px; font-size: 1.25rem; line-height: 1.688rem; margin-bottom: 0; font-weight: normal}

:is(.doc-card .desc) address{ font-style: normal; margin-bottom: 15px; line-height: 150%}

.doc-card a.cta-btn {
        color:#fff; display: inline-block; position: relative;background: #e5a927;
        min-width: 200px;padding: 6px 38px 6px 18px;font-size: 100%; font-weight: 500;
        border-radius: 30px;
    }

:is(.doc-card a.cta-btn)::before {
            content:""; width: 10px; height: 10px; display: block; right: 15px; position: absolute; top: 50%; margin-top: -5px;
            border-top: 2px solid #fff; border-right: 2px solid #fff;transform: rotate(45deg);
        }

:is(.doc-card a.cta-btn):last-child { margin-top: 37px}

.doc-card a.cta-btn[href=""] { display: none; }

.doc-card.has-preline h1 {font-size: 1.875rem;font-weight: 600}

:is(.doc-card.has-preline .desc) h2 { font-size: 1.25rem;line-height: 1.688rem;}

:is(.doc-card.has-preline .desc) h3 { font-size: 1.10rem; line-height: 1.488rem; padding-top: 0}

.sticky-contact {
    position: absolute; right: 0; top:85px; bottom: 0; width: 200px; z-index: 5;
}

.sticky-contact nav {
        position: sticky; right: 0; top: 54px;
    }

:is(.sticky-contact nav) ul { padding-left: 0; list-style: none}

:is(.sticky-contact nav) li { margin-bottom: 23px;}

:is(.sticky-contact nav) a,:is(.sticky-contact nav) button {
            display: block; text-decoration: none;
        }

:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) * { pointer-events: none}

:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) i{
                height: 58px; width: 58px; display: block; float: left; font-size: 30px;
                text-align: center; line-height: 66px; color: #fff; border-radius: 50%;
                box-shadow: 0 0 0 8px rgba(255,255,255,1);
            }

:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) span{
                display: block; height: 58px; color: #fff;line-height: 23px;
                margin-left: 30px;padding: 18px 20px 18px 50px;
            }

:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) small{ display: block;clear: both;color:#999;padding-left: 10px;padding-top: 5px; font-size: 0.813rem}

:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button):hover small{ color: #666}

.btn-mail:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) i,.btn-mail:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) span { background: #669999}

.btn-phone:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) i,.btn-phone:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) span{ background: #e5a927}

.btn-telemedi:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) i,.btn-telemedi:is(:is(.sticky-contact nav) a,:is(.sticky-contact nav) button) span{ background: #7f8e8b}

:is(.sticky-contact nav) button {width: 100%; border: 0; cursor: pointer; background: transparent; text-align: left}

.mobi-contact-btns {
    display: none;
}

.mobi-contact-btns nav { margin-bottom: 54px; padding-top: 20px}

.mobi-contact-btns ul {
        padding-left: 0; list-style: none; text-align: center;
    }

:is(.mobi-contact-btns ul)::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0; height: 0}

:is(.mobi-contact-btns ul) li { margin-bottom: 23px;width: 33.333%; float: left; padding: 0 10px}

.mobi-contact-btns a,.mobi-contact-btns button {
        display: block; text-decoration: none; border: 0; background:transparent; cursor: pointer; width: 100%;
    }

:is(.mobi-contact-btns a,.mobi-contact-btns button) * { pointer-events: none}

:is(.mobi-contact-btns a,.mobi-contact-btns button) i{
            height: 58px; width: 58px; display: block; font-size: 30px;
            text-align: center; line-height: 66px; color: #fff;
            border-radius: 50%; margin: 0 auto;
        }

:is(.mobi-contact-btns a,.mobi-contact-btns button) span{display: none}

:is(.mobi-contact-btns a,.mobi-contact-btns button) small{ display: block;clear: both;color:#999;padding-top: 5px; line-height: 120%;font-size: 13px}

.mobi-contact-btns .btn-mail i{ background: #669999}

.mobi-contact-btns .btn-phone i { background: #e5a927}

.mobi-contact-btns .btn-telemedi i { background: #7f8e8b}
.experten-detail #mainContent > .content { position: relative}

/* -- Klinikdetail - 2019 - Klinikarte -- */
.clinic-card {
    position: relative; z-index: 1; margin-bottom: 100px;
}
.clinic-card .img { display: block; float: left}
.clinic-card figure{
        width: 285px; height: 285px; overflow: hidden;
        border-radius: 50%; box-shadow: 0 5px 10px rgba(0,0,0,.3);
    }
:is(.clinic-card figure) img{ object-fit: cover; width: 100% !important; height:  100% !important; }
.mobi-img:is(.clinic-card figure) {display: none}
.clinic-card .desc {
        margin-left: 340px;
    }
:is(.clinic-card .desc)  > a {padding: 0 2rem; }
.clinic-card h1{
        text-transform: none; font-size: 1.75rem; color: var(--headline-color);
        padding-bottom: 0; font-weight: 600; margin-bottom: 34px
    }
.clinic-card h2{padding-top: 0; margin-top: 0; margin-bottom: 0;font-size: 1.25rem; padding-bottom: 34px; line-height: 150%}
.clinic-card address{ font-style: normal; padding: 0 2rem; margin-bottom: 10px}
.clinic-card nav{ position: relative; top: 10px}

/* -- Author Detail  -- */
.author-detail .topics,
.author-detail .node { max-width: 66.666666%}

/* -- Nodes -- */
blockquote { margin-bottom: 26px}
.node h2.ico { margin-bottom:0}
.node .inner{
        overflow:hidden;
    }
:is(.node .inner)  > h2{ padding-top:0 !important}
:is(.node .inner)  > small { display: block; margin-bottom: 37px; font-size: 0.8rem; font-style: italic}
.node table {
        margin-bottom: 26px; width: 100%; table-layout: fixed;
    }
:is(.node table) td {
            padding: 10px 0;padding-right: 20px;
            font-size: 1rem;line-height: 150%;
            border-bottom: 1px solid #f2efe8; vertical-align: top; text-align: left;
        }
:is(:is(.node table) td):first-child { width: 160px}
:is(:is(.node table) td):last-child {padding-right: 0}
:is(.node table) tr:last-child td { border-bottom: 0}
.node img {
        max-width: 100%; height: auto !important; border-radius: 5px;
    }
.alignright:is(.node img) { float: right; margin: 0 0 20px 20px}
.alignleft:is(.node img) { flaot: left; margin: 0 20px 20px 0}
.fltlft:is(.node img),.fltrt:is(.node img) { display:block}
.fltlft:is(.node img) { margin:0 30px 25px 0}
.fltrt:is(.node img) { margin:0 0 25px 30px}
[align="left"]:is(.node img),[style*="float: left"]:is(.node img),[style*="float:left"]:is(.node img){margin: 0 30px 25px 0}
[align="right"]:is(.node img),[style*="float: right"]:is(.node img),[style*="float:right"]:is(.node img){ margin: 0 0 25px 30px}
:is(.node img) iframe {max-width: 100%}
.node p{
        margin-bottom:26px;
    }
:is(.node p):last-child{ margin-bottom:0}
.node .meta {
        text-align: right; padding-top: 20px; margin-bottom: 20px;
    }
:is(.node .meta) .block { text-align: left}
.node ul,.node ol{
        margin-bottom:37px; line-height: 150%;
    }
:is(.node ul,.node ol) li{ margin-bottom: 5px}
.node a.cta-btn {
        color:#fff; display: inline-block; position: relative;
        min-width: 200px;padding: 6px 38px 6px 18px;font-size: 100%; font-weight: 500;
        border-radius: 30px;background: var(--yellow-color);
    }
:is(.node a.cta-btn)::before {
            content:""; width: 10px; height: 10px; display: block; right: 15px; position: absolute; top: 50%; margin-top: -5px;
            border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg);
        }
.node .responsive-iframe {
        position: relative; padding-bottom: 56.15%; overflow: hidden; width: 100%;height: auto;
    }
:is(.node .responsive-iframe) iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%}
.node  > .box {
        width:33.333333%;
    }
.shadowed:is(.node > .box) { box-shadow:0 2px 20px rgba(0,0,0,.2)}
:is(:is(.node > .box) .desc) p {
                margin-bottom: 10px;
            }
:is(:is(:is(.node > .box) .desc) p):last-child {margin:0}
:is(:is(.node > .box) .desc) strong {
                font-size: 1.55rem; line-height: 1; color: var(--headline-color);
                display: inline-block; font-weight: 600;
            }
:is(:is(.node > .box) .desc) ul { margin-bottom:20px}
.node.border-top {border-top:2px solid #dcd9d0;padding-top: 20px}
.node.light-filled .inner{ background: var(--light-blue);padding: 17px 30px}
.node.light-filled ul:last-child,.node.light-filled p:last-child{ margin-bottom: 0}

.disease-start .node:first-child { margin-bottom: 0}

/* -- Node mit Gelben Inhalten -- */
.node-66 { width: 66.666666%}

.node-v2 {
    margin-bottom: 27px;
}

.node-v2  > h2{
        color: var(--headline-color);padding: 17px 30px;
        background: var(--light-blue);margin-bottom: 36px;
        font-size: 1.25rem;
    }

.node-v2 ol:last-child,.node-v2 ul:last-child,.node-v2 p:last-child { margin-bottom: 0}

.node-v2  + .topics { margin-top: 36px}

/* -- Node Single -- */
.node-single h2 { 
    color: var(--headline-color);margin: 0;padding: 0 0 37px 0;
    -webkit-hyphens: auto; hyphens: auto;
    word-wrap: break-word;
}

/* -- Node News Detail -- */
.node-news {
    clear: both;
}
.node-news .cat {
        float: left;margin-bottom: 0;margin-right: 1%;min-width: 275px; font-weight: 600;
        padding: 0.45rem 0.5rem 0.45rem 1rem;height: 38px;color: var(--headline-color);
        text-transform: uppercase;
    }
.node-news time {float: right;margin-left: 1%;padding-top: 0.55rem;font-size: 1.2rem;line-height: 1}
.node-news h2 {
        font-weight: 600;color: var(--headline-color);
        margin: 0;padding: 0 0 37px 0;clear: both;
    }
/* -- Node - Linksliste -- */
.node-links ul {
        list-style:none; padding-left:0;
    }
:is(.node-links ul) li{ background:none; margin-bottom:0; padding-left:0}
:is(.node-links ul) a{border-bottom:2px solid #dcd9d0;display:block;padding:8px 10px 8px 30px;background: url(/gfx/orange-arrow-rt.png) no-repeat left center}
/* -- Node Border -- */
.node-border {border-bottom: 2px solid #dcd9d0; padding-bottom:20px; margin-bottom:20px}
.node-topborder {border-top: 2px solid #dcd9d0; padding-top:20px; margin-bottom:20px}

/* -- Node Lft -- */
.node-lft::after,
.node-rt::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;	height: 0}

.node-lft > .box { float:left; margin:0 30px 0 0}
.node-lft > .box img{ display:block; margin:  0 auto 10px}

.node-flyer .inner {margin-left:306px; overflow: visible}

/* -- Node Lft -- */
.node-rt > .box { float:right; margin:0 0 0 30px}
.node-rt > .box img{ display:block; margin: 0 auto 10px}

.node-rt .boxv2 { background:#f8f7f5; padding:15px; color:#d79b00;}
.node-rt .boxv2 h2{ border-bottom:0 !important; font-weight: 600}

.node-lft .xtra { clear:both}
.node-rt .xtra { clear:both}

/* --  Node Behandlungsschwerpunkte -- */
.node-behandlung h2{
        margin:0 !important; display: inline-block; min-width: 330px; padding: 0.4rem 1.05rem 0.3rem !important;
        color: var(--headline-color);
    }
.node-behandlung ul {padding:15px 0;margin:0 !important}
:is(.node-behandlung .inner) ul{
            list-style:none;
        }
:is(:is(.node-behandlung .inner) ul) li {
                position:relative; margin-bottom:8px; line-height: 150%;
                border-bottom: 1px solid #96afb4; padding: 0.3rem 3rem 0.4rem 1rem;
            }
:is(:is(.node-behandlung .inner) ul)::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;height: 0}
.node-behandlung .box { border-bottom:1px solid #ddd}
.node-behandlung.node-rt .inner ul{ column-count:1}
.node.filled {padding: 2rem;background: var(--secondary-color); border-radius: 10px;}
.node.filled h3{ padding-top: 0 !important}
.node.filled p:last-child { margin-bottom: 0}

/* -- Redaktion Kat Filter-- */
.method {
    border:1px solid #ddd; margin-bottom:20px; padding:20px;
}
.method.star::before {content:"★"; float:right; color:#a97b22; display:block; margin:-15px -10px 0 0}
.method h3{
        margin-bottom:0 !important;
    }
:is(.method h3) a{ color:#777}
.method em { display:block; margin-bottom:20px; color:#777; font-style:normal}
.method  > .fltrt { margin:0 0 15px 15px}
.method .desc {
        padding-bottom:20px;
    }
:is(.method .desc) p:last-child { margin-bottom:0}
.method .meta {
        padding:20px 20px 0;margin:0 -20px; border-top:1px solid #ddd; clear:both;
    }
:is(.method .meta) a.more {font-weight:normal}
.tooltip-wrap {
    position: relative;left: -4px;
}
.tooltip-wrap .tooltip{
        padding: 0.5rem; position: absolute; white-space: nowrap; background: #e0ebed;
        right:calc(100% + 20px); top: -100px;
    }
:is(.tooltip-wrap .tooltip) a{ color: var(--link-color)}
:is(.tooltip-wrap .tooltip)::before {
            content: "";position: absolute;right:0;margin: -5px -5px 0 0;
            width: 10px;height: 10px;transform: rotate(45deg);
            background-color: #e0ebed; top:50%;
        }
:is(.tooltip-wrap .tooltip) small {display:block; font-size: 13px; text-align: center}

/* -- -- */
.hero-card {
    border-radius: 10px;
    background: var(--secondary-color);
}
.hero-card .box:first-child {
        display: flex;flex-direction: column;flex-wrap: nowrap;
        justify-content: flex-end;align-content: stretch;align-items: flex-start;
        padding-left: 40px;
    }
.hero-card .box:last-child {padding: 40px 40px 40px 0}
.hero-card h2 {font-size:30px; margin-bottom: 20px; padding: 0; font-weight: 500}
.hero-card h3 {font-size: 24px; padding: 0}
:is(.hero-card ul) li { margin-bottom: 0}
:is(.hero-card ul):last-child { margin-bottom: 0}
/* -- Blöcke -- */
.block img {display:block; max-width: 100%; height: auto !important}
.block  > h3{ padding:10px 0; color:var(--headline-color);margin-bottom:0}
:is(.block .xtra) li { list-style:none}
:is(.block .xtra) a{
            color:#333; text-decoration:none; display:inline-block; padding:5px 0 5px 20px;	background: url(../gfx/orange-arrow-rt-sm.png) left 10px no-repeat;
        }
:is(:is(.block .xtra) a):hover{ text-decoration:underline}

.block-linklist {
    padding-top: 37px;
}

.block-linklist:first-child {border-top: 0; padding-top: 0}

.block-linklist ul {
        list-style: none; padding-left: 0;
    }

:is(.block-linklist ul) li { margin-bottom: 5px}

:is(.block-linklist ul):last-child { margin-bottom: 0}

:is(.block-linklist ul) a {
            padding: 0.45rem 38px 0.45rem 1rem;
            text-decoration: none; color: #fff;display: block;font-weight: 600; position: relative;
            background: #c49e4e;
        }

:is(:is(.block-linklist ul) a)::before {
                content: "";width: 10px;height: 10px;
                display: block;right: 15px;position: absolute;
                top: 50%;margin-top: -5px;
                border-top: 2px solid #fff;border-right: 2px solid #fff;
                left: auto;background: none;transform: rotate(45deg);
            }

:is(:is(.block-linklist ul) a):hover {background: #518b9d}

/* -- Adresse -- */
.block-address {
    font-size: 16px;
}
.block-address h3 {
        position: relative; padding: 0;
    }
:is(.block-address h3)::before {color: #967836; position: absolute; left: -30px; font-size: 25px; top: -3px}
.block-address p { font-size: 16px }
.block-address address  {
        font-style: normal;
    }
:is(.block-address address) p { margin-bottom: 12px}
.block-address .box-33 {padding-left: 40px}

/* -- Block Arzthilfe -- */
.block-help {
    margin-bottom: 54px;
}
.block-help h3 {
        margin: -30px -30px 30px;padding: 10px 30px; background: #e1ebed;
        font-weight: 600; color: var(--headline-color);
    }
.block-help figure {overflow: hidden; border-radius: 65px 0 0 0}
.block-help img { display: block}
.block-help .inner {
        background: #71a0ae; padding: 30px; color: #fff; border-radius: 0 0 0 65px;
    }
:is(.block-help .inner) p { font-size: 16px }
.block-help a.btn-finddoc {
        color: #fff;padding-left: 25px; display: block; margin-right: -30px; margin-bottom: 25px;
    }
:is(.block-help a.btn-finddoc) i {
            width: 100px; height: 100px; line-height: 128px; text-align: center; text-indent: 1px;
            border-radius: 50%; box-shadow: 0 0 0 10px #fff, 0 0 0 25px #e6a82a;
            display: block;float: left;  font-size: 90px;  background: #a5c4cd;
            background: radial-gradient(ellipse at center, #a5c4cd 0%,#528c9a 100%);
            position: relative; z-index: 2;
        }
:is(.block-help a.btn-finddoc) span {
            display: block;background: #e6a82a;margin: 20px 0;margin-left: 45px;
            padding: 20px 30px 20px 85px;font-weight: 600;font-size: 16px;
            line-height: 120%;position: relative;word-break: normal;
            min-height: 100px;
        }
:is(:is(.block-help a.btn-finddoc) span)::before {
                width: 14px; height: 14px;content:"";display: block; position: absolute; right: 20px;
                top:50%; margin-top: -7px; border-right: 3px solid #fff;border-top: 3px solid #fff;
                transform: rotate(45deg);
            }
:is(.block-help a.btn-finddoc):hover {
            text-decoration: none;
        }
:is(.block-help a.btn-finddoc):hover i {box-shadow: 0 0 0 10px #fff, 0 0 0 25px #4f8b9d;}
:is(.block-help a.btn-finddoc):hover span { background: #4f8b9d}
a.btn-finddoc-small {
    background: #e6a82a; color: #fff; font-weight: 600;
    border-radius: 40px 0 0 40px; text-decoration: none;
    padding: 10px; display: flex; flex-direction: row;
    line-height: 120%;
}
a.btn-finddoc-small em {
        width: 60px; height: 60px; line-height: 74px; text-align: center; text-indent: 1px;
        border-radius: 50%;
        box-shadow: 0 0 0 5px #fff;
        display: block;float: left; font-size: 50px; background: #a5c4cd;
        background: radial-gradient(ellipse at center, #a5c4cd 0%,#528c9a 100%);
        position: relative; z-index: 2;
    }
a.btn-finddoc-small:hover { background: #4f8b9d;}
a.btn-finddoc-small span {
        display: block;padding: 11px 30px; flex: 1; position: relative;
    }
:is(a.btn-finddoc-small span)::before {
            width: 14px; height: 14px; content:"";display: block; position: absolute; right: 20px;
            top:50%; margin-top: -7px; border-right: 3px solid #fff;border-top: 3px solid #fff;
            transform: rotate(45deg);
        }
/* -- Blöcke Info -- */
.block-info {
    margin-bottom:30px;
}
.block-info .inner { padding:20px;background:#f2efe8}
.block-info h3 {
        margin-bottom: 20px;
    }
:is(.block-info h3)  + p{font-size:13px; line-height: 20px}
.block-info a.opener{ display:block;background:#f2efe8; padding:5px 20px; margin-top:-1px}
.block-info.text {}
.block-info.related ul {
            padding-left:0; list-style:none;
        }
:is(.block-info.related ul) li{position: relative; padding-left: 30px; padding-right: 10px;border-top: 2px solid #dcd9d0}
.block-info .meta {
        background:#f2efe8;padding:20px;
    }
:is(.block-info .meta) a {
            color:#333; padding-left:30px; position:relative; font-weight:normal;line-height: normal;
        }
:is(:is(.block-info .meta) a)::before { left:0; top:50%; margin-top:-8px; position:absolute}
:is(.block-info .meta) ul {
            list-style: none; padding-left: 0;
        }
:is(:is(.block-info .meta) ul) li {
                padding-left:0; margin-bottom: 20px;
            }
:is(:is(:is(.block-info .meta) ul) li)::before{ display: none}
:is(:is(:is(.block-info .meta) ul) li):last-child { margin-bottom: 0}
.block-info.qualitaetskliniken a.more {
            display: block; font-weight: normal; margin-bottom: 0;
        }
:is(.block-info.qualitaetskliniken a.more) span { display: block; overflow: hidden}
.block-info.qualitaetskliniken a.qk-logo{
            background: #fff; padding: 10px; display: block;
        }
:is(.block-info.qualitaetskliniken a.qk-logo) img { width: 100% !important; height: auto !important}
.block-info.siegel .img{
            position: relative; z-index: 2; margin-bottom: 26px;
        }
:is(.block-info.siegel .img)::before{ content:""; position: absolute;background:#f2efe8; left: 0; right: 0; bottom: 30px; top: 30px}
:is(.block-info.siegel .img) a{ display: block; position: relative; z-index: 2}
:is(.block-info.siegel .img) img{ margin:0 26px; position: relative; z-index: 2; width: 172px !important; height: auto !important}
.block-info.siegel .inner{padding-top:0; background: transparent}
.block-info.siegel .meta,.block-info.siegel a.opener{  background: transparent}
.block-info.related h3{
            color:var(--headline-color); max-width: 90%;border-top: 0;
            border-bottom:0;font-size: 1.125rem; margin-bottom: 15px;
            padding: 0;
        }
.block-info.related .inner {
            padding: 0; background: transparent; border-top: 0; border-bottom: 0;
        }
:is(.block-info.related .inner) a{color:#a97b22}
.block-info.related ul {
            padding:0; list-style:none;
        }
:is(.block-info.related ul) li{
                padding-left:0;
            }
:is(:is(.block-info.related ul) li)::before{ display:none}
:is(:is(.block-info.related ul) li) a{
                    padding: 0.3rem 3rem 0.4rem 2.3rem;display:block; position: relative;
                }
:is(:is(:is(.block-info.related ul) li) a)::before,:is(:is(:is(.block-info.related ul) li) a)::after {  content:""; position: absolute; }
:is(:is(:is(.block-info.related ul) li) a)::before {
                        background: #a97b22; width: 16px; height: 16px; left: 8px; top: 10px;
                        border-radius: 50%;
                    }
:is(:is(:is(.block-info.related ul) li) a)::after {
                        width: 7px; height: 7px; border-right: 2px solid #fff; border-top: 2px solid #fff; left: 11px; top: 14px;
                        transform: rotate(45deg);
                    }

#mainContent .content {
        margin: auto;
    }

:is(:is(#mainContent .content) .block-info.siegel) figure {
                display: flex;flex-direction: row;flex-wrap: nowrap;
                justify-content: flex-start;align-content: stretch;
            }

:is(:is(:is(#mainContent .content) .block-info.siegel) figure) figcaption{
                    display: flex;flex-direction: row;flex-wrap: wrap;
                    justify-content: flex-start;align-content: stretch;
                    align-items: center;flex: 1 1 auto;font-size: 2em;
                }

:is(:is(:is(:is(#mainContent .content) .block-info.siegel) figure) figcaption) a{ font-weight: normal;font-size: 1rem; display: block; padding: 20px 20px 20px 0}
/* --  Blöcke -- */
.block-info a.btnMore {
        color:#333; display:block; border-bottom:1px solid #e8e5de;padding:10px 40px; font-size:13px; line-height:15px;
        background: #f2efe8 url(../images/bullet04.png) 20px center no-repeat;
    }
/* --  Verwandte Beiträge -- */
.block-info.related-posts .inner { background:none; padding:0; border-bottom:0; border-top:0}
.block-info.related-posts .post {
            border-bottom:1px solid #ddd; padding:20px 0;
        }
:is(.block-info.related-posts .post) .img { float:left; margin-right:10px}
:is(.block-info.related-posts .post) .desc { overflow:hidden}
:is(.block-info.related-posts .post) h4 a{ color:#333}
:is(.block-info.related-posts .post) p {
                font-size:11px; margin-bottom:5px;
            }
:is(:is(.block-info.related-posts .post) p) a{ color:#333}
.expert-post:is(.block-info.related-posts .post) h4::after {content:"★"; color:#fab301; font-size:13px; margin-left:4px}
/* -- Textblock -- */
.block-info.text .inner { background:none; padding:10px 0 0; border-bottom:0; border-top:0}
.block-info.text ul li {padding: 0.3rem 1rem 0.4rem 1rem}
:is(.block-info.text,.block-info.related-posts) h3{
            color:var(--headline-color); display: inline-block;	max-width: 90%;border-top: 0;
            padding: 0.4rem 1.05rem 0.3rem; border-bottom:0;
        }
/* -- Klinik  -- */
.block-info.klinik img{ display:inline}
.block-info.klinik .img{
            display:table-cell; background:#fff; border:1px solid #ddd;border-bottom:0;text-align:center; vertical-align:middle;
            width:276px;height:155px;
        }
.block-info.klinik address{ font-style:normal; margin-bottom:15px}
.block-info.klinik a.btn {
            color:#fff; background:#a97b22; display:block; text-align:center; padding:14px 0; font-size:13px; margin-bottom:15px;
        }
:is(.block-info.klinik a.btn):last-child { margin-bottom:0}

/* -- Blöcke Zertifikate - ExpertenDetail -- */
.block-zerti {
    background: #f2efe8;width: 276px;float: left;margin: 0 0 30px 30px;
}
.block-zerti img { display:block; margin:0 auto}
.block-zerti .img{padding:20px 0 0}
.block-zerti .desc { padding:20px}
.block-zerti h3 { margin-bottom:5px}
.block-zerti p { font-size:11px}
/* -- Block Codesnippet -- */
.block-code {
    margin-bottom: 20px;
}
.block-code h3 {
        color:var(--headline-color); display: inline-block;
        max-width: 90%;border-top: 0; margin-bottom: 20px;
        padding: 0.4rem 1.05rem 0.3rem; border-bottom:0;
    }
.block-code .img {
        height:140px; display: flex; flex-direction: row;
        flex-wrap: nowrap; justify-content: center;
        align-content: stretch; align-items: center;
    }
.block-code img { width: auto; height: auto; max-height: 90%; max-width: 90%}
.block-code .inner {
        border-bottom: 1px solid #ddd;padding: 20px; background: #f2efe8;
    }
:is(.block-code .inner) a {color: #333; text-decoration: none; display: block; padding: 6px 3px 4px 25px; background: url(../gfx/orange-arrow-rt.png) left center no-repeat}
:is(.block-code .inner) code {display:none}

/* -- Block Kategorie Liste -- */
.block-teasing {
    background-color:#fff;margin-bottom:20px; position: relative;
}
.block-teasing h3{width:auto;margin-bottom:0;border-top:0 !important}
.block-teasing img{display:block; width: 100% !important; height: auto !important;transition: all 0.2s ease-in-out;}
.block-teasing img:hover { filter: brightness(1.1);}
.block-teasing a.ov-link {
        position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 5;
    }
:is(.block-teasing a.ov-link):hover figcaption h3 a { color: #a97b22}
.block-teasing .label { margin-right: 20px; color: var(--headline-color); font-size: 125%; text-transform: uppercase;font-weight: 600}
.block-teasing figure.img { position: relative}
:is(.block-teasing figcaption) h2,:is(.block-teasing figcaption) h3 {
            color: #fff; padding: 0 !important;margin-bottom: 0 !important; font-size: 1.125rem;
        }
:is(:is(.block-teasing figcaption) h2,:is(.block-teasing figcaption) h3) a{
                color: var(--link-color);display: inline-block;position: relative;padding: 16px 20px 16px 0; font-weight: 500;
            }
:is(:is(:is(.block-teasing figcaption) h2,:is(.block-teasing figcaption) h3) a):hover{ text-decoration: none; color: #c39d54}
:is(.block-teasing figcaption) h3 a::after {
            content: "";width: 10px;height: 10px;border-right: 2px solid #b68f42;border-top: 2px solid #b68f42;
            transform: rotate(45deg);
            display: inline-block; position: absolute; right: 0; top: 50%; margin-top: -6px;
            transition: right 0.2s ease;
        }
:is(.block-teasing figcaption) h3 a:hover::after {
            right: -5px;
        }
.block-teasing:hover figcaption h3 a::after {
        right: -5px;
    }
.block-teasing .inner{
        background: none;
    }
:is(.block-teasing .inner) ul { padding-left: 0; list-style: none; font-size: 1rem; font-weight: 500; padding-top: 20px}
:is(.block-teasing .inner) a {
            color: #a97b22; display: inline-block; padding-right: 15px; position: relative; height: auto !important;
        }
:is(:is(.block-teasing .inner) a)::before {
                content:""; width: 8px; height: 8px; border-top: 2px solid #a97b22; border-right: 2px solid #a97b22;
                transform: rotate(45deg);display: block;
                right: 0; top: 50%; position: absolute; margin-top: -4px
            }
.block-teasing  > ul {
        margin:0; padding:10px 15px 10px; list-style:none; background-color:#f2efe8;

    }
:is(.block-teasing > ul) li { background:none no-repeat 0 6px;	padding: 0 0 0 0;margin-bottom:0}
:is(.block-teasing > ul) a{
            color:#333 !important; background:url(../gfx/orange-arrow-rt.png) no-repeat left center;
            padding:2px 2px 2px 30px !important; display:table-cell; vertical-align:middle;
            font-size:13px; line-height: 20px
        }
.block-teasing .profile {
        border-top:0; margin:0; width:200px; float:left; clear:none; padding-bottom:0; min-height:90px; padding-right:11px; padding-top:7px;
    }
:is(.block-teasing .profile) .fltlft {
            margin-right:10px;
        }
:is(:is(.block-teasing .profile) .fltlft) .link {display:block; overflow:hidden; width:39px; height:39px; border-radius: 50%}
:is(.block-teasing .profile) .main-info {
            overflow: hidden; margin-bottom:0;
        }
:is(:is(.block-teasing .profile) .main-info) p { width:auto; margin:0 0 5px; }
:is(.block-teasing .profile) .stuff {padding:0;margin: 0 0 4px;list-style: none;border-top: 0;border-bottom: 0;background: #fff}
.block-teasing a.read-more {
        display: inline-block; margin-right: auto;
    }
:is(.block-teasing a.read-more)::before {
            content:""; width: 10px; height: 10px;border-right: 2px solid #a97b22; border-top: 2px solid #a97b22; float: right; margin-left: 10px;
            transform: rotate(45deg); position: relative; top: 9px;
        }
:is(:is(:is(#mainContent,#subContent) .news-grid) .block-teasing) h2 {text-transform: uppercase}
:is(:is(:is(#mainContent,#subContent) .news-grid) .block-teasing) h3{ padding: 24px 0 21px; font-weight: 500;}
:is(:is(:is(#mainContent,#subContent) .news-grid) .block-teasing) p{
                font-size: 1.0rem;display: -webkit-box;text-overflow: ellipsis;
                -webkit-line-clamp: 3;-webkit-box-orient: vertical;
                overflow: hidden;margin-bottom: 26px
            }
:is(:is(:is(#mainContent,#subContent) .news-grid) .block-teasing) figcaption,:is(:is(:is(#mainContent,#subContent) .news-grid) .block-teasing) figcaption::after{ display: none}
.top-news .btn-wrap {
        text-align: center;
    }
:is(.top-news .btn-wrap) a.link {
            color: #fff;display: inline-block;position: relative;
            background: linear-gradient(to right, #5a4123 0%, #9a7737 70%, 90%, #e0c07b 100%);
            min-width: 200px;padding: 6px 38px 6px 18px;font-size: 100%;
            font-weight: 500;border-radius: 30px;
        }
:is(:is(.top-news .btn-wrap) a.link)::before {
                content: "";width: 10px;height: 10px;
                display: block;right: 15px;
                position: absolute;top: 50%;margin-top: -5px;
                border-top: 2px solid #fff;border-right: 2px solid #fff;
                transform: rotate(45deg);
            }
/* -- Dreispaltig -- */
.box-33 > .block-teasing { 
    margin-bottom: 3px;
}

/* -- Block Author -- */

.sidebar .block-author {
    background: #f9f9f9;
    display: flex;
    flex-wrap: wrap;
    border-radius: 5px;
    justify-content: center;
    margin-right: 10px;
}

.block-author h3{
        color:var(--headline-color); display: inline-block; max-width: 90%;border-top: 0; margin-bottom: 20px;
        padding: 0.4rem 1.05rem 0.3rem; border-bottom:0;
    }

.block-author h4 {
        margin-bottom: 4px;
    }

:is(.block-author h4) a{ color: var(--headline-color)}

.block-author .block-author-funktion {
        font-size: 13px; color: #666; margin-bottom: 12px; line-height: 1.4;
    }

.block-author .img {
        /* background: #f2efe8; */
        position: relative; z-index: 2;
        margin: -30px -30px 26px;
        /* border-radius: 50px 0 0 0; */
        padding: 10px 0;
    }

.block-author .img-wrap{
        width:172px; height:172px; border-radius:50%;
        overflow:hidden; display:block;margin: 0 26px;
    }

:is(.block-author .img-wrap) img{ width: 100% !important; height: 100% !important; object-fit: cover}

.block-author .inner {
        padding:30px 30px 0;
    }

:is(.block-author .inner)  + .meta + .inner { margin-top: 37px}

:is(.block-author .inner) p { font-size:0.85rem; line-height: 120%; margin-bottom: 10px}

.block-author .meta {padding:10px 30px}

.block-author a.more {
        font-size: 1.0rem;
        text-transform: initial;
        text-align: left;
        min-width: initial;
        display: inline-block;
        padding: 10px 20px;
        border-radius: 30px;
        color: #fff;
        background: #c49d4d;
        font-weight: 600;
    }

:is(.block-author a.more):hover { background: #508c9b}

:is(.block-author a.more)::before { display: none}

.block-author figure.img a {
        display: flex;
        justify-content: center;
    }
/* -- Block Ärzte-- */
.block-doc .navi {
        float:right; padding-top:8px;
    }
:is(.block-doc .navi) a{
            background-color:#fff;width:8px;height:8px;border:1px solid #fab301;display:inline-block;border-radius:4px;
        }
.active:is(:is(.block-doc .navi) a) {background-color:#fab301}
.doclist {
    position:relative; overflow:hidden; height: 160px; width: 276px;
}
.doclist .docs { position:absolute; height:20000em; width:276px }

/* -- Block -- */
.block-img {
    width:276px; float: left; position:relative; border-bottom:1px solid #ddd;
}
.block-img img.siegel {display:block; position:absolute; right:10px;top:8px; height:auto !important; width:45px !important}
.block-img  > h3{
        height:60px;font-weight:normal;display:table-cell;vertical-align:middle;width:276px;
    }
:is(.block-img > h3) small { display:block; font-weight:normal; font-size:12px}
:is(.block-img .inner) a{
            color:#333; text-decoration:none;
        }
:is(:is(.block-img .inner) a):hover{ text-decoration:underline}
:is(.block-img .inner) img{ float:left; margin: 0 10px }

/* -- Block Author -- */
.block-author {
    position:relative;
}
.block-author .swipe-pager {
        float:right; padding-top:10px; position:absolute; z-index:2; right:10px;
    }
:is(.block-author .swipe-pager) span{
            background:#fff; border:1px solid #a97b22; width: 11px;height: 11px;display: inline-block; margin-left:4px; cursor:pointer;
            border-radius: 50%;
        }
.swiper-active-switch:is(:is(.block-author .swipe-pager) span) { background:#a97b22}
.block-author .swiper-container .inner { border-bottom:0; padding:0}

/* -- Block Patientenlotse -- */
.block-patientenlotse h3 {color: #fff;}
.block-patientenlotse .img {
        position: relative;border: 7px solid #fff; margin-left: 50px;
        width: 100px; height:100px; overflow: hidden; margin-bottom: -47px;
        border-radius: 50%;
    }
:is(.block-patientenlotse .img) img{ display: block}
.block-patientenlotse .inner {
        color: #fff; padding: 60px 30px 25px;background: #51a9c4;
        background: linear-gradient(to bottom, #51a9c4 0%,#51a9c4 44%,#b6dce2 100%);
    }
.block-patientenlotse a.more {
        font-size: 1.0rem;font-weight: normal;text-transform: initial;
        text-align: left;min-width: initial;width: 100%;
        display: block;max-width: 200px;padding: 3px 38px 3px 18px;
        border-radius: 30px;color: #fff;
        background: #e5a927;
        position: relative; margin-left: 20px;
    }
:is(.block-patientenlotse a.more)::before {
            content: "";width: 10px;height: 10px;display: block;
            right: 15px;position: absolute;top: 50%;margin-top: -5px;
            border-top: 2px solid #fff;border-right: 2px solid #fff;
            left: auto;background: none;transform: rotate(45deg);
        }
:is(.block-patientenlotse a.more):hover { text-decoration: none; background: #518b9b; }
/* -- Block Kategorie -- */
.redaktionKat {
    margin-top:30px;
}
.block-kat {
    /*width:276px; */
    margin-bottom:30px;
}
.block-kat img { display:block}
.block-kat h2{
        border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:10px 0; margin-bottom:0; font-size:15px;
    }
:is(.block-kat h2) a{ color:#777; display:block}
.block-kat .inner {
        background:#f2efe8; padding:15px 20px;
    }
:is(.block-kat .inner) em { font-style:normal; font-size:11px; color:#777}
:is(.block-kat .inner) a { color:#333}
.map-wrap {
    margin-bottom: 50px;
}
.map-wrap h2{color: var(--headline-color);margin: 0;padding: 1.15rem 0 1.65rem 0}
.map-wrap .map { padding: 2rem; background: #f2efe8}

/* -- Accordion -- */
.accordion-wrap > h2 { color: var(--headline-color); margin: 0; padding: 0 0 28px 0 }
.accordion {
    background: transparent;
    /* border-top: 1px solid #f0ece6; */
}
.accordion > h3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
    user-select: none;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
    color: var(--headline-color);
    line-height: 1.4;
    margin-bottom: 0;
    border: 1px solid #f0ece6;
    transition: color 200ms ease;
    border-radius: 5px;
    transition: all ease 0.25s;
    background: white;
}
:is(.accordion > h3) .ui-icon { display: none }
/* chevron icon via pseudo */
:is(.accordion > h3)::after {
    content: '';
    width: 9px;
    height: 9px;
    border-right: 2px solid #71A1AF;
    border-bottom: 2px solid #71A1AF;
    transform: rotate(45deg);
    flex-shrink: 0;
    margin-left: 16px;
    transition: transform .2s;
}
.accordion>h3:hover {
    background: #f5f1e8;
}
/* remove old ::before */
:is(.accordion > h3)::before { display: none; }
.open:is(.accordion > h3)::after { transform: rotate(225deg) translateY(-3px); }
.open:is(.accordion > h3) { color: #71a1af; border-radius: 5px 5px 0px 0px; }
.accordion .inner {
    position: relative;
    overflow: hidden;
    display: none;
    padding: 20px 20px 20px 45px;
    border: 1px solid #f0ece6;
    border-top: 0px;
    background: white;
    border-radius: 0px 0px 10px 10px;
}
.accordion ul, .accordion p {
    margin: 0 0 18px 0;
    padding-bottom: 0;
}
:is(.accordion ul, .accordion p):last-child { margin: 0 }
.accordion table {
    margin-bottom: 18px; width: 100%; table-layout: fixed;
}
:is(.accordion table) td {
    padding: 8px 0; padding-right: 20px;
    font-size: 1rem; line-height: 150%;
    border-bottom: 1px solid #ece8e1; vertical-align: top; text-align: left;
}
:is(:is(.accordion table) td):first-child { width: 160px }
:is(:is(.accordion table) td):last-child { padding-right: 0 }
:is(.accordion table) tr:last-child td { border-bottom: 0 }
.accordion ul.multicolumn, .accordion ul.multi-column { column-count: 3; column-gap: 25px; padding-left: 0; }

/* v2 variant – keep compact */
.accordion-wrap.v2 .accordion h3 { padding: 18px 0 }




div.accordion ul li,
.post-box ul li,
.features li {position: relative;word-break: normal;}

/* -- Kontaktinfos -- */
.contact {
    margin-bottom:27px;
}
.contact p.name{margin:0}
.contact p.post{margin:0 0 18px}
.contact address{
        font-style:normal;font-size:11px;line-height:15px;
    }
:is(.contact address) a{color:#3c3c3c}
:is(.contact address) span{font-size:13px}
/* -- Städte -- */
.state-list-wrap > h2,
.state-list-wrap > h3{color:var(--headline-color);margin: 0;padding: 0 0 37px}

ul.state-list{
    padding:10px 0 0 0;margin:0 0 40px 0;list-style:none;position:relative; border-top:1px solid #ddd;
    column-count: 3; column-gap: 25px;
    font-size: 1.05rem;	line-height: 115%;
}

ul.state-list li{
        border-bottom:1px solid #ddd;  padding-left:0 !important; margin-bottom: 0;break-inside: avoid-column;
        -webkit-hyphens: auto;  hyphens: auto;word-break: normal;
    }

:is(ul.state-list li)::before { display:none}

:is(ul.state-list li) fieldset { display:none}

ul.state-list a{
        padding:7px 30px 7px 0;display:block;color:var(--link-color); position: relative;
    }
ul.state-list a:hover {background: #f9f9f9;}
:is(ul.state-list a)::before{
            width: 10px; height: 10px; content:""; border-right: 2px solid #a97b22; border-top: 2px solid #a97b22; margin-left: 10px;
            transform: rotate(45deg); display: block;
            position: absolute; right: 10px; top: 50%; margin-top: -5px;
            transition: right 0.2s ease;
        }

ul.state-list li a:hover,ul.state-list li.active a{ color: #a97b22; text-decoration: none}

ul.state-list li a:hover::before { right: 6px; }

ul.state-list li.active fieldset{ display:block}
/* -- Grid -- */
.news-grid .box {display: flex;flex-direction: column;}
.news-grid .block-teasing {
        margin-bottom: 24px;display: flex;
        flex: 1 1 auto; flex-direction: column;
    }
:is(.news-grid .block-teasing) h3{
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            padding: 0 !important;
            margin: 21px 0 21px;
            flex: 1 1 auto;
        }

/*
 * jquery.selectBoxIt.css 3.8.1
 * Author: @gregfranko
 */

/* SelectBoxIt container */
.selectboxit-container {
    position: relative;display: inline-block;vertical-align: top;
}
.selectboxit-container * {user-select: none; outline: none; white-space: nowrap;}
.selectboxit-container .selectboxit { width: 180px; cursor: pointer; margin: 0;padding: 0;overflow: hidden; display: block; position: relative}
.selectboxit-container select { height: 100% !important; width: 100% !important}
.selectboxit-container span,.selectboxit-container .selectboxit-options a { height: 30px;line-height: 30px; display: block}
.selectboxit-container .selectboxit:focus { outline: 0}
.selectboxit.selectboxit-disabled,
.selectboxit-options .selectboxit-disabled {opacity: 0.65;filter: alpha(opacity=65);cursor: default}

.selectboxit-text {text-indent: 5px;overflow: hidden; text-overflow: ellipsis;float: left}

.selectboxit-container .selectboxit-options {
    width: 100%; min-width: 100%;margin: 0;
    padding: 0; list-style: none;position: absolute; overflow-x: hidden;
    overflow-y: auto !important;cursor: pointer;display: none;z-index: 99999; text-align: left;
}

.selectboxit-option .selectboxit-option-anchor{padding: 0 2px}
.selectboxit-option .selectboxit-option-anchor:hover {text-decoration: none}
.selectboxit-option, .selectboxit-optgroup-header {text-indent: 5px;margin: 0;list-style-type: none}

.selectboxit-optgroup-header {font-weight: 600}
.selectboxit-optgroup-header:hover {cursor: default}
.selectboxit-arrow-container {width: 30px; position: absolute; right: 0}

.selectboxit .selectboxit-arrow-container .selectboxit-arrow {margin: 0 auto;position: absolute; top: 50%;right: 0; left: 0; margin-top:-2px}
.selectboxit .selectboxit-arrow-container .selectboxit-arrow.ui-icon { top: 30%}

.selectboxit-option-icon-container {float: left}
.selectboxit-container .selectboxit-option-icon {margin: 0;padding: 0; vertical-align: middle}

.selectboxit-option-icon-url {width: 18px;background-size: 18px 18px;background-repeat: no-repeat;height: 100%;background-position: center; float: left}
.selectboxit-rendering {display: inline-block !important;zoom: 1 !important;visibility: visible !important; position: absolute !important;top: -9999px !important; left: -9999px !important;}

/* Default Theme */
.selectboxit-btn {background-color: #fbfcfa;background-repeat: repeat-x;color:#909090; border: 1px solid #efefee; font-size:11px; font-weight: 600}
.selectboxit-default-arrow { background:url(../gfx/selectbox-arrow.gif); width:8px; height:4px}
.selectboxit-list {background-color: #fbfcfa;border: 1px solid #efefee;font-size:11px}

.selectboxit-list .selectboxit-option-anchor {color: #333}
.selectboxit-list > .selectboxit-focus > .selectboxit-option-anchor {color: #909090; background-repeat: repeat-x}
.selectboxit-list > .selectboxit-disabled > .selectboxit-option-anchor {color: #ccc}

/* -- Formular Elemente -- */
fieldset {
    border:0; margin-bottom:20px;
}
fieldset .formItem label{ display:block}
fieldset input.formText,fieldset input[type="text"],fieldset input[type="email"],fieldset input[type="tel"],fieldset input[type="password"],fieldset textarea { padding:3px; font-family:Arial,sans-serif; font-size:1rem;}
fieldset .checkbox-wrap {
        position: relative;
    }
:is(fieldset .checkbox-wrap) label{
            display:block; font-size: 13px;
        }
:is(:is(fieldset .checkbox-wrap) label)  > span { display:block; overflow:hidden}
.active:is(:is(fieldset .checkbox-wrap) label) i::before{
                content:""; width: 9px; height: 9px; background: #a97b22; position: absolute; left: 50%; top: 50%;
                transform: translate(-50%, -50%);
            }
:is([for="datennutzung"]:is(:is(fieldset .checkbox-wrap) label),[for="agb"]:is(:is(fieldset .checkbox-wrap) label))  > span{line-height: normal; padding: 3px 0}
:is(fieldset .checkbox-wrap) i { float:left; position: relative; top: 2px}
:is(fieldset .checkbox-wrap) input[type="checkbox"] {
            display:none;
        }
:is(:is(fieldset .checkbox-wrap) input[type="checkbox"])  + label i {
                display:inline-block;width:17px;height:17px;margin:0 10px 0 0;
                vertical-align:middle; cursor:pointer; border: 1px solid #fff; background: #fff
            }
:is(:is(fieldset .checkbox-wrap) input[type="checkbox"]):checked + label i::before {
                content:""; width: 9px; height: 9px; background: #a97b22; position: absolute; left: 50%; top: 50%;
                transform: translate(-50%, -50%);
            }
:is(fieldset .checkbox-wrap) input[type="radio"] {
            position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 2;opacity: 0; cursor: pointer;
        }
:is(:is(fieldset .checkbox-wrap) input[type="radio"])  + label i {
                display:inline-block;width:17px;height:17px;margin:0 10px 0 0;vertical-align:middle;border: 1px solid #fff;
                cursor:pointer;border-radius: 50%; background: #fff;
            }
:is(:is(:is(fieldset .checkbox-wrap) input[type="radio"]) + label i)::before {
                    border-radius: 50%; width: 9px; height: 9px; background: #a97b22;
                    content:""; position: absolute; left: 50%; top: 50%;transform: translate(-50%, -50%);
                    opacity: 0;
                }
:is(:is(fieldset .checkbox-wrap) input[type="radio"]):checked + label i::before {filter: alpha(opacity=100);opacity: 1}
:is(:is(fieldset .checkbox-wrap) input[type="radio"],:is(fieldset .checkbox-wrap) input[type="checkbox"])  + label:hover i { border-color:#666}
:is(fieldset .formRadio) input {
            height: 100%; width: 100%; position: absolute; left: 0; top:0; z-index: 2;opacity: 0;
            cursor: pointer
        }
:is(fieldset .formRadio) label {
            z-index: 1; display: block;
        }
:is(:is(fieldset .formRadio) label) i {
                float: left; width: 20px; height: 20px; text-align: center; line-height: 20px;background: #fff;
                border-radius: 50%;
            }
:is(:is(fieldset .formRadio) label)::before {
                content:""; width: 10px; height: 10px; background: #a97b22;position: absolute;
                left: 5px; top: 10px; z-index: 4; opacity: 0;display: block; border-radius: 50%; transform: translateZ(0)
            }
:is(:is(fieldset .formRadio) label)  > span { margin-left: 30px; display: block; overflow: hidden; line-height: 120%}
fieldset .formRadio,fieldset .formRadio .option,fieldset .formCheckbox,fieldset .formCheckbox label,fieldset .formRadio label,fieldset .formCheckbox label i,fieldset .formRadio label i,fieldset .formCheckbox .option { position: relative}
:is(fieldset .formCheckbox) input { height: 100%; width: 100%;;opacity: 0; position: absolute; left: 0; top:0; z-index: 2}
:is(fieldset .formCheckbox) label {
            z-index: 1;
        }
:is(:is(fieldset .formCheckbox) label) i { float: left; width: 20px; height: 20px; text-align: center; line-height: 20px;background: #fff;}
:is(:is(fieldset .formCheckbox) label) span { margin-left: 30px; display: block}
:is(:is(fieldset .formCheckbox) label)::before {
                content:""; width: 10px; height: 10px; background: #a97b22;position: absolute; left: 5px; top: 10px;
                opacity: 0; z-index: 5;
            }
:is(fieldset .formCheckbox) input:checked + label::before { opacity: 1;}
#booking_patient_content .flexgrid + .content { padding-top: 0}

.formSubmit { border:0; background:#6f4e10; padding:10px 15px; color:#fff; cursor:pointer}
.formSubmit:focus-visible { outline: 3px solid #25262b; outline-offset: 3px; }
#booking_form fieldset .formRadio input{width: auto}
/* 
*    Selectbox Replacement 2017
*/
.select2-hidden-accessible {display:none}
.select2{display:block;position:relative; width:  100% !important}
.select2 .select2-selection__rendered{
	cursor:pointer;
	display:block;
	overflow:hidden;
	outline:none;
	position:relative;
	text-decoration:none;	
	background-color:#fff;
	color: #333;
	font-size: 13px;
	font-weight: normal;
	padding: 0 10px;
	height: 42px;
	border: 1px solid #ddd;
	line-height: 42px;
}
.select2.disabled .display{color:#999}
.select2.focused .display .text{display:inline-block; zoom:1}

.select2 .select2-selection__arrow{
	display:block;height:12px;width:12px;position:absolute;text-align:center;top:12px;right:15px;
	border-bottom: 2px solid #a97b22; border-right: 2px solid #a97b22;
	transform: rotate(45deg);
}
.select2 .value{display:none}

/* dropdown styles */
.select2-container{background:#fff;display:block;font-size:13px;list-style-type:none;margin:0;overflow-x:hidden;overflow-y:auto;z-index:2}
.select2-container--open { z-index: 6}

.select2-dropdown {
    display:block;border:1px solid #fff !important;
    box-sizing: border-box;
    box-shadow: 0 2px 4px rgba(0,0,0,.15);
}
.select2-search--dropdown { padding: 10px !important}
/* .selectboxv2.items.arztmeinung{ width:263px} */
.select2-container ul{padding:0 10px 10px; max-height: 250px; overflow: auto}
.select2-container li{display:block;margin:0;padding:5px 10px;cursor: pointer}
.select2-container li > .item{
        color:#333;cursor:default;display:block;padding:5px 10px;text-decoration:none;
    }
:is(.select2-container li > .item)  > .text{display:inline-block;*display:inline;zoom:1}
.select2-container li.selected > .item{ color:#a97b22}
.select2-container li.disabled > .item{color:#ccc}
.select2-container li.hover > .item{background-color:#f8f7f5;color:#333}
.select2-container .value{display:none}
.select2-container--default .select2-results__option--highlighted[aria-selected] {background: #e5a927 !important}
.select2-search {
    padding:10px; display: block;
}
.select2-search input{padding: 10px !important;background-color: rgba(255,255,255, 0.6);border: 1px solid #d1cdbf;width: 100%}

fieldset.contact {
    background: #f2efe8; padding: 30px; margin-bottom: 0;
}

fieldset.contact .formItem {
        margin-bottom: 10px;clear: both;
    }

:is(fieldset.contact .formItem) img.capt { float: left}

:is(fieldset.contact .formItem) .field { margin-left: 170px; padding-top: 10px}

fieldset.contact label {line-height: 1.4rem;padding-top: 0.3rem;padding-bottom: 0.3rem}

fieldset.contact input.formText,fieldset.contact select,fieldset.contact textarea { width: 100%; border: 1px solid #fff; background: #fff; font-size: 1rem}

fieldset.contact select { background-image: url("../gfx/select-arrow-down.png"); background-repeat: no-repeat; background-position: calc(100% - 10px) center}

fieldset.contact input.formText,fieldset.contact select {height: 2rem; padding: 0 10px}

:is(fieldset.contact .formError) .checkbox-wrap i,:is(fieldset.contact .formError) input.formText,:is(fieldset.contact .formError) select,:is(fieldset.contact .formError) textarea { border-color: var(--error-color)}

fieldset.contact .upload-wrap {
        position: relative;
    }

:is(fieldset.contact .upload-wrap) br {display:none}

:is(fieldset.contact .upload-wrap) input{
            position: absolute; left: 0; top: 0; width: 100%; height: 2rem; cursor: pointer;opacity: 0; z-index: 2
        }

fieldset.contact .file-field {
        background: #fff; height: 2rem; padding: 0 10px; position: relative; z-index: 1;
    }

:is(fieldset.contact .file-field) span { display: block; font-size: 13px; padding: 4px 0}

:is(fieldset.contact .file-field)::before { position: absolute; right: 15px; top: 8px; color: #a97b22}

fieldset.contact .msg {color: #fff; font-size: 13px; background: #72529C; padding: 10px 15px; margin-bottom: 20px}

fieldset.contact .info {font-size: 13px; line-height: 18px}

fieldset.contact button.formSubmit {
        cursor: pointer;font: inherit;font-weight: normal;color: #fff;background-color: #6f4e10;border: solid 1px #6f4e10;
        margin: 0 0.3rem 0 0;border-radius: 30px;height: 2rem;padding: 0 1rem;outline: 0; position: relative;
    }
fieldset.contact button.formSubmit:focus-visible { outline: 3px solid #25262b; outline-offset: 3px; }

.loading:is(fieldset.contact button.formSubmit)::before {
                content:"";
                height: 20px;
                width: 20px;
                position:absolute;
                left: 50%; top: 50%; margin-left: -10px; margin-top: -10px;
                display: block;
                border: 3px solid #fff;
                border-radius: 50%;
                border-top-color: transparent;
                animation: rotate 1s linear infinite;
            }
@keyframes rotate {
  0% { transform: rotate(0); }
  100% { transform: rotate(360deg); } 
}

fieldset.contact button.formSubmit.loading {color: rgba(255,255,255, 0.0); }

/* -- Patienten Kontakformular -- */
a.submit { 	
    cursor: pointer;
	color: black;
	background-color: #c8a96e;
	border:0;
	border-color: #c8a96e;
	margin: 0 0.3rem 0 0;
	border-radius: 30px;
	height: 2rem;
	padding: 0 1rem;
	outline: 0;
    line-height: 2rem;
    display: inline-block;
    font-weight: 600;
    overflow: hidden;
}
a.submit.large {height: 3em; line-height: 3em;padding: 0 2rem;}
a.submit.loading {
        position: relative;
    }
a.submit.loading::before,a.submit.loading::after {content:""; position: absolute;}
a.submit.loading::before { width: 100%; height: 100%;background-color: #c8a96e; z-index: 2; left: 0; top: 0}
a.submit.loading::after {
            display: block;width: 20px; height: 20px; z-index: 3;
            left: 50%; top: 50%; margin-left: -10px; margin-top: -10px;
            border-radius: 50%;
            border: 3px solid;
            border-color: #fff transparent #fff transparent;
            animation: lds-dual-ring 1.2s linear infinite;
        }
a.submit:hover { background: #d4ba84; text-decoration: none}

@keyframes lds-dual-ring {
  0% {transform: rotate(0deg)}
  100% {transform: rotate(360deg)}
}


#kontaktformular_check table {
        margin-bottom:30px; width:100%; border-top:1px solid #ddd;
    }

:is(#kontaktformular_check table) th,:is(#kontaktformular_check table) td{ padding:10px 0; border-bottom:1px solid #ddd; vertical-align:top}

:is(#kontaktformular_check table) th{ text-align:left; font-weight: 600; padding-right:10px; width:200px}

#kontaktformular_check .buttons {
        margin-bottom:30px;
    }

:is(#kontaktformular_check .buttons) a.submit { margin-left:0; float:right}
/* -- Klinikdetail Kontakformular -- */
fieldset#contact h4{ color: var(--headline-color); margin-bottom: 30px; padding-top: 20px;line-height: normal}
fieldset#contact label { width:200px; vertical-align:middle; display:table-cell; padding-right:15px; padding-top:10px}
fieldset#contact .field {
        display:table-cell; padding-top:10px;position:relative;
    }
:is(fieldset#contact .field) label { display:block; width:auto; padding-top:0 }
:is(fieldset#contact .field) .option {
            clear:both;
        }
:is(:is(fieldset#contact .field) .option) input { float:left; margin-right:10px; position:relative; top:3px}
fieldset#contact .formItem { margin-bottom:10px; display:table; border-top:1px solid #ddd; width:100%; }
fieldset#contact select,fieldset#contact input[type="text"],fieldset#contact textarea { padding:7px 10px; font-size:13px; width:395px; border:1px solid #ddd}
fieldset#contact textarea {height:100px}
fieldset#contact .selectboxit-container {
        display:block;
    }
:is(fieldset#contact .selectboxit-container) .selectboxit {background:#fff; width:100% !important}
:is(fieldset#contact .selectboxit-container) .selectboxit-btn { font-weight:normal; font-size:13px; color:#333; border-color:#ddd}
:is(fieldset#contact .selectboxit-container) .selectboxit-options { min-width:100% !important}

/* -- Experten Detail - Routelplaner -- */
.wizard-steps {
    width: 100%; display: table; margin-bottom: 38px;
}
.wizard-steps .step {
        display: table-cell; vertical-align: middle;
    }
:is(.wizard-steps .step) .circle{
            width: 60px; height: 60px; font-size: 30px; text-align: center; line-height: 60px;
            background: #d2d2d2; color: #fff; display: inline-block;border-radius: 50%;
        }
:is(.wizard-steps .step) .label {padding-left: 10px; font-size: 20px}
.active:is(.wizard-steps .step) .circle{background:#81abb9}
.secure-icons { text-align: right; padding: 0 0 38px 0}

.btn-wrap.alignright {text-align: right; margin-bottom: 38px; margin-left: 20px}

.wizard-btn-wrap {
    display: flex;flex-direction: row;flex-wrap: nowrap;
    justify-content: flex-end;align-content: stretch;align-items: flex-start;
}

.wizard-btn-wrap a.submit.large {margin-right:0 !important; margin-left: 20px; display: block; text-align: center}
div.info { padding-left: 30px; margin-bottom: 38px}
p.info { margin-top:30px}
.secure-info {color:#3d9b3c}
.secure-info::before { margin-right: 10px; position: relative; top: 2px}

fieldset.sign-up {
    padding: 2rem; background: var(--light-blue);
}

fieldset.sign-up label {
        display: inline-block;
        line-height: 1.4rem;
        padding-top: 0.3rem !important;
        padding-bottom: 0.3rem !important;
        margin-bottom: -0.1rem;
        font-weight: 500;
        position: relative;
        z-index: 1
    }

fieldset.sign-up .formItem { margin-bottom: 10px}

fieldset.sign-up input[type="text"],fieldset.sign-up input[type="number"],fieldset.sign-up input[type="tel"],fieldset.sign-up input[type="email"],fieldset.sign-up textarea { border: 1px solid #fff; width: 100%}

fieldset.sign-up input[type="number"],fieldset.sign-up input[type="email"],fieldset.sign-up input[type="tel"],fieldset.sign-up input[type="text"] {width: 100%;padding: 0.7rem 1rem; }

fieldset.sign-up textarea {min-height: 110px;padding: 0.7rem 1rem}

fieldset.sign-up .selectboxit-container {
        display:block;
    }

:is(fieldset.sign-up .selectboxit-container) .selectboxit {background:#fff; width:100% !important}

:is(fieldset.sign-up .selectboxit-container) .selectboxit-btn { font-weight:normal; font-size:1rem; color:#333; border-color:#fff;padding: 0.7rem 1rem;}

:is(fieldset.sign-up .selectboxit-container) .selectboxit-options { min-width:100% !important}

:is(fieldset.sign-up .selectboxit-container) span { height: auto; line-height: 150%}

:is(fieldset.sign-up .selectboxit-container) .selectboxit-list {font-size: 1rem}

:is(fieldset.sign-up .select2) .select2-selection__arrow {
            width:10px; height: 10px; right: 20px; top: 15px;
        }

:is(:is(fieldset.sign-up .select2) .select2-selection__arrow) b{ display: none}

:is(fieldset.sign-up .select2) .select2-selection__rendered {
            border: 0;	width: 100%;
            padding: 0.7rem 1rem; font-family: "Arial",sans-serif;
            font-size: 1rem;line-height: normal
        }

fieldset.sign-up .select2-container {
        overflow: visible;
    }

:is(fieldset.sign-up .select2-container) .select2-selection--single { height: auto}

fieldset.sign-up .select2-container--default .select2-selection--single{ border-color: #fff;}

fieldset.sign-up .formCheckbox.formError label i,fieldset.sign-up .formRadio.formError label i,fieldset.sign-up .formError .checkbox-wrap i,fieldset.sign-up .formError .selectboxit-container,fieldset.sign-up .formError input[type="email"],fieldset.sign-up .formError input[type="tel"],fieldset.sign-up .formError input[type="number"],fieldset.sign-up .formError input[type="text"],fieldset.sign-up .formError textarea { border: 1px solid var(--error-color)}
.selectboxit .selectboxit-arrow-container {}
.selectboxit .selectboxit-arrow-container .selectboxit-default-arrow { 
    background: transparent; width: 10px; height: 10px;border-right: 2px solid #555; border-bottom: 2px solid #555;
    transform: rotate(45deg); margin-top: 5px; right: 20px;
}
.select2-container--open {overflow: visible}

/* -- Sprachmenu -- */
fieldset.langSwtich { 
    margin-bottom:0; font-size: 12px; z-index: 12;color: #25262b;
}
fieldset.langSwtich .formItem { display: flex;flex-direction: row; align-items: center}
fieldset.langSwtich label{ line-height: 265%}
fieldset.langSwtich select{
        height:30px; padding:0 10px 0 10px; border: 0; background: transparent; font-size: 11px;color: #fff;
        -webkit-appearance: auto; cursor: pointer;
    }
:is(fieldset.langSwtich select) option{color: black }
fieldset.langSwtich .goog-te-gadget {
        font-size: 0;height: 30px;
    }
:is(fieldset.langSwtich .goog-te-gadget)  > span {display: none}
:is(fieldset.langSwtich .goog-te-gadget) .goog-te-combo {margin: 0}
fieldset.langSwtich .lang-select {
        background: transparent; padding-right: 20px;width: 80px;
        position: relative; height: 30px;
    }
:is(fieldset.langSwtich .lang-select) ul {
            padding-left: 0; list-style: none; position: absolute; top: 0;
            left: 0; width: 100%; background: var(--body-color);
            transition: opacity 250ms ease, transform 250ms ease; 
            display: flex; height: -webkit-fill-available; align-items: center; height: -moz-available; flex-wrap: wrap;
        }
:is(:is(fieldset.langSwtich .lang-select) ul) li {
                padding:0 10px;
            }
:is(:is(:is(fieldset.langSwtich .lang-select) ul) li) a {
                    color: #25262b; display: block;
                }
:is(:is(:is(:is(fieldset.langSwtich .lang-select) ul) li) a):hover { color: var(--color-yellow);}
:is(fieldset.langSwtich .lang-select)::before {
            font-family: "leading" !important;font-style: normal !important;
            font-weight: normal !important;font-variant: normal !important;
            text-transform: none !important;speak: none;line-height: 1;
            -webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;
            content:'\0054'; position: absolute; right: 5px; top: 8px; z-index: 5;
            pointer-events: none
        }
.open:is(fieldset.langSwtich .lang-select) ul {
            opacity: 0;
            transform: translateY(-6px);
            animation: menuSlideDown 350ms cubic-bezier(0.2, 1, 0.3, 1) forwards;
            height: auto;
            padding-top: 5px;
        }
.open:is(fieldset.langSwtich .lang-select) ul li.active {font-weight: 600}
.open:is(fieldset.langSwtich .lang-select)::before {transform: rotate(180deg); }
fieldset.langSwtich.gt {
        top:0;
    }
fieldset.langSwtich.gt label{ display:none}
.google-trans + script + script + fieldset.langSwtich { display:none}

/* -- Anfahrt - 2019  -- */
fieldset.route {
    padding: 2rem; background: #f2efe8;
}
fieldset.route label {
        display: block;line-height: 1.4rem;padding-top: 0.3rem !important;margin-bottom: 10px;
        padding-bottom: 0.3rem !important;color: #5a4123;font-weight: 500
    }
fieldset.route input.formText{ border: 1px solid #fff; height: 2rem; padding:0 10px; width: 66.666666%; float: left}
fieldset.route button {
        width: 31.333333%; margin-left: 2%; height: 2rem; padding: 0 1rem; font-size: 1rem;
        border-radius: 20px;
    }

/* -- Schnellsuche -- */
fieldset.quickFinder { 
    position: absolute;bottom: 0;width: 100%;margin-bottom: 0;
    z-index: 3; box-shadow: 0 5px 10px rgba(0,0,0, .15);
}
:is(:is(fieldset.quickFinder .flexgrid) > .box):last-child{ padding-right: 0; align-content: center;}
:is(fieldset.quickFinder .flexgrid)  > .box-80{ position: relative}
fieldset.quickFinder label,fieldset.quickFinder .box-20 > strong {display: none; color: #fff; font-weight: 600; text-align: center; padding: 10px 0;}
fieldset.quickFinder select,fieldset.quickFinder input.formText {
        margin: 0;padding: 0 20px;width: 100% ;
        border: 0;height: 45px;line-height: 30px;color: #535049;font-size: 100%;
        border-radius: 50px 0px 50px 50px;
        border-radius: 50px 0px 0px 50px;
        background: transparent;
    }
fieldset.quickFinder button.formSubmit {
        margin: 0;border: 0 !important;height: 45px;
        line-height: 30px;padding: 0;color: #0f1117;
        overflow: hidden;background-color: #c8a96e;width: 100%;
        font-size: 16px; font-weight: 600;
        border-radius: 50px;
    }
:is(fieldset.quickFinder button.formSubmit):hover { background: #d4ba84 }
:is(fieldset.quickFinder button.formSubmit):focus-visible { outline: 3px solid #25262b; outline-offset: 3px; }
fieldset.quickFinder .advanced-search {background: #fff;position: absolute; bottom: 0; left: 0; right: 0;border-radius:0 0 15px 15px;}

/* -- Med Redaktion Checkbox Filter-- */
fieldset.select {
    background:#f2efe8; padding:20px 20px 15px; margin-bottom:0;
}
fieldset.select .formItem { position:relative; margin-bottom:5px}
fieldset.select input { position:absolute; left:0; opacity:0}
fieldset.select label {
        color:#777; font-size:13px; cursor:pointer;
    }
:is(fieldset.select label) i{
            width:14px; height:14px; background:#fff; border:1px solid #efefef;display:block; float:left; margin-right:10px;
            border-radius:50%; position:relative; top:3px;
        }
:is(:is(fieldset.select label) i)::before {
                content:""; width:6px; height:6px;border-radius:50%;
                background:#a97b22; display:block; position:relative;
                transform: scale(0); left: 3px;top: 3px;
                transition: transform 250ms ease-out;
            }
:is(fieldset.select label) span.star::after {content:"★"; color:#ccc; padding:0 5px}
fieldset.select input[type="radio"]:checked + label i:before{transform: scale(1)}

/* -- -- */
#suggestions {
    position:absolute; left:-10px; right:0;bottom:0; padding:0 30px;
}
#suggestions .autocomplete-suggestions{
        width: auto !important;border:1px solid #ddd;  padding:20px;left: 30px;right: 30px;
        max-height: 75vh !important; overflow: auto !important;
    }
#suggestions .flexgrid {
        border-bottom:1px solid #eee; width:auto !important;
    }
:is(#suggestions .flexgrid):last-child { border-bottom:0}
:is(#suggestions .flexgrid) .box { padding:15px 0; overflow:hidden}
:is(:is(#suggestions .flexgrid) .box-33) strong {color: #777; font-size: 17px;font-weight: normal}
:is(:is(#suggestions .flexgrid) .box-33) small {line-height: normal; display: block; font-size:12px}
:is(:is(#suggestions .flexgrid) .box-33) strong em {font-style: normal;color: #333}
:is(#suggestions .flexgrid) .box-66 {font-size: 13px;line-height: 20px}
:is(#suggestions .flexgrid) .box-100 {
            font-size: 13px;line-height: 20px;
        }
:is(:is(#suggestions .flexgrid) .box-100) a.link{ background-position: left 5px;}
:is(:is(#suggestions .flexgrid) .box-100) a.link + a.link { margin-top: 20px}
:is(:is(#suggestions .flexgrid) .box-100) strong { display: block; font-size: 16px}
:is(:is(#suggestions .flexgrid) .box-100) small { line-height: 100%; display: block;margin-top: 4px;}
#suggestions a.link {padding-left: 15px;background: url(/gfx/orange-arrow-rt-sm.png) no-repeat left 6px;display: block;color: #333}
#suggestions a::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;	height: 0}
#suggestions a.doc,#suggestions a.clinic{
        padding-left:0 !important; background:transparent !important; overflow:hidden; padding-bottom:5px; min-height:50px; padding-top: 2px;
    }
:is(#suggestions a.doc,#suggestions a.clinic):last-child{ margin-bottom:0}
:is(#suggestions a.doc,#suggestions a.clinic) .img {float: left;display: block; height:26px; width:26px;border-radius: 50%; overflow:hidden}
:is(#suggestions a.doc,#suggestions a.clinic) img{ display:block; object-fit: contain; width: 100% !important; height: 100% !important}
:is(#suggestions a.doc,#suggestions a.clinic) .txt {
            line-height: normal; margin-left: 40px; padding-bottom: 5px; display:block;
        }
:is(:is(#suggestions a.doc,#suggestions a.clinic) .txt) strong { display:block; font-weight:normal; margin-top:-3px}
:is(:is(#suggestions a.doc,#suggestions a.clinic) .txt) small{ display:block}
#suggestions .formItems.loader::before {
        content: " "; display:block; width:20px;
        height:20px; background-image:url(../images/loader-suggest.gif);
        position:absolute; right:12px; top:12px;
    }

:is(#search-results .flexgrid) .box-100 {
            font-size: 13px;line-height: 20px;
        }

:is(:is(#search-results .flexgrid) .box-100) a.link{ background-position: left 5px;}

:is(:is(#search-results .flexgrid) .box-100) a.link + a.link { margin-top: 20px}

:is(:is(#search-results .flexgrid) .box-100) strong { display: block; font-size: 16px}

:is(:is(#search-results .flexgrid) .box-100) small { line-height: 100%; display: block;margin-top: 4px;}

/* -- Spezialisten für Behandlungsschwerpunkte - Kategorieübersicht -- */
.focus-areas { margin-bottom:30px}
.alphabet {
    font-size:16px; display: table; width: 100%; table-layout: fixed; margin-bottom: 20px;
}
.alphabet a,.alphabet span {
        display:table-cell; padding:0 6px 0 7px; background: var(--light-blue);
        border-left: 1px solid #fff; border-right: 1px solid #fff;
        text-align: center; font-weight: 600; line-height: 37px;
        margin-bottom: 2px;
    }
.alphabet a{
        color:var(--link-color);
    }
:is(.alphabet a):hover { color:var(--link-color); background: #f2f6f7; text-decoration: none}
.alphabet span {opacity: .5}

.pager {
    font-size:16px; display: flex; flex-direction: row;flex-wrap: wrap; margin-bottom: 20px;
}

.pager a {
        display:block; padding:0 12px; background: var(--light-blue);
        text-align: center; font-weight: 600; line-height: 50px;
        margin-bottom: 2px; min-width: 50px;color:var(--link-color);
    }

:is(.pager a):hover,.active:is(.pager a){ color:var(--link-color); background: #f2f6f7; text-decoration: none}

.pager span {
        display:block; padding:0 6px 0 7px; background: #f2f6f7;
        text-align: center; font-weight: 600; line-height: 50px;
        margin-bottom: 2px;opacity: 0.5;min-width: 50px
    }

.letterBox {
    width:100%; border-bottom:2px solid #dcd9d0;
}

.letterBox .box-25{ padding:20px; text-align:center}

.letterBox .box-75 {padding:20px 0 1px; overflow:hidden}

.letterBox .letter {
        font-size:30px; display:inline-block; border-radius:50%;
        background:#f6f6f6; border:1px solid #e0e0e0; width:48px; height:48px; text-align:center; line-height:44px; color:#777;
    }

.letterBox a {
        color:#5a4123; display:block; width:274px; margin-left:30px; float:left;
        background:url(../gfx/orange-arrow-rt.png) no-repeat left center; padding:2px 2px 2px 30px; margin-bottom:15px;
    }

:is(.letterBox a):hover { color: #a97b22; text-decoration: none}

/* -- Klinikdetail - Klinikinformationen -- */
.klinikInfo h2 {border-bottom:1px solid #ddd; padding-bottom:25px}
.klinikInfo h3 a{ color:#333}
.klinikInfo .row{ margin-left:-30px}
.klinikInfo .box {
        width:276px; border-bottom:1px solid #ddd; padding-bottom:25px;
    }
:is(.klinikInfo .box) .img { border-radius:50%; width:80px; height:80px; display:block; overflow:hidden; float:left; margin-right:15px}
:is(.klinikInfo .box) img { width:auto !important; height:auto !important; min-height:80px; min-width:80px; max-width:80px}
:is(.klinikInfo .box) .info{ min-height:70px; padding-bottom:5px}
:is(.klinikInfo .box) .inner {
            overflow:hidden;
        }
:is(:is(.klinikInfo .box) .inner) em { font-style:normal; font-size:11px}

/* -- Klinik Bild - Experten Detail -- */
.klinikImg {
    position:relative; margin-bottom:30px; height:436px; border-bottom:1px solid #ddd; overflow:hidden;
}
.klinikImg img { display:block}
.klinikImg a.opener {
        display:block; padding:24px 20px;background: #f6f6f6; color:#777; font-weight: 600; position:absolute; bottom:0; left:0;right: 0;
    }
:is(.klinikImg a.opener) i {
            display:block; float:left; width: 17px;height: 17px;background: #a97b22;line-height:16px; font-size:14px;font-weight:normal; position:relative;
            border-radius: 50%; text-align:center; margin-right:10px; font-style:normal; top:1px;
        }
:is(:is(.klinikImg a.opener) i)::before,:is(:is(.klinikImg a.opener) i)::after {content:""; display:block; width:9px; height:1px; position:absolute; left:4px; top:50%; background:#fff; margin-top:-1px}
:is(:is(.klinikImg a.opener) i)::after {transform: rotate(90deg)}
.cat-wrap h2 {font-weight: 500;color: var(--headline-color);margin: 0;padding: 37px 0 54px 0}
.topics + .cat-wrap h2 { padding: 0 0 50px}
.node.sticky + .cat-wrap { margin-top: -30px}

/* -- Behandlungsschwerpunkte & Themenüberischt -- */
.topics,
.schwerpunkte { margin-bottom:54px; margin-top: 54px}


h4#icd-map,
.cat-group h2,
.topics h2,
.topics > h4,
.schwerpunkte h2,
.cat-group .title,
.topics .title,
.topics > .title,
.schwerpunkte .title{
    color: var(--headline-color); margin-bottom:0; padding: 17px 30px; font-weight: 600;
}
.cat-group h2,
.topics h2,
.schwerpunkte h2 { font-size:1.375rem; font-weight: 500;}

.topics h3 { margin-top: 30px; padding: 0 30px; font-weight: 600; font-size: 20px;}
h4#icd-map { margin-bottom:38px}

.cat-group .title,
.topics .title,
.topics > .title,
.schwerpunkte .title{font-size: 22px;line-height: 1; font-weight: 600; background: transparent; }

.cat-group .flexgrid,
.topics .row { padding:0}

.topics .row ul,
.schwerpunkte ul{ list-style:none; padding:0; position: relative}

.schwerpunkte ul{padding: 20px 0}

.cat-group .box,
.topics .row ul li,
.schwerpunkte ul li{ border-bottom: 1px solid #95afb4}

.topics .row ul::before {content: ""; background:#95afb4; position: absolute; left: 0; bottom: 0; right: 0; height: 1px;}

.cat-group .box:last-child,
.topics .row ul li:last-child,
.schwerpunkte ul li:last-child { margin-bottom:0;}

.cat-group .box a,
.topics .row ul li a,
.topics .row ul li span,
.schwerpunkte ul li a{ color:var(--link-color); display:block;padding: 10px 10px 10px 50px;font-size: 1rem;line-height: 120%; font-weight: 600}

.cat-group .box a:hover,
.topics .row ul li a:hover,
.schwerpunkte ul li a:hover{color:#a97b22; text-decoration: none}

.topics .row ul li span { color: #5a4123}

.topics .row ul li a { position: relative}
.topics .row ul li a::before { 
     content:""; position: absolute;
    width: 8px; height: 8px; border-right: 2px solid #b18d47; border-top: 2px solid #b18d47; left: 30px; top: 50%;
    margin-top: -5px;
    transform: rotate(45deg);
}
.topics .row ul ul.topics-sub {padding-left:20px; padding-top: 5px;border-top: 1px solid #95afb4}
.topics .row ul ul.topics-sub li:last-child{ border-bottom: 0}

.topics ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
}
.topics .row > ul > li{width: 50%;flex: 0 1 50%;}
.topics .row > ul > li:first-child:last-child {width: 100%;flex: 0 1 100%;}
.topics .row > ul > li:first-child:last-child li { width: 100%}

.experten-detail .topics .row > ul > li{ width: 33.333333%; flex: 0 1 33.333333%;}

.topics.has-subItems .row > ul > li{width: 100%;flex: 0 1 100%;}
.topics.has-subItems .row > ul > li li{ width: 100%}
.topics.has-subItems .row > ul > li ul::before {display: none}

/* -- Schnellsuche  -- */
#search-results {
    border-bottom:1px solid #eee;
    margin-bottom:60px;
}
#search-results a.link {
        padding-left:15px; background:url(../gfx/orange-arrow-rt-sm.png) no-repeat left 6px; display:block; color:#333;
    }
:is(#search-results a.link) strong { font-weight:normal; color:#777}
#search-results .flexgrid {
        border-top:1px solid #eee; width:auto !important;
    }
:is(#search-results .flexgrid) .box { padding:15px 0}
:is(:is(#search-results .flexgrid) .box-33) strong{
                color:#777; font-size:17px; font-weight:normal;
            }
:is(:is(:is(#search-results .flexgrid) .box-33) strong) em{ font-style:normal; color:#333}
#search-results .doc {
        padding-bottom:10px; overflow:hidden; color:#333;
    }
:is(#search-results .doc) a{ color:#333; }
:is(#search-results .doc) span { display:block}
:is(#search-results .doc) .img {
            float:left; margin-right:10px; display:block; overflow:hidden; height:26px; width:26px;padding: 0;
            border-radius: 50%;
        }
:is(:is(#search-results .doc) .img) img { object-fit: cover; height: 100% !important; width: 100% !important}
:is(#search-results .doc) .txt {
            line-height:normal; overflow:hidden; padding-bottom:5px;
        }
:is(:is(#search-results .doc) .txt) strong{ margin-top:-3px; display:block; font-weight:normal}
:is(:is(#search-results .doc) .txt) small{ display:block; font-size:10px}
:is(#search-results .doc):hover span { text-decoration:underline}
:is(#search-results .doc):last-child { padding-bottom:0}
:is(#search-results .doc)::after {content: "";display: block;clear: both;visibility: hidden;line-height: 0;height: 0}
:is(#search-results .doc) a.link {font-size:11px; background-position:left center; margin-top:5px}
#mainContent #search-results {border-bottom:0; margin-bottom:0}

/* -- Kategorie Ergebnis --*/
.doc-filter {
    margin-bottom:0;
}
.doc-filter .btnYellow {
        background:var(--yellow-color) url(../gfx/white-arrow-rt.png) 20px center no-repeat;
        padding:15px 50px; display:block; color:#fff; font-size:17px; margin-bottom:10px
    }
.doc-filter .head {
        display:inline-block; width:100%; background:#f2efe8; border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:20px;
    }
:is(.doc-filter .head) button {
            font-size:30px; background:transparent;border:0; color:#ccc;
        }
:is(:is(.doc-filter .head) button) span {display:none; cursor:pointer}
.active:is(:is(.doc-filter .head) button){ color:#fab301}
:is(:is(.doc-filter .head) .fltrt) label { float:left; display:block; padding:5px 10px 5px 0}
.doc-filter fieldset {
        margin-bottom:0;
    }
:is(.doc-filter fieldset) label { display:none}
:is(.doc-filter fieldset) .formItem {
            float:left;
        }
.fltrt:is(:is(.doc-filter fieldset) .formItem) { margin-left:20px}
.doc-filter .selectboxit-btn { background: #fff; border-radius: 15px}
:is(.doc-filter .selectboxit-container) .selectboxit { width:185px; font-size:14px; font-weight:normal; }
:is(.doc-filter .selectboxit-container) .selectboxit,:is(.doc-filter .selectboxit-container) .selectboxit-arrow-container,:is(.doc-filter .selectboxit-container) .selectboxit-text {height:31px; line-height:31px}
:is(.doc-filter .selectboxit-container) .selectboxit-text { text-indent:12px; max-width:200px !important}
:is(.doc-filter .selectboxit-container) .selectboxit .selectboxit-arrow-container .selectboxit-arrow { margin-top:-7px}
:is(.doc-filter .selectboxit-container) .selectboxit-options{ font-size:14px; max-height:220px}
.doc-filter a.location-reset {
        text-decoration: none;background-color: #fbfcfa; color: #909090; border: 1px solid #efefee;
        height: 31px;line-height: 31px;display: block; text-align: center; width: 135px;
    }
:is(.doc-filter a.location-reset):hover {color: #fff;background:#a97b22; border-color:#a97b22}
.doc-filter .doctors{
        width:auto; padding:0; overflow:hidden; padding-bottom:30px; margin-bottom:0;
        display: flex;flex-direction: row;flex-wrap: wrap;
    }
:is(.doc-filter .doctors) li {
            width:33.333333%;  min-height:70px; margin-top:0;border-top:0; border-bottom:0; overflow:visible;
            display: flex;flex-direction: column;flex-wrap: wrap;
            justify-content: flex-start;align-content: stretch;
        }
:is(:is(.doc-filter .doctors) li):nth-child(3n-2) {padding-right: 10px}
:is(:is(.doc-filter .doctors) li):nth-child(3n-1) {padding-left: 5px; padding-right: 5px}
:is(:is(.doc-filter .doctors) li):nth-child(3n-0) {padding-left: 10px}
.doc-filter .doc {
        position:relative;padding:26px 0 28px 0;z-index:1;
        flex: 1 1 auto; display: flex; flex-direction: column;
        flex-wrap: wrap; margin-bottom: 0;
    }
:is(.doc-filter .doc) .flag {
            position: absolute; right: 10px; top: 30px; z-index: 3;
        }
:is(:is(.doc-filter .doc) .flag) img{ width: 25px}
:is(.doc-filter .doc) a { color:var(--link-color)}
:is(.doc-filter .doc) i.icon-location {
            width: 26px; height: 26px; line-height: 30px; color: #fff; text-align: center; font-size: 16px;
            background: #a97b22;display: block; float: left; margin-right: 10px; min-width: 26px;
            border-radius: 50%;
        }
:is(.doc-filter .doc) em{ font-size: 85%; font-style:normal; display: block;  margin-bottom: 15px; font-weight: 500}
:is(.doc-filter .doc) strong{
            font-weight:700; display:block; font-size: 1.1rem; line-height: 150%;
            flex: 1 1 auto;
        }
:is(:is(.doc-filter .doc) strong) a {
                padding-bottom: 10px;
            }
:is(:is(:is(.doc-filter .doc) strong) a):hover {color: #a97b22}
:is(.doc-filter .doc) .img { position: relative; z-index: 2;background: #f2efe8;padding: 10px 0}
:is(.doc-filter .doc) .small-siegel {
            position: absolute;right: 20px; bottom: 0;
        }
:is(:is(.doc-filter .doc) .small-siegel) img{ width: 65px !important; height: auto !important}
:is(.doc-filter .doc) .photo {
            width: 165px;height: 165px;padding:0;
            border-radius:50%;  border: 10px solid #fff; margin: 0 auto;
        }
:is(:is(.doc-filter .doc) .photo) img{ width:100%; height:auto !important;}
:is(.doc-filter .doc) a.photo:hover img{filter: grayscale(0) sepia(0) }
:is(.doc-filter .doc) .text {
            overflow:hidden; flex: 1 1 auto; display: flex; flex-direction: column;flex-wrap: wrap;
        }
:is(.doc-filter .doc) .range {
            text-align: center; font-size: 11px; clear: both; display: block; width: 80px; position: absolute; left: 0; bottom: 3px;
        }
:is(:is(.doc-filter .doc) .range)::before { font-size: 11px; margin-right: 4px; position: relative; top: 1px}
:is(.doc-filter .doc) a.more {
            font-size: 1.0rem;font-weight: 600;text-align: left;
            display: inline-block; margin-right: 10px;
            padding:10px 38px 9px;border-radius: 30px;color: #fff;
            background: #c49e4e; line-height: 100%;
        }
:is(:is(.doc-filter .doc) a.more):hover {background: #4c8d99;}
:is(.doc-filter .doc) a.btn-mail {
            width: 35px; height: 35px; color: #fff; background: #4c8d99; text-align: center; line-height: 42px;
            display: inline-block;padding: 0; font-size: 20px;  border-radius: 50%;
        }
:is(:is(.doc-filter .doc) a.btn-mail) span {display: none}
:is(:is(.doc-filter .doc) a.btn-mail):hover { background: #c49e4e;}
:is(.doc-filter .meta) a {
            color:#333;display:block; width:276px; margin-left:30px;border-top:1px solid #ddd; border-bottom:1px solid #ddd;
            background:#f8f7f5; float:left;padding:15px 30px;
        }
:is(:is(.doc-filter .meta) a):first-child { margin-left:0}
.doc-filter .map-head {
        padding:0 20px; background:#fcfcfa;
    }
.doc-filter .map-head-kliniken,.doc-filter .map-head-flughafen,.doc-filter .map-head-hotel {float: left;margin-left: 0;margin-right: 3px; background-repeat:no-repeat; background-position:right center}
.doc-filter .map-head-kliniken {background-image: url(../gfx/orange-arrow-rt.png);padding: 10px 25px 10px 0;margin-left: 2px;margin-right: 0}
.doc-filter .map-head-flughafen { background-image:url(../gfx/icon-plane.png);padding:10px 23px 10px 0; margin-left:2px}
.doc-filter .map-head-hotel { background-image:url(../gfx/icon-hotel.png);padding:10px 25px 10px 0; margin-left:2px; margin-right:0}
.doc-filter .map-opt {
        margin-left:20px;
    }
:is(.doc-filter .map-opt) i{ width:18px; height:18px; display:block; float:left; background-image:url(../gfx/checkbox.png); margin-right:10px}
.active:is(.doc-filter .map-opt) i{ background-position:bottom}
.doc-filter #gmap { margin-bottom:30px}
.doc-filter  + .row,.doc-filter  + .node { margin-top:30px}
.land-ch .doc-filter .head button.icon-map::before {content:'\004D'}
.land-at .doc-filter .head button.icon-map::before {content:'\004C'}

/* -- -- */
.doc-list .doctors{
        width:auto; padding:0; overflow:hidden; padding-bottom:30px;
        display: flex; flex-direction: row; flex-wrap: wrap; margin: 0 -16px;
    }
:is(.doc-list .doctors) li {
            width:25%;  min-height:70px; margin-top:0;border-top:0; border-bottom:0; overflow:visible;
            display: flex; flex-direction: column; flex-wrap: wrap;
            justify-content: flex-start; align-content: stretch; padding: 0 8px;
        }
.doc-list .doc {
        position:relative;padding:26px 0 28px 0;z-index:1;
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        margin-bottom: 0;
    }
:is(.doc-list .doc) a { color:var(--link-color)}
:is(.doc-list .doc) i.icon-location {
            width: 26px; height: 26px; line-height: 30px; color: #fff; text-align: center; font-size: 16px;
            background: #a97b22;display: block; float: left; margin-right: 10px;
            border-radius: 50%;
        }
:is(.doc-list .doc) em{ font-size: 85%; font-style:normal; display: block;  margin-bottom: 15px; font-weight: 500}
:is(.doc-list .doc) strong{
            font-weight:700; display:block; font-size: 1.1rem; line-height: 150%; flex: 1 1 auto;
        }
:is(:is(.doc-list .doc) strong) a {
               padding-bottom: 10px;
            }
:is(:is(:is(.doc-list .doc) strong) a):hover {color: #a97b22}
:is(.doc-list .doc) .img { position: relative; z-index: 2;background: #f2efe8;padding: 10px 0}
:is(.doc-list .doc) .small-siegel {
            position: absolute;right: 20px; bottom: 0;
        }
:is(:is(.doc-list .doc) .small-siegel) img{ width: 65px !important; height: auto !important}
:is(.doc-list .doc) .photo {
            width: 165px;height: 165px;padding:0; border-radius:50%;
            border: 10px solid #fff; margin: 0 auto;
        }
:is(:is(.doc-list .doc) .photo) img{width:100%; height:auto !important;}
:is(:is(.doc-list .doc) .photo):hover img{filter: grayscale(0) sepia(0) }
:is(.doc-list .doc) .text {overflow:hidden; flex: 1 1 auto;display: flex;flex-direction: column;flex-wrap: wrap;}
:is(.doc-list .doc) .range {
            text-align: center; font-size: 11px; clear: both; display: block; width: 80px; position: absolute; left: 0; bottom: 3px;
        }
:is(:is(.doc-list .doc) .range)::before { font-size: 11px; margin-right: 4px; position: relative; top: 1px}
:is(.doc-list .doc) a.more {
            font-size: 1.0rem;font-weight: 600;text-align: left;
            display: inline-block; margin-right: 10px;
            padding:10px 38px 9px;border-radius: 30px;color: #fff;
            background: #c49e4e; line-height: 100%;
        }
:is(:is(.doc-list .doc) a.more):hover {background: #4c8d99;}
:is(.doc-list .doc) a.btn-mail {
            width: 35px; height: 35px; color: #fff; background: #4c8d99; text-align: center; line-height: 42px;
            display: inline-block;padding: 0; font-size: 20px;border-radius: 50%;
        }
:is(:is(.doc-list .doc) a.btn-mail) span {display: none}
:is(:is(.doc-list .doc) a.btn-mail):hover { background: #c49e4e;}
:is(.doc-list .meta) a {
            color:#333;display:block; width:276px; margin-left:30px;border-top:1px solid #ddd; border-bottom:1px solid #ddd;
            background:#f8f7f5; float:left;padding:15px 30px;
        }
:is(:is(.doc-list .meta) a):first-child { margin-left:0}
.doc-filter .docs-wrapper {
        position: relative;
    }
:is(.doc-filter .docs-wrapper) .showMore-wrap {
            text-align: center;padding: 20px 0 65px; display: none;
            border-top: 1px solid #95afb4; margin-top: -285px; background: #fff;
            position: relative; z-index: 5;
        }
:is(:is(.doc-filter .docs-wrapper) .showMore-wrap)::before {
                content:""; height: 100px; position: absolute; left: 0; right: 0; top: -101px;
                background: linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
                border-bottom: 10px solid #fff;
            }
:is(:is(.doc-filter .docs-wrapper) .showMore-wrap) a {
                font-size: 1.0rem;font-weight: normal;text-transform: initial;
                text-align: left;display: inline-block;padding: 3px 38px 3px 18px;
                border-radius: 30px;color: #fff;background:#c8a96e;position: relative;

            }
:is(:is(:is(.doc-filter .docs-wrapper) .showMore-wrap) a):hover {background: #538b98; text-decoration: none}
:is(:is(:is(.doc-filter .docs-wrapper) .showMore-wrap) a)::before {
                    content: "";width: 10px;height: 10px;
                    display: block;right: 20px;position: absolute;
                    top: 50%;margin-top: -5px;border-top: 2px solid #fff;
                    border-right: 2px solid #fff;left: auto;background: none;
                    transform: rotate(45deg);
                }
.closed:is(.doc-filter .docs-wrapper) {
            overflow: hidden;
        }
.closed:is(.doc-filter .docs-wrapper) ul {
                margin-bottom: -100px;
            }
:is(.closed:is(.doc-filter .docs-wrapper) ul) li:nth-child(1n + 7){ display: none !important}
.closed:is(.doc-filter .docs-wrapper) .showMore-wrap{ display: block}
/* -- DocFilter v2 mit Tabs -- */
.doc-filter.v2 .tab-head {

        }
.doc-filter.v2 .tabs {
            margin-bottom: 37px;
        }
:is(.doc-filter.v2 .tabs) li {
                margin-bottom: -1px; margin-right: 20px;
            }
:is(:is(.doc-filter.v2 .tabs) li) a{
                    display: block; color: var(--link-color); font-size: 1.0rem;
                    line-height: 200%; border-bottom: 1px solid transparent;
                }
:is(:is(:is(.doc-filter.v2 .tabs) li) a):hover{ text-decoration: none; color: #a97b22}
.active:is(:is(.doc-filter.v2 .tabs) li) a{border-bottom: 1px solid #4c6165}
:is(:is(.doc-filter.v2 .tabs) li) button.info-btn{
                    cursor: pointer;color:#fff;background: #c49e4e;
                    border: 0;font-weight: 600;
                    border-radius: 5px;padding: 7px 10px 7px 40px;
                    position: relative;
                }
:is(:is(:is(.doc-filter.v2 .tabs) li) button.info-btn):hover{background: #4c8d99}
:is(:is(:is(.doc-filter.v2 .tabs) li) button.info-btn)::before{
                        content:"!"; font-weight: 600; font-size: 12px;
                        width: 20px; height: 20px; line-height: 16px;
                        border-radius: 50%;border: 2px solid #fff;
                        display: inline-block;position: absolute;
                        left: 10px; top: 7px;text-indent: 1px;
                    }
.doc-filter.v2 .tab-content {
            padding: 10px 20px; background: #f2efe8; display: none; border-radius: 5px;
        }
.active:is(.doc-filter.v2 .tab-content) { display: block}

@media screen and (max-width: 736px){
	.doc-filter .docs-wrapper.closed ul li:nth-child(1n+4){ display: none !important}
}

:is(#filter-location fieldset)::before { font-size:26px; color: #888;float: left; position: relative; top: 1px}

:is(#filter-location fieldset) .formItem {
            margin-left: 50px;float: none !important;
        }

:is(:is(#filter-location fieldset) .formItem) input { width: 100%; padding: 5px; font-size:16px; border: 0; background-position: 98% center}

#filter-location .suggest-list {
        position: relative; z-index: 5; margin-left: 50px;margin-right:0;
    }

:is(#filter-location .suggest-list) ul{
            position: absolute; left: 0; right:0; background: #fff; list-style: none; margin: 0; padding: 0; border: 1px solid #EFEFEE;
        }

:is(:is(#filter-location .suggest-list) ul) li {
                border-top: 1px solid #EFEFEE;
            }

:is(:is(:is(#filter-location .suggest-list) ul) li):first-child { border-top: 0}

:is(#filter-location .suggest-list) a{
            display: block; padding: 10px 10px 10px 30px; color: #777; position: relative;
        }

:is(:is(#filter-location .suggest-list) a) strong{ color: #000}

:is(:is(#filter-location .suggest-list) a)::before {margin-right: 20px; color: #BDBDBD; position: absolute; left: 5px; top: 11px; font-size:15px}

:is(#filter-city fieldset) .formItem { margin-right: 20px; width: 42%}

:is(#filter-city fieldset) .selectboxit-container {
            display: block;
        }

:is(:is(#filter-city fieldset) .selectboxit-container) .selectboxit { width:100%}

:is(#filter-city fieldset) button {
            width: 31px; height: 31px; line-height: 36px; text-align: center; background: #a97b22; cursor: pointer;
            font-size:15px;color: #fff; border: 0; border-radius: 50%;
        }

:is(:is(#filter-city fieldset) button) span { display: none}

:is(:is(#filter-city fieldset) button):hover { background: #71a0ae }

/* -- -- */
#experten.prof-box {
    margin-left:-30px; padding-bottom:20px;
}
#experten.prof-box .placeholder { height:20px; width:100%; clear:both}
#experten.prof-box .doc {
        padding-bottom:0; position:relative; margin-bottom:10px;
    }
:is(#experten.prof-box .doc) .options{ position:absolute; bottom:0; left:0;right:0}
#experten.prof-box .node,#experten.prof-box .accordion { margin-left:30px}
#experten.prof-box a.moreCriteria { margin-left:30px}
#experten.prof-box .criteria { margin-left:15px; border-top:0; margin-right:-15px}
#experten.prof-box a.moreDoc { background-position:858px 15px}

/* -- Experten -- */
#experten { margin-left:-30px; margin-bottom:14px}

.expert {
    width:276px; float:left; margin:0 0 30px 30px;
}

.expert .doc-wrap{ padding:30px 18px; background-image:none}

.expert figure { position: relative; margin-bottom: 20px; background: #f2efe8; padding: 15px 0}

.expert .photo {
        overflow:hidden; width:165px; height:165px;border-radius: 50%;
        display:block; margin:0 auto 0; position:relative; z-index: 2;
        box-shadow: -4px 4px 9px rgba(0,0,0, .45);
    }

:is(.expert .photo) img{ display:block; position:relative; z-index:1; width: 100% !important; height: 100% !important; object-fit: cover}

.expert .about {
        overflow:hidden;
    }

:is(.expert .about) h3{
            margin-bottom: 10px;
        }

:is(:is(.expert .about) h3) a{ color: var(--headline-color)}

:is(.expert .about) .location {
            font-size: 85%; font-style: normal; margin-bottom: 20px; font-weight: 500;
        }

:is(:is(.expert .about) .location) i {
                width: 26px;height: 26px;line-height: 30px;color: #fff;
                text-align: center;font-size: 16px;background: #a97b22;
                display: block;float: left;margin-right: 10px;
                border-radius: 50%;
            }

.expert span.flag {
        display:inline; position:relative; left:10px; top:1px;
    }

:is(.expert span.flag) img { width:16px}

.expert ul.options {
        border-top:1px solid #ddd; border-bottom:1px solid #ddd; height:75px; font-size:11px; padding:13px 20px; list-style:none;
    }

:is(.expert ul.options) li {
            float:left; width:50%;
        }

:is(:is(.expert ul.options) li) a{ color:#333; padding-left:20px; background:url(../gfx/orange-arrow-rt-sm.png) left center no-repeat}

.expert a.more {
        font-size: 1.0rem;display: inline-block;
        padding: 6px 20px 6px; border-radius: 30px;
        color: #fff; background: #c49e4e;
        margin-right: auto;
    }

:is(.expert a.more)::before { display: none}

.expert a.mobioverlay:hover + figure::before{ background: #8a8980 }

:is(.expert:hover .about) h3 a{ color: #a97b22}

:is(.expert:hover .about) .location i { background: #535049}

.expert:hover a.more {background: #508c9b;}
#mainContent .expert .about p { margin-bottom:10px; font-size:13px; line-height: 20px; font-weight: 500}

#experten.flexgrid {
    margin-left: 0;
}

#experten.flexgrid .box {
        display: flex; flex-direction: column;
        flex-wrap: nowrap;justify-content: flex-start;
        align-content: stretch; align-items: stretch;
    }

#experten.flexgrid .expert {
        width: auto; margin: 0 0 30px; float: none; position: relative;
        flex: 1 1 auto;display: flex;flex-direction: column;
        justify-content: flex-start;align-content: stretch;
    }

:is(#experten.flexgrid .expert) .doc-wrap{
            padding: 0;flex: 1 1 auto;display: flex;
            flex-direction: column;justify-content: flex-start;align-content: stretch;
        }

:is(#experten.flexgrid .expert) .about {
            flex: 1 1 auto;display: flex;flex-direction: column;
            justify-content: flex-start;align-content: stretch;
        }

:is(:is(#experten.flexgrid .expert) .about) h3 { flex: 1 1 auto; padding-top: 0 }

:is(:is(#experten.flexgrid .expert) .about) a.mobioverlay { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 4; display: block}
.experten-wrap h2 {
	font-weight: 500;
	color: var(--headline-color);
	margin: 0; font-size:1.875rem;
	margin-bottom: 20px;
    padding: 0;
    font-size: 20px;
}
.experten-wrap h3 { font-size: 1.125rem}
.experten-wrap .expert .photo { width: 170px !important; height: 170px !important}

/* -- Experten Detail -- */
.block-leitung .expert{
        margin-left:0;
    }
:is(.block-leitung .expert) ul.options { height:69px}
:is(:is(.block-leitung .expert) .about) h3 {color:var(--headline-color)}
:is(:is(.block-leitung .expert) .about) p { font-size:11px; line-height:normal}
/* -- -- */
.contact-data{
    background:#f8f7f5;padding:11px 10px 10px 15px;overflow:hidden;border:1px solid #e4e1d9;margin:0 0 -1px; position: relative;z-index: 500;
}
.contact-data strong{
        display:block;font-weight:normal;color:#3b3b3b;line-height:15px;
    }
.kontakttext:is(.contact-data strong){line-height:18px}
.contact-data span{
        display:block;line-height:15px;float:none !important;
    }
:is(.contact-data span) small { font-size:11px; line-height:normal; color:#999; display:block}
.label:is(.contact-data span) {display:block;float:left !important;margin-right:3px}
.number:is(.contact-data span) {
            display:block; overflow:hidden; position:relative;
        }
.number:is(.contact-data span) a{
                position:absolute;font-size:11px;text-decoration:none;padding:0 !important;
                background:url(../images/phone-overlay.png) right repeat-y !important;
                text-align:right;display:block;left:0;right:0;top:0;bottom:0;border:0 !important;
            }
[href^=tel]:is(.number:is(.contact-data span) a) {color: inherit;text-decoration: none;position:static;font-size:12px; display:inline; background:none; text-align:left}
.contact-data  > span::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;height: 0}
.contact-data .yellowblock {
        display:block; line-height:15px;background: url("../images/bullet01.png") no-repeat -575px -748px #FAB301;
        color: #FFF; padding: 7px; padding-right: 25px; font-size: 11px;cursor: pointer;
    }
.leben:is(.contact-data .yellowblock) {background: url("../images/bullet01.png") no-repeat -625px -748px #FAB301}
.contact-data a{color:#3b3b3b}
.contact-data.buttonblock { border-bottom: none; border-top: none; padding-bottom: 0}
.contact-data.lastbuttonblock {border-top: none}
.contact-data:first-child{padding-top:14px}
.contact-data.button-date .yellowblock,.contact-data.button-mail .yellowblock {padding:15px 10px 15px 7px}

/* -- -- */
.alphabet-wrap h3{color: var(--headline-color);margin: 0;padding: 0 0 37px 0}
.alphabar h2 { margin:0; padding:9px 0}
.alphabar fieldset {
        width:33.333333%; float:left; position:relative; margin-bottom:0;
    }
:is(.alphabar fieldset) .formItem {
            position:relative;
        }
:is(:is(.alphabar fieldset) .formItem) label {position:absolute; left:0; top:0; padding:10px 8px; font-size:14px; z-index:2; cursor:text; right:0}
:is(:is(.alphabar fieldset) .formItem) .loader{
                display:none;width:16px;height:16px;background-image:url(../images/ajax-loader.gif);
                position:absolute;right:10px;top:10px;	z-index:3
            }
:is(.alphabar fieldset) input { background:url(../gfx/icon-lupe.png) 10px center no-repeat; width: 100%}
:is(.alphabar fieldset) .loading .loader{ display:block}

.autocomplete-suggestions {position:absolute;margin:0;padding:0;background-color:#fff;border:1px solid #e8e5de;border-bottom:0;width:274px;z-index:888;	overflow:auto}
.autocomplete-suggestions .autocomplete-suggestion{display:block;padding:5px 10px;color:#333;border-bottom:1px solid #e8e5de;cursor:pointer}

.autocomplete-suggestions .autocomplete-suggestion:hover,
.autocomplete-suggestions .autocomplete-selected { text-decoration:none; background-color:#f2efe8}

@media screen and (-webkit-min-device-pixel-ratio:0) { 
	.alphabar fieldset .formItem label {padding:11px 8px}
}   
.alphabar fieldset .formItem input,
.searchbar fieldset .formItem input {border:1px solid #ddd;position:relative;z-index:1;padding:13px 5px}

.alphabar fieldset .formItem label,
.alphabar fieldset .formItem input,
.searchbar fieldset .formItem label,
.searchbar fieldset .formItem input { padding-left:35px; width:276px}

.alphabar .alphabet {font-size:16px; padding:10px 0; overflow:hidden; text-align:right; white-space:nowrap}
.alphabar .alphabet a {color:#333;text-decoration:none}

.alphabar .alphabet a.active { color:#d79b00}
.alphabar .alphabet span.disabled {color:#999;text-decoration:none}
.alphabar .alphabet a:hover { color:#d79b00}

/* -- Partnerübersicht-- */
.partners{
    position:relative;padding-top:30px;
}
.partners .box {display: flex; margin-bottom: 30px;flex-direction: column;}
.partners .partner-col{
        padding:0 0 12px; position:relative;display: flex;
        flex-direction: column;flex: 1 1 auto;
    }
:is(.partners .partner-col) div{padding:0 0 80px; flex: 1 1 auto}
.partners .partner-logo{
        border-top:1px solid #d1ccbe;border-bottom:1px solid #d1ccbe; vertical-align:middle;
        text-align:center;padding:10px 0; display: block;
    }
:is(.partners .partner-logo) img{display:inline-block}
.partners .partner p{margin:0 0 16px}
@media screen and (max-width: 680px){
    .partners .box-33 {width:100%}
}

a.partner-link{
	position:absolute;bottom:0;padding:11px 20px;font-size:13px;color:var(--link-color);
	background:#e1ebed;	width:100%;	display:block;
}
.illustration05{float:left;width:200px;margin:2px 31px 0 0}

/* -- Fehlerseite -- */
/* -- 404 -- */
#error404 { font-size:30px;color:#909090; font-style:italic; text-align:center;line-height:normal;border-bottom:1px solid #dfdbd1; padding-bottom:25px}
#error404 strong { display:block; font-size:160px; color:#d7d7d7; font-weight:normal;  line-height:130px; margin-bottom:40px}

/* -- Epxerten Detail Galerie-- */
/* -- Interne Bereich-- */
.internCols { margin-bottom:30px}
.internCols .right { padding-top:45px}
.internCols .tabContent { display:none}

/* -- Meine Daten -- */
#daten {
    padding-top:20px; margin-right:-10px;
}
#daten .account {
        background-color:#f2efe8;background-position:10px center;background-repeat:no-repeat;
        border-top:1px solid #eee;border-bottom:1px solid #eee;padding:10px 10px 10px 50px;
        width:440px !important;height:70px;float:left;margin-bottom:10px;margin-right:10px;
    }
:is(#daten .account) strong { display:block; font-size:16px; font-weight:normal; margin-bottom:5px}
:is(#daten .account) a.fltrt {
            color:#333; text-decoration:underline; font-size:11px;
        }
:is(:is(#daten .account) a.fltrt):hover { text-decoration:none}
.email:is(#daten .account) { background-image:url(../images/icons/icon-mail.png)}
.password:is(#daten .account) { background-image:url(../images/icons/icon-password.png)}
.phone:is(#daten .account) { background-image:url(../images/icons/icon-phone.png)}
.insurance:is(#daten .account) { background-image:url(../images/icons/icon-vcard.png)}

/* -- Weitere Experten -- */
#specialists {
    position:relative; padding-top:30px; margin-top:30px;
}
#specialists::before {
        content:"";height:1px; width:100%; position:absolute; top:0; left:0; right:0; background:#ddd;
        transform: scale(2,1);
    }
#specialists h2{ border-bottom:1px solid #ddd; padding:10px 0; margin-bottom:0}
#specialists .expert{
        background:transparent; border-top:0; border-bottom:1px solid #ddd;
    }
:is(#specialists .expert) .photo {
            float:left; width:80px; height:80px; margin:0 20px 0 0;
        }
:is(:is(#specialists .expert) .photo) img { width:80px !important; height:auto !important}
:is(#specialists .expert) .about p{ line-height:normal}
:is(#specialists .expert):hover { background:transparent}
#specialists .doc-wrap:hover { background:transparent}
#specialists .doc-wrap::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0; height: 0}

/* -- -- */
.info-box {border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;position: relative; min-height: 123px}
.info-box .column {  margin: 0 0 0 17px}
.info-box:last-child {margin-top: 45px;margin-bottom: 10px}
.info-box::after {content: "";clear: both;display: block}

/* -- -- */
#subContent .row{
        margin-bottom:30px;
    }
:is(#subContent .row):last-child { margin-bottom:0}
#subContent .info-box {
        border-top:0; margin-top:0; border-bottom:0;
    }
:is(#subContent .info-box) .top-news > h2 {color: var(--headline-color)}
:is(#subContent .info-box) .threeCols { padding:0 0 20px}
:is(#subContent .info-box) .mid,:is(#subContent .info-box) .lft,:is(#subContent .info-box) .rt { width:276px}
:is(#subContent .info-box) .mid {padding: 0 15px;border-right: 1px solid #ddd;border-left: 1px solid #ddd; width:308px}
:is(#subContent .info-box) .lft { padding-right:15px; width:291px}
:is(#subContent .info-box) .rt { padding-left:15px; width:291px}
:is(#subContent .info-box) .topcitys {
            border-bottom:1px solid #ddd;
        }
:is(:is(#subContent .info-box) .topcitys) h2 { padding:10px 0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; margin-bottom:20px}
#subContent #fullwidth_relatedcontent2 .inner{ overflow:visible}
#subContent .mod-grid + .info-box { margin-top: -40px}

/* -- Linkliste -- */
.link-list {
    margin-bottom: 67px;
}
.link-list h3 { margin-bottom: 20px}
.link-list h4 { background: #f2efe8;padding: 5px 20px}
.link-list ul {
        list-style: none; padding: 10px 0;
    }
:is(.link-list ul) li{
            float: left; width: 50%;
        }
:is(:is(.link-list ul) li) a {
                display: block; padding: 5px 20px 5px 10px; position: relative;border-bottom: 1px solid #dcd9d0;
            }
:is(:is(:is(.link-list ul) li) a)::before {
                    content:""; width: 10px; height: 10px; display: block; position: absolute;
                    border-right: 2px solid #a97b22; border-top: 2px solid #a97b22; right:5px;
                    transform: rotate(45deg); top: 50%; margin-top: -5px;
                }

.experten-detail :is(:is(:is(.link-list ul) li) a)::before {border-top: 2px solid #a97b22;}
:is(:is(.link-list ul) li):nth-child(odd){padding-right: 10px;}
:is(:is(.link-list ul) li):nth-child(even){ padding-left: 10px}
:is(:is(:is(.link-list ul) li):nth-child(1),:is(:is(.link-list ul) li):nth-child(2)) a{border-top: 1px solid #dcd9d0}

/* -- Footer -- */
#footer { 
    padding: 30px 0px; background: var(--secondary-color);border-top: 10px solid white; margin-bottom: -15px;
    color: #495f60; font-size: 1rem;line-height: 125%; max-width: var(--full-width);
}
#footer small.center{ text-align: center; font-size: 12px; display: block; margin-top: 20px; opacity: 0.75}
/* #footer .inner {max-width: 1024px;} */
#footer .flexgrid {
        margin-bottom: 0;
    }
:is(:is(#footer .flexgrid) .box-33):nth-child(1),:is(:is(#footer .flexgrid) .box-33):nth-child(2){ width: 25%}
:is(:is(#footer .flexgrid) .box-33):nth-child(3){
                width: 50%;
            }
:is(:is(#footer .flexgrid) .box-33):nth-child(3) ul { width: 50%; float: left}
:is(:is(#footer .flexgrid) .box-33):nth-child(3)::after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;	height: 0}
#footer strong{	font-size: 1.05rem; line-height: 150%; text-transform: uppercase;font-weight:700; margin-bottom:15px; display: block}
#footer a{color:#8a8980}
#footer ul{
        margin:0; padding:0; list-style:none;
    }
:is(#footer ul) li { position:relative; padding-left:0; padding-right:10px}
:is(#footer ul) a{
            color:#495f60; display:block;margin-bottom:12px; text-decoration:none;
        }
:is(:is(#footer ul) a):hover { color:#333}
.clearfix:is(#footer ul):after { clear: both; }
#footer p.info{ text-align:right; font-size:11px; margin-top:-11px; position:relative; top:-13px }
#footer p.hinweis{ text-align:center; font-size: 1rem;  margin-bottom: 0}

/* --------------------------- 
	Page Styles 
--------------------------- */

/* - Startseite - */
.front .sticky h2,
.front .sticky p{  margin-left: 370px}

.front .sticky .fltlft img{ width: 108px !important; height: auto;}

/* -- Experten Start -- */
.expert-start .sticky {
        margin-bottom:30px;
    }
:is(.expert-start .sticky) .lft { padding-right:15px}
:is(.expert-start .sticky) .mid { padding-left:15px}
:is(.expert-start .sticky) .rt img { margin: 0 auto; display:block}
.expert-start .alphabar {
        border-top:0; border-bottom:0; padding:0;
    }
:is(:is(.expert-start .alphabar) .searchbox) label { display:none}
:is(:is(.expert-start .alphabar) .searchbox) input{ width:276px; font-size:16px; background:url(../gfx/icon-lupe.png) 14px center no-repeat}
:is(:is(.expert-start .alphabar) .searchbox) ::-webkit-input-placeholder{font-style:italic}
:is(:is(.expert-start .alphabar) .searchbox) :-moz-placeholder{font-style:italic}
:is(:is(.expert-start .alphabar) .searchbox) ::-moz-placeholder{font-style:italic}
:is(.expert-start .alphabar) .alphabet {padding:12px 0; display: none;}

/* -- Klinik Start -- */
.klinik-start .sticky {
        margin-bottom:30px;
    }
:is(.klinik-start .sticky) .lft { padding-right:15px}
:is(.klinik-start .sticky) .mid { padding-left:15px}
:is(.klinik-start .sticky) .rt img { margin: 0 auto; display:block}
.klinik-start .searchbar {
        border-top:0; border-bottom:0; padding:0;
    }
:is(.klinik-start .searchbar) label { display:none}
:is(.klinik-start .searchbar) input{ width:276px; font-size:16px; background:url(../gfx/icon-lupe.png) 14px center no-repeat}
:is(.klinik-start .searchbar) .formItem{
            float:left; position:relative;
        }
:is(:is(.klinik-start .searchbar) .formItem) .loader{
                display:none;width:16px;height:16px;background-image:url(../images/ajax-loader.gif);
                position:absolute;right:15px;top:15px;z-index:3;
            }
:is(.klinik-start .searchbar) .formSelect,:is(.klinik-start .searchbar) .formSelect select { width:583px}
:is(.klinik-start .searchbar) .formSelect { margin-left:30px}
:is(.klinik-start .searchbar) ::-webkit-input-placeholder{font-style:italic}
:is(.klinik-start .searchbar) :-moz-placeholder{font-style:italic}
:is(.klinik-start .searchbar) ::-moz-placeholder{font-style:italic}
:is(.klinik-start .searchbar) .loading .loader{ display:block}
:is(.klinik-start .searchbar) .selectboxit-btn { border:1px solid #ddd; font-weight:normal; font-size:16px}
:is(.klinik-start .searchbar) .selectboxit-text { text-indent:0; padding-left:15px; max-width:none !important}
:is(.klinik-start .searchbar) .selectboxit-container {
            display:block;
        }
:is(:is(.klinik-start .searchbar) .selectboxit-container) .selectboxit { width:100%}
:is(:is(.klinik-start .searchbar) .selectboxit-container) span,:is(:is(.klinik-start .searchbar) .selectboxit-container) .selectboxit-options a { height:46px; line-height:46px}
:is(.klinik-start .searchbar) .selectboxit-option-icon-container { width:46px; margin-left:10px; background:url(../gfx/selectbox-arrow_v2.png) no-repeat center; float:right}
:is(.klinik-start .searchbar) .selectboxit-option,:is(.klinik-start .searchbar) .selectboxit-optgroup-header { text-indent:0; padding-left:15px}
:is(.klinik-start .searchbar) .selectboxit-default-arrow { display:none}
:is(.klinik-start .searchbar) .selectboxit-list { font-size:16px}
.klinik-start .slide-box { display:none}
#contact_form .formItem input[type="text"],
#contact_form .formItem textarea { padding:5px}

/* -- Klinikdetail -- */
.klinik-detail .block .natouter { position:relative; top:-15px}

/* -- Kategorie Übersicht -- */
.doc-filter > h2,
.cat-overview .mainContent > h2 {
	color: var(--headline-color);
	margin: 0;
	padding: 0 0 37px 0;
}
.doc-filter > h2:last-child{padding: 0}
.cat-overview .doc-filter .meta a { width:auto; float:none}
.cat-overview .doc-filter .meta.twoBtns a { width:276px; float:left}
.cat-overview #doc-map { margin-bottom:30px}
.cat-overview .node .inner h3 {padding-top:12px;margin-bottom:10px}

.not-full #container,
.cat-overview  #container{ overflow:visible}

.not-full .sticky-wrap,
.cat-overview .sticky-wrap {position: sticky;top: 54px;right: 0;}
.sticky-wrap .block { margin-bottom: 30px}
/* -- Redaktion Detail -- */
.redaktion-detail .node{ margin-bottom:0}
:is(.redaktion-detail .doc-filter) .doctors{ padding-bottom:0}
:is(.redaktion-detail .doc-filter) .meta a{
            width:auto; padding:15px 50px; background-image:url(../gfx/orange-arrow-rt.png); background-position:20px center;font-size:13px; display:block; float:none
        }
.redaktion-detail .node .inner > h3,
.cat-overview .node .inner > h3 { margin-bottom: 37px; padding-top: 17px;color: var(--headline-color) }

/* -- Cookiebar -- */
.cookie-bar {
    position: fixed; z-index: 999;background-color: #f2efe8; font-size:14px; left: 0; bottom: 0; right: 0;
    box-shadow: 0 0 20px rgba(0,0,0,0.6);
}
.cookie-bar .inner {padding: 10px 20px; max-width: 950px; margin: 0 auto}
.cookie-bar a.btn-close {float:right; font-weight: 600; display: block; margin-left: 20px}
.cookie-bar p {margin-bottom:0}
.hide-desktop {display:none}

#mobibar { 
    position: fixed; left: 0; bottom: 0; right: 0; padding: 10px 20px; background: #fff; z-index: 777; text-align: right;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

#mobibar a {
        color: #fff; text-decoration: none; background: var(--yellow-color);display: inline-block; padding: 1px 15px;
        border-radius: 30px;
    }

:is(#mobibar a)::before { position: relative; top: 3px}

.topicsjumper:is(#mobibar a) i{
                border-top: 2px solid #fff; border-bottom: 2px solid #fff;
                padding: 4px 0; width: 20px;float: right; margin-left: 10px;
                position: relative; top: 5px;
                display: none;
            }

:is(.topicsjumper:is(#mobibar a) i)::before { background: #fff; height: 2px; content:""; display: block}

/*==============================================================================
Focus v1.5
https://github.com/Elkfox/Focus
==============================================================================*/

.popup {
    position: fixed;z-index: 9996;opacity: 0;visibility: hidden;
    transition: all 0.3s ease-out;
}
.popup.visible {opacity: 1;visibility: visible}
.popup .popup-content {
    display: inline-block;z-index: 9999;max-width: 100%;max-height: 100%;
    overflow: auto;padding: 30px;background-color: #fff;cursor: default;color: #000;
}
.popup.overlay {background: rgba(0, 0, 0, 0.4);position: fixed;top: 0;left: 0;right: 0;bottom: 0;width: 100%;height: 100%}
.popup.overlay .popup-outside {z-index: 9998;position: absolute;top: 0;left: 0;right: 0;bottom: 0;width: 100%;height: 100%}
.popup.overlay .popup-inner {
  -webkit-backface-visibility: hidden;
  cursor: pointer;
  z-index: 9997;
  text-align: initial;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  transform: translateY(25px);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease-out;
}
.popup.overlay .popup-inner .popup-content {position: relative}

.popup.overlay.visible .popup-inner {transform: translateY(0px)}
.popup .popup-close {display: block;position: absolute;top: 25px;right: 25px}

#contactPopup.popup .popup-content {
        max-width: 640px; margin: 0 auto;
    }

:is(#contactPopup.popup .popup-content) p.success{ width: 500px; display: block; text-align: center; font-size: 2rem; padding-top: 30px}

#contactPopup.popup .popup-inner {
        padding: 50px 0;
    }

:is(#contactPopup.popup .popup-inner) h3 {
            font-family: 'Roboto', sans-serif;color: #a97b22;margin: 0;padding: 0 0 1.2rem 0;
            letter-spacing: 0;
        }

#contactPopup.popup .popup-close {
        width: 40px; height: 40px; background: #a97b22; position: absolute; top:0; right: 0; cursor: pointer;
    }

:is(#contactPopup.popup .popup-close) span { display: none}

:is(#contactPopup.popup .popup-close)::before,:is(#contactPopup.popup .popup-close)::after { content:""; width: 30px; height: 2px; background: #fff; position: absolute; top: 50%; left: 50%; margin-left: -15px; margin-top: -1px }

:is(#contactPopup.popup .popup-close)::before {transform: rotate(-45deg)}

:is(#contactPopup.popup .popup-close)::after {transform: rotate(45deg)}

#contactPopup.popup figure.doctor-card {
        display: flex; flex-direction: row; align-items: center;margin-bottom: 20px;
    }

:is(#contactPopup.popup figure.doctor-card) .avatar{
            border-radius: 50%;width: 150px; height: 150px;
            overflow: hidden;box-shadow: 0 7px 6px rgba(0,0,0,.2);
            margin-right: 20px;min-width: 150px;
        }

:is(:is(#contactPopup.popup figure.doctor-card) .avatar) img {width: 100% !important; height: 100% !important;object-fit: cover;}

:is(#contactPopup.popup figure.doctor-card) p:last-child{ margin-bottom: 0}
/* -- Register Overlay -- */
.popup.clinicPopup {
    background: rgba(111,130, 131, .7);
}
.popup.clinicPopup .popup-close {
        width: 30px; height: 30px; position: absolute; right: 10px; top: 10px; cursor: pointer; z-index: 2;
    }
:is(.popup.clinicPopup .popup-close)::before,:is(.popup.clinicPopup .popup-close)::after {
            content:""; width: 20px; height: 2px; background: #fff;display: block;
            position: absolute; left: 50%; top: 50%; margin-left: -10px; margin-top: -1px;
        }
:is(.popup.clinicPopup .popup-close)::before {transform: rotate(45deg)}
:is(.popup.clinicPopup .popup-close)::after {transform: rotate(-45deg)}
:is(.popup.clinicPopup .popup-close) span {display: none}
.popup.clinicPopup .popup-content { width: 575px; padding:0}
.popup.clinicPopup h2 { margin: 0; text-align: center; color: #fff; background: #c39d53; padding: 10px 0}
.popup.clinicPopup h3 { padding: 0; margin-bottom: 20px; color: #4a5f60; padding-bottom: 20px; border-bottom: 2px solid #e1ebed }
.popup.clinicPopup p { line-height: 140%}
.popup.clinicPopup fieldset {
        margin-bottom: 0;
    }
:is(.popup.clinicPopup fieldset) .formItem {
            margin-bottom: 10px; transform: translateZ(0);
        }
:is(:is(.popup.clinicPopup fieldset) .formItem) label {display: none}
:is(.popup.clinicPopup fieldset) input.formText,:is(.popup.clinicPopup fieldset) select { width: 100%; background: #f7f4ef; border: 1px solid #f7f4ef; color: #4a5f60; padding: 5px 20px;}
:is(:is(.popup.clinicPopup fieldset) .formError) input.formText,:is(:is(.popup.clinicPopup fieldset) .formError) select { border-color: orangered}
:is(.popup.clinicPopup fieldset) .checkbox-wrap label,:is(.popup.clinicPopup fieldset) .formRadio label {display: block}
:is(.popup.clinicPopup fieldset) .formRadio label i { border:1px solid #4a5f60}
:is(.popup.clinicPopup fieldset) .formError label i { border-color: orangered}
:is(.popup.clinicPopup fieldset) .formRadio label::before { background: #4a5f60; top: 5px; }
:is(.popup.clinicPopup fieldset) .formRadio label small { display: block; line-height: normal}
:is(.popup.clinicPopup fieldset) ::-webkit-input-placeholder {color: #4a5f60;-webkit-transition: color .25s  ease}
:is(.popup.clinicPopup fieldset) :-moz-placeholder { color: #4a5f60;-moz-transition: color .25s  ease}
:is(.popup.clinicPopup fieldset) ::-moz-placeholder { color: #4a5f60; -moz-transition: color .25s  ease}
:is(.popup.clinicPopup fieldset) :focus::-webkit-input-placeholder {color: #ccc}
:is(.popup.clinicPopup fieldset) :focus:-moz-placeholder { color: #ccc}
:is(.popup.clinicPopup fieldset) :focus::-moz-placeholder { color: #ccc; }
.popup.clinicPopup .formSubmit {
        width: 100%; font-size: 1.2em;  background: #c39d53;
    }
:is(.popup.clinicPopup .formSubmit) i {
            width: 20px; height: 20px;border-radius: 50%;
            background: #c8a96e;display: inline-block;
            margin-left: 10px;position: relative;top: 4px;
        }
:is(:is(.popup.clinicPopup .formSubmit) i)::before {
                content:"";display: block; position: absolute; left: 50%; top: 50%; margin-left: -6px; margin-top: -4px;
                width: 8px; height: 8px; border-right: 2px solid #fff;border-top: 2px solid #fff;
                transform: rotate(45deg);
            }
:is(.popup.clinicPopup .formSubmit):hover{background:#684b21}
.popup.clinicPopup a.formSubmit {
        display: block; text-align: center; font-weight: 600;
    }
:is(.popup.clinicPopup a.formSubmit):hover { text-decoration: none}
.disabled:is(.popup.clinicPopup a.formSubmit) {pointer-events: none; background: #e8e5de}
.popup.clinicPopup .btn-register {
        width: 100%; font-size: 1.2em; background: #c39d53;display: block;padding:10px;
        color: #fff; text-align: center; text-decoration: none;
    }
:is(.popup.clinicPopup .btn-register) i {
            width: 20px; height: 20px;border-radius: 50%;
            background: #c8a96e;display: inline-block;
            margin-left: 10px;position: relative;top: 4px;
        }
:is(:is(.popup.clinicPopup .btn-register) i)::before {
                content:"";display: block; position: absolute; left: 50%; top: 50%; margin-left: -6px; margin-top: -4px;
                width: 8px; height: 8px; border-right: 2px solid #fff;border-top: 2px solid #fff;
                transform: rotate(45deg);
            }
:is(.popup.clinicPopup .btn-register):hover{background:#684b21}
.popup.clinicPopup .content { padding: 24px;transform: translateZ(0);}

#loginPopup.popup a.lostPass {font-size: 0.8em}

#loginPopup.popup .content p:last-child { margin-bottom: 0}

#loginPopup.popup .popup-content {
        width: 600px;
    }

:is(#loginPopup.popup .popup-content)  > .flexgrid .box-50 {
            display: flex;flex-direction: column;flex-wrap: nowrap;
            justify-content: flex-start;align-content: stretch;align-items: stretch;
        }

:is(:is(#loginPopup.popup .popup-content) > .flexgrid .box-50):nth-child(odd){ padding-right: 0}

:is(:is(#loginPopup.popup .popup-content) > .flexgrid .box-50):nth-child(even){ padding-left: 0}

:is(:is(#loginPopup.popup .popup-content) > .flexgrid .box-50) .content {flex: 1 1 auto;}
#booking_patient_content .flexgrid .box-50:nth-child(odd),
#booking_doc_content .flexgrid .box-50:nth-child(odd){ padding-right: 0}

#booking_patient_content .flexgrid .box-50:nth-child(even),
#booking_doc_content .flexgrid .box-50:nth-child(even){ padding-left: 0}

#booking_confirm_content .flexgrid .box-40{ padding-right: 14px}
#booking_confirm_content .flexgrid .box-60{ padding-left: 14px}

/* -- Termin Kalender -- */
.popup#datePopup {
    background: rgba(111,130, 131, .7);
}
#datePopup.popup .popup-inner{padding: 30px}
#datePopup.popup .popup-content{max-width: 800px}
#datePopup.popup .calendar h4 {padding: 9px 0 4px}
#datePopup.popup .popup-close {
        width: 30px; height: 30px;
        background: #e5a927;position: absolute; right: 30px; top: 30px;
    }
:is(#datePopup.popup .popup-close)::before,:is(#datePopup.popup .popup-close)::after {
            content:"";background: #fff; height: 2px; width: 20px; position: absolute; left: 50%; top: 50%;
            margin-left: -10px; margin-top: -1px;
        }
:is(#datePopup.popup .popup-close)::before {transform: rotate(-45deg);}
:is(#datePopup.popup .popup-close)::after {transform: rotate(45deg);}
:is(#datePopup.popup .popup-close) span {display: none}
:is(#datePopup.popup .popup-close):hover { background: #646464}
#datePopup.popup .meta {
        padding-top: 2px;
    }
:is(#datePopup.popup .meta) a {
            background: #c39d53;padding: 3px 15px;color: #fff;cursor: pointer;
            display: block; text-decoration: none; text-align: center
        }

#sigilPopup.popup .block-info{
        max-width: 800px;
    }

:is(#sigilPopup.popup .block-info) .img {
            position: relative;
        }

:is(:is(#sigilPopup.popup .block-info) .img) figcaption{
                position: absolute; top: 0; left: 250px; bottom: 0;
                display: flex; flex-direction: row; flex-wrap: wrap;
                justify-content: flex-start; align-content: center; align-items: flex-start;
                right: 30px; font-size: 1em;
            }

:is(:is(:is(#sigilPopup.popup .block-info) .img) figcaption) a.more{ font-size: 1em }

#sigilPopup.popup .popup-close {
        width: 30px; height: 30px; z-index: 4;
        background: #c49e4e;position: absolute; right: 0; top: 0;
    }

:is(#sigilPopup.popup .popup-close)::before,:is(#sigilPopup.popup .popup-close)::after {
            content:"";background: #fff; height: 2px; width: 20px; position: absolute; left: 50%; top: 50%;
            margin-left: -10px; margin-top: -1px;
        }

:is(#sigilPopup.popup .popup-close)::before {transform: rotate(-45deg);}

:is(#sigilPopup.popup .popup-close)::after {transform: rotate(45deg);}

:is(#sigilPopup.popup .popup-close) span {display: none}

:is(#sigilPopup.popup .popup-close):hover { background: #4c8d99}
.popup.popup-mapitem {
    background: rgba(111,130, 131, .7);
}
.popup.popup-mapitem .popup-content{
        max-width: 1060px; max-height: 90vh; color: var(--headline-color); width: 100%;
    }
:is(.popup.popup-mapitem .popup-content) h2 { font-weight: 600}
.popup.popup-mapitem .popup-close {
        width: 30px; height: 30px;
        background: #e5a927;position: absolute; right: 30px; top: 30px;
    }
:is(.popup.popup-mapitem .popup-close)::before,:is(.popup.popup-mapitem .popup-close)::after {
            content:"";background: #fff; height: 2px; width: 20px; position: absolute; left: 50%; top: 50%;
            margin-left: -10px; margin-top: -1px;
        }
:is(.popup.popup-mapitem .popup-close)::before {transform: rotate(-45deg);}
:is(.popup.popup-mapitem .popup-close)::after {transform: rotate(45deg);}
:is(.popup.popup-mapitem .popup-close) span {display: none}
:is(.popup.popup-mapitem .popup-close):hover { background: #646464}
/* -- Register Form -- */
fieldset.register {
    margin-bottom: 0;
}
fieldset.register  > .flexgrid {
        padding: 24px;
    }
:is(:is(fieldset.register > .flexgrid) .flexgrid > .box-50):nth-child(odd) { padding-right: 7px}
:is(:is(fieldset.register > .flexgrid) .flexgrid > .box-50):nth-child(even) { padding-left: 7px}
fieldset.register .formCaptcha {
        background: #f7f4ef; padding: 10px 20px; margin-bottom: 30px;
    }
:is(fieldset.register .formCaptcha) label {display: block; width: 50%; float: left}
:is(fieldset.register .formCaptcha) input.formText { background: #fff}
:is(fieldset.register .formCaptcha) .capcha-wrap {
            margin-left: 50%; background: #fff;
        }
:is(:is(fieldset.register .formCaptcha) .capcha-wrap) span { width: 20px; display: block; float: left;  text-align: center}
:is(:is(fieldset.register .formCaptcha) .capcha-wrap) input.formText { width: calc(100% - 20px); border: 0}
fieldset.register .formPrivacy {
        font-size: 0.8em; line-height: 1.2em;
    }
:is(:is(fieldset.register .formPrivacy) label) i { margin-right: 10px}
:is(:is(fieldset.register .formPrivacy) label) span{ display: block; overflow: hidden; padding-bottom: 5px}
fieldset.register .hinweis-wrap { position: relative}
fieldset.register .hinweis { position: absolute; left: calc(100% + 20px); width: 60%; bottom: 0}
fieldset.register .hinweis-inner {
        background: #e1ebed; padding: 10px; line-height: 1.2em; font-size: 0.9em;
    }
:is(fieldset.register .hinweis-inner)::before {
            content:""; position: absolute; left: -20px; bottom: 10px;
            width: 0;height: 0;border-style: solid;border-width: 7.5px 20px 7.5px 0;
            border-color: transparent #e1ebed transparent transparent;
        }
:is(fieldset.register .formItem label) i { margin-right: 10px; background: transparent}
:is(fieldset.register .formItem label) span { display: block; overflow: hidden}
fieldset.register .hinweis-head {
        margin-bottom: 4px;
    }
:is(fieldset.register .hinweis-head) i {
            width: 28px; height: 28px; display: inline-block; font-style: normal;float: left;
            color: #fff; background: #c8a96e;font-size:14px;
            border: 4px solid #fff; text-align: center; line-height: 20px;
            border-radius: 50%; margin-right: -5px;
        }
:is(:is(fieldset.register .hinweis-head) i) strong {background: #c8a96e; color: #fff;display: block; margin-left: 10px; padding:1px 10px 1px 30px;}
:is(:is(fieldset.register .hinweis-head) i)::before {content:"!"}
/* -- Booking Form -- */
fieldset.booking {
    margin-bottom: 0;
}
fieldset.booking .details,fieldset.booking  > .flexgrid {padding: 24px; }
fieldset.booking .formItem {
        margin-bottom: 10px;
    }
:is(fieldset.booking .formItem) label {display: none}
fieldset.booking input.formText,fieldset.booking textarea,fieldset.booking select { width: 100%; background: #f7f4ef; border: 1px solid #f7f4ef; color: #4a5f60; padding: 5px 20px;}
fieldset.booking textarea { min-height: 240px}
:is(fieldset.booking .formRadio) label {
            display: block;
        }
:is(:is(fieldset.booking .formRadio) label) i {
                border:1px solid #4a5f60;
            }
:is(:is(:is(fieldset.booking .formRadio) label) i)::before { background: #4a5f60 }
fieldset.booking .fakeFile {
        position: relative; z-index:1; margin-bottom:10px;
    }
:is(fieldset.booking .fakeFile) em {
            background-color: #f1efeb;width: 150px;
            margin-right:1px;border: 0;border-top: 1px solid #d1cdbf;
            padding: 3px 10px;float:left;
        }
:is(fieldset.booking .fakeFile) span {
            background-color:#dddacf;font-size:11px;display:block;
            padding: 3px 10px 4px;width:74px;overflow:hidden
        }
fieldset.booking .formFile {position:absolute;z-index:3;opacity:0;}
:is(:is(fieldset.booking .details) table) th,:is(:is(fieldset.booking .details) table) td { vertical-align: top}
:is(:is(fieldset.booking .details) table) th{ text-align: left;padding-right: 15px}
:is(fieldset.booking table.filelist) td {
            padding:3px 5px; font-style:italic;
        }
:is(:is(fieldset.booking table.filelist) td) .btn-danger{
                border:0;background:transparent;width:30px;
                height:30px;cursor:pointer;display:block;font-size: 14px;
            }
:is(:is(:is(fieldset.booking table.filelist) td) .btn-danger) span{ display: none}
:is(:is(:is(fieldset.booking table.filelist) td) .btn-danger)::before{content:"✕"}
.name:is(:is(fieldset.booking table.filelist) td) {
                margin-bottom:0;
            }
.name:is(:is(fieldset.booking table.filelist) td) a,.name:is(:is(fieldset.booking table.filelist) td) span{ color:#333;}
.name:is(:is(fieldset.booking table.filelist) td) small { font-size:11px;}
.size:is(:is(fieldset.booking table.filelist) td) { text-align:right}
.btn:is(:is(fieldset.booking table.filelist) td) { width:30px; padding: 0}
fieldset.booking #progress{
        height:2px; position:relative;
    }
:is(fieldset.booking #progress) .bar{ position:absolute; left:0; top:0; bottom:0; background:#fab301}

/**
 * Swiper 4.5.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2019 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 16, 2019
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide { float: left;}
.swiper-container-vertical > .swiper-wrapper { flex-direction: column;}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {transform: translate3d(0px, 0, 0);}

.swiper-container-multirow > .swiper-wrapper {flex-wrap: wrap;}
.swiper-container-free-mode > .swiper-wrapper { transition-timing-function: ease-out; margin: 0 auto;}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank { visibility: hidden;}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}
.swiper-button-prev,
.swiper-button-next {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat;
}
.swiper-button-disabled:is(.swiper-button-prev,.swiper-button-next) {opacity: .35;cursor: auto;pointer-events: none;}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDkyIDQ5MiI+CjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xMDEuNSwyNDUuOWMwLDcuMiwyLjgsMTQsNy44LDE5LjFsMjE5LjIsMjE5LjFjNS4xLDUuMSwxMS44LDcuOSwxOSw3LjlzMTQtMi44LDE5LTcuOWwxNi4xLTE2LjEKCWM1LjEtNS4xLDcuOS0xMS44LDcuOS0xOWMwLTcuMi0yLjgtMTQtNy45LTE5TDE5OC42LDI0NS45TDM4Mi41LDYyYzEwLjUtMTAuNSwxMC41LTI3LjYsMC0zOC4xTDM2Ni4zLDcuOWMtNS4xLTUuMS0xMS44LTcuOS0xOS03LjkKCWMtNy4yLDAtMTQsMi44LTE5LDcuOUwxMDkuMywyMjYuOEMxMDQuMywyMzEuOSwxMDEuNSwyMzguNywxMDEuNSwyNDUuOXoiLz4KPC9zdmc+Cg==");
  left: 10px; right: auto;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OTIgNDkyIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMzgzIDIyN0wxNjQgOGMtNS01LTEyLTgtMTktOHMtMTQgMy0xOSA4bC0xNiAxNmEyNyAyNyAwIDAwMCAzOGwxODMgMTg0LTE4NCAxODRhMjcgMjcgMCAwMDAgMzhsMTYgMTZjNiA1IDEyIDggMTkgOHMxNC0zIDIwLThsMjE5LTIxOWEyNyAyNyAwIDAwMC0zOHoiLz48L3N2Zz4=");
  right: 10px; left: auto;
}
.swiper-button-lock { display: none;}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden { opacity: 0;}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {bottom: 10px;left: 0;width: 100%;}

/* Bullets */
.swiper-pagination-bullet {width: 10px;height: 10px;display: inline-block;border-radius: 100%;background: #d7d7d7;margin: 0 5px;}
button.swiper-pagination-bullet {
    border: none;margin: 0;padding: 0;box-shadow: none;
    appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer;}
.swiper-pagination-bullet-active { background: #859992;}

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.content-gallery {position: relative;padding-bottom: 0;  margin-bottom: 54px}
/*.content-gallery h2 {font-weight: 600;margin: 0;padding: 0 0 20px 40px; position: relative; font-size:1.125rem}
.content-gallery h2::before {position: absolute; left: 5px; top:-6px;	color: #967836; font-size: 25px} */
.content-gallery .swiper-pagination { left: 0; right: 0}
.content-gallery .swiper-container {}
.content-gallery .swiper-slide img { width: 100% !important; height: auto !important}

/* Galpop Image Gallery CSS */
/* CSS last updated: 2019-03-03 */

/* These properties can be freely changed. Recommended to copy and paste into your own CSS and override these. */

#galpop-wrapper {
  background-color: rgb(213, 213, 213);
  background-color: rgba(0, 0, 0, .4);
}
#galpop-container {
  padding: 20px;
  background-color: rgb(255, 255, 255);
}
#galpop-wrapper.loaded-ajax #galpop-container,
#galpop-wrapper.loaded-iframe #galpop-container {
  width: 70vw;
  height: 70vh;
  padding: 0;
  border-radius: 0;
}
#galpop-wrapper.loaded-iframe iframe {
  width: 100%;
  height: 70vh;
  border: 0;
}
#galpop-wrapper.loaded-ajax #galpop-content {
  padding: 10px 20px;
}
#galpop-ajax {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  transition: opacity 0.3s;
  background-image: url('../gfx/ajax-loader.gif');
  background-repeat: no-repeat;
  background-position: center;
}
#galpop-wrapper.complete #galpop-ajax {
  opacity: 0;
}
#galpop-info {
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff; font-size: 0.8em; padding: 10px;
  left: 0; bottom: 0;
}
#galpop-close {
    top: -20px;right: -20px;width: 40px;height: 40px;
    background: var(--color-goldbrown);
}
#galpop-close:hover { background: var(--color-darkmint) }

#galpop-close::before,
#galpop-close::after {
    content:""; width: 28px; height: 2px;
    background: #fff; left: 50%; top: 50%;
    margin-left: -14px; margin-top: -1px;
    display: block;position: absolute;
}

#galpop-close::before { transform: rotate(45deg) }
#galpop-close::after { transform: rotate(-45deg) }

/* Important to the slider! Be careful when changing these values! */

.lock-scroll {
  overflow: hidden !important;
}
#galpop-wrapper { display: none; position: fixed; top: 0;left: 0; right: 0;bottom: 0; z-index: 100;}
#galpop-container {
    position: absolute;top: 50%;left: 50%;box-sizing: content-box;height: 100px;
    width: 100px;transform: translate(-50%, -50%);transition: width 0.3s, height 0.3s;overflow: visible !important;
}
#galpop-prev,
#galpop-next {
    position: absolute;top: 0;bottom: 0;z-index: 5;background-repeat: no-repeat;outline: none;
    background-size: 27px 44px;
}
#galpop-prev {left: -84px;right: 50%;background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDkyIDQ5MiI+CjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xMDEuNSwyNDUuOWMwLDcuMiwyLjgsMTQsNy44LDE5LjFsMjE5LjIsMjE5LjFjNS4xLDUuMSwxMS44LDcuOSwxOSw3LjlzMTQtMi44LDE5LTcuOWwxNi4xLTE2LjEKCWM1LjEtNS4xLDcuOS0xMS44LDcuOS0xOWMwLTcuMi0yLjgtMTQtNy45LTE5TDE5OC42LDI0NS45TDM4Mi41LDYyYzEwLjUtMTAuNSwxMC41LTI3LjYsMC0zOC4xTDM2Ni4zLDcuOWMtNS4xLTUuMS0xMS44LTcuOS0xOS03LjkKCWMtNy4yLDAtMTQsMi44LTE5LDcuOUwxMDkuMywyMjYuOEMxMDQuMywyMzEuOSwxMDEuNSwyMzguNywxMDEuNSwyNDUuOXoiLz4KPC9zdmc+Cg==");background-position: 20px center;}
#galpop-next {left: 50%;right: -84px;background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OTIgNDkyIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMzgzIDIyN0wxNjQgOGMtNS01LTEyLTgtMTktOHMtMTQgMy0xOSA4bC0xNiAxNmEyNyAyNyAwIDAwMCAzOGwxODMgMTg0LTE4NCAxODRhMjcgMjcgMCAwMDAgMzhsMTYgMTZjNiA1IDEyIDggMTkgOHMxNC0zIDIwLThsMjE5LTIxOWEyNyAyNyAwIDAwMC0zOHoiLz48L3N2Zz4=");background-position: calc(100% - 20px) center;}



#galpop-modal {position: relative;}

#galpop-content {display: none;}
#galpop-content img {vertical-align: top;width: auto;height: auto;max-width: 100%;}

#galpop-info {position: absolute;display: none;z-index: 15;}
#galpop-info p {margin: 0;}
#galpop-info a {color: #fff;}
#galpop-close {position: absolute;display: block;z-index: 10;}


/* -- Termine -- */
.calendar h4 {
        background-color:#e8e5de;color:#333;text-align:center;padding:5px 0 6px;
        margin:0 0 2px; font-weight:normal
    }
.calendar .week { width:584px}
:is(:is(.calendar table) thead) tr{

            }
:is(:is(.calendar table) thead) th {
                padding:10px 5px 15px;background-color:#f8f7f5;border:1px solid #fff;
                border-top:0;border-bottom:2px solid #fff;font-weight:normal;
                font-size:12px;text-align: center;width: 14.28%;
            }
:is(:is(:is(.calendar table) thead) th) strong{ display:block; font-size:26px; }
.ac:is(:is(:is(.calendar table) thead) th) { background-color:#e8e5de}
.weekend:is(:is(:is(.calendar table) thead) th) {width:55px}
:is(:is(.calendar table) tbody) th,:is(:is(.calendar table) tbody) td {
                background-color:#f6f5f2;border:1px solid #fff;border-bottom:0;
                padding:7px 10px;text-align:center;
            }
:is(:is(:is(.calendar table) tbody) td) small{ display: block; line-height: normal; font-size:11px}
.ac:is(:is(:is(.calendar table) tbody) td) {
                    background-color:#efede8; padding:0;
                }
.ac:is(:is(:is(.calendar table) tbody) td) a {
                        padding:2px 10px;text-align:center;
                        display:block;color:#fff;
                        background:#7A9D02
                    }
.calendar .swiper-button-prev,.calendar .swiper-button-next {
        width: 35px; height: 35px; top: 0; margin: 0; background-size: 15px auto;
        background-color: #646464;transform: translateZ(0);
    }
:is(.calendar .swiper-button-prev,.calendar .swiper-button-next):hover { background-color: #c39d53}
.calendar .swiper-button-prev {left: 0}
.calendar .swiper-button-next {right: 0;}

/* -- -- */
svg#map {
    max-width: 70%; height: auto; margin:0 auto 68px; display: block;
}
svg#map .empty {opacity: .8}
svg#map circle.circle { fill: #fff; pointer-events: none}
svg#map g.counter { opacity: 0; pointer-events: none}
svg#map image,svg#map text.label { pointer-events: none}
svg#map path.maparea:hover,svg#map .austria:hover path,svg#map .schweiz:hover path {fill:#e6a927}
svg#map g.bundesland:hover .counter{opacity: 1}
svg#map g.bundesland.hasCount:hover .label{ opacity: 0}
.uc-banner-btn-list,
#uc-banner-text {min-height: 188px !important;}

.uc-powered-by-footer,
.uc-partner-icon {width: 98px !important;height: 24px !important;}

dl.cat-list {
    display: flex;flex-direction: row;flex-wrap: wrap;
    justify-content: flex-start;align-content: stretch;align-items: flex-start;
    margin-top: 64px;
}

dl.cat-list dt { width: 100%; padding-bottom: 25px; font-size: 1.25rem; line-height: 1.688rem; font-weight: 600}

dl.cat-list dd {
        width: 25%; margin-bottom: 20px; padding-right: 20px;
    }

:is(dl.cat-list dd) a {
            text-decoration: none; color: inherit;
        }

:is(:is(dl.cat-list dd) a):hover { text-decoration: underline;}

div.cat-list {
    margin-top: 64px;

}

div.cat-list ul {
        display: flex;flex-direction: row;flex-wrap: wrap;
        justify-content: flex-start;align-content: stretch;
        align-items: flex-start;padding-left: 0;list-style: none;
    }

div.cat-list li {
        width: 25%; margin-bottom: 20px; padding-right: 20px;
    }

:is(div.cat-list li) a {
            text-decoration: none; color: inherit;
        }

:is(:is(div.cat-list li) a):hover { text-decoration: underline;}
.lmg-stoerer {
    background: #fff; text-align: center;padding: 0 20px;
}
.lmg-stoerer  > small { display: block; font-size: 11px}
.lmg-stoerer img {max-width: 100%; height: auto !important}
.lmg-stoerer.outsidesky {
        position: sticky; left: 100%; top: 40px; width: 120px;background: transparent;
    }
.lmg-stoerer.outsidesky  > small,.lmg-stoerer.outsidesky  > div { position: absolute; left: 140px}
.lmg-stoerer.outsidesky  > small { top: 0}
.lmg-stoerer.outsidesky  > div { top: 30px}
#mainContent .lmg-stoerer { padding: 0}

/* -- -- */
.pagination ul{
        list-style: none;display: flex;flex-direction: row;
        padding-left: 0;justify-content: space-between;
        align-items: center;gap: 10px;
    }
:is(.pagination ul) a {
            font-weight: 600; color: #333; width: 30px; text-align: center; display: block;
        }
.pagination__prev:is(:is(.pagination ul) a),.pagination__next:is(:is(.pagination ul) a) {
                width: 44px; height: 44px; background: #d3a237;
                color: #fff;border-radius: 50%; flex: 1;
                display: grid; justify-content: center; align-content: center;
            }
:is(.pagination__prev:is(:is(.pagination ul) a),.pagination__next:is(:is(.pagination ul) a)):hover {background: #966e14; text-decoration: none}
.disabled:is(.pagination__prev:is(:is(.pagination ul) a),.pagination__next:is(:is(.pagination ul) a)) {background: #666;pointer-events: none}

@media screen and (max-width: 800px){
    .pagination ul a {display: none}
    .pagination ul a.pagination__prev,
    .pagination ul a.pagination__next { display: grid}
}

.search-results {
    display: flex; flex-direction: column; gap: 30px; margin-bottom: 60px;
}

.search-results img{ display: block; max-width: 150px; }

.search-results .result {display: flex; flex-direction: row; gap: 30px }

:is(.search-results article) h2 { padding-top: 0}

:is(.search-results article):first-child {margin-left: 180px}
.autocomplete-suggestions .search-results {
        gap: 15px; margin-bottom: 30px;
    }
:is(.autocomplete-suggestions .search-results) img{max-width: 80px;height: auto;}
:is(.autocomplete-suggestions .search-results) h2{font-size: 1rem; margin-bottom: 10px; padding-bottom: 0;}
:is(.autocomplete-suggestions .search-results) p{font-size: 0.75rem; margin-bottom: 0}
:is(.autocomplete-suggestions .search-results) .result {
            gap: 15px;
        }
:is(:is(.autocomplete-suggestions .search-results) .result) article:first-child {margin-left: 100px}

#search-results .pagination {margin-bottom: 60px}

/* -- Wiederverwendabr-- */
.fltrt {float: right}
.fltlft {float: left}
.clearfloat:after,
.clearfix:after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;	height: 0}


/* Social Media Styles */
    :root {
      --sc-blue: #d3a237;
      --sc-blue-mid: #2472c8;
      --sc-blue-light: #e8f1fb;
      --sc-accent: #c8a84b;
      --sc-white: #ffffff;
      --sc-gray-50: #f7f9fc;
      --sc-gray-100: #edf1f7;
      --sc-gray-300: #b0bdd0;
      --sc-gray-500: #64748b;
      --sc-gray-700: #334155;
      --sc-text: #1e293b;
    }


    /* ── GRID SECTION ── */
    .grid-section {
      padding: 60px 40px 80px;
      max-width: 1160px;
      margin: 0 auto;
    }
    .section-label {
      font-size: .7rem;
      font-weight: 600;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: #d3a237;
      margin-bottom: 8px;
    }
    .section-title {
      font-weight: 600;
      margin-bottom: 20px;
    } 

    /* ── CARDS GRID ── */
    .cards-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
      gap: 24px;
    }

    .card {
      background: var(--sc-white);
      border: 1px solid var(--sc-gray-100);
      border-radius: 10px;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      align-items: center;
      box-shadow: 0 2px 8px rgba(13,42,74,.06);
      transition: transform .25s ease, box-shadow .25s ease;
    }
    .card:hover {
      transform: translateY(-5px);
      box-shadow: 0 12px 32px rgba(13,42,74,.13);
    }

    /* QR placeholder area */
    .card-qr {
      width: 100%;
      aspect-ratio: 1 / 1;
      background: var(--sc-gray-50);
      border-bottom: 1px solid var(--sc-gray-100);
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 20px;
      position: relative;
    }
    .card-qr img {
      max-width: 205px;
    }
    /* CTA button */
    .card-cta {
      width: calc(100% - 32px);
      margin: 0 16px 18px;
      display: block;
      text-align: center;
      padding: 9px 0;
      border-radius: 6px;
      font-family: 'Source Sans 3', sans-serif;
      font-size: .9rem;
      font-weight: 600;
      letter-spacing: .03em;
      cursor: pointer;
      text-decoration: none;
      transition: background .2s, color .2s, box-shadow .2s;
      border: 2px solid var(--sc-blue);
      color: var(--sc-blue);
      background: transparent;
    }
    .card-cta a {
      text-decoration: none !important;
    }
    .card-cta:hover {
      background: var(--sc-blue);
      color: var(--sc-white);
      box-shadow: 0 4px 14px #d3a2374d;
    }

    /* platform name above button */
    .card-name {
      font-size: .78rem;
      font-weight: 500;
      color: var(--sc-gray-500);
      letter-spacing: .05em;
      text-transform: uppercase;
      margin-bottom: 8px;
      margin-top: 2px;
    }

    /* ── RESPONSIVE ── */
    @media (max-width: 640px) {
      .grid-section { padding: 40px 20px 60px; }
      .cards-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; }
    }

    /* fade-in animation */
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(22px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .card { animation: fadeUp .5s ease both; }
    .card:nth-child(1)  { animation-delay: .05s }
    .card:nth-child(2)  { animation-delay: .10s }
    .card:nth-child(3)  { animation-delay: .15s }
    .card:nth-child(4)  { animation-delay: .20s }
    .card:nth-child(5)  { animation-delay: .25s }
    .card:nth-child(6)  { animation-delay: .30s }
    .card:nth-child(7)  { animation-delay: .35s }
    .card:nth-child(8)  { animation-delay: .40s }
    .card:nth-child(9)  { animation-delay: .45s }
    .card:nth-child(10) { animation-delay: .50s }
    .card:nth-child(11) { animation-delay: .55s }
    .card:nth-child(12) { animation-delay: .60s }

.icon-share {
    display: none !important;
}

    /* new styles for new conent */

   /* ════════════════════════════════════════════
       2 · USER ENTRY PATHS
    ════════════════════════════════════════════ */
    .entry-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
      gap: 20px;
    }
    .entry-card {
      background: var(--white); border: 1px solid #dedede;
      border-radius: 20px; padding: 28px 24px;
      text-decoration: none; color: inherit;
      display: flex; flex-direction: column; gap: 10px;
      transition: box-shadow .2s, transform .2s, border-color .2s;
      position: relative; overflow: hidden;
    }
    .entry-card::after {
      content: '→';
      position: absolute; bottom: 24px; right: 22px;
      font-size: 1.1rem; color: var(--teal);
      transition: transform .2s;
      color: #71a1af;
    }
    .entry-card:hover { text-decoration: none; box-shadow: 0 8px 28px rgba(13,43,69,.12); transform: translateY(-2px); border-color: #71a1af; }
    .entry-card:hover::after { transform: translateX(4px); }
    .entry-icon {
      width: 46px; height: 46px; border-radius: 10px;
      background: #f2fbfd; display: grid; place-items: center;
      font-size: 1.4rem; flex-shrink: 0; color: #4a5f60;
    }
    .entry-card h3 { font-size: 1.05rem; font-weight: 600; color: #4a5f60; margin-bottom: 15px; }
    .entry-card p  { font-size: 0.86rem; color: var(--headline-color); line-height: 1.5; padding-right: 20px; }
    .entry-count { font-size: 0.86rem; font-weight: 600; color: #c8a96e; }
 
    /* ════════════════════════════════════════════
       4 · THEMATIC HUBS
    ════════════════════════════════════════════ */
    .hub-grid {
      display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 20px;
    }
    @media(max-width:760px){ .hub-grid { grid-template-columns: 1fr; } }
 
    .hub-card {
      border-radius: 16px; padding: 32px 28px;
      display: flex; flex-direction: column; gap: 14px;
    }
    .hub-card--main { background: #71a1af; color: #ffffff; }
    .hub-card--side { background: #f2fbfd; }
    .hub-label { font-size: 0.72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
    .hub-card--main .hub-label { color: #7ecece; }
    .hub-card--side .hub-label { color: var(--teal); }
    .hub-card h3 { font-family: var(--ff-head); font-size: 1.25rem; font-weight: 600; line-height: 1.25; }
    .hub-card--main h3 { color: var(--white); }
    .hub-card p { font-size: 0.88rem; line-height: 1.6; }
    .hub-card--main p { color: #e7f5ff; }
    .hub-card--side p { color: var(--muted); }
    .hub-links { display: flex; flex-direction: column; gap: 6px; margin-top: 4px;}
    .hub-link {
      font-size: 0.84rem; font-weight: 600; text-decoration: none;
      display: flex; align-items: center; gap: 6px; transition: gap .15s; color: #ffffff; transition: all ease-in-out 0.2s;
    }
    .hub-link {
      font-size: 0.84rem; font-weight: 600; text-decoration: none;
      display: flex; align-items: center; gap: 6px; transition: gap .15s; color: #ffffff; transition: all ease-in-out 0.2s;
    }
    .hub-link:hover { transform: translateX(3px); text-decoration: none;}
    .hub-card--main .hub-link {  color: #ffffff; text-decoration: none; }
    .hub-card--main .hub-link:hover { color: var(--white); gap: 10px; transform: translateX(3px); }
    .hub-card--side .hub-link { color: var(--teal); }
    .hub-card--side .hub-link:hover { gap: 10px; }
    .btn-ghost-white {transition: all ease-in-out 0.2s; background: #7ecece65; color: #ffffff; padding: 10px; border-radius: 999px; text-decoration: none;}
    .btn-ghost-white:hover {text-decoration: none; color: #71a1af; background: #f2fbfd}
    /* ════════════════════════════════════════════
       5 · QUALITÄT & E-E-A-T
    ════════════════════════════════════════════ */
    .trust-grid {
      display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 16px; margin-bottom: 32px;
    }
    .trust-card {
      background: var(--white); border: 1px solid var(--border);
      border-radius: var(--radius); padding: 24px 20px;
      display: flex; flex-direction: column; gap: 10px;
      transition: box-shadow .2s, transform .2s;
    }
    .trust-card:hover { box-shadow: 0 6px 20px rgba(13,43,69,.08); transform: translateY(-2px); }
    .trust-icon { width: 44px; height: 44px; background: #f2fbfd; border-radius: 10px; display: grid; place-items: center; font-size: 1.3rem; }
    .trust-card h3 { font-size: 0.95rem; font-weight: 600; line-height: 1.3; }
    .trust-card p  { font-size: 0.84rem; color: var(--muted); line-height: 1.5; }
 
    .cert-row { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 8px; }
    .cert-badge {
      border: 1px solid #d3a237; border-radius: 8px;
      padding: 8px 16px; font-size: 14px; font-weight: 600;
      display: inline-flex; align-items: center; gap: 8px;
    }
    .cert-badge--gold { border-color: #d3a237; color: #d3a237; }


    /* ════════════════════════════════════════════
       6 · AUSWAHLVERFAHREN (condensed)
    ════════════════════════════════════════════ */
    .criteria-layout {
      display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center;
    }
    @media(max-width:720px){ .criteria-layout { grid-template-columns: 1fr; gap: 32px; } }
 
    .criteria-list { display: flex; flex-direction: column; gap: 4px; }
    .criteria-item {
      display: flex; gap: 16px; align-items: flex-start;
      padding: 18px 0; border-bottom: 1px solid #71a1af;
    }
    .criteria-item:last-child { margin-bottom: 20px; }

    .criteria-num {
      width: 34px; height: 34px; border-radius: 50%;
      background: #71a1af; color: #ffffff;
      font-family: var(--ff-head); font-size: 0.9rem; font-weight: 600;
      display: grid; place-items: center; flex-shrink: 0; margin-top: 2px;
    }
    .criteria-body h4,
    .criteria-body h3 { font-size: 0.95rem; font-weight: 600; margin-bottom: 3px; padding-top: 0px; }
    .criteria-body p  { font-size: 0.85rem; color: var(--muted); }
 
    .criteria-box {
      background: #71a1af; border-radius: 16px; padding: 36px 30px; color: #ffffff;
    }
    .criteria-box .badge {
      display: inline-block; background: rgba(255,255,255,.12);
      border-radius: 6px; padding: 5px 12px;
      font-size: 0.74rem; font-weight: 600; letter-spacing: .08em;
      text-transform: uppercase; margin-bottom: 18px;
    }
    .criteria-box h3 {
      font-family: var(--ff-head); font-size: 1.4rem; font-weight: 600;
      line-height: 1.2; margin-bottom: 12px; color: #ffffff;
    }
    .criteria-box p { font-size: 0.88rem; color: #ffffff; line-height: 1.65; margin-bottom: 24px; }
    .criteria-stats { display: flex; gap: 12px; }
    .cstat { flex: 1; background: rgba(255,255,255,.08); border-radius: 10px; padding: 14px 12px; }
    .cstat .val { font-size: 1.5rem; font-weight: 600; font-family: var(--ff-head); color: #7ecece; display: block; }
    .cstat .lbl { font-size: 0.74rem; color: #ffffff; }



        /* ════════════════════════════════════════════
       7 · MEDIZINISCHE REDAKTION
    ════════════════════════════════════════════ */
    .editorial-grid {
      display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 16px; margin-bottom: 32px;
    }
    .ed-card {
        border: 2px solid #f9f9f9;
        border-radius: 20px; padding: 26px 20px;
        transition: all ease-in-out 0.2s;
        background: #ffffff;
    }
    .ed-card:hover {
        box-shadow: 2px 4px 12px rgba(0, 0, 0, 0.0784313725);
        border: 2px solid #ffffff;
    }
    .ed-icon { font-size: 1.6rem; margin-bottom: 12px; }
    .ed-card h3 { font-size: 0.95rem; font-weight: 600; color: var(--white); margin-bottom: 5px;height: 54px; }
    .ed-card p  { font-size: 0.85rem; color: #71a1af; line-height: 1.55; }
 
    .authors-row {
      display: flex; gap: 10px; flex-wrap: wrap; align-items: center;
      padding-top: 28px; border-top: 1px solid rgba(255,255,255,.12);
    }
    .authors-row-label { font-size: 0.8rem; color: #71a1af; }
    .author-chip {
      display: flex; align-items: center; gap: 10px;
      background: #f9f9f9; border-radius: 999px;
      padding: 7px 14px 7px 7px;
    }
    .author-avatar {
      width: 32px; height: 32px; border-radius: 50%;
      display: grid; place-items: center;
      font-size: 0.8rem; font-weight: 600; color: white;
    }
    .author-chip .name { font-size: 0.8rem; font-weight: 600; color: var(--white); }
    .author-chip .spec { font-size: 0.72rem; color: #71a1af; }


    .stats-grid {
      display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 1px; background: var(--border);
      border: 1px solid var(--border); border-radius: 16px; overflow: hidden;
    }
    .stat-cell {
      background: #ffffff; padding: 30px 20px;
      display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center;
    }
    .stat-cell .ico { font-size: 1.5rem; }
    .stat-cell .number { font-family: var(--ff-head); font-size: 2.2rem; font-weight: 600; line-height: 1; }
    .stat-cell .number span { color: #c8a96e; font-weight: 300; }
    .stat-cell .label { font-size: 0.82rem; color: var(--muted); }

    .section {
        margin-bottom: 80px;
    }
    .about-strip {
        display: flex;
        align-items: center;
        gap: 48px;
        flex-wrap: wrap;
    }
    .about-strip-text {
        flex: 1;
        min-width: 280px;
    }
    .about-pill {
        background: #f2fbfd;
        color: var(--teal);
        border-radius: 999px;
        padding: 5px 14px;
        font-size: 0.8rem;
        font-weight: 600;
    }
    .btn-outline {
        border-radius: 999px;
        border: 2px solid #71a1af;
        padding: 10px;
        text-decoration: none !important;
        font-size: 16px;
        color: #71a1af;
        font-weight: 500;
        transition: all ease-in-out 0.2s;
    }
    .btn-outline:hover {
        border: 2px solid #71a1af;
        padding: 10px;
        text-decoration: none !important;
        color: #ffffff;
        font-weight: 500;
        background: #71a1af;
    }
    .link-cluster {
        display: flex;
        flex-wrap: wrap;
        align-content: space-between;
        justify-content: center;
        gap: 15px;
        margin-top: 40px;
    }
    a.seo-link {
        text-decoration: none;
        background: #f2fbfd;
        color: var(--headline-color);
        padding: 10px;
        border-radius: 50px;
        font-size: 14px;
        transition: all ease-in-out 0.2s;
        border: 1px solid #f2fbfd;
    }
    a.seo-link:hover {
        text-decoration: none;
        background: #ffffff;
        color: var(--headline-color);
        padding: 10px;
        border-radius: 50px;
        font-size: 14px;
        border: 1px solid #bde1e9;
    }
    /* abzuändern */
    
    .section-label {
        letter-spacing: 0 !important;
        text-transform: none !important;
        color: var(--headline-color) !important;
        margin-bottom: 8px;
        font-weight: normal !important;
        font-size: 14px !important;
        background: #f2fbfd;
        border-radius: 50px;
        padding: 5px 15px 5px 15px;
        width: max-content;
    }
    .front .sticky h2, 
    .front .sticky p {
        margin-left: auto !important;
    }
    :is(.front .sticky) p {
            margin-bottom: 20px !important;
            font-size: 16px;
        }
    .distinction-content p {
        color: white;
    }
    /* volle Breite */

    body.front.page-full .content {
        margin: auto;
    }

    body.front.page-full #mainContent,
    .sticky.clearfix {
        width: 100% !important;
        max-width: none !important;
        margin-top: 40px;
    }

    body.front.page-full #mainContent .container {
        margin-bottom: 80px;
        margin-top: 80px;
    }

    :is(body.front.page-full .content-part)  > .content {
            padding: 0px !important;
        }

    #mainContent .section .container {
        max-width: none !important;
        margin: auto;
        padding: 0px 20px;
    }

    body.front.page-full #mainContent .section .container {
        max-width: 1285px !important;
        margin: auto;
    }

    .grey-background {
        background: var(--body-color) !important;
        padding: 40px 0;
    }


    /* ════════════════════════════════════════════
       6.5 · DIE AUSZEICHNUNG (für Ärzte)
    ════════════════════════════════════════════ */
    .distinction-banner {
      display: grid;
      grid-template-columns: 260px 1fr;
      gap: 40px;
      align-items: center;
      background: linear-gradient(135deg, #8cbdcb 0%, #48717d 100%);
      border-radius: 20px;
      padding: 44px 40px;
      margin-bottom: 36px;
      color: #ffffff;
    }
    .sticky.clearfix { margin-top: 60px;}
    @media(max-width:760px){ .sticky.clearfix { margin-top: 20px;}.distinction-banner { grid-template-columns: 1fr; gap: 28px; padding: 32px 24px; } }

    .distinction-seal {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 14px;
    }
    .seal-ring {
      width: 110px; height: 110px;
      border-radius: 50%;
      border: 3px solid #c8a96e;
      display: grid; place-items: center;
      background: rgba(228,168,56,.1);
      box-shadow: 0 0 0 8px rgba(228,168,56,.08), 0 0 0 16px rgba(228,168,56,.04);
    }
    .seal-ring svg { width: 52px; height: 52px; color: #c8a96e; }
    .seal-label {
      font-size: 0.72rem; font-weight: 600; letter-spacing: .12em;
      text-transform: uppercase; color: #c8a96e;
      text-align: center; line-height: 1.4;
    }
    .seal-since { font-size: 0.72rem; color: #fff; }

    .distinction-content h3 {
      font-family: var(--ff-head); font-size: 1.55rem; font-weight: 600;
      color: #ffffff; line-height: 1.25; margin-bottom: 12px;
    }
    .distinction-content p {
      font-size: 0.9rem; color: #b8cfe0; line-height: 1.7; margin-bottom: 20px;
    }
    .distinction-features {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 10px 20px;
    }
    @media(max-width:560px){ .distinction-features { grid-template-columns: 1fr; } }
    .distinction-features span {
      font-size: 0.85rem; color: #ffffff;
      display: flex; align-items: flex-start; gap: 8px;
      align-items: center;
    }
    .distinction-features span::before {
      content: '';
      width: 18px; height: 18px; flex-shrink: 0;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e4a838' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z'/%3E%3C/svg%3E") center/contain no-repeat;
      margin-top: 1px;
      align-self: center;
    }

    .distinction-value-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
      gap: 20px;
      margin-bottom: 36px;
    }
    .dv-card {
      border: 1.5px solid #dedede;
      border-radius: 18px; padding: 28px 22px;
      background: #ffffff;
      display: flex; flex-direction: column; gap: 10px;
      transition: box-shadow .2s, transform .2s, border-color .2s;
    }
    .dv-card:hover { box-shadow: 0 8px 28px rgba(13,43,69,.1); transform: translateY(-2px); border-color: #71a1af; }
    .dv-icon {
      width: 46px; height: 46px; border-radius: 12px;
      background: #fff8ec;
      display: grid; place-items: center; flex-shrink: 0;
    }
    .dv-icon svg { color: #c8a96e; }
    .dv-card h4 { font-size: 1rem; font-weight: 600; line-height: 1.3; height: 42px;}
    .dv-card p  { font-size: 0.85rem; color: var(--muted); line-height: 1.55; }

    .distinction-process {
      display: flex; gap: 0; margin-bottom: 36px;
      position: relative;
    }
    .distinction-process::before {
      content: '';
      position: absolute; top: 24px; left: 24px; right: 24px;
      height: 2px; background: linear-gradient(90deg, #71a1af, #c8a96e);
      z-index: 0;
    }
    @media(max-width:680px){ .distinction-process { flex-direction: column; } .distinction-process::before { display: none; } }
    .dp-step {
      flex: 1; display: flex; flex-direction: column;
      align-items: center; text-align: center; gap: 12px;
      padding: 0 12px; position: relative; z-index: 1;
    }
    .dp-num {
      width: 48px; height: 48px; border-radius: 50%;
      background: white; border: 2px solid #71a1af;
      display: grid; place-items: center;
      font-family: var(--ff-head); font-size: 1rem; font-weight: 600;
      color: #71a1af;
    }
    .dp-step h4 { font-size: 0.9rem; font-weight: 600; line-height: 1.25; }
    .dp-step p  { font-size: 0.8rem; color: var(--muted); line-height: 1.5; }

    .distinction-cta-row {
      display: flex; gap: 16px; flex-wrap: wrap; justify-content: center;
      padding-top: 8px;
    }
    .btn-gold {
      background: #c8a96e; color: #ffffff;
      border-radius: 999px; padding: 14px 28px;
      font-size: 0.95rem; font-weight: 600;
      text-decoration: none;
      transition: background .2s, transform .2s;
      display: inline-block;
    }
    .btn-gold:hover { background: #c8902a; transform: translateY(-1px); text-decoration: none; color: #ffffff; }

    .cat-list {
        padding: 20px;
        max-width: 1300px;
        margin: auto;
    }

    .contact-footer {
        padding: 20px;
        margin: auto;
    }


    /* ── Newsletter-Page: Scoped Styles (Präfix: .nlp-) ─────────── */
.nlp-wrapper {
    max-width: 1140px;
    margin: 0 auto;
    padding: 72px 40px 80px;
    font-family: inherit;
}

.nlp-page-layout {
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 80px;
    align-items: start;
}

.nlp-hero {
    padding-top: 0.5rem;
}

.nlp-top-bar {
    height: 5px;
    background: linear-gradient(90deg, #966e14, #e4a838);
    border-radius: 3px 3px 0 0;
}

.nlp-card {
    background: #fff;
    border: 0.5px solid #e5e7eb;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,.07);
}

.nlp-body {
    padding: 2.5rem 2.5rem 0;
}

.nlp-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 1.5rem;
}

.nlp-brand-icon {
    width: 40px;
    height: 40px;
    background: #fff0d4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.nlp-brand-label {
    font-size: 12px;
    font-weight: 600;
    color: #e4a838;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.nlp-title {
    font-size: 34px;
    font-weight: 600;
    color: #111827;
    margin: 0 0 .75rem;
    line-height: 1.2;
}

.nlp-desc {
    font-size: 16px;
    color: #6b7280;
    line-height: 1.7;
    margin: 0 0 2.5rem;
}

.nlp-benefits {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.nlp-benefits li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    color: #374151;
    line-height: 1.5;
}

.nlp-benefits li svg {
    flex-shrink: 0;
    margin-top: 2px;
    width: 24px;
    height: 24px;
}

.nlp-trust-badge svg {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.nlp-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 1.5rem;
}

.nlp-form .nlp-input {
    width: 100%;
    box-sizing: border-box;
    padding: 11px 14px;
    border-radius: 6px;
    border: 0.5px solid #d1d5db;
    font-size: 15px;
    font-family: inherit;
    color: #111827;
    background: #fff;
    transition: border-color .2s, box-shadow .2s;
}

.nlp-form .nlp-input:focus {
    outline: none;
    border-color: #e4a838;
    box-shadow: 0 0 0 3px rgba(228,168,56,.12);
}

.nlp-form .nlp-input::placeholder {
    color: #9ca3af;
}

.nlp-row {
    display: flex;
    gap: 12px;
}

.nlp-row .nlp-input {
    flex: 1;
}

.nlp-interest-wrapper {
    border: 0.5px solid #d1d5db;
    border-radius: 6px;
    overflow: hidden;
}

.nlp-interest-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    min-height: 44px;
    background: #fff;
    border: none;
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
    color: #6b7280;
    text-align: left;
    transition: background .2s;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

.nlp-interest-toggle:hover { background: #fafafa; }

.nlp-interest-toggle-text { flex: 1; }
.nlp-interest-toggle-text em { font-style: normal; font-size: 12px; color: #9ca3af; }

.nlp-interest-badge {
    display: none;
    background: #e4a838;
    color: #fff;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 7px;
    line-height: 1.4;
    white-space: nowrap;
}

.nlp-interest-badge.visible { display: inline-flex; align-items: center; }

.nlp-interest-arrow {
    flex-shrink: 0;
    color: #9ca3af;
    transition: transform .25s;
    width: 24px;
    height: 24px;
}

.nlp-interest-toggle[aria-expanded="true"] .nlp-interest-arrow { transform: rotate(180deg); }

.nlp-interest-panel {
    display: none;
    border-top: 0.5px solid #d1d5db;
    padding: 10px;
    max-height: 180px;
    overflow-y: auto;
    background: #f9fafb;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

.nlp-interest-panel.open { display: block; }

.nlp-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.nlp-chip {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

.nlp-chip input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.nlp-chip span {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 20px;
    border: 0.5px solid #d1d5db;
    font-size: 12px;
    background: #fff;
    color: #6b7280;
    white-space: nowrap;
    transition: background .15s, border-color .15s, color .15s;
}

.nlp-chip:hover span { border-color: #e4a838; color: #e4a838; }
.nlp-chip input:checked + span { background: #e4a838; border-color: #e4a838; color: #fff; }
.nlp-chip input:checked + span:hover { background: #966e14; border-color: #966e14; }

.nlp-submit {
    width: 100%;
    padding: 14px;
    background: #e4a838;
    border: none;
    border-radius: 6px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    letter-spacing: .01em;
    transition: background .2s;
    font-family: inherit;
}

.nlp-submit:hover { background: #966e14; }
.nlp-submit:active { opacity: .9; }
.nlp-submit:disabled { opacity: .6; cursor: not-allowed; }

.nlp-message {
    padding: 11px 14px;
    border-radius: 6px;
    font-size: 14px;
    text-align: center;
    display: none;
}

.nlp-message.success { background: #e1f5ee; color: #1D9E75; }
.nlp-message.error   { background: #fef2f2; color: #dc2626; }

.nlp-footer {
    padding: 1.25rem 2.5rem 1.75rem;
    margin-top: 1.5rem;
    border-top: 0.5px solid #e5e7eb;
}

.nlp-trust-badges {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: .75rem;
}

.nlp-trust-badge {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #6b7280;
}

.nlp-privacy {
    font-size: 11px;
    color: #9ca3af;
    text-align: center;
    margin: 0;
    line-height: 1.6;
}

.nlp-privacy a { color: #9ca3af; text-decoration: underline; }

.nlp-success-state {
    text-align: center;
    padding: 2.5rem 2.5rem 2rem;
}

.nlp-success-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #ddf5ec;
    color: #1D9E75;
    font-size: 32px;
    line-height: 64px;
    margin: 0 auto 1.25rem;
}

.nlp-success-state h2 {
    font-size: 24px;
    font-weight: 600;
    color: #111827;
    margin: 0 0 .5rem;
}

.nlp-success-state p {
    font-size: 15px;
    color: #6b7280;
    line-height: 1.7;
    margin: 0;
}

@media (max-width: 900px) {
    .nlp-wrapper { padding: 48px 24px 64px; }
    .nlp-page-layout {
        grid-template-columns: 1fr;
        gap: 48px;
    }
    .nlp-title { font-size: 28px; }
    .nlp-desc  { font-size: 15px; margin-bottom: 2rem; }
}

@media (max-width: 520px) {
    .nlp-body  { padding: 1.75rem 1.25rem 0; }
    .nlp-footer { padding: 1rem 1.25rem 1.5rem; }
    .nlp-title { font-size: 22px; }
    .nlp-row   { flex-direction: column; }
    .nlp-form .nlp-input { font-size: 16px; }
    .nlp-trust-badges { gap: .75rem; }
}

.social-area {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
}
.experten-detail .author-science-bar {padding: 0px; margin: 0px;}
.experten-detail .author-science {padding: 0px 20px; margin: 0px;border-radius: 100px;background: #f7f4ef;margin-left: 8px;}
.experten-detail .author-social-bar {margin: 0px; padding: 0px; display: flex;}
.experten-detail .author-science-link {padding: 4px;}

 /* ─── QUICK ANSWER BOX ─── */
  .quick-answer {
    background: #fdf8ee;
    border: 1px solid #e8d4a0;
    border-left: 4px solid #c8a96e;
    border-radius: 10px;
    padding: 24px 28px;
    margin-bottom: 40px;
  }
  .quick-answer h2 {
    font-size: 18px; font-weight: 600;
    color: var(--teal-dark);
    margin-bottom: 16px;
  }
  .qa-grid {
    display: grid; grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
  .qa-item {
    min-width: 0;
    overflow-wrap: break-word;
    word-break: normal;
  }
  .qa-item strong {
    display: block; font-size: 18px; margin-bottom: 4px;
    font-weight: 600;
  }
  .qa-item p { font-size: 16px; color: var(--mid); }
  .qa-item ul {
        line-break: loose;
  }

.krankenhausreform-pillar .content-part > .row {
    padding: 0px;
}

.krankenhausreform-pillar .check-list li::before {
    content: '✓';
    font-weight: 500;
    position: absolute;
    left: 0;
    top: 0;
    color: #71a1af;
}

.krankenhausreform-pillar .check-list li {
    font-size: 0.96rem;
    line-height: 1.6;
    padding-left: 22px;
    position: relative;
}
.krankenhausreform-pillar section {
    padding-bottom: 30px;
    border-bottom: 1px solid #dedede;
    margin-bottom: 20px;
}

.krankenhausreform-pillar ul.check-list {list-style: none; padding-left: 0px;}

strong {font-weight: 600;}

 /* ─── TILE / FACHBEREICH GRID ─── */
.tile-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
    margin-top: 24px;
}
.tile {
    background: #f2fbfd;
    border: 1px solid #c5dde3;
    border-radius: 10px;
    padding: 20px;
    transition: all ease 0.15s;
}
.tile:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: #71a1af;
}
.tile h3 {
    font-size: 0.97rem; font-weight: 600;
    color: #4d6064; margin-bottom: 8px;
}
.tile p { font-size: 0.84rem; color: var(--mid); line-height: 1.5; margin-bottom: 12px; }

.warning-note {
    background: #fdf6e3; border: 1px solid #e8d4a0;
    border-left: 4px solid #c8a96e;
    border-radius: 10px;
    padding: 14px 18px;
    font-size: 0.9rem; color: #7a5c1e;
    margin: 16px 0;
}

   /* ─── GLOSSAR ─── */
.glossar-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin-top: 20px;
}
.glossar-item {
    background: #ffffff;
    border: 1px solid #dedede;
    border-radius: 10px;
    padding: 16px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: all ease 0.15s;
}
.glossar-item:hover {
    transform: scale(1.01);
}
.glossar-term {
    font-weight: 600; color: #4d6064;
    font-size: 0.92rem; margin-bottom: 6px;
}
.glossar-def { font-size: 0.85rem; color: #6b7280; line-height: 1.55; }
#faq .accordion {margin: 8px;}
#faq .accordion > h3 {min-height: 0px;}

.news-quellen-inhalt {
    background: #f9f9f9;
    padding: 20px;
    border-radius: 10px;
    font-size: 14px;
}

.news-quellen-inhalt p {
    margin-top: 10px;
}
@charset "UTF-8";
/*
*
*	Leading Medicine Guide 2023
*	Author: SECONDRED Newmedia GmbH
*	Web: http://www.secondred.de
*
*/
html.sticky-visible { scroll-padding-top: 280px }

.experten-detail #breadcrumb,
.experten-detail .mainContent { background: transparent}
.experten-detail .filled-area { margin-top: -80px}
.experten-detail .doc-card {display: flex; padding: 20px; margin-top: 20px; margin-bottom: 0; background: white; border-radius: 10px;}
.experten-detail .content-part:not(.teaser) > .content { padding: 0}
.experten-detail #mainContent { padding: 20px;}
.experten-detail #container { overflow:visible}
.experten-detail .node {
    -webkit-hyphens: auto;
    hyphens: auto;
    background: white;
    padding: 40px;
    border-radius: 10px;
    margin-bottom: 20px;
}
#kdetail_angebote {
    border-radius: 10px;
    background: white;
}
#kdetail_angebote .inner ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}
#kdetail_angebote .inner ul li {
    position: relative;
    padding: 8px 0 8px 34px;
    border-bottom: 1px solid #f0ece6;
    line-height: 1.6;
}
#kdetail_angebote .inner ul li:last-child {
    border-bottom: none;
}
#kdetail_angebote .inner ul li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: #71A1AF;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
    font-weight: 600;
    flex-shrink: 0;
}
#kdetail_angebote .inner ul li a {
    display: inline;
}
.experten-detail .node h2 { margin-bottom: 20px; padding-bottom: 0; font-size: 20px; font-weight: 600; color: #71a1af;}
.experten-detail .node h3 { margin-bottom: 20px; font-size: 1.125rem; font-weight: 600;}
.experten-detail .node p { line-height: 1.875rem; word-break: auto-phrase; text-align: justify;}
.btns .phone-wrap a { padding: 6px 28px; }
@media screen and (max-width: 820px){
    .experten-detail .node { padding: 25px; }
    .btns .phone-wrap a { padding: 10px 28px; }
}
@media screen and (max-width: 763px){
    .experten-detail .node h2 { font-size: 1.125rem }
    .experten-detail .node h3 { font-size: 1rem }
}
@media screen and (max-width: 576px){
    .experten-detail .node { padding: 16px; }
}

.experten-detail .node.light-filled h2{ font-size: 1.875rem; margin-bottom: 20px; padding: 0}
.experten-detail .accordion-wrap > h2 {font-size: 1.875rem;}
.experten-detail .nav-topics h2 { display: none }
.accordion > h3 { min-height: 80px; }

@media screen and (max-width: 1260px){
    .experten-detail #container { background: transparent}
    .experten-detail .doc-card {padding: 50px 30px 30px}
}
@media screen and (max-width: 820px){
    .experten-detail .doc-card {padding: 50px 30px 30px}
}
.btn {
    height: 50px;
    border-radius: 25px;
    cursor: pointer;
    border: 0;
    display: inline-flex;
    flex-direction: row;
    justify-content: center;
    align-content: center;
    text-decoration: none;
    font-weight: bold;
    color: #fff;
    flex-wrap: nowrap;
    padding: 0 25px;
    font-size: 1rem;
    align-items: center;
}

.btn:hover {text-decoration: none;
    box-shadow: inset 0 0 0 40px rgba(0,0,0, .2);
}
.btn::before {font-size: 20px; margin-right: 10px; position: relative; top: 3px;}
.btn.icon-newspaper::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M16 6h3a1 1 0 0 1 1 1v11a2 2 0 0 1 -4 0v-13a1 1 0 0 0 -1 -1h-10a1 1 0 0 0 -1 1v12a3 3 0 0 0 3 3h11'/%3E%3Cline x1='8' y1='8' x2='12' y2='8'/%3E%3Cline x1='8' y1='12' x2='12' y2='12'/%3E%3Cline x1='8' y1='16' x2='10' y2='16'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M16 6h3a1 1 0 0 1 1 1v11a2 2 0 0 1 -4 0v-13a1 1 0 0 0 -1 -1h-10a1 1 0 0 0 -1 1v12a3 3 0 0 0 3 3h11'/%3E%3Cline x1='8' y1='8' x2='12' y2='8'/%3E%3Cline x1='8' y1='12' x2='12' y2='12'/%3E%3Cline x1='8' y1='16' x2='10' y2='16'/%3E%3C/svg%3E");
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    position: static;
    top: auto;
    margin-right: 0;
    font-size: inherit;
}
@media screen and (max-width: 763px){
    .btn { line-height: 100% }
    .btn::before {font-size: 1rem;top: 0}
}
.btn.btn--yellow {
    background: #c8a96e;
    color: #0f1117;
    transition: background .2s, box-shadow .2s, transform .2s;
}
.btn.btn--yellow:hover {
    background: #b3904f;
    color: #0f1117;
    box-shadow: 0 4px 18px rgba(200, 169, 110, 0.45);
    transform: translateY(-1px);
}
.btn.btn--blue {background: var(--color-deepcyan)}
.btn.btn--mint {background: var(--color-darkmint)}

@keyframes btn-mail-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(200, 169, 110, 0.45); }
    60%  { box-shadow: 0 0 0 10px rgba(200, 169, 110, 0); }
    100% { box-shadow: 0 0 0 0 rgba(200, 169, 110, 0); }
}

/* -- doc-card btn-wrap: Termin + Telefon -- */
.doc-card .btn-mail {
    background: #c8a96e;
    color: #0f1117;
    border-radius: 999px;
    padding: 15px 28px;
    font-size: 16px;
    line-height: inherit;
    font-weight: 600;
    text-decoration: none;
    transition: background .2s, transform .2s, box-shadow .2s, color .2s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 2px solid transparent;
    cursor: pointer;
    height: auto;
    animation: btn-mail-pulse 3.5s ease-out 1.5s infinite;
}
.doc-card .btn-mail:hover {
    background: #b3904f;
    color: #0f1117;
    box-shadow: 0 4px 18px rgba(200, 169, 110, 0.45);
    transform: translateY(-1px);
    animation: none;
}
.doc-card .btn-mail::before {
    content: '→';
    font-size: 15px;
    font-family: inherit !important;
    line-height: inherit;
    margin-right: 0;
    position: static;
    top: auto;
}
.doc-card .phone-wrap a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 2px solid #c8a96e;
    border-radius: 999px;
    padding: 15px 28px;
    font-size: 16px;
    line-height: inherit;
    font-weight: 600;
    color: #0f1117;
    text-decoration: none;
    transition: border-color .2s, color .2s, box-shadow .2s, transform .2s;
    background: transparent;
    min-width: 220px;
}
.doc-card .phone-wrap a:hover {
    border-color: #b3904f;
    color: #0f1117;
    text-decoration: none;
    box-shadow: 0 4px 18px rgba(200, 169, 110, 0.35);
    transform: translateY(-1px);
}
.doc-card .phone-wrap a .tabler-icon {
    width: 20px; height: 20px; flex-shrink: 0;
}

.node-highlight {padding: 40px; background: white; }
.node-highlight h2:last-child{ margin-bottom: 0 !important}
.node-highlight ul:last-child,
.node-highlight ol:last-child{ margin-bottom: 0}
@media screen and (max-width: 820px){
    .node-highlight {padding: 30px}
}
@media screen and (max-width: 763px){
    .node-highlight {padding: 20px}
}
/* -- -- */
.sticky-doc {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 18px 125px;
    position: sticky;
    top: 10px;
    min-height: 80px;
    height: 80px;
    overflow: hidden;
    background: #71A1AF;
    color: #fff;
    z-index: 777;
    /* slide in from top / out to top */
    transform: translateY(-110%);
    opacity: 0;
    margin-bottom: -90px;
    transition: opacity .35s ease, transform .35s ease;
    pointer-events: none;
    border-radius: 10px;
}
.sticky-doc.visible {
    transform: translateY(0);
    opacity: 1;
    height: auto;
    overflow: visible;
    margin-bottom: 0;
    pointer-events: auto;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
}
.sticky-doc figure { display: flex; flex-direction: row;align-items: center;}
.sticky-doc figure .avatar{
    width: 60px; height: 60px; border-radius: 50%; margin-right: 20px;
    overflow: hidden;border: 1px solid #fff;
    aspect-ratio: 1; min-width: 60px;
}
.sticky-doc figure .avatar img { display: block; width: 100% !important; height: 100% !important; object-fit: cover}

.sticky-doc figure figcaption { display: flex; flex-direction: column;}
.sticky-doc figure figcaption p:last-child { margin-bottom: 0}

.sticky-doc .btn::before { top: 0}
.sticky-doc .btns{ margin-left: auto; display: flex;flex-direction: row; white-space: nowrap; align-items: center; gap: 14px; }
.sticky-doc .phone-wrap { margin-right: 0 }
.sticky-doc .btns .btn + .btn { margin-left: 0 }

/* sticky-doc buttons — gleiche Goldfarbe wie doc-card */
.sticky-doc figure figcaption strong,
.sticky-doc figure figcaption small { color: #fff; }
.sticky-doc .phone-wrap a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    padding: 12px 22px;
    font-size: 15px;
    line-height: inherit;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    transition: border-color .2s, color .2s, box-shadow .2s, transform .2s;
    background: transparent;
    white-space: nowrap;
}
.sticky-doc .phone-wrap a:hover {
    border-color: #b3904f;
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
}
.sticky-doc .btn-mail {
    background: #c8a96e;
    color: #0f1117;
    border-radius: 999px;
    padding: 12px 22px;
    font-size: 15px;
    line-height: inherit;
    font-weight: 600;
    text-decoration: none;
    animation: btn-mail-pulse 3.5s ease-out 1.5s infinite;
    transition: background .2s, transform .2s, box-shadow .2s, color .2s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: none;
    cursor: pointer;
    height: auto;
    white-space: nowrap;
    animation: btn-mail-pulse 3.5s ease-out 1.5s infinite;
}
.sticky-doc .btn-mail:hover {
    background: #b3904f;
    color: #0f1117;
    box-shadow: 0 4px 18px rgba(200, 169, 110, 0.45);
    transform: translateY(-1px);
    animation: none;
}
.sticky-doc .btn-mail::before {
    content: '→';
    font-size: 15px;
    font-family: inherit !important;
    line-height: inherit;
    margin-right: 0;
    position: static;
    top: auto;
}
@media screen and (max-width: 1024px){
    .sticky-doc { z-index: 999 }
}
@media screen and (max-width: 820px){
    .sticky-doc {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        border-radius: 14px 14px 0 0;
        padding: 16px 20px 20px;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        margin-bottom: 0;
        transform: translateY(110%);
        font-size: 0.875rem;
        line-height: 1.3;
    }
    .sticky-doc.visible {
        transform: translateY(0);
        box-shadow: 0 -4px 24px rgba(0,0,0,0.2);
    }
    .sticky-doc .phone-wrap a {
        padding: 12.5px 22px;
    }
    /* Zeile 1: Avatar + Name */
    .sticky-doc figure {
        flex: none;
        width: 100%;
        flex-direction: row;
        align-items: center;
        gap: 12px;
    }
    .sticky-doc figure .avatar { width: 44px; height: 44px; min-width: 44px; }
    .sticky-doc figure figcaption small { display: none; }
    .sticky-doc figure figcaption strong {
        font-size: 14px;
        display: block;
        white-space: normal;
        line-height: 1.3;
    }
    /* Zeile 2: Buttons nebeneinander, volle Breite */
    .sticky-doc .btns,
    .sticky-doc .btn-wrap {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
        padding-top: 0;
        align-items: stretch;
    }
    .sticky-doc .btn-wrap nav.inline,
    .sticky-doc .btn-wrap nav.inline ul,
    .sticky-doc .btn-wrap nav.inline ul li { flex: 1; display: flex; margin: 0; padding: 0; list-style: none; }
    .sticky-doc .phone-wrap { flex: 1; margin: 0; }
    .sticky-doc .btn-mail {
        flex: 1;
        width: 100%;
        font-size: 14px;
        padding: 15px 10px;
        text-align: center;
        justify-content: center;
        display: flex;
        box-sizing: border-box;
    }
    .sticky-doc .phone-wrap a {
        flex: 1;
        font-size: 14px;
        padding: 12px 10px;
        width: 100%;
        text-align: center;
        justify-content: center;
        display: flex;
        box-sizing: border-box;
    }
}

/* -- Slots -- */
.slot { position: relative; margin-bottom: 20px; }
.slot#kdetail_spektrum,
.slot#kdetail_diagleist {  margin-bottom: 20px}
@media screen and (max-width: 763px){ 
    .slot { margin-bottom: 45px }
}
.slot-expandable { overflow: hidden; transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1); }

/* Basiswerte — immer im DOM, nie display:none */
.slot .slot-toggle { display: block; }
.slot .slot-close  { display: block; }

/* === ÖFFNEN: slot-closed wird entfernt ===
   - toggle: sofort ausblenden (kein delay)
   - close:  nach Höhen-Animation einblenden (delay ~0.4s)           */
.slot:not(.slot-closed) .slot-toggle {
    opacity: 0; pointer-events: none;
    transition: opacity 0.2s ease 0s;
}
.slot:not(.slot-closed) .slot-close {
    opacity: 1; pointer-events: auto;
    transition: opacity 0.25s ease 0.42s;
}

/* === SCHLIEßEN: slot-closed wird gesetzt ===
   - close:  sofort ausblenden (kein delay)
   - toggle: nach Höhen-Animation einblenden (delay ~0.4s)           */
.slot-closed .slot-expandable { max-height: 700px; border-radius: 10px;}
.slot-closed .slot-close {
    opacity: 0; pointer-events: none;
    transition: opacity 0.2s ease 0s;
}
.slot-closed .slot-toggle {
    opacity: 1; pointer-events: auto;
    transition: opacity 0.25s ease 0.42s;
    border-radius: 10px;
}

.slot-toggle {
    text-align: center;
    position: absolute;
    bottom: 0; left: 0; right: 0;
    background: linear-gradient(
        to top,
        rgba(255,255,255,1)   0%,
        rgba(255,255,255,0.98) 10%,
        rgba(255,255,255,0.92) 25%,
        rgba(255,255,255,0.75) 45%,
        rgba(255,255,255,0.4)  65%,
        rgba(255,255,255,0)   100%
    );
    padding: 80px 30px 24px;
    border-radius: 10px;
}
.slot-close {
    text-align: center;
    position: relative;
    padding: 20px 30px 24px;
    background: transparent;
}
.slot-close  button.show-less,
.slot-toggle button.show-more {
    color: #71a1af;
    border: 0;
    background: transparent;
    padding: 5px 0;
    font-size: 16px;
    font-family: var(--font-familiy);
    cursor: pointer;
    border: 1px solid #71a1af;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 50px;
    transition: all 0.2s ease;
    background: white;
    width: 200px;
    display: inline-block;
    text-align: center;
}
@media screen and (max-width: 576px){
    .slot-close  button.show-less,
    .slot-toggle button.show-more {
        width: 100%;
        font-size: 14px;
    }
}
.slot-close  button.show-less:hover,
.slot-toggle button.show-more:hover { color: var(--text-color)}

/* .slot-close  button.show-less::before,
.slot-toggle button.show-more::before {
    content:"";float: right; margin-left: 20px; height: 10px; width: 10px;
    transform: rotate(45deg); position: relative;
}
 */
.slot-close  button.show-less::before {border-left: 2px solid #d3a237;border-top: 2px solid #d3a237; top: 13px}
.slot-toggle  button.show-more::before {border-right: 2px solid #d3a237;border-bottom: 2px solid #d3a237; top: 8px}
/* -- Slot - Vita  -- */
.slot-vita {}
.slot-vita .table-wrap {
    padding: 30px;
    background: white;
    border-radius: 10px;
}
/* Wenn offen: untere Ecken des table-wrap flach, slot-close schließt als weißer Streifen an */
.slot-vita:not(.slot-closed) .table-wrap {
    border-radius: 10px 10px 0 0;
}
.slot-vita .slot-close {
    background: white;
    border-radius: 0 0 10px 10px;
    padding: 8px 30px 20px;
}
/* slot-vita slot-close: weißer BG darf nie durch opacity verschwinden —
   geschlossen: komplett aus dem Fluss (kein display), offen: sofort da   */
.slot-vita.slot-closed .slot-close {
    display: none;
}
.slot-vita:not(.slot-closed) .slot-close {
    display: block;
    opacity: 1; pointer-events: auto;
    transition: none;
}
/* Nur den Button selbst verzögert einblenden */
.slot-vita .slot-close button.show-less {
    transition: opacity 0.25s ease 0.42s;
    opacity: 0;
}
.slot-vita:not(.slot-closed) .slot-close button.show-less {
    opacity: 1;
}
.slot-vita table {}
.slot-vita table th,
.slot-vita table td { vertical-align: top; text-align: left; border-bottom: 1px solid #c3d7d8; padding: 10px 0}

.slot-vita table tr:last-child th,
.slot-vita table tr:last-child td { border-bottom: 0}

.slot-vita table td:first-child{
    white-space: nowrap; padding-right: 20px;
    font-weight: bold;
    color: var(--color-darkmint);
}
.slot-vita table td[colspan] { border-bottom: 0; color: var(--text-color); font-size: 20px; padding: 20px 0; white-space: normal}

@media screen and (max-width: 820px){
    .slot-vita table th,
    .slot-vita table td {  display: block}
    .slot-vita table td:first-child{border-bottom: 0}
}
/* -- Slot - Über uns  -- */
.slot-aboutus {
    background: white;
    padding: 25px;
    border-radius: 10px;
    padding-top: 50px;
    margin-bottom: 20px;
}

/* -- Slot - Accordion  -- */
.slot-accordion {}

/* Kriterien-Tabelle: "Ja"-Zellen als grüne Checkmark-Pill */
#kdetail_criteria table { width: 100%; border-collapse: collapse; }
#kdetail_criteria table tr { border-bottom: 1px solid #e8f3f0; }
#kdetail_criteria table tr:last-child { border-bottom: none; }
@media screen and (max-width: 576px){
    #kdetail_criteria { overflow-x: auto; display: block; }
    #kdetail_criteria table { min-width: 320px; }
}
#kdetail_criteria table td:first-child {
    padding: 12px 16px 12px 0;
    color: var(--text-color);
    font-size: 15px;
    line-height: 1.5;
}
#kdetail_criteria table td {
    word-break: normal !important;
}

#kdetail_criteria table td:last-child {
    padding: 12px 0;
    width: 60px;
    text-align: center;
    font-size: 0;          /* Text ausblenden – nur für Ja/Nein-Zeilen */
    white-space: nowrap;
}
/* "Ja" → grüne Checkmark (allgemeine Kriterien) */
#kdetail_criteria table td:last-child::after {
    content: '✓';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px; height: 28px;
    background: #71A1AF;
    color: #fff;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
}
/* Spezialitäts-Tabellen (nach <h4>): konkrete Zahlen als Text anzeigen */
#kdetail_criteria .inner h4 + table td:last-child {
    font-size: 15px;
    width: auto;
    text-align: right;
    padding-right: 4px;
}
#kdetail_criteria .inner h4 + table td:last-child::after {
    display: none;
}

.slot-accordion .video-wrap {
     position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
}
.slot-accordion .video-wrap iframe{
    position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.slot-accordion details {
    background: var(--color-lightcyan);
}
.slot-accordion details + details { margin-top: 20px }
.slot-accordion details summary {
    padding: 40px;user-select: none;
    cursor: pointer;font-size: 1.25rem;
    line-height: 100%;
    list-style: none;
}
.slot-accordion details summary::marker,
.slot-accordion details summary::-webkit-details-marker { display:none }
.slot-accordion details summary::before {
    width: 16px; height: 16px; 
    border-bottom: 2px solid var(--color-yellow);
    border-right: 2px solid var(--color-yellow);
    transform: rotate(45deg);
    content:""; display: block; float:right;
    position: relative; top: -3px;
    transition: transform 350ms cubic-bezier(0.2, 1, 0.3, 1);
}
.slot-accordion details[open] summary::before { transform: rotate(224deg) }
.slot-accordion details .inner{ padding: 0 40px 30px}

.slot-accordion details ul:last-child,
.slot-accordion details ol:last-child,
.slot-accordion details p:last-child { margin-bottom: 0 }

@media screen and (max-width: 820px){
    .slot-accordion details summary {padding: 30px}
    .slot-accordion details .inner{ padding: 0 30px 20px}
}
@media screen and (max-width: 763px){
    .slot-accordion details summary {padding: 20px}
    .slot-accordion details .inner{ padding: 0 20px 10px}
}

/* -- Slot - Text  -- */
.slot-text {}

/* Experteninterview-Links: keine Bullets */
#kdetail_interviews .inner ul,
#kdetail_publications .inner ul,
#kdetail_science .inner ul {
    list-style: none;
    padding-left: 0;
}
#kdetail_interviews .inner ul li,
#kdetail_publications .inner ul li,
#kdetail_science .inner ul li {
    border-bottom: 1px solid #f0ece6;
    padding: 8px 0;
}
#kdetail_interviews .inner ul li:last-child,
#kdetail_publications .inner ul li:last-child,
#kdetail_science .inner ul li:last-child {
    border-bottom: none;
}

/* Spektrum multicolumn: Kacheln */
#kdetail_spektrum .inner ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}
#kdetail_spektrum .inner ul li {
    padding: 9px 20px;
    background: #f5f0e8;
    border: 1px solid #d4b896;
    border-radius: 4px;
    font-size: 14px;
    color: #999;
    font-weight: 400;
}
#kdetail_spektrum .inner ul li:has(a.link) {
    background: #faf5eb;
    border-color: #c8a96e;
    color: #1a1a1a;
    font-weight: 600;
    transition: background .15s, border-color .15s, box-shadow .15s;
}
#kdetail_spektrum .inner ul li:has(a.link):hover {
    background: #f3e8cc;
    border-color: #b08840;
    box-shadow: 0 2px 8px rgba(180,140,60,0.12);
}
#kdetail_spektrum .inner ul li a.link {
    color: #1a1a1a;
    text-decoration: none;
    display: block;
}
#kdetail_spektrum .inner ul li a.link:hover {
    color: #000;
}

.experten-wrap {
    padding: 44px 48px;
    border-radius: 10px;
    margin-bottom: 10px;
}
.experten-wrap h2 { margin-bottom: 24px; }
@media screen and (max-width: 820px){
    .experten-wrap { padding: 30px; }
}
@media screen and (max-width: 576px){
    .experten-wrap { padding: 0px; }
}

/* -- #experten Karten -- */
#experten.flexgrid,
#experten {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-left: 0;
    float: none;
}
@media screen and (max-width: 600px){
    #experten.flexgrid,
    #experten { grid-template-columns: 1fr; }
}
#experten.flexgrid .box { margin: 0; float: none; width: auto; }

#experten .expert {
    background: #fff;
    border: 1px solid #e5e0d8;
    border-radius: 4px;
    overflow: hidden;
    width: auto;
    float: none;
    margin: 0;
    transition: box-shadow .2s, border-color .2s;
}
#experten .expert:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    border-color: #c8a96e;
}

#experten .doc-wrap {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px;
    background: transparent;
    border: none;
    border-radius: 0;
    overflow: visible;
}

#experten .expert figure {
    background: transparent;
    padding: 0;
    margin-bottom: 0;
    flex-shrink: 0;
}

#experten .expert .photo {
    width: 72px;
    height: 72px;
    min-width: 72px;
    box-shadow: none;
    border-radius: 50%;
    overflow: hidden;
}

#experten .expert .about {
    background: transparent;
    padding: 0;
    border-top: none;
}

#experten .expert .about h3.name {
    margin-bottom: 4px;
    font-size: 0.95rem;
    line-height: 1.4;
}

#experten .expert .about .role {
    font-size: 0.8rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}

/* -- Rows -- */
.row {}
.row ul.multicolumn {column-count: 2;column-gap: 40px;}
@media screen and (max-width: 820px){
    .row ul.multicolumn {column-count: 1;column-gap: 0;}
}
/* -- -- */
.row-usp { padding: 0 0 30px}
.row-usp:first-child { padding: 20px 0 40px}
.row-usp .content {display: flex;flex-direction: row}
.row-usp .content figure { margin-left: auto; display: flex; flex-direction: row}
.row-usp .content figure img { margin-left: 60px}

.row-usp ul {padding-left: 0; list-style: none}
.row-usp ul li {position: relative; padding-left: 30px;}
.row-usp ul li::before {
    content:'\0070'; color: var(--color-darkmint); font-size: 20px;
    position: absolute; left: 0; top: 3px;
    font-family: "leading" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 820px){
    .row-usp .content {flex-direction: column}
    .row-usp .content figure { margin-left: 0; padding-top: 20px}
    .row-usp .content figure img { margin-left: 0; margin-right: 30px}
}
@media screen and (max-width: 763px){
    .row-usp { padding: 30px 0}
}
/* -- Row - Text  -- */
.row-text {}
.row-text > h2,
.row-text > .content > h2 { font-size: 20px; }

.row-text ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    padding: 0;
}
.row-text ul li {
    padding: 9px 20px;
    background: #eef6f2;
    border: 1px solid #c2ddd4;
    border-radius: 2px;
    font-size: 14px;
    color: #71A1AF;
    font-weight: 500;
}

/* -- Row - Herotext  -- */
.row-herotext {
    background: #fff;
    border-radius: 10px;
    padding: 28px 32px;
    margin: 25px 0 15px;
    position: relative;
}
@media screen and (max-width: 576px){
    .row-herotext { padding: 20px; }
}
.row-herotext::before {
    content: '\201C';
    position: absolute;
    top: -14px;
    left: 20px;
    font-size: 80px;
    line-height: 1;
    color: #c8a96e;
    font-family: Georgia, serif;
    opacity: 0.35;
    pointer-events: none;
}
.row-text + .row-herotext {padding: 0 0 60px }
.row-herotext + .row-text { margin-top: 10px; margin-bottom: 10px;}
.row-herotext {}
.row-herotext ul,
.row-herotext ol{ margin-bottom: 30px;}

.row-herotext ul:last-child,
.row-herotext ol:last-child,
.row-herotext p:last-child { margin-bottom: 0}
.row-herotext article {
    /*font-size: 20px; line-height: 30px;
    color: var(--color-brown) */
    font-size: 16px;
    line-height: 1.8;
    color: var(--text-color);
}

/* -- Row - Gallery  -- */
.row-gallery {
    background: rgba(200, 169, 110, 0.08);
    border: 1px solid rgba(200, 169, 110, 0.2);
    padding: 20px;
    border-radius: 10px;
    margin-bottom: 40px;
}
.row-gallery .content-gallery { margin-bottom: 0; width: 100%; box-sizing: border-box; }
.row-gallery .swiper-container { margin: 0; border-radius: 12px; overflow: hidden; width: 100%; box-sizing: border-box; }
.row-gallery .swiper-slide { height: 280px; }
.row-gallery .swiper-slide a { display: block; height: 100%; border-radius: 0; overflow: hidden; }
.row-gallery .swiper-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center top;
    display: block;
    transition: transform .5s ease;
}
@media screen and (max-width: 763px) {
    .row-gallery .swiper-slide { height: auto !important; aspect-ratio: unset; }
    .row-gallery .swiper-slide a { height: auto; }
    .row-gallery .swiper-slide img { height: 75px !important; }
}
.row-gallery .swiper-slide a:hover img { transform: scale(1.03); }
.row-gallery .swiper-pagination { position: relative; padding: 16px 0 0; }
.row-gallery .swiper-pagination .swiper-pagination-bullet {
    width: 8px; height: 8px;
    background: #c8a96e;
    opacity: 0.45;
    transition: opacity .2s, transform .2s;
}
.row-gallery .swiper-pagination .swiper-pagination-bullet-active {
    opacity: 1;
    transform: scale(1.3);
}
.row-gallery .swiper-button-prev,
.row-gallery .swiper-button-next {
    width: 40px; height: 40px;
    border-radius: 50%;
    background-color: rgb(0 0 0 / 90%);
    background-size: 14px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    margin-top: -20px;
    transition: background-color .2s, box-shadow .2s;
}
.row-gallery .swiper-button-prev:hover,
.row-gallery .swiper-button-next:hover {
    background-color: #c8a96e;
    box-shadow: 0 4px 14px rgba(200,169,110,0.4);
}
.row-gallery .swiper-button-prev { left: 16px; }
.row-gallery .swiper-button-next { right: 16px; }
/* Hide nav buttons when all slides are visible (both disabled = nothing to swipe) */
.row-gallery .swiper-button-prev.swiper-button-disabled + .swiper-button-next.swiper-button-disabled,
.row-gallery .swiper-button-prev:has(+ .swiper-button-next.swiper-button-disabled).swiper-button-disabled {
    display: none;
}

@media screen and (max-width: 1120px){
    .row-gallery { padding: 30px; }
}
@media screen and (max-width: 763px){
    .row-gallery { padding: 20px; border-radius: 6px; }
}

/* -- Row - Übersicht  -- */
.row-overview {
    display: flex;flex-direction: row;
    .nav-topics {
        position: sticky; top: 250px; color: #25262b;
        background: white;
        padding-bottom: 20px;
        border-radius: 10px;
        font-size: 16px;
        border: 1px solid #f0ece6;
        h2 {color: inherit; padding: 30px 30px 20px}
        ul{ list-style: none; font-weight: bold; font-size: 1rem; padding: 20px;}
        ul li { border-bottom: 1px solid #f0ece6; font-weight: 500;}
        a {
            text-decoration: none; color: inherit;
            padding: 10px 30px;display: block;
            transition: all ease 0.2s;
            &:hover {color: var(--color-yellow); transform: translatex(2px);}
            &.active {background: #c8a96e; color: var(--headline-color); opacity: 1}
        }
    }
    aside{ width: 33.333%; padding-right: 25px;}
    .content {flex: 1;width: 66.666%;padding-left: 25px;}
}

@media screen and (max-width: 820px){
    .row-overview { flex-direction: column}
    
    .row-overview aside,
    .row-overview .content{  width: 100%; padding: 0}
}
/* -- Row - Address  -- */
.row-address {
    margin: 20px 0;
    padding-top: 0;
    display: grid;
    grid-template-columns: 1fr 340px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(0,0,0,0.08);
}
.row-address .map-container {
    min-height: 420px;
}
.row-address .map-container #osmap {
    width: 100%;
    height: 100%;
    min-height: 420px;
    display: block;
}
.row-address .content-width {
    display: flex;
}
.row-address .card-address {
    background: #fff;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    color: var(--text-color);
    position: static;
    left: auto; bottom: auto;
    max-width: none;
    backdrop-filter: none;
    border-radius: 0px;
    border: 1px solid white;
}
.row-address .card-address h2 {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 600;
    padding: 0;
    margin-bottom: 16px;
    border-bottom: 2px solid #c8a96e;
    padding-bottom: 12px;
}
.row-address .card-address p.pluscode {
    font-size: 13px;
    color: #888;
    margin: -10px 0 10px;
}
.row-address .card-address address {
    font-style: normal;
    margin-bottom: 12px;
    width: 100%;
}
.row-address .card-address address p {
    margin: 0;
    line-height: 1.6;
}
.row-address .card-address > p {
    font-size: 15px;
    line-height: 1.8;
    margin: 0 0 16px;
    width: 100%;
}
.row-address .card-address > p a {
    color: #4d6064;
    font-weight: 600;
    text-decoration: none;
    display: inline;
}
.row-address .card-address > p a:hover {
    color: #c8a96e;
    text-decoration: underline;
}
.row-address .card-address > p small {
    font-size: 12px;
    color: #999;
}
.row-address .card-address a.vcard-download {
    display: inline-flex;
    align-items: center;
    align-self: anchor-center;
    align-self: center;
    gap: 8px;
    border: 2px solid #c8a96e;
    border-radius: 999px;
    padding: 10px 24px;
    font-size: 15px;
    font-weight: 600;
    color: #0f1117;
    text-decoration: none;
    background: transparent;
    transition: border-color .2s, box-shadow .2s, transform .2s;
    margin-top: auto;
}
.row-address .card-address a.vcard-download:hover {
    border-color: #b3904f;
    box-shadow: 0 4px 18px rgba(200,169,110,0.35);
    transform: translateY(-1px);
    color: #0f1117;
    text-decoration: none;
}
.row-address .card-address a.vcard-download::before {
    content: none;
}
@media screen and (max-width: 900px) {
    .row-address {
        grid-template-columns: 1fr;
    }
    .row-address .map-container,
    .row-address .map-container #osmap {
        min-height: 280px;
    }
}
@media screen and (max-width: 576px) {
    .row-address .card-address {
        padding: 24px 20px;
    }
}
/* -- -- */
#mobi-fixedbar {
    position: fixed;
    bottom: 0; left: 30px; right: 30px;
    background: var(--color-deepcyan);
    color: #fff; z-index: 888;
    display: none;
}
#mobi-fixedbar.closed .nav-topics{ display: none}
@media screen and (max-width: 820px){
    #mobi-fixedbar { display: block;}    
    .experten-detail .filled-area { margin-top: 0px}
}
@media screen and (max-width: 763px){
    #mobi-fixedbar { left: 20px; right: 20px }
}
@media screen and (max-width: 567px){
    #mobi-fixedbar { bottom: 50px }
    .row-overview aside { display: none}
}
#mobi-fixedbar .bar-head {
    display: flex; flex-direction: row;
    justify-content: space-between;
    padding: 20px;
    
}
#mobi-fixedbar .bar-head a,
#mobi-fixedbar .bar-head button{
    cursor: pointer;
    background: transparent;
    border: 0;
    color: #fff;
    font-family: var(--font-familiy);
    font-size: 1rem;
}
#mobi-fixedbar .bar-head a::before,
#mobi-fixedbar .bar-head button::before{ margin-right: 10px}
#mobi-fixedbar a {text-decoration: none; color: inherit}
#mobi-fixedbar nav{ padding: 0 20px 20px; font-weight: bold}
#mobi-fixedbar nav ul { list-style: none; padding-left: 0}

.mobile-footer {
    position: fixed;
    bottom: 0;
    left: 20px; right: 20px;
    color: #fff;
    background: var(--color-darkcyan);
    padding: 20px;
    z-index: 3;
    display: none !important;
    button {color: #fff;border: 0;cursor: pointer;background: transparent;}
    a { color: inherit; text-decoration: none}
    .overview-list {
        display: none;
        button {
            font-size: 1.25rem;width: 100%;font-weight: bold;
            text-align: left;margin-bottom: 15px;
            &::before {
                content:""; float:right; width: 14px; height: 14px;
                border-left: 2px solid #fff; border-top: 2px solid #fff;
                transform: rotate(45deg); position: relative; top: 10px;
                right: 5px;
            }
        }
        ul {
            list-style: none; padding-left: 0;max-height: 50vh;overflow: hidden;overflow-y: auto;
            li {margin: 0 -20px;}
        }
        a {
            color: inherit;
            padding: 7px 20px;
            display: block;
            font-weight: bold;
            &.active {
                background: var(--color-darkmint);
            }
        }
    }
    &.show-list{
        .mobile-footer-options {display: none}
        .overview-list { display: block}
    }
}
@media screen and (max-width: 567px){
    .mobile-footer {display: block}
}

.mobile-footer-options {
    display: flex; flex-direction: row; justify-content:  space-between;
    a, button {
        font-weight: bold;font-size: 0.875rem;
        &::before {  font-size: 1rem; position: relative}
    }
    button::before { top: 3px; margin-right: 15px}
    a::before { float: right; margin-left: 15px; top: 4px; font-size: 1.125rem}
}
.experten-detail #mobibar { display: none !important}
<<<<<<< HEAD
.experten-detail .mobile-footer { display: none !important}

/* Autor-Link Button */
a.author-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 2px solid #c8a96e;
    border-radius: 999px;
    padding: 10px 28px;
    font-size: 16px;
    font-weight: 600;
    color: #0f1117;
    text-decoration: none;
    background: transparent;
    transition: border-color .2s, color .2s, box-shadow .2s, transform .2s;
    margin: 15px;
}
a.author-link:hover {
    border-color: #b3904f;
    color: #0f1117;
    text-decoration: none;
    box-shadow: 0 4px 18px rgba(200, 169, 110, 0.35);
    transform: translateY(-1px);
}
a.author-link .tabler-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

/* -- Galpop Lightbox -- */
#galpop-wrapper {
    backdrop-filter: blur(6px);
    background: rgba(0,0,0,0.65) !important;
}
#galpop-container {
    border-radius: 12px !important;
    overflow: visible !important;
    box-shadow: 0 24px 80px rgba(0,0,0,0.5) !important;
    padding: 0 !important;
    background: #000 !important;
    transition: width 0.2s cubic-bezier(0.4,0,0.2,1), height 0.2s cubic-bezier(0.4,0,0.2,1) !important;
}
#galpop-content img {
    display: block;
    border-radius: 12px;
}
/* Moderner Close-Button */
#galpop-close {
    top: 14px !important;
    right: 14px !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(255,255,255,0.12) !important;
    border-radius: 50% !important;
    border: 1.5px solid rgba(255,255,255,0.25) !important;
    backdrop-filter: blur(8px);
    transition: background 0.18s, transform 0.18s !important;
}
#galpop-close:hover {
    background: rgba(200,169,110,0.85) !important;
    transform: rotate(90deg) scale(1.1);
    border-color: transparent !important;
}
#galpop-close::before,
#galpop-close::after {
    width: 16px !important;
    height: 1.5px !important;
    background: #fff !important;
    margin-left: -8px !important;
    margin-top: 0 !important;
    top: 50% !important;
    left: 50% !important;
    transition: inherit;
}
/* Nav-Arrows modernisieren */
#galpop-prev,
#galpop-next {
    width: 44px !important;
    background-color: rgba(255,255,255,0.1);
    border-radius: 8px;
    backdrop-filter: blur(4px);
    transition: background-color 0.18s;
    display: flex;
    background-position-x: center;
    max-height: 45px;
    top: 50%;
    margin-top: -22.5px;
}
#galpop-prev {
    left: 5px !important;
    right: auto !important;
}
#galpop-next {
    right: 5px !important;
    left: auto !important;
}
#galpop-prev:hover,
#galpop-next:hover {
    background-color: rgba(200,169,110,0.5);
}

/* -- .btns (Phone + Termin Button) mobil -- */
.btns {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
/* Phone-Link im .btns genauso stylen wie .doc-card .phone-wrap a */
.btns .phone-wrap a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 2px solid #c8a96e;
    border-radius: 999px;
    padding: 6px 28px;
    font-size: 16px;
    font-weight: 600;
    color: #0f1117;
    text-decoration: none;
    background: transparent;
    transition: border-color .2s, color .2s, box-shadow .2s, transform .2s;
}
.btns .phone-wrap a:hover {
    border-color: #b3904f;
    color: #0f1117;
    text-decoration: none;
    box-shadow: 0 4px 18px rgba(200,169,110,0.35);
    transform: translateY(-1px);
}
.btns .phone-wrap a .tabler-icon {
    width: 20px; height: 20px; flex-shrink: 0;
}
@media screen and (max-width: 576px) {
    .btns {
        flex-direction: column;
        align-items: stretch;
    }
    .btns .phone-wrap,
    .btns .phone-wrap a,
    .btns .btn-mail {
        width: 100%;
        justify-content: center;
    }
    .btns .phone-wrap a {
        padding: 10px 28px;
    }
    .doc-card .desc {
    display: flex;
    object-position: center;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
}

/* -- Kontakt-Popup (#contactPopup) -- */
#contactPopup.popup {
    background: rgba(20, 30, 32, 0.68);
    backdrop-filter: blur(4px);
    transition: opacity 0.25s ease, visibility 0.25s ease;
}
#contactPopup.popup .popup-inner {
    padding: 16px;
    align-items: center;
    /* Basis-Transform deaktivieren – Animation übernimmt */
    transform: none !important;
    transition: none !important;
}
/* Keyframe-Animation statt Transition:
   Löst das "kein Effekt beim ersten Öffnen"-Problem,
   da Animations immer vom from-Keyframe starten. */
@keyframes contactPopupIn {
    from {
        opacity: 0;
        transform: translateY(32px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
#contactPopup.popup.visible .popup-content {
    animation: contactPopupIn 0.42s cubic-bezier(0.22, 1, 0.36, 1) both;
}
#contactPopup.popup .popup-content {
    max-width: 680px;
    border-radius: 14px;
    padding: 40px 40px 36px;
    box-shadow: 0 24px 64px rgba(0,0,0,0.28);
    background: #fff;
    position: relative;
}
/* Close-Button: kleiner Teal-Kreis mit weissem X */
#contactPopup.popup .popup-close {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #4d6064;
    border: none;
    top: 14px;
    right: 14px;
    cursor: pointer;
    transition: background 0.18s, transform 0.22s;
    display: flex;
    align-items: center;
    justify-content: center;
}
#contactPopup.popup .popup-close:hover {
    background: #c8a96e;
    transform: rotate(90deg);
}
#contactPopup.popup .popup-close::before,
#contactPopup.popup .popup-close::after {
    width: 16px;
    height: 1.5px;
    background: #fff;
    margin-left: -8px;
    margin-top: 0;
    top: 50%;
    left: 50%;
}
/* Popup-Überschrift */
#contactPopup.popup .popup-inner h3 {
    font-size: 1.25rem;
    color: #4d6064;
    border-bottom: 2px solid #c8a96e;
    padding-bottom: 0.65rem;
    margin-bottom: 1.2rem;
}
/* Arzt-Karte im Popup */
#contactPopup.popup figure.doctor-card {
    background: #f7f4ef;
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 22px;
    gap: 18px;
}
#contactPopup.popup figure.doctor-card .avatar {
    border: 3px solid #c8a96e;
    box-shadow: none;
    width: 80px;
    height: 80px;
    min-width: 80px;
}
#contactPopup.popup figure.doctor-card figcaption {
    font-size: 0.88rem;
    color: #4d6064;
    line-height: 1.55;
}
#contactPopup.popup figure.doctor-card figcaption strong,
#contactPopup.popup figure.doctor-card figcaption b {
    font-size: 0.95rem;
    color: #2d3a3c;
}
/* Fieldset: Hintergrund entfernen, clean */
#contactPopup.popup fieldset.contact {
    background: transparent;
    padding: 0;
}
/* Labels: klein, teal, fett */
#contactPopup.popup fieldset.contact label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #4d6064;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
}
/* Eingabefelder: runde Ecken, Beige-BG, Gold-Focus */
#contactPopup.popup fieldset.contact input.formText,
#contactPopup.popup fieldset.contact input[type="date"],
#contactPopup.popup fieldset.contact select,
#contactPopup.popup fieldset.contact textarea {
    border: 1.5px solid #ddd;
    border-radius: 8px;
    background: #f7f4ef;
    padding: 9px 12px;
    height: auto;
    font-size: 0.95rem;
    color: #2d3a3c;
    width: 100%;
    transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
#contactPopup.popup fieldset.contact input.formText:focus,
#contactPopup.popup fieldset.contact input[type="date"]:focus,
#contactPopup.popup fieldset.contact select:focus,
#contactPopup.popup fieldset.contact textarea:focus {
    border-color: #c8a96e;
    outline: none;
    box-shadow: 0 0 0 3px rgba(200,169,110,0.2);
    background: #fff;
}
/* Checkbox / Radio: Gold-Rand, Dot perfekt mittig */
#contactPopup.popup fieldset.contact .checkbox-wrap i {
    border: 1.5px solid #c8a96e;
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    top: 0;
    min-width: 17px;
}
#contactPopup.popup fieldset.contact .checkbox-wrap i::before {
    position: static;
    transform: none;
    left: auto;
    top: auto;
    margin: 0;
}
/* Absende-Button: Gold-Pill */
#contactPopup.popup fieldset.contact button.formSubmit {
    background: #c8a96e;
    border-color: #c8a96e;
    border-radius: 999px;
    padding: 0.7rem 2.2rem;
    height: auto;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: #fff;
    min-width: 200px;
    width: 100%;
    box-shadow: 0 4px 18px rgba(200,169,110,0.32);
    transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
}
#contactPopup.popup fieldset.contact button.formSubmit:hover {
    background: #b8964e;
    border-color: #b8964e;
    box-shadow: 0 6px 24px rgba(200,169,110,0.48);
    transform: translateY(-1px);
}
/* FriendlyCaptcha: dezenter Rahmen */
#contactPopup.popup .frc-captcha {
    background: #f7f4ef;
    border: 1px solid #e0d9ce;
    border-radius: 8px;
    place-self: center;
}
/* Einleitungstext */
#contactPopup.popup .popup-content > p > strong {
    color: #4d6064;
    font-size: 0.9rem;
}
/* Mobile: kein Radius, volle Breite */
@media screen and (max-width: 700px) {
    #contactPopup.popup .popup-content {
        padding: 28px 18px 24px;
        border-radius: 0;
    }
    #contactPopup.popup .popup-inner {
        padding: 0;
        align-items: flex-start;
    }
    #contactPopup.popup figure.doctor-card .avatar {
        width: 64px;
        height: 64px;
        min-width: 64px;
    }
}


/* -- Contact Trustbar -- */
.contact-trustbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 18px;
    padding: 16px 18px;
    background: #f7f4ef;
    border-radius: 10px;
    border: 1px solid #e8e3d8;
}
.contact-trustbar .trustbar-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.8rem;
    line-height: 1.45;
    color: #4d6064;
}
.contact-trustbar .trustbar-item svg {
    flex-shrink: 0;
    margin-top: 1px;
    color: #c8a96e;
}
.contact-trustbar .trustbar-item strong {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: #2d3a3c;
    margin-bottom: 1px;
}
.contact-trustbar .trustbar-item span {
    color: #6b7c80;
}


/* -- Contact Trustbar -- */
.contact-trustbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 18px;
    padding: 16px 18px;
    background: #f7f4ef;
    border-radius: 10px;
    border: 1px solid #e8e3d8;
}
.contact-trustbar .trustbar-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.8rem;
    line-height: 1.45;
    color: #4d6064;
}
.contact-trustbar .trustbar-item svg {
    flex-shrink: 0;
    margin-top: 1px;
    color: #c8a96e;
}
.contact-trustbar .trustbar-item strong {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: #2d3a3c;
    margin-bottom: 1px;
}
.contact-trustbar .trustbar-item span {
    color: #6b7c80;
}

/* ── Topic Filter (news-start / wissenswertes) ───────────────────── */
.topic-filter {
    margin: 1.5rem 0 2rem;
    padding: 1.25rem 1.5rem;
    background: #f2fbfd;
    border-radius: 12px;
    border: 1px solid #c5dde3;
}
.topic-filter__label {
    margin: 0 0 0.75rem;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #4d6064;
}
.topic-filter__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}
.topic-filter__list li { margin: 0; }
.topic-filter__list a.link {
    display: inline-block;
    padding: 0.35rem 0.9rem;
    border-radius: 999px;
    border: 1.5px solid #71a1af;
    color: #4d6064;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.18s, color 0.18s;
}
.topic-filter__list a.link:hover,
.topic-filter__list a.link.active {
    background: #71a1af;
    color: #fff;
    border-color: #71a1af;
}

/* ── Pager modern redesign ───────────────────────────────────────── */
.pager {
    display: flex;
    align-items: start;
    justify-content: start;
    flex-wrap: wrap;
    gap: 4px;
    margin: 2rem 0;
}
.pager a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 8px;
    line-height: 1;
    border-radius: 8px;
    border: 1.5px solid #c5dde3;
    background: #fff;
    color: #4d6064;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: border-color 0.15s, background 0.15s, color 0.15s;
}
.pager a:hover {
    border-color: #71a1af;
    background: #f2fbfd;
    color: #71a1af;
}
.pager a.active,
.active:is(.pager a) {
    background: #71a1af;
    border-color: #71a1af;
    color: #fff;
    font-weight: 600;
}
.pager span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 38px;
    line-height: 1;
    border: none;
    background: transparent;
    color: #9ca3af;
    font-size: 1.1rem;
    font-weight: 600;
    opacity: 1;
}

/* ── Topics sub_overview – 2-column list with teal arrows ──────── */
.topics {
    background: #f2fbfd;
    border: 1px solid #c5dde3;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
}
.topics h4 {
    margin: 0 0 0.75rem;
    font-size: 16px;
    font-weight: 500;
    /* text-transform: uppercase; */
    /* letter-spacing: 0.1em; */
    color: #25262b;
    padding: 0;
    background: transparent;
}
.topics .row ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
    border: none;
}
/* bottom line under entire list */
.topics .row ul::before {
    content: "";
    background: #c5dde3;
    position: absolute;
    left: 0; bottom: 0; right: 0; height: 1px;
}
/* two columns – keep style.css rule, just re-confirm */
.topics .row > ul > li {
    width: 50%;
    flex: 0 1 50%;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #c5dde3;
}
.topics .row > ul > li:last-child { border-bottom: none; }
/* single-item: full width */
.topics .row > ul > li:first-child:last-child { width: 100%; flex: 0 1 100%; }
/* link */
.topics .row ul li a.sub_overview,
.topics .row ul li a.link {
    display: block;
    position: relative;
    padding: 9px 10px 9px 34px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    background: transparent;
    border: none;
    border-radius: 0;
    transition: all ease 0.2s;
}
/* teal chevron arrow */
.topics .row ul li a.sub_overview::before,
.topics .row ul li a.link::before {
    content: "";
    position: absolute;
    width: 7px; height: 7px;
    border-right: 2px solid #71a1af;
    border-top: 2px solid #71a1af;
    left: 14px; top: 50%;
    margin-top: -4px;
    transform: rotate(45deg);
}
.topics .row ul li a.sub_overview:hover,
.topics .row ul li a.link:hover,
.topics .row ul li a.sub_overview.active,
.topics .row ul li a.link.active {
    color: #71a1af;
    text-decoration: none;
    background: transparent;
    transform: translateX(+2px);
}

/* ── Alphabar modern redesign ────────────────────────────────────── */
.alphabar .alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 0;
    font-size: 0.875rem;
    text-align: left;
    white-space: normal;
    overflow: visible;
}
.alphabar .alphabet a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    border-radius: 7px;
    border: 1.5px solid #c5dde3;
    background: #fff;
    color: #4d6064;
    font-weight: 500;
    text-decoration: none;
    transition: border-color 0.15s, background 0.15s, color 0.15s;
}
.alphabar .alphabet a:hover {
    border-color: #71a1af;
    background: #f2fbfd;
    color: #71a1af;
}
.alphabar .alphabet a.active {
    background: #71a1af;
    border-color: #71a1af;
    color: #fff;
    font-weight: 600;
}
.alphabar .alphabet span.disabled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    border-radius: 7px;
    border: 1.5px solid #e4eef1;
    background: transparent;
    color: #b0c4cb;
    font-weight: 400;
    text-decoration: none;
    opacity: 0.6;
}

/* ── Alphabar: Suchfeld modern ───────────────────────────────────── */
.alphabar {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 32px;
}

.alphabar fieldset.autosuggest,
.alphabar fieldset {
    width: 100%;
    max-width: 420px;
    float: none;
    border: none;
    padding: 0;
    margin: 20px 0;
    position: relative;
}

.alphabar fieldset .formItem {
    position: relative;
}

.alphabar fieldset .formItem label {
    position: absolute;
    left: 44px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.875rem;
    color: #8faab0;
    pointer-events: none;
    transition: opacity 0.15s;
    z-index: 2;
    padding: 0;
    right: auto;
}

.alphabar fieldset .formItem input:not(:placeholder-shown) + .loader ~ label,
.alphabar fieldset .formItem input:focus ~ label,
.alphabar fieldset .formItem.loading label {
    opacity: 0;
}

/* Suchfeld selbst */
.alphabar fieldset .formItem input[type="text"],
.alphabar fieldset .formItem input {
    width: 100%;
    padding: 12px 44px 12px 44px;
    border: 1.5px solid #c5dde3;
    border-radius: 10px;
    background-color: #fff;
    background-image: none;
    font-size: 0.95rem;
    color: #2d3a3c;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.alphabar fieldset .formItem input[type="text"]:focus,
.alphabar fieldset .formItem input:focus {
    border-color: #71a1af;
    box-shadow: 0 0 0 3px rgba(113,161,175,0.15);
}

/* Lupe-Icon via Icon-Font "leading" (\0045 = icon-lupe) */
.alphabar fieldset .formItem::before {
    content: '\0045';
    font-family: "leading";
    font-style: normal;
    font-weight: normal;
    speak: none;
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #8faab0;
    font-size: 17px;
    z-index: 3;
    pointer-events: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

/* Loader */
.alphabar fieldset .formItem .loader {
    display: none;
    width: 18px;
    height: 18px;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    background-image: url(../images/ajax-loader.gif);
    background-size: contain;
    background-repeat: no-repeat;
}

.alphabar fieldset .loading .loader {
    display: block;
}

/* Autocomplete Dropdown */
.autocomplete-suggestions {
    border: 1.5px solid #c5dde3;
    border-radius: 10px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.10);
    background: #fff;
    overflow: hidden;
    border-bottom: 1.5px solid #c5dde3;
    margin-top: 4px;
}

.autocomplete-suggestions .autocomplete-suggestion {
    padding: 10px 16px;
    font-size: 0.9rem;
    color: #2d3a3c;
    border-bottom: 1px solid #eef3f5;
    cursor: pointer;
    transition: background 0.1s;
}

.autocomplete-suggestions .autocomplete-suggestion:last-child {
    border-bottom: none;
}

.autocomplete-suggestions .autocomplete-suggestion:hover,
.autocomplete-suggestions .autocomplete-selected {
    background: #f2fbfd;
    color: #71a1af;
    text-decoration: none;
}

/* ── Expert/Author grid (#experten.flexgrid) modern redesign ─────── */
#experten.flexgrid .box {
    padding: 0 8px 16px;
}
#experten.flexgrid .expert {
    background: #fff;
    border: 1px solid #c5dde3;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(113,161,175,0.07);
    transition: box-shadow 0.2s, border-color 0.2s;
    margin: 0;
}
#experten.flexgrid .expert:hover {
    box-shadow: 0 6px 20px rgba(113,161,175,0.18);
    border-color: #71a1af;
}
#experten.flexgrid .expert figure {
    margin-bottom: 0;
    padding: 24px 0 16px;
}
#experten.flexgrid .expert .photo {
    width: 130px;
    height: 130px;
    border: 2px solid #c8a96e;
}
#experten.flexgrid .expert .doc-wrap {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}
#experten.flexgrid .expert .about {
    padding: 14px 16px 12px;
    flex: 1 1 auto;
}
#experten.flexgrid .expert .about h3 {
    font-size: 0.95rem;
    line-height: 1.4;
    margin-bottom: 0;
    padding-top: 0;
}
#experten.flexgrid .expert .about h3 a {
    color: #2d3a3c;
    text-decoration: none;
}
#experten.flexgrid .expert:hover .about h3 a {
    color: #71a1af;
}
#experten.flexgrid .expert a.more {
    display: block;
    margin: 0;
    padding: 10px 16px;
    background: #f2fbfd;
    color: #71a1af;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    border-top: 1px solid #c5dde3;
    border-radius: 0;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}
#experten.flexgrid .expert:hover a.more {
    background: #71a1af;
    color: #fff;
}

/* =====================================================
   Doc-Card Redesign — Kategorie- & Listenseite
   Gilt für: .doc-filter .doc, .doc-list .doc
   ===================================================== */
:is(.doc-filter, .doc-list) .doctors li {
    padding: 8px;
}

:is(.doc-filter, .doc-list) .doc {
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e5e0d8;
    overflow: hidden;
    padding: 0;
    transition: box-shadow .2s, border-color .2s;
    display: flex;
    flex-direction: column;
}

:is(.doc-filter, .doc-list) .doc:hover {
    box-shadow: 0 4px 18px rgba(0,0,0,0.10);
    border-color: #c8a96e;
}

/* Foto-Bereich */
:is(.doc-filter, .doc-list) .doc .img {
    background: #f5f7f8;
    padding: 20px 0 10px;
    text-align: center;
    position: relative;
    z-index: 2;
}

:is(.doc-filter, .doc-list) .doc .photo {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    border: 4px solid #c8a96e;
    margin: 0 auto;
    overflow: hidden;
    display: block;
    background: #fff;
}

:is(.doc-filter, .doc-list) .doc .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Flag-Badge */
:is(.doc-filter, .doc-list) .doc .flag {
    position: absolute;
    right: 12px;
    top: 12px;
    z-index: 3;
}

:is(.doc-filter, .doc-list) .doc .flag img {
    width: 22px;
    box-shadow: 0 1px 4px rgba(0,0,0,.15);
    border-radius: 2px;
}

/* Text-Bereich */
:is(.doc-filter, .doc-list) .doc .text {
    padding: 14px 16px 0;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

:is(.doc-filter, .doc-list) .doc strong {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.4;
    display: block;
    flex: 1 1 auto;
    color: #2d3a3c;
}

:is(.doc-filter, .doc-list) .doc strong a {
    color: #2d3a3c;
    text-decoration: none;
    padding-bottom: 0;
}

:is(.doc-filter, .doc-list) .doc strong a:hover {
    color: #71a1af;
}

/* Standort */
:is(.doc-filter, .doc-list) .doc .location {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    font-weight: 500;
    color: #555;
    margin: 8px 0 10px;
}

:is(.doc-filter, .doc-list) .doc .location i.icon-location {
    width: 22px;
    height: 22px;
    min-width: 22px;
    line-height: 26px;
    font-size: 13px;
    background: #71a1af;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    display: block;
    float: none;
    margin-right: 0;
}

:is(.doc-filter, .doc-list) .doc .location span {
    padding: 0;
    flex: 1 1 auto;
    color: #444;
}

:is(.doc-filter, .doc-list) .doc .location small {
    font-size: 0.75rem;
    color: #888;
    margin-left: 2px;
    top: 0;
    white-space: nowrap;
}

/* Button-Bereich */
:is(.doc-filter, .doc-list) .doc .btn-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid #eee;
    margin-top: auto;
}

:is(.doc-filter, .doc-list) .doc a.more {
    flex: 1 1 auto;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    padding: 8px 14px;
    border-radius: 999px;
    color: #fff;
    background: #c8a96e;
    line-height: 1;
    text-decoration: none;
    transition: background .2s;
    display: inline-block;
    margin-right: 0;
}

:is(.doc-filter, .doc-list) .doc a.more:hover {
    background: #71a1af;
}

:is(.doc-filter, .doc-list) .doc a.btn-mail {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    background: #71a1af;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    line-height: 1;
    text-decoration: none;
    transition: background .2s;
    padding: 0;
}

:is(.doc-filter, .doc-list) .doc a.btn-mail:hover {
    background: #c8a96e;
}

:is(.doc-filter, .doc-list) .doc a.btn-mail span {
    display: none;
}

/* Siegel klein */
:is(.doc-filter, .doc-list) .doc .small-siegel {
    position: absolute;
    right: 12px;
    bottom: 8px;
}

:is(.doc-filter, .doc-list) .doc .small-siegel img {
    width: 50px !important;
    height: auto !important;
}

/* Mobile overlay-Link unsichtbar halten */
:is(.doc-filter, .doc-list) .doc a.trc_doc.mobi {
    display: none;
}

/* hide-mobile / hide-desktop Logik */
@media screen and (min-width: 737px) {
    :is(.doc-filter, .doc-list) .doc .hide-mobile { display: inline-flex; }
    :is(.doc-filter, .doc-list) .doc .hide-desktop { display: none; }
}
@media screen and (max-width: 736px) {
    :is(.doc-filter, .doc-list) .doc .hide-mobile { display: none !important; }
    :is(.doc-filter, .doc-list) .doc .hide-desktop { display: block; }
    :is(.doc-filter, .doc-list) .doc a.trc_doc.mobioverlay {
        display: block;
        position: absolute;
        inset: 0;
        z-index: 10;
    }
}

/* =====================================================
   News-Grid Karten Redesign (.news-grid .block-teasing)
   ===================================================== */

/* Grid-Spacing */
.news-grid .box {
    padding: 8px;
}

/* Karte */
:is(#mainContent, #subContent) .news-grid .block-teasing {
    background: #fff;
    border: 1px solid #e5e0d8;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
    transition: all ease 0.2s;
    z-index: 1;
}

:is(#mainContent, #subContent) .news-grid .block-teasing:hover {
    box-shadow: 0 4px 18px rgba(0,0,0,0.10);
    border-color: #c8a96e;
}

/* Bild oben, runde Ecken oben */
:is(#mainContent, #subContent) .news-grid .block-teasing figure.img {
    border-radius: 0;
    overflow: hidden;
    margin: 0;
    flex-shrink: 0;
    height: 240px;
}

:is(#mainContent, #subContent) .news-grid .block-teasing figure.img a {
    display: block;
    overflow: hidden;
}

:is(#mainContent, #subContent) .news-grid .block-teasing figure.img img {
    display: block;
    width: 100% !important;
    height: 285px !important;
    object-fit: cover;
    transition: transform .35s ease;
}

:is(#mainContent, #subContent) .news-grid .block-teasing:hover figure.img img {
    transform: scale(1.04);
}

/* Text-Bereich */
:is(#mainContent, #subContent) .news-grid .block-teasing h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    color: #2d3a3c;
    padding: 16px 18px 8px !important;
    margin: 0;
    border-top: 0;
    min-height: 70px;
}

:is(#mainContent, #subContent) .news-grid .block-teasing p {
    font-size: 0.875rem;
    color: #555;
    line-height: 1.55;
    padding: 0 18px;
    margin: 0 0 16px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1 1 auto;
}

/* Weiterlesen-Button */
:is(#mainContent, #subContent) .news-grid .block-teasing a.read-more {
    display: inline-block;
    margin: 0 18px 18px;
    padding: 8px 20px;
    border-radius: 999px;
    background: #c8a96e;
    color: #fff;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    line-height: 1;
    transition: background .2s;
    align-self: flex-start;
}

:is(#mainContent, #subContent) .news-grid .block-teasing a.read-more::before {
    display: none;
}

:is(#mainContent, #subContent) .news-grid .block-teasing a.read-more:hover {
    background: #71a1af;
}

/* Overlay-Link bleibt über allem */
:is(#mainContent, #subContent) .news-grid .block-teasing a.ov-link {
    z-index: 5;
}

/* Grid-Columns responsive */
@media screen and (max-width: 900px) {
    .news-grid .box.box-33 {
        width: 50%;
    }
}

@media screen and (max-width: 576px) {
    .news-grid .box.box-33 {
        width: 100%;
        padding: 0 0 12px;
    }
}

/* =====================================================
   Barrierefreiheit / Lesbarkeit: Schriftgrößen
   Basis: 112.5% → 1rem = 18px  (vorher 16px)
   Alle rem-Werte skalieren automatisch mit.
   ===================================================== */
html {
    font-size: 112.5%;
}

body {
    font-size: 1rem;
    line-height: 1.75;
}

/* Fließtext in Artikeln und Inhaltsbereichen */
/* .node p,
.mainContent p,
#subContent p,
.content p {
    font-size: 1rem;
    line-height: 1.8;
} */

/* Navigation – etwas lesbarer, nicht zu groß */
:is(#nav, .nav, .main-nav) a {
    font-size: 1rem;
}

/* Sekundäre Labels/Badges dürfen kleiner bleiben, aber min. 13px */
.pager a,
.pager span,
.alphabar .alphabet a,
.alphabar .alphabet span,
.topic-filter__list a,
.topics .row ul li a,
figcaption h2,
.block-teasing figcaption h2 {
    font-size: 0.8rem; /* ~14.4px bei 18px-Basis */
}

/* Buttons — einheitlich lesbar */
a.more,
a.read-more,
a.btn-mail span,
.doc-filter .doc a.more,
.doc-list .doc a.more,
:is(#mainContent, #subContent) .news-grid .block-teasing a.read-more {
    font-size: 0.9rem;
}

/* Metainfos, kleine Hilfstexte */
small,
.small,
em.date,
.range-value {
    font-size: 0.78rem;
}

/* =====================================================
   Sidebar Conversion-Button (.block-linklist)
   ===================================================== */
.sidebar .block-linklist {
    padding-top: 0;
    margin-bottom: 8px;
}

.sidebar .block-linklist ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sidebar .block-linklist ul li {
    margin: 0;
}

/* Conversion-Button: Gold-Gradient, Pfeil-Icon, Pulse-Glow */
.sidebar .block-linklist ul a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 20px;
    background: linear-gradient(135deg, #b8922e 0%, #c8a96e 50%, #d4b87a 100%);
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    border-radius: 10px;
    border: none;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(200, 169, 110, 0.45);
    transition: box-shadow .2s, transform .15s, background .2s;
}

/* Shimmer-Effekt */
.sidebar .block-linklist ul a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,0.18) 50%, transparent 60%);
    background-size: 200% 100%;
    background-position: -100% 0;
    transition: background-position .5s ease;
}

.sidebar .block-linklist ul a:hover::after {
    background-position: 200% 0;
}

/* Pfeil ersetzen durch modernen inline SVG-ähnlichen Chevron via ::before */
.sidebar .block-linklist ul a::before {
    content: "";
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    background: rgba(255,255,255,0.25);
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M7 4l6 6-6 6' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-repeat: no-repeat;
    background-position: center;
    order: 2;
    flex-shrink: 0;
    display: block;
    left: auto;
    position: static;
    top: auto;
    margin: 0;
    transform: none;
    border: none;
}

.sidebar .block-linklist ul a:hover {
    background: linear-gradient(135deg, #71a1af 0%, #5a8fa0 100%);
    box-shadow: 0 6px 22px rgba(113, 161, 175, 0.45);
    transform: translateY(-1px);
}

/* Pulsierender Glow-Ring – Aufmerksamkeit wecken */
@keyframes cta-pulse {
    0%   { box-shadow: 0 4px 16px rgba(200,169,110,.45), 0 0 0 0 rgba(200,169,110,.5); }
    60%  { box-shadow: 0 4px 16px rgba(200,169,110,.45), 0 0 0 8px rgba(200,169,110,0); }
    100% { box-shadow: 0 4px 16px rgba(200,169,110,.45), 0 0 0 0 rgba(200,169,110,0); }
}

.sidebar .block-linklist ul a {
    animation: cta-pulse 2.5s ease-out infinite;
}

.sidebar .block-linklist ul a:hover {
    animation: none;
}

/* =====================================================
   Inhaltsverzeichnis TOC (#js-pillar-toc)
   Überschreibt die Conversion-Button-Styles via ID-Selektor
   ===================================================== */

/* Card-Wrapper */
.sidebar .block-linklist:has(#js-pillar-toc) {
    background: #fff;
    border: 1px solid #dde8eb;
    border-radius: 12px;
    padding: 18px 16px 14px;
    margin-bottom: 20px;
    box-shadow: 0 2px 12px rgba(74,95,96,.07);
}

/* Titel */
.sidebar .block-linklist:has(#js-pillar-toc) .title {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #71a1af;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e1ebed;
}

#js-pillar-toc {
    list-style: none;
    padding: 0
    margin: 0;
    gap: 0;
    border-left: none;
    counter-reset: none;
}

#js-pillar-toc li {
    margin: 0;
    counter-increment: none;
    border-bottom: 1px solid #f0f6f8;
}

#js-pillar-toc li:last-child {
    border-bottom: none;
}

#js-pillar-toc a {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    padding: 7px 6px 7px 8px;
    background: transparent;
    color: #4d6064;
    font-size: 0.82rem;
    font-weight: 400;
    line-height: 1.4;
    text-decoration: none;
    border-radius: 4px;
    border: none;
    border-left: 2px solid transparent;
    box-shadow: none;
    animation: none;
    transform: none;
    transition: color .15s, border-color .15s, background .15s;
    justify-content: flex-start;
    margin-left: -2px;
    position: static;
    overflow: visible;
}

#js-pillar-toc a::before {
    content: '→' !important;
    flex-shrink: 0 !important;
    color: #b8d0d8 !important;
    font-size: 0.78rem !important;
    font-weight: 400 !important;
    width: auto !important;
    height: auto !important;
    min-width: auto !important;
    border-radius: 0 !important;
    background: none !important;
    background-image: none !important;
    display: inline !important;
    position: static !important;
    margin: 1px 0 0 !important;
    box-shadow: none !important;
    border: none !important;
    order: 0 !important;
}

#js-pillar-toc a::after {
    display: none !important;
}

#js-pillar-toc a:hover {
    background: #f2fbfd !important;
    color: #4a5f60 !important;
    border-left-color: #b8d0d8 !important;
    box-shadow: none !important;
    transform: none !important;
    animation: none !important;
}

#js-pillar-toc a:hover::before {
    color: #71a1af !important;
}

#js-pillar-toc a.toc-active {
    background: #eaf5f8 !important;
    color: #4a5f60 !important;
    font-weight: 600 !important;
    border-left-color: #71a1af !important;
    animation: none !important;
}

#js-pillar-toc a.toc-active::before {
    color: #71a1af !important;
    font-weight: 600 !important;
    background: none !important;
}


/* =====================================================
   Contact-Footer: Inhalt auf 1280px begrenzen
   .contact-footer hat max-width: 100% (--full-width),
   daher begrenzen wir das innere .content.size
   ===================================================== */
#contactfooter > .content {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

/* =====================================================
   #filter-location Suchfeld modern
   Ersetzt: float-basiertes Layout + ::before Icon-Float
   ===================================================== */

/* Fieldset: flex statt float+margin-left */
#filter-location fieldset {
    display: flex;
    align-items: center;
    gap: 12px;
    border: none;
    padding: 0;
    margin: 0;
    position: relative;
}

/* Icon via ::before — kein float, kein margin-left-Hack */
#filter-location fieldset::before {
    font-size: 20px;
    color: #71a1af;
    float: none;
    position: static;
    top: auto;
    flex-shrink: 0;
    line-height: 1;
}

/* formItem: volle Breite, kein float, kein margin-left */
#filter-location fieldset .formItem {
    flex: 1 1 auto;
    float: none;
    margin-left: 0;
    position: relative;
}

/* Label schwebend */
#filter-location fieldset .formItem label {
    position: absolute;
    left: 44px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.875rem;
    color: #8faab0;
    pointer-events: none;
    transition: opacity 0.15s;
    z-index: 2;
    padding: 0;
}

#filter-location fieldset .formItem input:not(:placeholder-shown) ~ label,
#filter-location fieldset .formItem input:focus ~ label {
    opacity: 0;
}

/* Input-Feld */
#filter-location fieldset .formItem input {
    width: 100%;
    padding: 12px 14px 12px 44px;
    border: 1.5px solid #c5dde3;
    border-radius: 10px;
    background: #fff;
    font-size: 0.95rem;
    color: #2d3a3c;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

#filter-location fieldset .formItem input:focus {
    border-color: #71a1af;
    box-shadow: 0 0 0 3px rgba(113,161,175,0.15);
}

/* Lupe-Icon links im Input über ::before auf dem formItem */
#filter-location fieldset .formItem::before {
    content: '\0045';
    font-family: "leading";
    font-style: normal;
    font-weight: normal;
    speak: none;
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #8faab0;
    font-size: 17px;
    z-index: 3;
    pointer-events: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

/* suggest-list: kein margin-left mehr */
#filter-location .suggest-list {
    margin-left: 0;
    margin-right: 0;
}

#filter-location .suggest-list ul {
    border: 1.5px solid #c5dde3;
    border-radius: 10px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.10);
    overflow: hidden;
    margin-top: 4px;
}

#filter-location .suggest-list ul li {
    border-top: 1px solid #eef3f5;
}

#filter-location .suggest-list ul li:first-child {
    border-top: none;
}

#filter-location .suggest-list a {
    padding: 10px 16px 10px 16px;
    color: #2d3a3c;
    font-size: 0.9rem;
    transition: background 0.1s;
}

#filter-location .suggest-list a:hover {
    background: #f2fbfd;
    color: #71a1af;
    text-decoration: none;
}

#filter-location .suggest-list a::before {
    color: #71a1af;
    left: 14px;
    top: 12px;
    font-size: 14px;
}

#filter-location .suggest-list a strong {
    color: #2d3a3c;
}

/* =====================================================
   .doc-filter.v2 .tabs — Modernisierung
   ===================================================== */
.doc-filter.v2 .tabs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 24px;
    border-bottom: 2px solid #e5e0d8;
    padding-bottom: 0;
}

.doc-filter.v2 .tabs li {
    margin: 0;
    margin-bottom: -2px;
}

.doc-filter.v2 .tabs li.last {
    margin-left: auto;
}

/* Tab-Links */
.doc-filter.v2 .tabs li a {
    display: block;
    padding: 10px 18px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #555;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    border-radius: 8px 8px 0 0;
    line-height: 1.4;
    transition: color 0.15s, border-color 0.15s, background 0.15s;
}

.doc-filter.v2 .tabs li a:hover {
    color: #71a1af;
    background: #f2fbfd;
    text-decoration: none;
}

.doc-filter.v2 .tabs li.active a {
    color: #71a1af;
    border-bottom-color: #71a1af;
    background: transparent;
    font-weight: 600;
}

/* Info-Button */
.doc-filter.v2 .tabs li button.info-btn {
    cursor: pointer;
    color: #71a1af;
    background: #f2fbfd;
    border: 1.5px solid #c5dde3;
    font-weight: 600;
    font-size: 0.85rem;
    border-radius: 999px;
    padding: 7px 16px 7px 38px;
    position: relative;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    margin-bottom: 6px;
}

.doc-filter.v2 .tabs li button.info-btn:hover {
    background: #71a1af;
    border-color: #71a1af;
    color: #fff;
}

.doc-filter.v2 .tabs li button.info-btn::before {
    content: "i";
    font-weight: 600;
    font-style: italic;
    font-size: 12px;
    width: 20px;
    height: 20px;
    line-height: 18px;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    text-indent: 1px;
    font-family: Georgia, serif;
}

/* =====================================================
   Bild-Text-Layout im Redaktions-Artikel (.node)
   Bilder mit align-Attribut nie nebeneinander mit Text —
   immer block, kein float, Text immer darunter.
   em:has(img) deckt auch <em> direkt im div ab (nicht nur in <p>)
   ===================================================== */

/* Jedes img[align] im .node → Block, Float aufheben */
.node img[align],
.mainContent img[align] {
    display: block !important;
    float: none !important;
    max-width: 100%;
    height: auto;
    margin-bottom: 6px;
}

/* em oder p die ein align-Bild enthalten → Block-Kontext erzwingen */
.node em:has(img),
.node p:has(img[align]),
.mainContent em:has(img),
.mainContent p:has(img[align]) {
    display: block;
}

/* Bildunterschrift-Text in <em> nach Bild */
.node em:has(img),
.mainContent em:has(img) {
    font-size: 0.85rem;
    color: #666;
    line-height: 1.5;
    margin-bottom: 16px;
}

/* =====================================================
   .doc-filter .btnYellow — Modernisierung
   Ersetzt: PNG-Pfeilbild, flaches Design
   ===================================================== */
.doc-filter .btnYellow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    background: linear-gradient(135deg, #b8922e 0%, #c8a96e 60%, #d4b87a 100%);
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    border-radius: 999px;
    box-shadow: 0 4px 14px rgba(200, 169, 110, 0.40);
    transition: box-shadow 0.2s, transform 0.15s;
    margin-bottom: 16px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

/* Hover-Gradient als Pseudo-Element — opacity-Transition möglich */
.doc-filter .btnYellow::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #71a1af 0%, #5a8fa0 100%);
    border-radius: inherit;
    opacity: 0;
    transition: opacity 0.25s ease;
    z-index: -1;
}

.doc-filter .btnYellow:hover::before {
    opacity: 1;
}

.doc-filter .btnYellow::after {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M4 10h12M11 5l5 5-5 5' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    z-index: 1;
}

/* Text-Inhalt über dem Pseudo-Element halten */
.doc-filter .btnYellow span,
.doc-filter .btnYellow:not(:empty) {
    position: relative;
    z-index: 1;
}

.doc-filter .btnYellow:hover {
    box-shadow: 0 6px 20px rgba(113, 161, 175, 0.40);
    transform: translateY(-1px);
    color: #fff;
}

/* h2.ico wrapper — gleiche Höhe, kein unnötiges margin */
.doc-filter h2.ico {
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1;
}

/* =====================================================
   .catgrid .block-kat.block-teasing — Modernisierung
   Kategorie-Karten im 3-Spalten-Raster
   ===================================================== */
.catgrid .block-kat.block-teasing {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(45, 58, 60, 0.08);
    margin-bottom: 24px;
    transition: box-shadow 0.25s ease, transform 0.2s ease;
    position: relative;
}

.catgrid .block-kat.block-teasing:hover {
    box-shadow: 0 6px 24px rgba(45, 58, 60, 0.16);
    transform: translateY(-3px);
}

/* Bild — feste Höhe, object-fit */
.catgrid .block-kat.block-teasing figure.img {
    margin: 0;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #e8f4f7;
    position: relative;
}

.catgrid .block-kat.block-teasing figure.img a {
    display: block;
    height: 100%;
}

.catgrid .block-kat.block-teasing figure.img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease, filter 0.25s ease;
    filter: none;
}

.catgrid .block-kat.block-teasing:hover figure.img img {
    transform: scale(1.04);
    filter: brightness(1.05);
}

/* figcaption — modernes Label unten am Bild */
.catgrid .block-kat.block-teasing figcaption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(30, 46, 50, 0.82) 0%, rgba(30, 46, 50, 0.0) 100%);
    padding: 36px 16px 14px;
}

.catgrid .block-kat.block-teasing figcaption h3 {
    margin: 0;
    padding: 0 !important;
    border: 0 !important;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    color: #fff;
}

.catgrid .block-kat.block-teasing figcaption h3 a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 0 !important;
    transition: color 0.2s;
}

.catgrid .block-kat.block-teasing figcaption h3 a:hover {
    color: #c8a96e;
    text-decoration: none;
}

/* Pfeil-Chevron im figcaption-Titel */
.catgrid .block-kat.block-teasing figcaption h3 a::after {
    content: none;
}

/* Teal-Badge oben links (optional — erscheint sobald .label im HTML vorhanden) */
.catgrid .block-kat.block-teasing .label {
    position: absolute;
    top: 12px;
    left: 12px;
    background: #71a1af;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 999px;
    z-index: 2;
    margin: 0;
    display: none;
}

/* ov-link (Overlay-Link) über der gesamten Karte) */
.catgrid .block-kat.block-teasing a.ov-link {
    z-index: 3;
}

/* Gut-Abstände im Grid anpassen */
.catgrid {
    gap: 0;
    margin-bottom: 40px;
}


/* ==========================================================================
   Expertenstimmen-Teaser (quote-card)
   Wird gerendert per Shortcode <Expertenstimmen></Expertenstimmen>
   ========================================================================== */
.expertenstimmen-list.quote-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin: 24px 0;
}
.expertenstimme-card {
    background: #fff;
    border-radius: 10px;
    padding: 24px 22px 20px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
    border: 1px solid #eceff3;
    position: relative;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
    &:hover {
        box-shadow: 0 6px 18px #c8a86e60;
    }
}
.expertenstimme-card .quote-mark {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 64px;
    line-height: 1;
    color: #c8d4e6;
    margin: -8px 0 4px;
    height: 28px;
}
.expertenstimme-card .quote-text {
    font-size: 16px;
    font-style: italic;
    line-height: 1.55;
    color: #2b3340;
    margin: 0 0 20px;
    flex-grow: 1;
    hyphens: auto;
}
.expertenstimme-card .quote-author {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-top: 14px;
    border-top: 1px solid #eceff3;
}
.expertenstimme-card .quote-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #1f4e9b;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1rem;
    overflow: hidden;
    flex-shrink: 0;
}
.expertenstimme-card .quote-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.expertenstimme-card .quote-name {
    font-weight: 600;
    color: #1f2a3a;
    line-height: 1.25;
}
.expertenstimme-card .quote-role {
    font-size: 0.85rem;
    color: #6a7686;
    line-height: 1.3;
    margin-top: 2px;
}
.expertenstimme-card .quote-link {
    margin-top: 6px;
    font-size: 0.82rem;
}
.expertenstimme-card .quote-link a {
    color: #1f4e9b;
    text-decoration: none;
}
.expertenstimme-card .quote-link a:hover {
    text-decoration: underline;
}
.mobi { display:none;}
/* -- Responsive - Layouts -- */
.mobile-ddmenu { 
    background:#fff; position:fixed; left:0; top:110px; 
    padding-top: 30px; right:0; bottom:0; z-index:9999; 
    display:none; overflow-x:auto;
    max-height: calc(100vh - 110px);
}
.mobile-ddmenu .closer { display: none}
.mobile-ddmenu .language {
        padding:30px 20px 10px;
    }
:is(.mobile-ddmenu .language) select {
            border:1px solid #eeeeec; background:#fcfcfa url(../gfx/selectbox-arrow-mobi.gif) 95% center no-repeat; color:#909090; font-size:14px; padding:13px 15px; width:100%;
        }
:is(.mobile-ddmenu .mobi-tabs) a {
            border:1px solid #eeeeec; border-bottom:0; display:block; background:#fcfcfa; padding:20px;
        }
:is(:is(.mobile-ddmenu .mobi-tabs) a) span{display:none;}
:is(:is(.mobile-ddmenu .mobi-tabs) a)::before {content:""; width:59px; height:38px; display:block; background-size:contain;margin:0 auto;}
:is(.mobile-ddmenu .mobi-tabs) ul {border-bottom: 1px solid #eeeeec; padding:0 30px }
:is(.mobile-ddmenu .mobi-tabs) li{
            margin-right:-1px; width:33.3%;
        }
.active:is(:is(.mobile-ddmenu .mobi-tabs) li) a{ padding-bottom:21px; margin-bottom:-1px; background:#fff}
:is(.mobile-ddmenu .mobi-menu) ul {
            padding:20px 0; list-style:none;
        }
:is(:is(.mobile-ddmenu .mobi-menu) ul) ul {
                float:none !important; padding:0;
            }
:is(:is(:is(.mobile-ddmenu .mobi-menu) ul) ul) ul {
                    width:auto !important; border-bottom:1px solid #cbd6d8;
                }
:is(:is(:is(:is(.mobile-ddmenu .mobi-menu) ul) ul) ul) li{
                        padding:0 !important;
                    }
:is(:is(:is(:is(:is(.mobile-ddmenu .mobi-menu) ul) ul) ul) li) a{ padding:10px 20px}
:is(:is(:is(:is(.mobile-ddmenu .mobi-menu) ul) ul) ul):last-child { border-bottom:0}
:is(.mobile-ddmenu .mobi-menu) li {
            border-bottom:1px solid #cbd6d8;
        }
:is(:is(.mobile-ddmenu .mobi-menu) li)  > a{ padding:15px 20px}
.expandable:is(:is(.mobile-ddmenu .mobi-menu) li)  > ul { display:none}
.expandable:is(:is(.mobile-ddmenu .mobi-menu) li) .opener {
                    float:right; width:35px; height:35px; position:relative; top:5px; right: 20px;border-radius: 50%;
                }
:is(.expandable:is(:is(.mobile-ddmenu .mobi-menu) li) .opener)::before {
                        content:""; width: 14px; height: 14px; border-right: 3px solid #7b7a75; border-bottom: 3px solid #7b7a75;
                        position: absolute; left: 50%; top: 50%; margin-left: -7px; margin-top: -7px;
                        transform: rotate(45deg);
                    }
.expandable.open:is(:is(.mobile-ddmenu .mobi-menu) li) .opener { transform: rotate(180deg);}
:is(:is(.mobile-ddmenu .mobi-menu) li) a{
                font-size:20px; color:var(--link-color); text-decoration:none; display:block;
            }
:is(:is(:is(.mobile-ddmenu .mobi-menu) li) a):hover{ color: #aa874a}
:is(:is(.mobile-ddmenu .mobi-menu) li):last-child { border-bottom:0; align-content: center;}
.cats:is(:is(.mobile-ddmenu .mobi-menu) li){
                width:auto !important; background:#f7f4ee; margin:0 0 -1px; padding:20px 0;
                border-top:1px solid #cbd6d8; border-bottom:1px solid #cbd6d8;
            }
.cats:is(:is(.mobile-ddmenu .mobi-menu) li) strong {font-weight:normal; color:var(--headline-color); font-size:20px; margin-bottom:30px;padding: 0 20px; display:block}
@media screen and (max-width: 1260px){
/*    body {padding: 0 26px} */
    .size, #container { width: 100%;}
    #container {background: #fff;}
    
    .block-address .flexgrid .box-33,
    .block-address .flexgrid .box-66 { width: 50%}
}
@media screen and (max-width: 1180px){
    #mainmenu > ul > li > a { font-size: 12px}
	
	.popup.popup-mapitem .popup-content {max-width: 90vw}
}
@media screen and (max-width: 1310px){
    /* #mainContent {
        padding: 20px;
    } */
    .experten-detail .filled-area {padding: 30px 0px 0px 0px}
    .row-herotext {
        margin: 0px 0 15px;
    }
    #footer,
    .content-part:not(.teaser) > .content { padding: 30px 54px}
        .quick-answer {
      padding: 16px 14px;
    }
    .qa-grid {
      grid-template-columns: 1fr;
    }
}
@media screen and (max-width: 1120px){
    /* fieldset.quickFinder { left: 54px; right: 54px} */
    fieldset.quickFinder button.formSubmit { right: 1rem}
    
    .experten-detail #mainContent { margin-right: 0}
    
    .doc-filter .doctors li { width: 50%}
    .doc-filter .doctors li:nth-child(odd) { padding-left: 0; padding-right: 10px }
    .doc-filter .doctors li:nth-child(even) { padding-left: 10px; padding-right: 0 }
    
    .doc-card { margin-bottom: 0}
    /* .doc-card figure {width: 100%; height: auto; aspect-ratio: 1/1} */
/*     .doc-card .img { padding-right: 0; min-width: 200px}
    .doc-card .desc { margin-left: max(calc(33.333% + 40px), 240px); padding-right: 0} */
    
    #mainmenu {left:360px; top:40px}

    #footer,
    .share-bar,
    .content-part:not(.teaser) > .content { padding: 30px 54px}
    
    #breadcrumb {padding: 30px 54px 0}
    .content-part > .row { padding:  30px 0 30px 54px}

    .teaser figure figcaption { left: 54px}
    .teaser figure img { width: 100% !important; height: auto !important}
    
    .teaser.text-teaser > .content { padding: 0 54px}
    .mobile-headline .content { padding-bottom: 0}
    
    .page-full .mobile-headline .content,
    .cat-overview .mobile-headline .content{ padding-bottom: 20px}
    
     .experten-detail .share-bar, 
    
    /* .row-address { margin: 0 -30px} */
    .sticky-doc { padding: 15px}
}
@media screen and (max-width: 1024px){
	#modalgal { overflow:hidden}
    
	#footer .social-mobi { display:block}
    
    ul.state-list {column-count: 2;}
    
    #hamburger { display: block; }
	
	#header .inner > .fltrt { margin-right: 70px; margin-top: 15px}
	#header .login-btn { margin-right: 0; margin-left: 20px}
	fieldset.langSwtich { top:28px}
	
    #mainmenu { display: none}
    
    .author-detail .node { max-width: none}
    
    .cat-overview .doc-filter .doctors li { width: 50%}
    .cat-overview .doc-filter .doctors li:nth-child(odd) { padding-left: 0; padding-right: 10px}
    .cat-overview .doc-filter .doctors li:nth-child(even) { padding-left: 10px; padding-right: 0}
    .cat-overview .flexgrid .box-33 { width: 50% }
    .cat-overview .flexgrid .box-33:nth-child(odd) { padding-left: 0; padding-right: 10px}
    .cat-overview .flexgrid .box-33:nth-child(even) { padding-left: 10px; padding-right: 0}
    
    fieldset.route input.formText { width: 66.66666%}
    fieldset.route button { width: 31.333333%}
    
    .content-part.contact-footer img{max-width: 80%;}
    
    .block-address .flexgrid { display: block}
    .block-address .flexgrid .box-33,
    .block-address .flexgrid .box-66 { width: 100%}
    
    .author-detail .topics, 
    .news-start .node, 
    .news-start .topics, 
    .disease-start .node, 
    .author-detail .node { max-width: none}
    
    .disease-start > .flexgrid .box-66 {width: 100%}
    
    .alphabar .alphabet a,
	.alphabar .alphabet span { padding:5px 10px; display:inline-block;}
    
        
    .doc-filter.v2 .tab-head .tabs ul {
        display: flex;flex-direction: row;flex-wrap: wrap;
        justify-content: flex-start;align-content: flex-start;
        align-items: flex-start;
    }
    .doc-filter.v2 .tab-head .tabs ul li { order:1}
    .doc-filter.v2 .tab-head .tabs ul li.last{ order: 0; float: none; width: 100%; margin-bottom: 32px}
    
    dl.cat-list dd,
    div.cat-list li{ width: 33.333333%}
}
@media screen and (min-width: 821px) and (max-width: 1024px){
    #hamburger { top: 60px; }
    .fixedheader #hamburger { top: 20px; }
    .fixedheader .mobile-ddmenu { top: 70px; }
}
@media screen and (max-width: 960px){  

	.popup.popup-mapitem .doc-list .doctors li {width: 50%}
}
/* -- Tablet - Portrait -- */
@media screen and (max-width: 820px){  
	
/*	#header .login-btn { margin-top: 18px} */
    
/*    a#hamburger { top: 47px} */
    
   
    .flexgrid .box-50{ display: block; width: 100%; float: none; padding: 0 !important}
    .node-66 { width: auto}
    
    .node-news time {float: none; padding-top: 20px; padding-left: 0; clear: both; display: block;}
    
    .content-part > .row { display: block}
    
    .wizard-steps .step { vertical-align: top}
    .wizard-steps .step .circle { width: 40px; height: 40px;line-height: 40px; font-size: 20px; display: block; margin: 0 auto 10px}
    .wizard-steps .step .label {font-size: 14px;line-height: 120%; display: block; text-align: center; padding: 0 10px}
    
    .hero-card {}
    .hero-card .flexgrid {
        flex-direction: column-reverse;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: stretch;
        align-items: stretch;
    }
    .hero-card .flexgrid .box{width: 100%}
    .hero-card .flexgrid .box:last-child{padding: 40px}
    
    .cat-overview .content-part > .row .content,
    .cat-overview .content-part > .row .sidebar,
    .not-full .content-part > .row .content,
    .not-full .content-part > .row .sidebar { width: 100%;}
    
    .not-full .share-bar,
    .cat-overview .share-bar,
    .cat-overview .content-part > .row,
    .not-full .content-part > .row{ padding:30px 54px}
    
    .cat-overview .content-part > .row .sidebar,
    .not-full .content-part > .row .sidebar { padding-left: 0}
    
    .cat-overview .content-part > .row .sidebar { display: none}
    
    .mobile-headline h1,
    .teaser.text-teaser h1 {width: auto}
    .teaser.small-teaser h1{ padding-bottom: 0}
    .teaser figure figcaption { bottom: 70px}
    figure figcaption
    
    .sticky-contact {display: none}
    .mobi-contact-btns {
        display: block; position: sticky; z-index: 60;
        background: #fff; top: 0
    } 
    
    .tooltip-wrap .tooltip { 
        bottom: -110px; left: 50%; right: auto;top: auto;
        transform: translate(-50%, 0);
    }
    .tooltip-wrap .tooltip::before { right: auto; left: 50%; margin-left: -5px;  top: 0}
    
    .content-meta {
        display: flex;
        flex-direction: column-reverse;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: stretch;
        align-items: stretch;
    }
    
/*    .content-meta .author-info { margin-bottom: 10px} */
    .content-meta .date { float:  none !important; margin-bottom: 30px;}
        
    #suggestions .flexgrid .box { width: 100%; display: block}
    
    .topics .row ul li,
    .experten-detail .topics .row > ul > li{ width: 100%;flex: 0 0 100%;  }
    
    .news-detail #teaser.text-teaser h1,
    #mainContent {margin-right: 0}
    
	#socialBar { display:none;}
    fieldset.langSwtich { top: 5px; right: 10px}
    
     .mobile-ddmenu {top:110px;} 
    .fixedheader .mobile-ddmenu {top:69px;} 
    
	.klinikImg img { width:100% !important; height:auto !important}	
	.tabbar ul { padding:0 20px}
        
    .front #teaser .box-63 {position: relative; padding-bottom: 56.25%;overflow: hidden; width: 100%;height: auto;}
    .front #teaser .box-63 iframe,
    .front #teaser .box-63 video {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
    
    .front .sticky h2, 
    .front .sticky p { margin-left: 270px}
    
    #teaser.text-teaser {padding: 0 20px; margin-bottom: 0}
    
    #suggestions .flexgrid {
        flex-direction: column !important;
        max-height: none !important
    }
    #suggestions .flexgrid .box-33 {}
    #suggestions .flexgrid .box-33 p { margin-bottom: 0}
    
	.front .sticky { position:relative}
	
	.grid .box { width:345px}
	.row .box img,
	.grid .box img { width:100% !important; height:auto !important}
	.grid .box span { width:auto}
	html[lang="ar"] .grid .box span { width:auto; background-position:96% center}
	.searchbar fieldset .formItem input { width:345px}
	
	.klinikInfo .box,
	.threeCols .block-teasing { width:345px}
    
	.block-teasing > ul { clear:both}
	.block-teasing .profile:nth-child(even) { margin-bottom:10px}
	.block-teasing .profile img{ width:50px !important; height:auto !important}
		    
	.redaktionKat > div:nth-child(odd) { padding-right:15px;}
	.redaktionKat > div:nth-child(even) { padding-left:15px}
	
	.redaktionKat .block-kat { width:100%}
	.redaktionKat .block-kat img { width:100% !important; height: auto !important}
	
    .flexgrid.catgrid { display: flex }
    
    .flexgrid.catgrid .box-33,
    .flexgrid.categories .box-33,
    /* #experten.flexgrid .box-33 { width: 50%} */
    
    .flexgrid.catgrid .box-33:nth-child(odd),
    .flexgrid.categories .box-33:nth-child(odd),
    #experten.flexgrid .box-33:nth-child(odd){ padding-left: 0; padding-right: 15px}
    
    .flexgrid.catgrid .box-33:nth-child(even),
    .flexgrid.categories .box-33:nth-child(even),
    #experten.flexgrid .box-33:nth-child(even){ padding-left: 15px; padding-right: 0}
    	
	.letterBox .lft { width:110px}
	.letterBox a { width:270px}
	
	.klinik-start .searchbox { display:table; width:100%} 
	.klinik-start .searchbox .formItem{ float:none; display:table-cell; vertical-align:top}
	.klinik-start .searchbox .formSelect { padding-left:30px; }
	.klinik-start .searchbox .formSelect, 
	.klinik-start .searchbox .formSelect select { width:100%}
	
	a.videoBox img { width:100% !important; height:auto !important}

	.doc-filter .selectboxit-container .selectboxit { width:220px}

	.doc-filter .map-opt { margin-left:15px}
	.doc-filter .doc .photo img{ width:100% !important; height:auto !important}
	.doc-filter .doc { position:relative; z-index:1}

	.cat-overview .doc-filter .meta.twoBtns a { width:192px}
	
	.method > .fltrt { float:none; margin:0 auto 20px; width:100%; height:auto !important}
	.method > .fltrt img { width:100% !important; height:auto !important}
	
	.front .multicolumn {column-count: 1;}
    
	/* -- Experten Start -- */
	.expert { width:345px}	
	.alphabar fieldset { width:auto; float:none; margin-right:0; margin-left:0}
	.alphabar .alphabet { white-space:normal; text-align:left;}
	
	.expert-start .alphabar .searchbox input { width:100%; margin-bottom:15px}
	.expert-start .multicolumn {column-count: 1;}	
	.expert-start .sticky .lft,
	.expert-start .sticky .rt { width:50%; float:left}
	.expert-start .sticky .lft { float:right}
	.expert-start .sticky .rt img { margin:0 auto; display:block}
	.expert-start .sticky .lft .box { float:none; margin-bottom:20px}
	
	/* -- Experten - Start - Stadt -- */
	.block-gmap .gmap { width:100%}
	.block-zerti { width:345px}
	.block-video .img img { width:100% !important; height:auto !important}
	
	/* -- Experten Detail -- */
	.block-leitung .expert { float:none}
	.experten-detail #teaser .logo { display:block; width:auto; padding:20px 0}
    
    .block-help figure { 
        border-radius: 65px 65px 0 0;
    }
    .block-help .inner {
        border-radius: 0 0 65px 65px;
    }
	
	.node-behandlung .inner { height:auto !important}
	#specialists .expert { margin-bottom:0}
			
	/* -- Klinik Start -- */
	.klinik-start .searchbox .selectboxit-container .selectboxit { width:345px}
	
	/* -- Klinikdetail -- */
	.tabbar ul li{ width:213px}

	/* -- Med Redaktion-- */
	.partners .partner-col,
	.partners span.partner-logo,
	a.partner-link { width:345px}
	
	.partners .partner-col div { padding:0 0 40px 0}
	
	/* -- Redaktion Detail -- */
	.redaktion-detail #inner {
		padding-top:30px;
	    display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-content: stretch;
	   align-items: stretch;
	}
	.redaktion-detail #breadcrumb { padding-top:0}
	.redaktion-detail #mainContent { margin:0; order: 0;}
	.redaktion-detail #subContent { order: 2;}
	
	/* -- Kategorie Übersicht -- */
	.cat-overview .sticky img { width: 100% !important; height:auto !important}
	.cat-overview .sticky .lft { padding-right:15px;}
	.cat-overview .sticky .rt { padding-left:15px;}

	.cat-overview #inner {
		padding-top:30px;
	    display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-content: stretch;
	    align-items: stretch;
	}

	.cat-overview #mainContent { margin:0; border: 0;}
	.cat-overview #subContent { order: 2;}
	.cat-overview .doc-filter .doc .photo { width:120px; height:120px !important}	
    
    .link-list ul li{float: none; width: 100%;}
    .link-list ul li:nth-child(odd){padding-right: 0;}
    .link-list ul li:nth-child(even){ padding-left: 0}
    .link-list ul li:nth-child(2) a{border-top: 0;}
    
	/* -- Footer -- */
    #footer {font-size: 1rem;}
	#footer ul { float:none; width:auto}
	#footer strong { font-size: 1rem}
    #footer .flexgrid .box-33,
    #footer .flexgrid .box-33:nth-child(3),
    #footer .flexgrid .box-33:nth-child(1), 
    #footer .flexgrid .box-33:nth-child(2){ width: 33.333333%}
    #footer .flexgrid .box-33:nth-child(3) ul { float: none; width: auto}
    
    div.cat-list li,
    dl.cat-list dd{ width: 50%}

}
/* -- Smartphone Landscape -- */
@media screen and (max-width: 736px){
/*    body { padding: 0 10px} */
    svg#map { max-width:none; width: 100%}
    h1,
    .doc-card .desc h1{font-size: 1.6rem;}
    h2 {font-size: 1.4rem;}
    h3 {font-size: 1.275rem;}
    h4,.node-v2 > h2 {font-size: 1.15rem;}
    
	.doc-filter .selectboxit-container .selectboxit { width:110px}	
	.doc-filter .doctors li { width:100%; float:none; padding: 0 !important}
	.doc-filter .map-opt { margin-left:7px}
	    
    .cat-overview #sidebar .block { width: auto; float: none; margin-left: 0; margin-top: 0}
    
	.letterBox .lft { width:90px}
	.letterBox a { width:210px}
	
	fieldset.sign-up label { width:162px}	

	.expert { width:265px}	

    .front #mainContent .sticky .fltlft a,
    .front #mainContent .sticky .fltlft img {display: block}
    .front .sticky h2, .front .sticky p { margin-left: 140px}
    
    .accordion ul.multicolumn, 
    .accordion ul.multi-column {column-count: 2;}
	
	/* -- Med Redaktion-- */
	.partners .partner-col,
	.partners span.partner-logo,
	a.partner-link { width:265px}
		
	fieldset.route input.formText { padding-right:40px; text-overflow:ellipsis}
	
	/* -- Kategorie Überisicht -- */
	.cat-overview .doc-filter .doctors li { width:50%; float:left}
    .cat-overview .doc-filter .doctors li:nth-child(odd) { padding-left: 0; padding-right: 10px;}
    .cat-overview .doc-filter .doctors li:nth-child(even) { padding-left: 10px; padding-right: 0}
    
	.cat-overview .doc-filter .selectboxit-container .selectboxit { width:220px}
	.cat-overview .doc-filter .meta.twoBtns a { width:100%; margin-left:0; margin-bottom:10px}
	
	#kontaktformular_check .buttons a.submit { width:auto}
    
	/* -- Klinik Start -- */
	.klinik-start .searchbox .selectboxit-container .selectboxit { width:265px}
	
	/* -- Klinikdetail -- */
	.tabbar ul { padding: 0 20px}
	.tabbar ul li { width:178px}

    /* -- Fixed Header - Experten Detail -- */
	.multicolumn {
		column-count: 1;
		column-gap: 0;
	}
    
    .doc-card .img { padding-left: 10px; padding-right: 10px}
    .doc-card .desc { margin-left: 0}
    .doc-card .desc strong { clear: both;  margin-bottom: 34px}
    
    .doc-card nav, 
    .clinic-card nav {float: left;padding-top: 10px}
    
    .doc-card nav ul li, 
    .clinic-card nav ul li { margin-left: 0; margin-right: 10px}
    
    .doc-card nav ul li a, 
    .clinic-card nav ul li a{ height: 60px; padding-top: 5px}
    
    .doc-card nav ul li a.contact-btn .ico, 
    .clinic-card nav ul li a.contact-btn .ico {background-position: 6px -5px;}
    
    .doc-card nav ul li a .text, 
    .clinic-card nav ul li a .text {line-height: 1;color: #fff;font-size: 0.55rem;}
    
	#subContent .country-box ul li { width:50%}    
    #subContent .flexgrid .box-33 {  width: 50%}
    
    .flexgrid.catgrid .box-33{ width: 100%;}
    .flexgrid.catgrid .box-33:nth-child(odd){ padding-left: 0; padding-right: 0}
    .flexgrid.catgrid .box-33:nth-child(even){ padding-left: 0; padding-right: 0}
    
    #experten.flexgrid .box-33{ width: 100%;}
    #experten.flexgrid .box-33:nth-child(odd){ padding-left: 0; padding-right: 0}
    #experten.flexgrid .box-33:nth-child(even){ padding-left: 0; padding-right: 0}
    
    #contactfooter img {max-width: 100%; height: auto !important}
    #contactfooter .flexgrid .box { position: relative; margin-bottom: 20px; }
    #contactfooter .flexgrid .box address {padding-bottom: 30px;}
    
    #contactfooter .flexgrid .box::before {content:""; left: -20px; right: -20px; bottom: 0; height: 10px; background: #fff; position: absolute}
    
    #contactfooter .flexgrid .box:last-child { margin-bottom: 0;}
    #contactfooter .flexgrid .box:last-child::before {display: none}
    
    #footer .flexgrid { display: block}
    #footer .flexgrid .box {width: auto !important; display: block; padding: 0 0 20px;position: relative; margin-bottom: 20px}
    #footer .flexgrid .box::before {content:""; left: -20px; right: -20px; bottom: 0; height: 10px; background: #fff; position: absolute}
    #footer .flexgrid .box:last-child::before {display: none}
    
    .popup .calendar table thead tr th { font-size:10px; padding: 5px}
    .popup .calendar table thead tr th strong { font-size: 20px}
    
    .popup .calendar table tbody tr th, 
    .popup .calendar table tbody tr td,
    .popup .calendar table tbody tr td.ac a { padding: 5px; font-size: 12px}
    .popup .calendar table tbody tr td.ac a small { font-size: 10px; line-height: 100%}
    .popup .calendar table tbody tr td.ac { padding: 0}
    
    .popup#contactPopup figure.doctor-card .avatar{ width: 50px; height: 50px; min-width: 50px }
    .popup#contactPopup figure.doctor-card  figcaption {
        font-size: 14px; line-height: 20px;
    }
    
    div.cat-list li { width: 100%}
}
@media screen and (max-width: 680px){
	.popup.popup-mapitem .doc-list .doctors li {
		width: 100%;-webkit-flex-direction: row;-ms-flex-direction: row;flex-direction: row;
	}
    .wizard-steps .step .label {font-size: 12px;}
    .secure-icons img {}
}

/* -- Smartphone  Portrait-- */
@media screen and (max-width: 576px){
    body { padding: 0}
    body.front .teaser figure img {
        right: -50px;
    }
    .doc-card .btn-wrap { align-items: center;}
    body.front .teaser figure figcaption {
        top: 0;
        bottom: 0;
        height: auto;
    }
    .teaser figure figcaption {
        display: flex;
        height: -webkit-fill-available;
        height: -moz-available;
        align-items: center;
        place-items: center;
    }
    body.front.page-full .content-part.teaser .content {
        background: #f7f4ef;
    }
    #calendar {max-height: 60vh; overflow: auto}
    .hide-mobile {display:none}
	.hide-desktop {display:block}
    
    .mobile-ddmenu {max-height: 80vh;}
    
    .accordion ul.multicolumn, 
    .accordion ul.multi-column {
        column-count: 1;
    }
    
    .doc-card .lmgctp, 
    .doc-card .btn--blue, 
    .doc-card .btn--orange, 
    .clinic-card .btn--blue, 
    .clinic-card .btn--orange { font-size: 18px}
	
/*	#header .login-btn {margin-top: 0; font-size: 11px; position: absolute; left: 0; top: 0;	padding: 5px 45px 5px 0;}
	#header .login-btn span {}
  */  
    .topics, 
    .schwerpunkte { margin-bottom: 37px}
    
    #topmenu { top:25px}
    #header { height:110px; margin-bottom: 0; padding: 0}
    .mobile-ddmenu {top:110px;}
    .fixedheader .mobile-ddmenu {top:69px;}
    
    
    #footer,
    .share-bar,
    .content-part:not(.teaser) > .content,
    .not-full .share-bar,
    .cat-overview .share-bar{ padding: 10px 20px}
    
    #breadcrumb { padding: 10px 20px 0}
    
    .cta-finddoc-wrapper {position: fixed;display: block}
    .cta-finddoc-wrapper.sticky {
		padding-top: 30px;
        display: block;opacity: 1;
        transform: translate(0, 0);
    }
	.cta-finddoc-wrapper a.btn-finddoc small { font-size: 12px; line-height: 120%; right: 30px; top: -40px}
    .cta-finddoc-wrapper.sticky + .cta-finddoc-wrapper-pos {height: 123px}
    
    #footer { 
        padding-bottom: 60px; font-size: 14px;
        content-visibility: auto;
        contain-intrinsic-size: 820px;
    }
    
    .content-part > .row { padding:10px 0 10px 20px}
    .not-full .content-part > .row,
    .cat-overview .content-part > .row{ padding: 10px 20px}
    
    .teaser > .content,
    .teaser.small-teaser > .content{ padding: 0 0 40px}
    
    .teaser figure { padding-top: 0; position: relative; overflow: hidden}
    .teaser figure figcaption { left: 20px; bottom: 20px}
    .teaser a.cta-btn { padding: 5px 20px; font-size: 14px}
    .teaser.text-teaser > .content { padding: 30px 20px 0}
    .teaser.text-teaser h1 { width: auto}
    
    .teaser.small-teaser { margin-bottom: 20px}
    .teaser.small-teaser figure { padding-top: 0}
    
    .small-teaser + #breadcrumb + .content-part.mobile-headline .content{padding-top:10px}
    .mobile-headline h1 {width: auto}
    
    .not-full .content-part > .row .sidebar {display: none}
    .suggestsearch-wrap { margin-top: 0}
	
    .mainContent .date {font-size: 0.8rem}
    .author-info .author {font-size: 0.9rem}
    .author-info .author img { width: 60px !important; height: 60px !important}
    .author-info .author .desc { margin-left: 80px}
    
    .doc-card { 
        padding-top: 26px;
        display: flex;
        flex-direction: column;
    }
        .doc-card .desc {
            clear:both; padding: 0;
        }
            :is(.doc-card .desc) h1,:is(.doc-card .desc) h2 { text-align: center}
            :is(.doc-card .desc) h1 {padding: 0; margin: 0; min-height: 0; color: #71A1AF;}
            :is(.doc-card .desc) h2 {margin-right: 0; margin-top: 15px;padding-bottom: 34px !important;}
        .doc-card .img { padding: 0 !important; margin-bottom: 26px; float: none}
        .doc-card figure { margin: 0 auto; width: 80vw; height: 80vw; margin-bottom: 30px}

    #mainContent .tooltip-wrap .tooltip {left: 0; transform: none;}
    #mainContent .tooltip-wrap .tooltip::before {left: 27px}
        
    .clinic-card {
        margin-bottom: 34px;padding: 20px 0 0;
        display: flex;
        flex-direction: column-reverse;
    }
        .clinic-card .img  {
            float: none; margin-bottom: 34px;
        }
            :is(.clinic-card .img) figure {display: none}
        .clinic-card figure {margin: 0 auto}
        .clinic-card figure.mobi-img {
            display: block; margin-bottom: 34px;
        }
            :is(.clinic-card figure.mobi-img) img {width: 100% !important; height: 100% !important; object-fit: cover}
        .clinic-card .desc {
            margin-left: 0;
        }
            :is(.clinic-card .desc) h1{ padding-top: 0}
            :is(.clinic-card .desc) h2 {margin-right: 0; margin-top: 15px; padding-top: 0; margin-bottom: 0 !important}

    .block-help a.btn-finddoc span {font-size: 14px}
    
    .doc-filter .doc .small-siegel { right: 20px; bottom: 43px}
    .doc-filter .doc .small-siegel img { width: 55px !important;display: block}
    
    .doc-filter .doc em small{float: none;padding-left: 10px; overflow: hidden}
    .doc-filter .docs-wrapper .showMore-wrap { padding: 20px 0; margin-top: -165px;}
    
    #mainContent { overflow: visible}

	 .facharzt-experte #subContent { display:block}
	body.fixedheader #outerheader { position:fixed; top:-98px; left:0; right:0 }
	html.mm-open { position:fixed}

	.klinik-detail #subContent{ display:block}

	#mobi-logo { background:url(../gfx/lmg-logo.png); display:block; width:200px; height:61px; position:absolute; left:20px; top:20px; background-size:contain; background-repeat:no-repeat}

    .front #mainContent .sticky .fltlft {padding-top: 10px;margin-bottom: 30px}
    .front #mainContent .sticky .fltlft img {max-width: 70px}
    
    .front .sticky h2 { margin-left: 90px}
    .front .sticky p { margin-left: 0; clear: both}
    
    .front .content-part.teaser figure {padding-top: 0}
    .front .content-part.teaser figure figcaption .cta-wrap{ display: none}
    .front .content-part.teaser figure figcaption h1 {font-size: 1.4rem;}
    
    .content-part > .content h2:last-child { margin-bottom: 0}
	/* -- Fixed Header - -*/
    fieldset.quickFinder { 
        height: 50px; padding-top: 5px; left: 0; right: 0;
        border-radius: 0;
    }
        fieldset.quickFinder .box-80 { width: calc(100% - 30px)}
        fieldset.quickFinder .box-20 {width: 30px;}
        fieldset.quickFinder .box-80 label,fieldset.quickFinder .box-20 > strong{ display: none}
        fieldset.quickFinder button.formSubmit {
            width: 30px; height: 30px;
        }
            :is(fieldset.quickFinder button.formSubmit) span { display: none}
            :is(fieldset.quickFinder button.formSubmit)::before {
                font-family: "leading";
                src:url("../fonts/leading.eot");
                src:url("../fonts/leading.eot?#iefix") format("embedded-opentype"),
                url("../fonts/leading.woff") format("woff"),
                url("../fonts/leading.ttf") format("truetype"),
                url("../fonts/leading.svg#leading") format("svg");
                font-weight: normal;
                font-style: normal;
                font-display: swap;
                content:'\0045';
            }
                :is(:is(fieldset.quickFinder .formItem) input.formText) ::-webkit-input-placeholder { color:#999; }
                :is(:is(fieldset.quickFinder .formItem) input.formText) :-moz-placeholder { color:#999; }
                :is(:is(fieldset.quickFinder .formItem) input.formText) ::-moz-placeholder { color:#999; }

	/* -- Row Reset -- */    
	.mobi { display:block}
	.mobile-ddmenu {display:none;}
	.klinikImg a.opener i{ font-size:15px; line-height:17px;}
			
	.sticky img{ width:100% !important; height:auto !important}
	.cat-overview .sticky img { margin-bottom:15px}
	.cat-overview #sidebar .block { margin-left:0; float:none; width:auto; margin-top:0 !important}
    
	.front .sticky img{ width:auto !important; height:auto !important}
		
	.activeLand { display: none}
	
	#topmenu, #mainmenu, #breadcrumb, #socialBar { display:none;}
	
	.focus-areas .alphabet span,
	.focus-areas .alphabet a { padding:5px 10px; font-size:20px; margin:5px}
	
	.letterBox .lft,
	.letterBox .rt { padding:20px 0}
	.letterBox .lft { width:50px}
	.letterBox a { width:auto; float:none; margin-bottom:10px}
	
	.redaktionKat > div:nth-child(odd) { padding-right:0;}
	.redaktionKat > div:nth-child(even) { padding-left:0}
	
	.node-lft .box { float:none; width:auto; margin-right:0; margin-bottom:20px; margin-left:0}
    .node-single figure.fltrt { float:none !important}
    .node-single figure.fltrt img { display: block; margin: 0 auto}
    
    ul.state-list {
        column-count: 1;
        column-gap: 0;
    }
			
	/* -- Mobile Menü-- */
	.grid .block { float:none}
	.grid .box { width:auto !important; float:none}
	.grid .box.img span { position:relative}
	.grid .box.img img { display:none}
			
	#mainContent { margin:0; order: 0;}

	#subContent { order: 2;}
    #subContent .country-box ul li {float: none; width: auto}
    #subContent .flexgrid .box-33 { width: 100%; padding: 0 !important}
        
    .doc-filter .doc strong,
    .alphabar .alphabet,
    ul.state-list,
    #mainContent p,
    .cat-overview #mainContent p, 
    .node ul, .node ol,
    .cat-overview .node, 
    .cat-overview .node p, 
    .cat-overview .node ul, 
    .cat-overview .node ol,
    .topics .row ul li a {font-size: 1rem}
    
	/* -- -- */
	.node .inner p:last-child { margin-bottom:0}
	.node-rt .box { float:none; width:auto; margin:0 0 20px 0}
	.node-rt .box img { float:none !important; height:auto !important}
	.node-grid .inner { margin-left:0}
	
    #kontaktformular.box-66 { width: 100%;}
    
	/* -- -- */
	.block-user,
	.block-zerti { width:100%}
	.block-img { width:auto; margin-right:0}
	.block-img img { width:100% !important; height:auto !important}
	.block-info.klinik .img {width:100% !important; height:auto !important; display:block; padding:20px 0}
	.block-teasing .profile { float:none}
	
	.partners {margin:0 0 20px}
	.partners .partner-col { width:auto; float:none; margin:0 0 20px}
	.partners .partner-col div { padding:0 0 20px}
	.partners span.partner-logo { display:block; width:auto; padding:20px 0; height:auto;}
	a.partner-link { width:auto; position: relative;}
    
	/* -- Startseite -- */
        .front #mainContent {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            justify-content: flex-start;
            align-content: stretch;
            align-items: stretch;
        }
            :is(.front #mainContent) h1{order: 0;}
            :is(.front #mainContent) h2{ order: 2;}
            :is(.front #mainContent) .grid{ order: 1; margin-bottom:0}
            :is(.front #mainContent) .sticky{ order: 3;}

	/* -- Kategorie Übersicht -- */
	.cat-overview .sticky .lft { padding-right:0;}
	.cat-overview .sticky .rt { padding-left:0;}
	.cat-overview .doc-filter .doctors li{ width:100%; float:none; padding: 0 !important}
	
	/* -- -- */
	.doc-filter #gmap iframe { width:100%}
	.cat-overview .doc-filter .selectboxit-container .selectboxit,
	.doc-filter .selectboxit-container .selectboxit { width:145px}
	.doc-filter .selectboxit-container .selectboxit-text {max-width:118px !important}
	
	.expert { width:auto; float:none}
	
	/* -- Experten Detail -- */
	.tabbar { margin-bottom:0}
	.tabbar ul { padding:0 20px; padding-bottom:10px}
	.tabbar ul li { float:none !important; margin-bottom:10px; margin-right:0; width:auto}
    
	.klinikImg { height:auto; padding-top:30px}
	.klinikImg img { width:100% !important; height:auto !important}

	.block-leitung .expertlist { width:auto; height:auto}
	
	.block-placesv3 .doctors li { width:auto; float:none}
	.block-zerti { margin-left:0}
	.node-behandlung .inner ul {column-count: 1;}
	
	#specialists .expert { margin-left:0}
    
	.news-grid .block-teasing h3{margin: 26px 0 18px;}
    
	/* -- Klinik Start -- */
	.searchbar fieldset .formItem input { width:90%}
	.klinik-start .searchbox .formItem { display:block;}
	.klinik-start .searchbox .formSelect { padding-left:0; margin-left:0; padding-top:15px}
	.klinik-start .slide-box { display:block}
	.block-klinik  { float:none}
	.grid .block-klinik  {  width:auto}
	.block-klinik .img img { width:100% !important; height:auto !important}
	.doctors li a { background-image:none}

	.klinik-start .searchbox .selectboxit-container .selectboxit { width:90%}
    
    .doc-filter fieldset .formItem.fltrt:last-child {margin-left:0; float:none !important; width: auto !important; padding-top: 10px;clear: both}
    .doc-filter a.location-reset {width:auto}
    
	#filter-city fieldset .formItem { margin-right:0; width: 100%; float: none; margin-bottom: 10px}
	#filter-city fieldset button{ width: 100%; border-radius: 15px;}
    
	/* -- Klinikdetail  -- */
	.klinikInfo .box { padding-bottom:25px}
        .klinik-detail .photor { height:343px}
        .klinik-detail #outerteaser strong.headline {display:block}
        .klinik-detail #footer { padding-top:25px}
        .klinik-detail .photor_gallery { height:250px}
        .klinik-detail .photor-footer { height:50px}
        .klinik-detail .photor__viewportControlPrev,.klinik-detail .photor__viewportControlNext {
            height:50px; width:30px;
        }
            :is(.klinik-detail .photor__viewportControlPrev,.klinik-detail .photor__viewportControlNext)::before { top:15px}
        .klinik-detail .photor__thumbs { height:50px; margin:0 34px}

	#location .circle { padding:125px 35px 0;width: 350px;height: 350px; margin-top:-105px; left:50%; margin-left:-175px}
	
	/* -- Patientenkontakt -- */
	fieldset.sign-up label { display:block; width: auto; padding-right:0}
	fieldset.sign-up .field { display:block}
	fieldset.sign-up .formItem seect, 
	fieldset.sign-up .formItem input[type=text], 
	fieldset.sign-up .formItem textarea { width: 100%;}
	
	.sub-nav ul { height:auto}
	.sub-nav ul li { float:none; }
	.sub-nav ul li a { float:none; display:block;}
	.sub-nav ul li a span { float:none; display:block;padding:12px 27px 12px 12px}
	.sub-nav.inner ul li { border-left:0}
	.sub-nav.inner ul li:first-child { border-bottom:1px solid #ddd}
	.sub-nav.inner ul li a { padding:0}
	
	fieldset.sign-up .formItem { border-top:0}
	fieldset.sign-up .formItem .option{ margin-bottom:10px}
	
    fieldset.route input.formText { width: 100%; float: none; margin-bottom: 10px}
    fieldset.route button { margin-left: 0; width: 100%;}
    
    /* -- Redaktion Start -- */
	.redaktion-start h1 + p { display:none}
	.redaktion-start .redaktionKat { display:none}
	
	/* -- Redaktion Detail -- */
	.node .inner img.fltlft { float:none; margin:0 0 20px 0;width:100% !important; height:auto !important}
	.redaktion-detail  #subContent{ padding-top:20px}
	.block-teasing .profile { overflow:visible}
	.redaktion-detail .topics { margin-top:30px}
	.redaktion-detail #sidebar .block { float:none; width:auto; margin-left:0 !important}
	.redaktion-detail #sidebar .block:last-child { margin-top:0; width:100%}
	.block-info.siegel .img img { width:172px !important; height:auto !important}
    
    .share-bar { margin-bottom: 37px}
    
	/* -- Footer -- */	
	#search-results .row:not(.doctors) .rt, 
	#suggestions .row:not(.doctors) .rt{ display:none}	
    
    .accordion > h3 {padding: 10px 10px 10px 10px;}
    .accordion > h3::before { left: 20px}
    .accordion .inner { padding: 20px}
    .accordion ul.multicolumn, 
    .accordion ul.multi-column { padding-left: 0}
    
    fieldset.contact,
    .popup .popup-content {padding: 20px}
    
    .popup#datePopup .popup-inner,
    .popup#datePopup .popup-content { padding: 10px;}
    
    .popup .calendar table thead tr th { font-size: 8px}
	
}
/* -- Smartphone  Portrait - iPod/iPhone4/Lumia -- */
@media screen and (max-width: 320px){
	.mobile-ddmenu .mobi-tabs ul li a { padding:13px}
	.mobile-ddmenu .mobi-tabs ul li.active a { padding-bottom:14px}
	
	#location .circle { right:-32px;width: 380px;height: 380px; padding:150px 56px 0}
	fieldset.routenplaner button { width:120px}
	
	fieldset.quickFinder .formItem input.formText {}
	fieldset.quickFinder button.formSubmit {}
	fieldset.quickFinder button.formSubmit::before {top:-1px}
	
	.sub-nav ul li { font-size:13px}	
	
	.doc-filter fieldset { float:none; padding-top:10px}
	.doc-filter .head .fltrt { float:none; text-align:center}
	.doc-filter .head .fltrt label { float:none; display:inline-block; position:relative; top:-11px}

	.cat-overview .doc-filter .selectboxit-container .selectboxit, 
	.doc-filter .selectboxit-container .selectboxit { width:100%}
	.doc-filter .selectboxit-container .selectboxit-text {max-width:95% !important}
	
	#tooltip {left: 0;width: 280px;}
	#subContent .country-box ul li { width:100%; float:none}
    
    #mobibar { padding: 10px 15px; font-size: 0.8rem}
    #mobibar a.topicsjumper {}
}