/* id:tdc-w267-stil */

    .tdc-w267-video, .tdc-vs > video, .tdc-vs > .tdc-w267-yt {
        max-width: clamp(220px, 32vw, 340px) !important;
    }
    /* Mittig unter dem Bild - Vorgabe des Inhabers vom 06.09.2026. Der Block
       trug margin:8rem 0, also linksbuendig; unter einem runden Bild sah das
       aus, als gehoere er nicht dazu. Die Randangabe steht inline, deshalb
       muss das !important sein. */
    .tdc-w267-video {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center;
    }
    .tdc-w267-video video, .tdc-w267-video .tdc-w267-yt,
    .tdc-vs > video, .tdc-vs > .tdc-w267-yt {
        width: 100% !important;
        height: auto !important;
        max-height: 62vh !important;
        aspect-ratio: auto !important;
    }
    .tdc-vs > video, .tdc-vs > .tdc-w267-yt { display: block; margin: 0 auto; }
    /* Festes 4:3 fuer den YouTube-Block (25.09.2026). Die Regel darueber setzt
       aspect-ratio:auto - der Block bekommt seine Hoehe dann erst aus dem
       Vorschaubild, und Googles Chrome rendert ihn zuerst ohne Hoehe: CLS 0,092
       auf /leistungen/zahnersatz/ (Desktop), bisektiert mit vier Kopien - das
       Bild selbst war es nicht, die Regel war es. YouTube-Vorschaubilder sind
       immer 480x360; gerendert wird heute schon 340x255. Gleiche Optik, aber die
       Hoehe steht von Anfang an. Eigene <video>-Dateien behalten auto, weil dort
       Hoch- und Querformate gemischt sind - ihre Masse kommen vom Poster. */
    .tdc-w267-video .tdc-w267-yt, .tdc-vs > .tdc-w267-yt { aspect-ratio: 4/3 !important; }
    /* Mehrere Videos nebeneinander (13.09.2026). Zwei Klassen im Selektor,
       damit es die Einzelregeln oben schlaegt, die ebenfalls !important tragen.
       align-items:flex-start, weil auf einer Seite Hochkant-Dateien und
       YouTube-Querformate gemischt stehen koennen - gestreckt waeren die
       Titel sonst unterschiedlich weit vom Bild entfernt. */
    .tdc-w267-reihe {
        display: flex;
        gap: 1rem;
        align-items: flex-start;
        justify-content: center;
        margin: 8rem 0 1.6rem;
    }
    .tdc-w267-reihe > .tdc-w267-video {
        flex: 1 1 0;
        min-width: 0;
        max-width: 340px !important;
        margin: 0 !important;
    }
    /* Auf dem Handy darf es die Spalte fuellen - dort steht nichts daneben. */
    @media (max-width: 782px) {
        .tdc-w267-video, .tdc-vs > video, .tdc-vs > .tdc-w267-yt {
            max-width: min(78vw, 320px) !important;
        }
        .tdc-w267-video { margin-top: 3rem !important; }
        /* Drei Fenster nebeneinander waeren hier je rund 100 px breit -
           auf dem Handy bleibt es deshalb untereinander. */
        .tdc-w267-reihe {
            flex-direction: column;
            align-items: center;
            gap: 2rem;
            margin-top: 3rem;
        }
        .tdc-w267-reihe > .tdc-w267-video {
            flex: none;
            width: 100%;
            max-width: min(78vw, 320px) !important;
        }
    }
    
/* id:tdc-a11y-overrides */

    /* Welle 86: Kontrast-Fixes (WCAG AA 4.5:1) */
    .elementor-widget-text-editor a,
    .elementor-icon-list-text a,
    p a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn),
    .elementor-button-text,
    .tdc-pt-eyebrow,
    .tdc-aw-eyebrow,
    .tdc-story-eyebrow,
    .tdc-loc-eyebrow,
    .tdc-loc-anfahrt-card h3,
    .tdc-loc-card h3,
    .tdc-aw-year,
    .tdc-loc-trust,
    .tdc-pt-card strong{color:#007a76 !important}

    p .tdc-aw-eyebrow,
    .tdc-pt-eyebrow,
    .tdc-story-eyebrow span,
    .tdc-loc-eyebrow{color:#006e69 !important}

    .tdc-loc-anfahrt-card p,
    .tdc-loc-card p,
    .tdc-aw-inst,
    .tdc-loc-sub,
    .tdc-pt-card p,
    .tdc-story-stat-lbl,
    .tdc-loc-review cite,
    .tdc-loc-final-cta p,
    .tdc-loc-map-sec p,
    figcaption,
    small{color:#555 !important}
    .footer-bottom{color:#c8d8db !important}
    .tdc-vsp-hero p,
    .tdc-vsp-card.tdc-vsp-hero p,
    .tdc-bento-card-dark p,
    .tdc-bento-card-dark .tdc-bento-sub,
    .tdc-stats-card.dark p,
    [class*="bento"][class*="dark"] p,
    section[style*="background-color: #2"] p,
    section[style*="background-color: #1"] p,
    section[style*="background-color: #3"] p{color:#ffffff !important}
    .tdc-ts-card .tdc-ts-text,
    .tdc-ts-card p{color:#333 !important}

    .cky-modal .cky-btn-customize,
    .cky-modal .cky-btn-reject{color:#007a76 !important;border-color:#007a76 !important}

    /* Touch-Targets >= 48x48 px (WCAG 2.5.5) */
    .elementor-social-icon,
    a.elementor-icon{min-width:48px !important;min-height:48px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important}
    footer .elementor-icon-list-text,
    footer .menu-item > a{display:inline-block;padding:8px 4px;min-height:44px;line-height:1.4}
    .elementor-nav-menu a{padding:12px 14px !important;min-height:44px;display:inline-block;line-height:1.4}
    .tdc-sf-btn{min-width:120px;min-height:52px}
    .tdc-hero-btn,
    .tdc-loc-btn,
    .elementor-button{min-height:44px;padding:12px 24px}
    .checkbox-toggle,
    .ue_hamburger{min-width:48px !important;min-height:48px !important}

    /* Font-Size Minimum */
    .tdc-aw-inst,
    .tdc-story-stat-lbl,
    .tdc-loc-review cite,
    figcaption,
    small,
    .elementor-icon-box-content small{font-size:13px !important;line-height:1.5}

    /* Reduced-motion */
    @media (prefers-reduced-motion: reduce){
      *{animation-duration:0.01ms !important;transition-duration:0.01ms !important}
    }
    
/* id:tdc-hero-mobile-fix */

/* Welle 94f: Chrome Scroll-Anchoring deaktivieren (verursacht Jump unter Hero) */
html, body {
  overflow-anchor: none !important;
  scroll-padding-top: 0 !important;
  scroll-snap-type: none !important;
}
.tdc-hero, .tdc-hero *, main, #content {
  overflow-anchor: none !important;
}
/* Welle 102: Hero-Video an Bildformat — füllt Hero-Box komplett wie ein Bild */
.tdc-hero { position: relative; overflow: hidden; }
.tdc-hero-video {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  z-index: 0 !important;
}
.tdc-hero-content {
  position: relative;
  z-index: 2;
}
.tdc-hero-content {
  position: relative;
  z-index: 2;
}

/* Welle 94: Mobile Hero (≤600px) — Schrift + Buttons proportional */
@media (max-width: 600px) {
  .tdc-hero {
    min-height: 92vh !important;
    border-width: 16px !important;
    /* align-items bleibt theme-default (flex-end) */
  }
  .tdc-hero-content {
    padding: 0 18px 10vh 18px !important;
    gap: 14px !important;
    max-width: 96vw !important;
    /* +5vh nach oben verschoben gegenüber Original */
  }
  .tdc-hero-eyebrow {
    font-size: 10px !important;
    letter-spacing: 1.2px !important;
    text-shadow: 0 1px 8px rgba(0,0,0,0.85), 0 0 18px rgba(0,0,0,0.6) !important;
  }
  .tdc-hero-headline {
    font-size: 28px !important;
    line-height: 1.08 !important;
    margin: 0 0 14px 0 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,0.85), 0 0 30px rgba(0,0,0,0.55) !important;
    letter-spacing: -0.3px !important;
  }
  .tdc-hero-headline strong {
    display: inline !important;
  }
  .tdc-hero-trust {
    font-size: 11px !important;
    padding: 6px 12px !important;
    gap: 8px !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    background: rgba(0,0,0,0.45) !important;
    border-color: rgba(255,255,255,0.25) !important;
  }
  .tdc-hero-cta a.tdc-hero-btn,
  .tdc-hero-cta .tdc-hero-btn {
    font-size: 13.5px !important;
    padding: 11px 22px !important;
    border-radius: 28px !important;
    min-height: 44px !important;
  }
}

/* Sehr kleine Geräte (≤380px, alte iPhones) */
@media (max-width: 380px) {
  .tdc-hero-headline {
    font-size: 24px !important;
  }
  .tdc-hero-trust {
    font-size: 10.5px !important;
    padding: 5px 10px !important;
  }
  .tdc-hero-cta a.tdc-hero-btn {
    font-size: 13px !important;
    padding: 10px 18px !important;
  }
}

/* Welle 94b: Floating Down/Up-Arrow ganzer Kreis 50% kleiner (Mobile) */
@media (max-width: 600px) {
  /* Vorherigen Scale entfernen */
  a.elementor-icon[href="#down"],
  a.elementor-icon[href="#up"] {
    transform: none !important;
  }
  /* Ganzer Kreis (inkl. Pfeil-Symbol) — komplettes Widget skalieren */
  .elementor-widget-icon.elementor-absolute,
  .elementor-widget__width-auto.elementor-absolute[data-widget_type="icon.default"] {
    transform: scale(0.5) !important;
    transform-origin: bottom right !important;
  }
}

/* Welle 98: Mobile-Video-Override entfernt — Theme-Original aktiv */

/* id:tdc-a11y-fixes-v2 */

    .elementor-location-header .elementor-icon-list-text,
    .elementor-location-header .elementor-icon-list-item .elementor-icon-list-text{color:#006e69 !important}
    .elementor-location-header .elementor-icon-list-icon i,
    .elementor-location-header .elementor-icon-list-icon svg{color:#006e69 !important;fill:#006e69 !important}

    .elementor-nav-menu .menu-item > a.elementor-item,
    .elementor-nav-menu .menu-item > a.elementor-item-active{color:#ffffff !important;font-weight:700 !important;text-shadow:0 1px 3px rgba(0,0,0,0.5) !important}
    .elementor-nav-menu .menu-item > a.elementor-item:hover{color:#f0f2f2 !important}

    /* Footer-Inline-Links — all:revert um Button-CSS zu killen */
    html body footer p a,
    html body footer p a:link,
    html body footer p a:visited,
    html body footer p a:focus,
    html body footer p a:focus-visible,
    html body footer p a:hover,
    html body footer p a:active,
    html body .elementor-location-footer p a,
    html body footer .elementor-widget-text-editor p a{
      all:revert !important;display:inline !important;color:#b8d4d7 !important;text-decoration:none !important;
      padding:0 !important;margin:0 !important;border:0 !important;background:transparent !important;
      box-shadow:none !important;outline:none !important;min-height:0 !important;min-width:0 !important;
      max-width:none !important;width:auto !important;height:auto !important;border-radius:0 !important;
      font:inherit !important;line-height:inherit !important;vertical-align:baseline !important
    }
    html body footer p a:hover{color:#01CAC2 !important;text-decoration:underline !important}

    html body footer a[href^="tel:"],
    html body footer a[href^="mailto:"],
    html body .elementor-location-footer a[href^="tel:"],
    html body .elementor-location-footer a[href^="mailto:"]{
      display:inline-block !important;min-height:44px !important;padding:6px 4px !important;line-height:1.6 !important
    }

    html body footer a[style*="9ab6ba" i],
    html body .elementor-location-footer a[style*="9ab6ba" i]{color:#b8d4d7 !important}
    html body footer a[style*="9ab6ba" i]:hover,
    html body .elementor-location-footer a[style*="9ab6ba" i]:hover{color:#01CAC2 !important;text-decoration:underline !important}

    .tdc-vsp-eyebrow,
    .tdc-ts-eyebrow,
    .tdc-aw-eyebrow,
    .tdc-pt-eyebrow,
    .tdc-story-eyebrow,
    .tdc-loc-eyebrow{color:#006e69 !important}

    .elementor-element-44f637eb h2.elementor-heading-title,
    .elementor-element-44f637eb h2,
    .elementor-element-758969eb h2,
    .elementor-element-44f637eb p{color:#1a1a1a !important}

    .tdc-ts-table th{color:#1a1a1a !important}
    .tdc-nd3-badge{background:#d80027 !important;color:#ffffff !important}

    footer .elementor-heading-title,
    footer h4{color:#ffffff !important}

    .elementor-location-footer p,
    .elementor-location-footer .elementor-text-editor,
    .elementor-location-footer .elementor-text-editor p,
    footer .elementor-text-editor,
    footer .elementor-text-editor p{color:#c8d8db !important}

    html body footer p a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn),
    html body footer span a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn),
    html body footer .elementor-widget-text-editor a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn),
    html body .elementor-location-footer p a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn),
    html body .elementor-location-footer .elementor-widget-text-editor a:not(.elementor-button):not(.tdc-loc-btn):not(.tdc-sf-btn){color:#c8d8db !important}
    html body footer p a:not(.elementor-button):hover,
    html body footer span a:not(.elementor-button):hover,
    html body footer .elementor-widget-text-editor a:not(.elementor-button):hover{color:#ffffff !important;text-decoration:underline !important}

    .elementor-button .elementor-button-text{color:inherit !important}
    .uc_btn{color:#006e69 !important;font-weight:600 !important}
    
/* id:tdc-authorbox-compact */
/* Section-Wrapper */.elementor-element[data-id="4ed6c167"]{padding:16px 0 !important;margin:32px auto !important;max-width:1100px !important;}/* Inner Container (e-con-inner ODER .elementor-container) auf max 240px Höhe */.elementor-element[data-id="4ed6c167"] > .e-con-inner,.elementor-element[data-id="4ed6c167"] > .elementor-container{max-height:240px !important;min-height:200px !important;overflow:hidden;border-radius:20px;box-shadow:0 1px 2px rgba(22,49,47,.04), 0 12px 36px rgba(22,49,47,.08);background:#fff;border:1px solid #E3ECEC;align-items:stretch !important;}/* Alle Spalten auf 240px begrenzen */.elementor-element[data-id="4ed6c167"] .elementor-column,.elementor-element[data-id="4ed6c167"] .elementor-top-column{max-height:240px !important;overflow:hidden;}/* Linke Spalte (77d82b98) - türkis Akzent */.elementor-element[data-id="77d82b98"]{background:linear-gradient(135deg, #009A96 0%, #007570 100%) !important;padding:24px 28px !important;max-height:240px;overflow:hidden;position:relative;}/* Subtile Pattern-Overlay auf linker Spalte */.elementor-element[data-id="77d82b98"]::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%, rgba(255,255,255,0.10) 0%, transparent 50%), radial-gradient(circle at 20% 80%, rgba(255,255,255,0.08) 0%, transparent 50%);pointer-events:none;}/* Text in der linken Spalte: weiß, kompakter */.elementor-element[data-id="77d82b98"] *{color:#fff !important;font-size:.92rem !important;line-height:1.45 !important;}.elementor-element[data-id="77d82b98"] h1, .elementor-element[data-id="77d82b98"] h2, .elementor-element[data-id="77d82b98"] h3{color:#fff !important;font-size:1.15rem !important;font-weight:600 !important;margin:0 0 8px !important;line-height:1.3 !important;}.elementor-element[data-id="77d82b98"] a{color:#fff !important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}/* Linke Spalte: clamp Text auf 7 Zeilen */.elementor-element[data-id="77d82b98"] > .elementor-widget-wrap > .elementor-widget,.elementor-element[data-id="77d82b98"] .elementor-widget-text-editor .elementor-widget-container,.elementor-element[data-id="77d82b98"] .elementor-widget-text-editor p{display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden;}/* Rechte Spalte: Logo + Text - kompakter, zentriert */.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]){padding:24px 32px !important;display:flex !important;align-items:center !important;justify-content:center !important;}.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) h1,.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) h2,.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) h3{color:#16312F !important;font-size:1.25rem !important;font-weight:700 !important;margin:0 0 6px !important;line-height:1.3 !important;}.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) p,.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) {color:#5A6A6A;font-size:.95rem;line-height:1.45;}/* Logo-Image kleiner */.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]) img{max-width:80px !important;height:auto !important;}/* FAQ-Page (Post 4777): leere linke Spalte mit passendem Fallback-Text fuellen */body.postid-4777 .elementor-element[data-id="77d82b98"]{max-height:none !important;}body.postid-4777 .elementor-element[data-id="77d82b98"] .elementor-widget-wrap{display:flex !important;align-items:flex-start !important;min-height:200px;}body.postid-4777 .elementor-element[data-id="77d82b98"] .elementor-widget-wrap::before{content:"Hier finden Sie ehrliche, einfühlsame Antworten auf die Fragen, die unsere Patienten am häufigsten stellen — von Lachgas und Hypnose über Implantate und Invisalign bis zu Vorsorge und Bleaching.";display:block;color:#fff !important;font-size:.95rem !important;line-height:1.55 !important;font-weight:400;padding:0;letter-spacing:.005em;}/* Mobile: stack with reduced heights */@media (max-width:768px){.elementor-element[data-id="4ed6c167"] > .e-con-inner{max-height:none !important;}.elementor-element[data-id="77d82b98"]{max-height:none;padding:20px;}.elementor-element[data-id="4ed6c167"] .elementor-column:not([data-id="77d82b98"]){padding:20px;}body.postid-4777 .elementor-element[data-id="77d82b98"] .elementor-widget-wrap{min-height:0;}}
/* id:tdc-w159-footer-mob */

    /* Desktop / >= 769px : <br>+mob-hid2 verstecken, " | " sichtbar */
    @media (min-width: 769px) {
        .mob-hid2 { display: none !important; }
        .mob-br   { display: none !important; }
    }
    /* Mobile / <= 768px : <br> sichtbar, " | " verstecken */
    @media (max-width: 768px) {
        .mob-hid { display: none !important; }
        .mob-hid2 { display: inline !important; }
        .mob-br { display: inline !important; }
    }
    /* Footer-Copyright-Paragraph: kein justify, kein extra-spacing zwischen Wörtern */
    .elementor-element-764f460 p,
    .elementor-element-764f460 .elementor-widget-container > p {
        text-align: center !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
    }
    /* Falls Hello-Theme oder Elementor irgendwo „justify" setzt, hier kappen */
    .elementor-element-764f460 .elementor-widget-container {
        text-align: center !important;
    }
    
/* id:tdc-pe-badge-css */

/* W205 T-13 (T-13d 08.06.: User-Wunsch INLINE).
   ProvenExpert TOP 100 als Badge INLINE auf EINER Zeile direkt nach
   "4,9 · 850 Bewertungen". Item 1 wächst zur Inhaltsbreite (flex:0 1 auto) und
   bricht NICHT um (white-space:nowrap) → Badge bleibt auf der Rating-Zeile.
   Mobil: umbruchfähig, damit nichts überläuft. */
.tdc-trust .item:first-child{
    flex:0 1 auto !important;
    white-space:nowrap;
}
.tdc-trust .item:first-child small{
    display:inline-flex !important;
    align-items:center;
    vertical-align:middle;
    margin:0 0 0 9px !important;
    padding:0 12px !important;
    height:22px;
    background:linear-gradient(135deg,#009A96 0%,#017F7F 100%);
    color:#ffffff !important;
    font-weight:700 !important;
    font-size:10.5px !important;
    letter-spacing:.4px;
    text-transform:uppercase;
    border-radius:999px;
    box-shadow:0 1px 5px rgba(1,127,127,.38);
    white-space:nowrap;
    line-height:1;
    position:relative;
    top:-1px;
}
.tdc-trust .item:first-child small::before{
    content:"\2605"; /* ★ */
    color:#FFD24D;
    font-size:11px;
    margin-right:5px;
    line-height:1;
}
@media (max-width:768px){
    .tdc-trust .item:first-child{
        flex:1 1 45% !important;
        white-space:normal;
    }
    .tdc-trust .item:first-child small{
        font-size:10px !important;
        padding:0 10px !important;
        height:20px;
        margin:4px 0 0 0 !important;
        top:0;
    }
}

/* id:tdc-a11y-korrekturen */

/* 1) WCAG 1.4.1 - Links im Fliesstext nicht nur an der Farbe erkennbar */
main p a[href]:not(.elementor-button):not([class*="btn"]):not(.tdc-loc-btn):not(.tdc-sf-btn),
main li a[href]:not(.elementor-button):not([class*="btn"]):not(.tdc-loc-btn):not(.tdc-sf-btn){
  text-decoration: underline;
  text-underline-offset: 0.16em;
  text-decoration-thickness: 1px;
}
/* Dort ist die Linkfunktion ohnehin sichtbar - eine Unterstreichung waere Laerm. */
main .tdc-w230-toc a[href],
main .elementor-icon-list-item a[href],
main nav a[href]{ text-decoration: none; }

/* 2) WCAG 2.5.8 - Bedienflaeche mindestens 24 Pixel hoch */
.tdc-homepage-geo-grid li a[href]{
  display: inline-block;
  padding-block: 3px;
}

/* id:tdc-carousel-a11y-css */

/* WCAG 2.5.8 — Mindest-Trefferflaeche fuer Owl-Navigation */
.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dots .owl-dot{
  min-width:24px;
  min-height:24px;
}
/* Tastatur-Fokus sichtbar machen (Owl entfernt outline gern) */
.owl-carousel .owl-nav .owl-prev:focus-visible,
.owl-carousel .owl-nav .owl-next:focus-visible,
.owl-carousel .owl-dots .owl-dot:focus-visible{
  outline:2px solid #0a7e8c;
  outline-offset:2px;
}

/* id:tdc-fa-subset */

/* erzeugt von baue-fa-subset.py - nicht von Hand aendern */
@font-face{font-family:'Font Awesome 6 Free';font-style:normal;font-weight:900;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/plugins/unlimited-elements-for-elementor/assets_libraries/font-awesome6/fa-solid-900.woff2') format('woff2')}
@font-face{font-family:'Font Awesome 6 Free';font-style:normal;font-weight:900;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/uploads/tdc-fa-subset/fa-solid-900.subset.woff2') format('woff2');unicode-range:U+2B,U+E05C-E05D,U+E06E,U+F002,U+F004-F005,U+F007,U+F00C,U+F03A,U+F053-F054,U+F058,U+F05A,U+F068,U+F073,U+F086,U+F091,U+F095,U+F0AC,U+F0C0,U+F0CA,U+F0D0,U+F0E0,U+F0F0,U+F0F3,U+F0F8,U+F118,U+F135,U+F164,U+F185,U+F19D,U+F1AE,U+F1B9-F1BA,U+F207,U+F238,U+F24D,U+F2B6,U+F362,U+F3C5,U+F46D,U+F470,U+F484,U+F48E,U+F497,U+F4BE,U+F4C4,U+F4D8,U+F4FC,U+F53B-F53C,U+F547,U+F578,U+F5C9-F5CA,U+F62E-F62F,U+F72E,U+F7A0}
@font-face{font-family:'Font Awesome 5 Free';font-style:normal;font-weight:900;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/plugins/unlimited-elements-for-elementor/assets_libraries/font-awesome6/fa-solid-900.woff2') format('woff2')}
@font-face{font-family:'Font Awesome 5 Free';font-style:normal;font-weight:900;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/uploads/tdc-fa-subset/fa-solid-900.subset.woff2') format('woff2');unicode-range:U+2B,U+E05C-E05D,U+E06E,U+F002,U+F004-F005,U+F007,U+F00C,U+F03A,U+F053-F054,U+F058,U+F05A,U+F068,U+F073,U+F086,U+F091,U+F095,U+F0AC,U+F0C0,U+F0CA,U+F0D0,U+F0E0,U+F0F0,U+F0F3,U+F0F8,U+F118,U+F135,U+F164,U+F185,U+F19D,U+F1AE,U+F1B9-F1BA,U+F207,U+F238,U+F24D,U+F2B6,U+F362,U+F3C5,U+F46D,U+F470,U+F484,U+F48E,U+F497,U+F4BE,U+F4C4,U+F4D8,U+F4FC,U+F53B-F53C,U+F547,U+F578,U+F5C9-F5CA,U+F62E-F62F,U+F72E,U+F7A0}
@font-face{font-family:'Font Awesome 6 Brands';font-style:normal;font-weight:400;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/plugins/unlimited-elements-for-elementor/assets_libraries/font-awesome6/fa-brands-400.woff2') format('woff2')}
@font-face{font-family:'Font Awesome 6 Brands';font-style:normal;font-weight:400;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/uploads/tdc-fa-subset/fa-brands-400.subset.woff2') format('woff2');unicode-range:U+E07B,U+E61B,U+F0E1,U+F167,U+F16D,U+F232,U+F39E}
@font-face{font-family:'Font Awesome 5 Brands';font-style:normal;font-weight:400;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/plugins/unlimited-elements-for-elementor/assets_libraries/font-awesome6/fa-brands-400.woff2') format('woff2')}
@font-face{font-family:'Font Awesome 5 Brands';font-style:normal;font-weight:400;font-display:swap;src:url('https://bd8aeb22.delivery.rocketcdn.me/wp-content/uploads/tdc-fa-subset/fa-brands-400.subset.woff2') format('woff2');unicode-range:U+E07B,U+E61B,U+F0E1,U+F167,U+F16D,U+F232,U+F39E}

/* id:tdc-section-spacing-w209 */

/* --- Section: kein Top-Abstand ---------------------------------------- */
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type,
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-element.elementor-top-section:first-of-type {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

@media (min-width: 769px) {

/* --- Image-only Spalte: oben ausgerichtet, horizontal zentriert ----------
   Root-Cause: flex-direction:column + flex-wrap:wrap → Flex-Line = Item-Breite.
   align-self/margin:auto haben keinen Freiraum in der Line. Lösung: align-content:center
   positioniert die (schmale) Flex-Line in der Mitte des (breiten) Spalten-Containers. */
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-element.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:has(> .elementor-widget-image:only-child) {
    justify-content: flex-start !important;  /* vertikal: Inhalt oben */
    align-content: center !important;        /* horizontal: Flex-Line in Spaltenmitte */
}

/* --- Bild-Widget: 100px Abstand nach oben -------------------------------- */
html body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type .elementor-widget-wrap:has(> .elementor-widget-image:only-child) > .elementor-widget-image,
html body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-element.elementor-top-section:first-of-type .elementor-widget-wrap:has(> .elementor-widget-image:only-child) > .elementor-widget-image,
html body.tdc-mlift-on.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] .elementor-top-section:first-of-type .elementor-widget-wrap:has(> .elementor-widget-image:only-child) > .elementor-widget-image {
    margin-top: 100px !important;
}

/* --- Text-Spalte Wrap: von oben starten (Elementor kann justify-content:normal setzen → Inhalt rutscht nach unten) */
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:not(:has(> .elementor-widget-image:only-child)),
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-element.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:not(:has(> .elementor-widget-image:only-child)) {
    justify-content: flex-start !important;
    align-content: flex-start !important;
}

/* --- Text-Spalte: erstes Widget 80px vom oberen Rand -------------------- */
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:not(:has(> .elementor-widget-image:only-child)) > .elementor-widget:first-child,
body.elementor-page:not(.page-id-585):not(.page-id-3242) [data-elementor-type="wp-page"] > .elementor-element.elementor-top-section:first-of-type .elementor-column > .elementor-widget-wrap:not(:has(> .elementor-widget-image:only-child)) > .elementor-widget:first-child {
    margin-top: 80px !important;
}

} /* end @media min-width:769px */

/* id:tdc-cky-position-override */
.cky-consent-container,.cky-modal,.cky-modal-bar-wrapper,.cky-banner-bottom-left,.cky-revisit-bottom-left{left:auto !important;right:20px !important}.cky-consent-container.cky-box-bottom-left,.cky-box-bottom-left{left:auto !important;right:20px !important;bottom:20px !important}@media(max-width:768px){.cky-consent-container,.cky-modal{left:10px !important;right:10px !important;width:auto !important}}
/* id:tdc-global-buttons */

    /* =========================================================
       1) DEFAULT BRAND BUTTON — Starker Drop-Shadow
          (icon-menu wird durch :not() ausgeschlossen, NICHT gestylt)
       ========================================================= */
    .elementor-button:not(.icon-menu *):not(section.icon-menu *),
    .tdc-ts-cta a,
    .tdc-vt-cta a,
    .tdc-angst .cta a,
    a.tdc-nd3-tel {
        background-color: #009A96 !important;
        color: #FFFFFF !important;
        border-radius: 4px !important;
        padding: 14px 32px !important;
        font-family: Poppins, sans-serif !important;
        font-weight: 600 !important;
        font-size: 15px !important;
        letter-spacing: 0.5px !important;
        border: none !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        text-decoration: none !important;
        cursor: pointer;
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px;
        line-height: 1.2 !important;
    }
    .elementor-button:not(.icon-menu *):not(section.icon-menu *) *,
    .tdc-ts-cta a *,
    .tdc-vt-cta a * {
        color: #FFFFFF !important;
    }
    .elementor-button:not(.icon-menu *):not(section.icon-menu *) svg,
    .elementor-button:not(.icon-menu *):not(section.icon-menu *) i,
    .elementor-button:not(.icon-menu *):not(section.icon-menu *) .elementor-button-icon,
    .tdc-ts-cta a svg,
    .tdc-ts-cta a i,
    .tdc-vt-cta a svg,
    .tdc-vt-cta a i,
    .tdc-angst .cta a svg,
    .tdc-angst .cta a i,
    a.tdc-nd3-tel svg,
    a.tdc-nd3-tel i {
        color: #FFFFFF !important;
        fill: #FFFFFF !important;
        stroke: #FFFFFF !important;
    }
    .elementor-button:not(.icon-menu *):not(section.icon-menu *) svg path,
    .tdc-ts-cta a svg path,
    .tdc-vt-cta a svg path {
        fill: #FFFFFF !important;
        stroke: #FFFFFF !important;
    }
    .elementor-button:not(.icon-menu *):not(section.icon-menu *):hover,
    .tdc-ts-cta a:hover,
    .tdc-vt-cta a:hover,
    .tdc-angst .cta a:hover,
    a.tdc-nd3-tel:hover {
        background-color: #1a1a1a !important;
        color: #FFFFFF !important;
        transform: translateY(-3px) !important;
        box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28) !important;
    }

    /* =========================================================
       2) TERMIN-BUCHEN BUTTONS — PILL 50px (mit icon-menu Exclude)
       ========================================================= */
    a[href*="doctolib"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *),
    a[href*="#termin"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *),
    a[href*="online-termine"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *),
    a[href*="online-terminbuchung"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *),
    a[href*="/termin"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *),
    .elementor-button[href*="doctolib"]:not(.icon-menu *),
    .elementor-button[href*="termin"]:not(.icon-menu *),
    .tdc-ts-cta a[href*="doctolib"],
    .tdc-vt-cta a[href*="doctolib"],
    .tdc-angst .cta a[href*="doctolib"],
    a.tdc-nd3-tel[href*="doctolib"],
    a.tdc-nd3-tel[href*="termin"] {
        border-radius: 50px !important;
        padding: 14px 36px !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
    }
    a[href*="doctolib"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):hover,
    a[href*="#termin"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):hover,
    a[href*="online-termine"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *):hover,
    a[href*="online-terminbuchung"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):hover,
    a[href*="/termin"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):hover,
    .elementor-button[href*="doctolib"]:not(.icon-menu *):hover,
    .elementor-button[href*="termin"]:not(.icon-menu *):hover {
        background-color: #1a1a1a !important;
        transform: translateY(-3px) !important;
        box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28) !important;
    }

    /* =========================================================
       3) BERATUNGS-BUTTONS — PILL 50px
       ========================================================= */
    /* Welle 160: zusätzliche :not()-Excludes für Custom Pill-Header Mega-Menü (.tdc-pill-sub/.tdc-pill-nav/.tdc-pill-bar) — Beratung-Link dort hat keine class, daher waren die Excludes oben unwirksam. */
    /* Welle 172b (2026-06-05): + :not(.tdc-header *):not(.tdc-m-drawer *) für V2-Header (Desktop-Submenu .pillbar__sub liegt in .tdc-header; Mobile-Drawer .tdc-m-drawer ist BODY-CHILD ausserhalb <header>). */
    a[href*="/beratung"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *),
    a[href*="erstgespraech"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *),
    .elementor-button[href*="beratung"]:not(.icon-menu *):not(.tdc-header *):not(.tdc-m-drawer *) {
        border-radius: 50px !important;
        padding: 14px 36px !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
    }
    a[href*="/beratung"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *):hover,
    a[href*="erstgespraech"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *):hover,
    .elementor-button[href*="beratung"]:not(.icon-menu *):not(.tdc-header *):not(.tdc-m-drawer *):hover {
        background-color: #1a1a1a !important;
        transform: translateY(-3px) !important;
        box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28) !important;
    }

    /* =========================================================
       4) OUTLINE-Variante (Online-Termin in Notdienst)
       ========================================================= */
    a.tdc-nd3-tel.online {
        background-color: #FFFFFF !important;
        color: #009A96 !important;
        border: 2px solid #009A96 !important;
        padding: 12px 30px !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
        border-radius: 50px !important;
    }
    a.tdc-nd3-tel.online * { color: #009A96 !important; }
    a.tdc-nd3-tel.online svg,
    a.tdc-nd3-tel.online i { color: #009A96 !important; fill: #009A96 !important; stroke: #009A96 !important; }
    a.tdc-nd3-tel.online svg path { fill: #009A96 !important; stroke: #009A96 !important; }
    a.tdc-nd3-tel.online:hover {
        background-color: #009A96 !important;
        color: #FFFFFF !important;
        border-color: #009A96 !important;
        transform: translateY(-3px) !important;
        box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28) !important;
    }
    a.tdc-nd3-tel.online:hover * { color: #FFFFFF !important; }
    a.tdc-nd3-tel.online:hover svg,
    a.tdc-nd3-tel.online:hover i { color: #FFFFFF !important; fill: #FFFFFF !important; stroke: #FFFFFF !important; }
    a.tdc-nd3-tel.online:hover svg path { fill: #FFFFFF !important; stroke: #FFFFFF !important; }

    /* =========================================================
       5) KARRIERE-MARQUEE (kein Schatten)
       ========================================================= */
    .tdc-kb {
        background-color: #D80027 !important;
        padding: 18px 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: block !important;
    }
    .tdc-kb:hover {
        background-color: #B00020 !important;
        transform: none !important;
        box-shadow: none !important;
    }

    /* =========================================================
       6) Notdienst Tel-Buttons (alt = dunkles Türkis)
       ========================================================= */
    a.tdc-nd3-tel.alt {
        background-color: #006B6A !important;
    }
    a.tdc-nd3-tel.alt:hover {
        background-color: #1a1a1a !important;
    }

    /* =========================================================
       7) Pfeil-Animation
       ========================================================= */
    .elementor-button-icon-align-right .elementor-button-icon,
    .tdc-ts-cta a::after {
        transition: transform 0.3s ease;
    }
    .elementor-button:hover .elementor-button-icon,
    .tdc-ts-cta a:hover::after,
    .tdc-vt-cta a:hover::after {
        transform: translateX(4px);
    }

    /* =========================================================
       8) MOBILE
       ========================================================= */
    @media (max-width: 768px) {
        .elementor-button:not(.icon-menu *):not(section.icon-menu *),
        .tdc-ts-cta a,
        .tdc-vt-cta a,
        .tdc-angst .cta a,
        a.tdc-nd3-tel {
            padding: 12px 26px !important;
            font-size: 14px !important;
            box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16) !important;
        }
        /* Welle 160: + :not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *) für Custom Mega-Menü */
        a[href*="doctolib"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *),
        a[href*="termin"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *),
        a[href*="beratung"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *),
        a[href*="erstgespraech"]:not(.icon-menu *):not(section.icon-menu *):not(.elementor-icon-box-wrapper a):not(.elementor-item):not(.elementor-sub-item):not(footer *):not(.elementor-location-footer *):not(.tdc-pill-sub *):not(.tdc-pill-nav *):not(.tdc-pill-bar *):not(.tdc-pill-mobile *):not(.tdc-header *):not(.tdc-m-drawer *),
        .elementor-button[href*="doctolib"]:not(.icon-menu *):not(footer *),
        .elementor-button[href*="termin"]:not(.icon-menu *):not(footer *),
        .elementor-button[href*="beratung"]:not(.icon-menu *):not(footer *):not(.tdc-header *):not(.tdc-m-drawer *) {
            padding: 12px 28px !important;
        }
    }


    /* =========================================================
       10) VERGLEICHS-TABELLE MOBILE — horizontal scroll
       ========================================================= */
    @media (max-width: 768px) {
        .tdc-vt {
            padding-left: 0 !important;
            padding-right: 0 !important;
            overflow: hidden !important;
        }
        .tdc-vt-inner {
            padding: 0 !important;
            max-width: 100% !important;
        }
        .tdc-vt h2,
        .tdc-vt .subtitle {
            padding-left: 20px !important;
            padding-right: 20px !important;
        }
        .tdc-vt-table {
            display: block !important;
            overflow-x: auto !important;
            -webkit-overflow-scrolling: touch !important;
            max-width: 100% !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            position: relative;
        }
        .tdc-vt-table::after {
            content: "← wischen →";
            display: block;
            text-align: center;
            font-size: 11px;
            color: #888;
            padding: 6px 0 12px;
            font-weight: 600;
            letter-spacing: 1px;
        }
        .tdc-vt-table thead,
        .tdc-vt-table tbody {
            display: table !important;
            width: 720px !important;
            table-layout: fixed !important;
        }
        .tdc-vt-table thead th,
        .tdc-vt-table tbody th,
        .tdc-vt-table tbody td {
            min-width: 140px !important;
            white-space: normal !important;
            font-size: 12px !important;
            padding: 10px 8px !important;
        }
        .tdc-vt-table tbody th {
            width: 120px !important;
            min-width: 120px !important;
            background: #fafafa !important;
        }
        .tdc-vt-table thead th {
            font-size: 13px !important;
        }
        .tdc-vt-cta {
            padding: 0 20px !important;
        }
    }

    /* =========================================================
       11) W172d (2026-06-05) BULLETPROOF FUTURE-PROOF SUPPRESSOR
           Beratung/Erstgespraech sind in JEDEM Header/Nav/Menue/Drawer/
           Sticky-Clone NIE eine Pill-Bubble. Spezifitaet via
           :not(#_):not(#_) = (2,0,0) schlaegt die :not()-Ketten oben
           (~0,9,1) UND steht zuletzt im Stylesheet (Source-Order).
           Faengt auch kuenftige Header-Klassen + JS-Clone (.tdc-pill-bar-clone)
           ab, damit dieser Bug nicht bei der naechsten Header-Iteration
           wiederkommt. NUR beratung/erstgespraech — Termin/Doctolib-CTA
           (.cta-termin) bleibt absichtlich Pill.
       ========================================================= */
    :is(.tdc-header,.tdc-m-drawer,.pillbar,.pillbar__sub,.tdc-pill-header,.tdc-pill-bar,.tdc-pill-bar-clone,.tdc-pill-header-clone-mob,.tdc-pill-mobile,.tdc-pill-nav,.tdc-pill-sub,nav,[role="menubar"],[role="menu"]) a[href*="beratung"]:not(#_):not(#_),
    :is(.tdc-header,.tdc-m-drawer,.pillbar,.pillbar__sub,.tdc-pill-header,.tdc-pill-bar,.tdc-pill-bar-clone,.tdc-pill-header-clone-mob,.tdc-pill-mobile,.tdc-pill-nav,.tdc-pill-sub,nav,[role="menubar"],[role="menu"]) a[href*="erstgespraech"]:not(#_):not(#_) {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
        border-radius: 8px !important;
        padding: 8px 14px !important;
        transform: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        animation: none !important;
        font-weight: 400 !important;
    }
    :is(.tdc-header,.tdc-m-drawer,.pillbar,.pillbar__sub,.tdc-pill-header,.tdc-pill-bar,.tdc-pill-bar-clone,.tdc-pill-header-clone-mob,.tdc-pill-mobile,.tdc-pill-nav,.tdc-pill-sub,nav,[role="menubar"],[role="menu"]) a[href*="beratung"]:not(#_):not(#_)::before,
    :is(.tdc-header,.tdc-m-drawer,.pillbar,.pillbar__sub,.tdc-pill-header,.tdc-pill-bar,.tdc-pill-bar-clone,.tdc-pill-header-clone-mob,.tdc-pill-mobile,.tdc-pill-nav,.tdc-pill-sub,nav,[role="menubar"],[role="menu"]) a[href*="beratung"]:not(#_):not(#_)::after {
        display: none !important;
        content: none !important;
    }

    /* =========================================================
       9) Reduced Motion
       ========================================================= */
    @media (prefers-reduced-motion: reduce) {
        .elementor-button:not(.icon-menu *):not(section.icon-menu *),
        .tdc-ts-cta a,
        .tdc-vt-cta a,
        .tdc-angst .cta a,
        a.tdc-nd3-tel,
        .tdc-kb {
            transition: none !important;
        }
        .elementor-button:not(.icon-menu *):not(section.icon-menu *):hover,
        .tdc-ts-cta a:hover,
        .tdc-vt-cta a:hover,
        .tdc-angst .cta a:hover,
        a.tdc-nd3-tel:hover {
            transform: none !important;
        }
    }
    
/* attr:data-tdc-sticky-pill-nav */

/* DESKTOP: Pill-Nav-Bar-Clone (sitewide >=900px) */
.tdc-pill-bar-clone{
  position:fixed !important;
  top:24px !important;
  z-index:9999 !important;
  background:#fff !important;
  border-radius:999px !important;
  box-shadow:0 12px 30px -16px rgba(10,20,20,.22) !important;
  animation:none !important;
}
.tdc-pill-bar-clone *{animation:none !important}
@media (max-width:899px){
  .tdc-pill-bar-clone{display:none !important}
}

/* MOBILE STICKY CLONE (W203 v2.0) — spiegelt den Header 1:1:
   Logo + native runde CTA-Icons + Burger. KEINE Injektion mehr. */
.tdc-pill-header-clone-mob{
  position:fixed !important;
  top:8px !important; left:8px !important; right:8px !important;
  z-index:9999 !important;
  background:#fff !important;
  border-radius:18px !important;
  box-shadow:0 14px 32px -16px rgba(10,20,20,.28) !important;
  margin:0 !important;
  padding:0 6px !important;
  animation:none !important;
  overflow:visible !important;
}
.tdc-pill-header-clone-mob *{animation:none !important}
/* Topbar (Uhrzeit + Social) im Sticky ausblenden */
.tdc-pill-header-clone-mob .tdc-pill-topbar{display:none !important}
/* Shell kompakt, vertikal zentriert */
.tdc-pill-header-clone-mob .tdc-pill-shell{
  padding:0 !important;
  margin:0 !important;
  align-items:center !important;
  gap:6px !important;
  min-height:0 !important;
}
/* Logo kleiner im Sticky (Header nutzt 88px+translateY) */
.tdc-pill-header-clone-mob .tdc-pill-logo{
  height:48px !important;
  transform:none !important;
  flex:0 0 auto !important;
}
.tdc-pill-header-clone-mob .tdc-pill-logo img{
  height:48px !important; width:auto !important;
}
/* Bar kompakt; native CTAs + Burger wie im Header */
.tdc-pill-header-clone-mob .tdc-pill-bar{
  padding:4px 52px 4px 4px !important;
  min-height:0 !important;
}
/* Drawer bleibt normales aufklappbares Overlay (kein Icon-Container) */
.tdc-pill-header-clone-mob .tdc-pill-mobile{
  position:absolute !important;
  left:0 !important; right:0 !important; top:100% !important;
}
@media (min-width:900px){
  .tdc-pill-header-clone-mob{display:none !important}
}

/* === Notdienst-Pill in Mobile-Bubble (links) === */
.tdc-pill-mob-notdienst{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  background:#e5e7eb !important;
  border:1px solid rgba(31,41,55,.12);
  border-radius:999px;
  padding:9px 14px 9px 12px;
  font-weight:700;
  font-size:13px;
  letter-spacing:.01em;
  color:#1f2937 !important;
  text-decoration:none;
  white-space:nowrap;
  line-height:1;
  transition:background-color .25s ease, color .25s ease, transform .25s ease;
  box-shadow:0 4px 10px -6px rgba(31,41,55,.2);
}
.tdc-pill-mob-notdienst:hover,
.tdc-pill-mob-notdienst:focus-visible{
  background:#d1d5db !important;
  color:#111827 !important;
  transform:translateY(-1px);
}
.tdc-pill-mob-notdienst *{color:#1f2937 !important}
.tdc-pill-mob-notdienst svg{
  flex-shrink:0;
  color:#1f2937 !important;
  stroke:#1f2937 !important;
  transition:color .25s ease, stroke .25s ease;
}
.tdc-pill-mob-notdienst-pulse{
  display:inline-block;
  width:8px;height:8px;
  border-radius:50%;
  background:#1f2937;
  box-shadow:0 0 0 0 rgba(31,41,55,.5);
  animation:tdcNotdienstPulse 1.6s ease-out infinite;
}
@keyframes tdcNotdienstPulse{
  0%{box-shadow:0 0 0 0 rgba(31,41,55,.5)}
  70%{box-shadow:0 0 0 10px rgba(31,41,55,0)}
  100%{box-shadow:0 0 0 0 rgba(31,41,55,0)}
}
/* Ordnung in .tdc-pill-mob-ctas: Notdienst zuerst, Phone danach */
.tdc-pill-mob-ctas{
  display:flex !important;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}
.tdc-pill-mob-ctas .tdc-pill-mob-notdienst{order:-1}

/* id:wp-custom-css */

html,
body{
width:100%;
overflow-x:hidden;
}

@media (min-width: 768px) {
.elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-30239229 {
    margin-top: 125px;
}
}	

@media (max-width: 767px) {
    html body p,
    html body .elementor-widget-container p,
    html body .elementor-widget-text-editor p {
        font-size: 1rem !important;
    }
}

/* id:tdc-cky-center-mobile */
html .cky-btn-revisit-wrapper,html .cky-revisit-bottom-left,html .cky-revisit-bottom-right{right:8px !important;left:auto !important;bottom:80px !important;top:auto !important}@media(max-width:768px){html .cky-consent-container,html .cky-consent-container.cky-box-bottom-left,html .cky-consent-container.cky-box-bottom-right{left:50% !important;right:auto !important;top:50% !important;bottom:auto !important;transform:translate(-50%,-50%) !important;width:92% !important;max-width:420px !important}html .cky-modal{left:50% !important;right:auto !important;top:50% !important;bottom:auto !important;transform:translate(-50%,-50%) !important;width:92% !important;max-width:440px !important;max-height:88vh !important;overflow-y:auto !important}}
/* id:tdc-dropcap-stadtteil */

    /* === TDC Drop-Cap (Welle 172b) — nur Stadtteil-LPs === */
    body.tdc-stadtteil-active .tdc-loc-char p:first-of-type::first-letter {
        font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif !important;
        float: left !important;
        font-size: 5em !important;
        line-height: 0.82 !important;
        padding: 6px 14px 0 0 !important;
        color: #009a96 !important;
        font-weight: 600 !important;
        text-transform: uppercase;
        -webkit-font-smoothing: antialiased;
    }

    @media (max-width: 768px) {
        body.tdc-stadtteil-active .tdc-loc-char p:first-of-type::first-letter {
            font-size: 4em !important;
            padding: 4px 10px 0 0 !important;
        }
    }
    
/* id:tdc-footer-termin-sitewide */

    /* Footer-Termin/Doctolib-Plain-LINKS (Impressum-Style) — NICHT die Pill-Buttons! */
    footer a[href*="termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    footer a[href*="#termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    footer a[href*="doctolib"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    footer a[href*="online-termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    .elementor-location-footer a[href*="termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    .elementor-location-footer a[href*="#termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    .elementor-location-footer a[href*="doctolib"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]),
    .elementor-location-footer a[href*="online-termin"]:not(.elementor-button):not([class*="tdc-loc-btn"]):not([class*="tdc-mob-icon"]){
        background:transparent !important;
        background-color:transparent !important;
        padding:0 !important;
        margin:0 !important;
        border:0 !important;
        border-radius:0 !important;
        box-shadow:none !important;
        color:inherit !important;
        font-weight:inherit !important;
        font-size:inherit !important;
        letter-spacing:normal !important;
        line-height:inherit !important;
        display:inline !important;
        transform:none !important;
        text-decoration:inherit !important;
        text-underline-offset:0 !important;
        align-items:initial !important;
        gap:0 !important;
        outline:none !important;
        min-width:0 !important;
        min-height:0 !important;
        max-width:none !important;
        width:auto !important;
        height:auto !important;
        transition:opacity .2s !important;
    }
    footer a[href*="termin"]:not(.elementor-button):hover,
    footer a[href*="doctolib"]:not(.elementor-button):hover,
    .elementor-location-footer a[href*="termin"]:not(.elementor-button):hover,
    .elementor-location-footer a[href*="doctolib"]:not(.elementor-button):hover{
        background:transparent !important;
        box-shadow:none !important;
        transform:none !important;
        opacity:0.7 !important;
        text-decoration:inherit !important;
    }

    /* Footer-Termin-Button-PILL (Snippet-136-Style auch im Footer) */
    footer a.elementor-button[href*="doctolib" i],
    footer a.elementor-button[href*="termin" i],
    footer a.elementor-button[href*="buchen" i],
    .elementor-location-footer a.elementor-button[href*="doctolib" i],
    .elementor-location-footer a.elementor-button[href*="termin" i],
    .elementor-location-footer a.elementor-button[href*="buchen" i]{
        border-radius:999px !important;
        padding:14px 32px !important;
        font-weight:600 !important;
        box-shadow:0 14px 30px -12px rgba(0,154,150,.4) !important;
        transition:transform .3s cubic-bezier(.22,.61,.36,1), background-color .3s ease, box-shadow .3s ease !important;
    }
    footer a.elementor-button[href*="doctolib" i]:hover,
    footer a.elementor-button[href*="termin" i]:hover,
    .elementor-location-footer a.elementor-button[href*="doctolib" i]:hover,
    .elementor-location-footer a.elementor-button[href*="termin" i]:hover{
        transform:translateY(-2px) !important;
        box-shadow:0 18px 36px -12px rgba(0,154,150,.55) !important;
    }
    
/* id:tdc-w149-beratung-submenu */

    /* Sub-Menü-Items (Mobile-Overlay) NIE als Pill rendern. Mega-Menü (.tdc-pill-sub)
       wird in Welle 160 direkt im Snippet 136 ausgeschlossen (via :not(.tdc-pill-sub *)),
       daher hier KEIN padding/border-radius-Override mehr — sonst weicht Beratung von den
       Geschwister-Items optisch ab. */
    .elementor-sub-item[href*="beratung"],
    li.menu-item-2412 > a,
    li.menu-item-2412 .elementor-sub-item,
    .elementor-nav-menu .elementor-sub-item[href*="beratung"]{
        background:transparent !important;
        background-color:transparent !important;
        border-radius:0 !important;
        box-shadow:none !important;
        border:0 !important;
    }
    
/* id:tdc-fsmenu-position */
#uc_fullscreen_navigation_menu_elementor_51c406a4.menu-opened .ue_inner_menu-box,.elementor-widget-ucaddon_fullscreen_navigation_menu .menu-opened .ue_inner_menu-box{margin-top:9vh !important;margin-bottom:auto !important;}
/* id:tdc-w262-css */

/* Nur dort, wo `clip` unterstuetzt wird — sonst arbeitet weiter der Klon und
   dieser Zustand duerfte gar nicht eintreten. */
@supports (overflow-x: clip) {

  /* ---------------------------------------------------------------
     Der eigentliche Schalter.

     `overflow-x:hidden` an html/body macht den Body zum Scroll-Container -
     der berechnete Wert fuer overflow-y springt auf `auto`, und damit ist
     `position:sticky` an der Kopfleiste wirkungslos. `clip` schneidet genauso
     ab, erzeugt aber keinen Scroll-Container.

     Warum hier und nicht in tdc-pill-slide-in-sitewide.php: Dort haengt die
     Regel an `body.tdc-has-pill-anim`. Diese Klasse setzt ein Skript, und auf
     der Startseite steht sie nicht am Body - die Regel greift dort also gar
     nicht. Wirksam ist ein schlichtes `html, body{overflow-x:hidden}` aus dem
     Theme bzw. aus Elementor. Am 22.08.2026 habe ich zuerst die falsche der
     beiden Regeln geaendert; die Kopfleiste klebte danach immer noch nicht.
     --------------------------------------------------------------- */
  html, body{
    overflow-x:clip !important;
  }

  /* ---------------------------------------------------------------
     DESKTOP ab 900px — Zielbild: die schmale weisse Pille bei top:24,
     ohne Topline. Werte aus .tdc-pill-bar-clone.
     --------------------------------------------------------------- */
  @media (min-width:900px){
    .tdc-pill-header.is-scrolled{
      background:transparent !important;
      box-shadow:none !important;
      padding-top:24px !important;
      padding-bottom:0 !important;
      pointer-events:none;              /* der freie Bereich bleibt durchklickbar */
    }
    .tdc-pill-header.is-scrolled .tdc-pill-shell{
      /* Nur die senkrechten Abstaende fallen weg. `padding:0` haette auch die
         waagerechten genommen und die Pille zusaetzlich nach links gezogen -
         gemessen am 22.08.2026: 75 px Versatz allein daraus. */
      padding-top:0 !important;
      padding-bottom:0 !important;
      margin-top:0 !important;
      margin-bottom:0 !important;
      min-height:0 !important;
      align-items:center !important;
      pointer-events:none;
    }
    /* Die Topline verschwindet — wie beim Klon, der sie nie enthielt. */
    .tdc-pill-header.is-scrolled .tdc-pill-topbar{
      display:none !important;
    }
    /* Das Logo bleibt als Platzhalter stehen, damit die Pille waagerecht
       genau dort sitzt wie bisher. Es wird nur unsichtbar und flach —
       `display:none` haette die Pille um rund 230 px nach links gezogen. */
    .tdc-pill-header.is-scrolled .tdc-pill-logo{
      visibility:hidden !important;
      height:0 !important;
      min-height:0 !important;
      /* Die BREITE bleibt stehen. Ohne sie rutscht die Pille um 219 px nach
         links, weil das Logo aus dem Flex-Fluss faellt - gemessen am
         22.08.2026: Pille links 255 px ungescrollt, 36 px gescrollt.
         144 px ist die gerenderte Logobreite; sie steht hier als Zahl, weil
         ein eingeklapptes Bild seine Breite nicht selbst behalten kann. */
      width:144px !important;
      flex:0 0 144px !important;
      transform:none !important;
      margin-top:0 !important;
      margin-bottom:0 !important;
      overflow:hidden !important;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-logo img{
      height:0 !important;
      width:144px !important;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-bar{
      background:#fff !important;
      border-radius:999px !important;
      box-shadow:0 12px 30px -16px rgba(10,20,20,.22) !important;
      pointer-events:auto;
    }
  }

  /* ---------------------------------------------------------------
     MOBIL bis 899px — Zielbild: die abgerundete weisse Karte mit
     8 px Abstand, kleinem Logo und den runden Schaltflaechen.
     Werte aus .tdc-pill-header-clone-mob.
     --------------------------------------------------------------- */
  @media (max-width:899px){
    .tdc-pill-header.is-scrolled{
      background:transparent !important;
      box-shadow:none !important;
      padding:8px !important;
      pointer-events:none;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-topbar{
      display:none !important;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-shell{
      background:#fff !important;
      border-radius:18px !important;
      box-shadow:0 14px 32px -16px rgba(10,20,20,.28) !important;
      padding:0 6px !important;
      margin:0 !important;
      align-items:center !important;
      gap:6px !important;
      min-height:0 !important;
      pointer-events:auto;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-logo{
      height:48px !important;
      transform:none !important;
      flex:0 0 auto !important;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-logo img{
      height:48px !important;
      width:auto !important;
    }
    .tdc-pill-header.is-scrolled .tdc-pill-bar{
      padding:4px 52px 4px 4px !important;
      min-height:0 !important;
      background:transparent !important;
      box-shadow:none !important;
    }
    /* Das Menue klappt unter der Karte auf, nicht unter der Seite. */
    .tdc-pill-header.is-scrolled .tdc-pill-mobile{
      pointer-events:auto;
    }
  }

  /* Der Uebergang soll weich sein, aber nichts springen lassen. */
  .tdc-pill-header .tdc-pill-shell,
  .tdc-pill-header .tdc-pill-bar{
    transition:background-color .3s cubic-bezier(.22,.61,.36,1),
               box-shadow .3s cubic-bezier(.22,.61,.36,1),
               padding .3s cubic-bezier(.22,.61,.36,1);
  }

  /* Wer reduzierte Bewegung eingestellt hat, bekommt keinen Uebergang. */
  @media (prefers-reduced-motion: reduce){
    .tdc-pill-header,
    .tdc-pill-header .tdc-pill-shell,
    .tdc-pill-header .tdc-pill-bar{ transition:none !important; }
  }
}

/* id:tdc-header-master */

/* ========================================================================
 * 1) tdc-header-tweaks (Welle 121-144) — Logo, Bar-Padding, Nav-Row, Sub-arrow Hide
 * ======================================================================== */

/* Logo größer (80 → 120px) — Welle 121/122 */
header.elementor-location-header [data-id="4014bcf4"] img,
header.elementor-location-header .elementor-widget-image img {
  width: 120px !important;
  height: auto !important;
  max-width: 120px !important;
}

/* Welle 122: Telefon-Bar kompakt */
header.elementor-location-header [data-id="8c9d360"],
header.elementor-location-header [data-id="8c9d360"] > .elementor-container {
  min-height: 0 !important;
}
header.elementor-location-header [data-id="8c9d360"] .elementor-widget-wrap {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/* Nav-Row: kein Extra-Weißraum */
header.elementor-location-header [data-id="562b06c3"] > .elementor-container {
  min-height: 0 !important;
}
header.elementor-location-header [data-id="562b06c3"] {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

/* Türkiser Nav-Balken (ab6f2d4) schlanker */
header.elementor-location-header [data-id="ab6f2d4"] {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/* Nav-Items: ≥ 44px Touch-Target (11+16+11 = 38px+Klickfläche) */
header.elementor-location-header .elementor-nav-menu .elementor-item {
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}

/* Welle 121d: Nativen .sub-arrow + FA-icon ausblenden (sichtbarer Pfeil via tdc-nav-arrow unten) */
header.elementor-location-header .elementor-nav-menu .sub-arrow,
header.elementor-location-header .elementor-nav-menu i.fa-angle-down,
header.elementor-location-header .elementor-nav-menu i.fas.fa-angle-down,
header.elementor-location-header .elementor-nav-menu .elementor-item .sub-arrow,
header.elementor-location-header .menu-item-has-children > a > i,
header.elementor-location-header .menu-item-has-children > a > .sub-arrow {
  display: none !important;
}

/* Mobile: Logo Cap */
@media (max-width: 767px) {
  header.elementor-location-header [data-id="4014bcf4"] img,
  header.elementor-location-header .elementor-widget-image img {
    width: 100px !important;
    max-width: 100px !important;
  }
}

/* ========================================================================
 * 2) tdc-header-css (Welle 125/126) — Header-Kontaktzeile + Container-Breite
 * ======================================================================== */

.elementor-1597 .elementor-element-562b06c3 {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-id-585 .elementor-585 .elementor-top-section:first-of-type {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
@media (min-width: 1025px) {
  body.page-id-585 .elementor-585 .elementor-top-section:first-of-type {
    margin-top: -18px !important;
  }
}
.elementor-1597 .elementor-element-f4c9278 { width: 78% !important; }
.elementor-1597 .elementor-element-8c9d360 .elementor-column:last-child { width: 22% !important; }
.elementor-1597 .elementor-element-48c07e6c { margin-left: 30% !important; }
.elementor-1597 .elementor-element-48c07e6c .elementor-icon-list-items { flex-wrap: nowrap !important; }
.elementor-section.elementor-section-boxed > .elementor-container { max-width: 1560px !important; }
.elementor-1597 .elementor-element-8c9d360 .elementor-widget-wrap { padding-top: 0 !important; }
@media (min-width: 1025px) {
  .elementor-1597 .elementor-element-8c9d360,
  .elementor-1597 .elementor-element-562b06c3 {
    padding-left: 1.5% !important;
    padding-right: 1.5% !important;
  }
}

/* ========================================================================
 * 3) tdc-nav-angst (Welle 139b) — Dropdown Hover/Active = Türkis (statt grau)
 * ======================================================================== */

html .elementor-sub-item:hover,
html .elementor-sub-item:focus,
html .elementor-sub-item.highlighted,
html .elementor-sub-item.elementor-item-active {
  background-color: #009A96 !important;
  color: #fff !important;
}
html .elementor-sub-item:hover::before,
html .elementor-sub-item:focus::before,
html .elementor-sub-item.highlighted::before,
html .elementor-sub-item.elementor-item-active::before {
  background-color: #009A96 !important;
}

/* ========================================================================
 * 4) tdc-nav-arrow v4 (Welle 142) — EINER sauberer 16px SVG-Pfeil Desktop ≥1025px
 *    + ::after-Doppelpfeil entfernen
 * ======================================================================== */

@media (min-width: 1025px) {
  /* 4a) den EINEN SVG-Pfeil zeigen + sauber inline ausrichten */
  header.elementor-location-header .elementor-nav-menu .menu-item-has-children > a .sub-arrow {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    padding: 0 !important;
    margin: 0 0 0 6px !important;
    vertical-align: middle !important;
    line-height: 1 !important;
    align-items: center !important;
  }
  /* 4b) SVG-Größe 16px */
  header.elementor-location-header .elementor-nav-menu .menu-item-has-children > a .sub-arrow svg,
  header.elementor-location-header .elementor-nav-menu .menu-item-has-children > a .sub-arrow .e-font-icon-svg {
    width: 16px !important;
    height: 16px !important;
    vertical-align: middle !important;
  }
  /* 4c) Doppelten zweiten Pfeil (a.elementor-item::after "▾") entfernen */
  html header.elementor-location-header .elementor-nav-menu .menu-item-has-children > a.elementor-item::after,
  html header.elementor-location-header .elementor-nav-menu .menu-item-has-children > a.elementor-item-active::after {
    content: none !important;
    display: none !important;
  }
}

/* ========================================================================
 * 5) Welle 148 (01.06.2026) — Türkiser Balken full-width + Menü in 1 Zeile
 * ======================================================================== */

/* 5a) Türkiser Header-Balken (562b06c3) über ganze Viewport-Breite */
header.elementor-location-header [data-id="562b06c3"] > .elementor-container,
.elementor-1597 .elementor-element-562b06c3 > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}
@media (min-width: 1025px) {
  .elementor-1597 .elementor-element-562b06c3 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* 5b) Spaltenverhältnis: Logo schmaler, Menü breiter */
.elementor-1597 .elementor-element-50974899 { width: 18% !important; }
.elementor-1597 .elementor-element-fe74fa2  { width: 82% !important; }

/* 5c) Nav-Items in einer Zeile halten */
.elementor-1597 .elementor-element-ab6f2d4 .elementor-nav-menu {
  flex-wrap: nowrap !important;
}
.elementor-1597 .elementor-element-ab6f2d4 .elementor-nav-menu > li {
  white-space: nowrap !important;
}
.elementor-1597 .elementor-element-ab6f2d4 .elementor-nav-menu > li > a.elementor-item {
  padding-left: 12px !important;
  padding-right: 12px !important;
  white-space: nowrap !important;
}


/* ========================================================================
 * 6) Welle 148b — icon-menu (Section 3f977292) kompakter
 *    Section padding-bottom 12px → 4px, Icons 20 → 16px, Title kleiner
 * ======================================================================== */
html section.icon-menu {
  padding-top: 0 !important;
  padding-bottom: 4px !important;
}
/* Icon-Größe reduzieren */
html section.icon-menu .elementor-icon-box-icon .elementor-icon {
  font-size: 16px !important;
}
html section.icon-menu .elementor-icon-box-icon .elementor-icon svg,
html section.icon-menu .elementor-icon-box-icon svg {
  width: 16px !important;
  height: 16px !important;
}
html section.icon-menu .elementor-icon-box-icon i {
  font-size: 16px !important;
}
/* Title kompakter */
html section.icon-menu .elementor-icon-box-title {
  font-size: 11px !important;
  line-height: 1 !important;
  margin: 2px 0 0 0 !important;
}
/* Widget keine Bottom-Marge */
html section.icon-menu .elementor-widget-icon-box {
  margin-bottom: 0 !important;
}
/* Icon-Wrapper kein Padding */
html section.icon-menu .elementor-icon-box-wrapper {
  padding: 0 !important;
}

/* ========================================================================
 * 7) Welle 148c — icon-menu Box-Höhe weiter reduzieren + Nav-Schrift weiß
 * ======================================================================== */

/* Box-Höhe: alle inner Wrappers padding 0 */
html section.icon-menu .elementor-column,
html section.icon-menu .elementor-widget-wrap,
html section.icon-menu .elementor-widget-icon-box,
html section.icon-menu .elementor-widget-icon-box .elementor-widget-container {
  padding: 0 !important;
  margin: 0 !important;
}

/* Icon-Box Container: kein Vertical-Spacing */
html section.icon-menu .elementor-icon-box-wrapper {
  padding: 0 !important;
  margin: 0 !important;
}

/* Nav-Schrift auf türkisem Balken (562b06c3 enthält ab6f2d4) → weiß */
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu a,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu li > a,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item .sub-arrow svg {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}
/* Auch Hover (bleibt weiß, evtl. mit subtle opacity-down) */
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item:hover,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item:focus,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item.elementor-item-active,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .elementor-item.highlighted {
  color: #FFFFFF !important;
  opacity: 0.85;
}
/* SVG-Pfeil neben Dropdown-Items auf türkisem Balken auch weiß */
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .sub-arrow svg path,
header.elementor-location-header [data-id="ab6f2d4"] .elementor-nav-menu .sub-arrow svg {
  fill: #FFFFFF !important;
  color: #FFFFFF !important;
}

/* ========================================================================
 * 8) Welle 148d — Force-Override (Spec 0,5,3) und icon-menu Section selbst
 * ======================================================================== */

/* Icon-Menu Section: feste min-height überschreiben + box-shadow erhalten */
html body header.elementor-location-header section.elementor-section.icon-menu,
html body section.elementor-section.icon-menu {
  min-height: 0 !important;
  height: auto !important;
}
html body header.elementor-location-header section.icon-menu > .elementor-container,
html body section.icon-menu > .elementor-container {
  min-height: 0 !important;
  height: auto !important;
}

/* Force WHITE on nav items über das türkis-Widget (max Specificity) */
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-item,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu a,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu li a {
  color: #FFFFFF !important;
}
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-item:hover,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-item:focus,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-item-active,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-item.highlighted {
  color: #FFFFFF !important;
  opacity: 0.88;
}
/* SVG-Pfeil auf Türkis-Balken auch weiß */
html body header.elementor-location-header .elementor-element-ab6f2d4 .sub-arrow svg,
html body header.elementor-location-header .elementor-element-ab6f2d4 .sub-arrow svg *,
html body header.elementor-location-header .elementor-element-ab6f2d4 .sub-arrow svg path {
  fill: #FFFFFF !important;
  color: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

/* ========================================================================
 * 9) Welle 148e — icon-menu icon_div height fix (33→20px) + title line clamp
 * ======================================================================== */
html section.icon-menu .elementor-icon-box-icon {
  height: 20px !important;
  line-height: 20px !important;
}
html section.icon-menu .elementor-icon-box-icon a.elementor-icon {
  height: 20px !important;
  line-height: 20px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html section.icon-menu .elementor-icon-box-icon svg {
  width: 16px !important;
  height: 16px !important;
  display: block !important;
}
html section.icon-menu .elementor-icon-box-title {
  height: auto !important;
  font-size: 11px !important;
  line-height: 14px !important;
  margin: 1px 0 0 0 !important;
  padding: 0 !important;
}
html section.icon-menu .elementor-icon-box-title a {
  line-height: 14px !important;
  padding: 0 !important;
  display: inline-block !important;
}
/* Force tighter widget-wrap gap */
html section.icon-menu .elementor-icon-box-wrapper {
  gap: 1px !important;
}

/* ========================================================================
 * 10) Welle 148f — Sub-Items wieder dunkel (Fix: white-auf-white war unsichtbar)
 * ======================================================================== */
/* Sub-Items im Dropdown: dunkle Schrift auf weißem BG (lesbar) */
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-sub-item,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .sub-menu .elementor-sub-item,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu ul.sub-menu li a {
  color: #1a1a1a !important;
}
/* Sub-Items Hover/Active: behalten weiß auf türkis (Section 3 setzt es schon, aber doppelt-sicher) */
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-sub-item:hover,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-sub-item:focus,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-sub-item.elementor-item-active,
html body header.elementor-location-header .elementor-element-ab6f2d4 .elementor-nav-menu .elementor-sub-item.highlighted {
  color: #FFFFFF !important;
  background-color: #009A96 !important;
}

/* ========================================================================
 * 11) Welle 148g — icon-menu Title-Anchor weiß (war dunkel-türkis auf türkis)
 * ======================================================================== */
html section.icon-menu .elementor-icon-box-title a,
html section.icon-menu .elementor-icon-box-title a:link,
html section.icon-menu .elementor-icon-box-title a:visited,
html section.icon-menu .elementor-icon-box-title a:hover,
html section.icon-menu .elementor-icon-box-title a:focus {
  color: #FFFFFF !important;
}

/* id:tdc-hide-post-date */

/* Elementor post-info Widget — alle Date-Items ausblenden */
.elementor-widget-post-info .elementor-post-info__item--type-date,
.elementor-widget-post-info .elementor-icon-list-item[itemprop="datePublished"] {
  display: none !important;
}
/* Wenn nur Datum im Widget steckte und der ganze Widget jetzt leer ist,
   reduziert Elementor seine Höhe automatisch — kein extra Selector nötig. */

/* id:tdc66-kontrast */

html body .elementor-button,html body a.elementor-button-link{background-color:#007b78!important;color:#fff!important;}
html body .elementor-button:hover,html body a.elementor-button-link:hover{background-color:#006a67!important;}
html body .elementor-widget-text-editor a,html body .entry-content a{color:#007b78!important;}

/* id:tdc-pill-header-css */

/* =====================================================================
   TDC FLOATING PILL HEADER — Override für Welle 148
   Neutralisiert den alten Elementor-Header und ersetzt ihn vollständig.
   ===================================================================== */

/* 1) Originalen Elementor-Header + Welle-148-Master-Reste verbergen (W163) */
header.elementor-location-header.elementor-1597,
.tdc-header-master,
.tdc-header-master-row,
#tdc-header-master,
[id^="tdc-header-master-"] { display:none !important; }

:root{
  --tdc-turkis:        #007a76; /* 2026-07-25: Kontrast-Boost auf WCAG-AA weiss/turkis */
  --tdc-turkis-deep:   #0f8585;
  --tdc-turkis-soft:   #e6f6f6;
  --tdc-ink:           #0e2a2a;
  --tdc-ink-soft:      #2e4444; /* W162: WCAG-AA Kontrast — vorher #4a6363 (4.9:1), jetzt #2e4444 (~9.5:1) */
  --tdc-line:          #e5ecec;
  --tdc-gold:          #c79a4b;
  --pill-shadow:       0 18px 50px -20px rgba(15,133,133,.30), 0 6px 18px -8px rgba(15,133,133,.14);
  --pill-radius:       999px;
  --ease:              cubic-bezier(.22,.61,.36,1);
}

/* W163: Sticky am Header (klebt ueber gesamte Page, nicht nur ~190 px wie zuvor am Shell) */
.tdc-pill-header{
  position:sticky;top:0;z-index:999;
  font-family:'Inter','Poppins',system-ui,-apple-system,sans-serif;
  padding:0 24px;
  background:#ffffff;
  isolation:isolate;
  transition:box-shadow .3s var(--ease), padding .3s var(--ease);
}
.tdc-pill-header.is-scrolled{
  box-shadow:0 8px 24px -16px rgba(15,42,42,.25);
}
.tdc-pill-header *,
.tdc-pill-header *::before,
.tdc-pill-header *::after{box-sizing:border-box}
.tdc-pill-header a{color:inherit;text-decoration:none}
.tdc-pill-header ul{list-style:none;margin:0;padding:0}

/* ---------- Topline (W170.1: ganz oben als volle Breite, statt im Stack) ---------- */
.tdc-pill-topbar{
  display:block;
  /* Header hat padding:0 24px -> Negative-Margin bricht das auf volle Breite */
  margin:0 -24px;
  background:#f7f8f9;
  border-bottom:1px solid #e8edee;
  padding:6px 24px;
  box-sizing:border-box;
}
.tdc-pill-topline{
  display:flex;justify-content:flex-start;align-items:center;gap:22px;flex-wrap:wrap;
  max-width:1320px;margin:0 auto;
  font-size:12.5px;color:var(--tdc-ink-soft);
  letter-spacing:.01em;line-height:1.2;padding:0;
}
/* W170.2: Zeiten/Info-Items linksbündig, Social-Icons rechtsbündig */
.tdc-pill-topline > .tdc-pill-social{margin-left:auto;}
.tdc-pill-topline-item{
  display:inline-flex;align-items:center;gap:6px;
  transition:color .2s var(--ease);
}
.tdc-pill-topline-item:hover{color:var(--tdc-turkis-deep)}
.tdc-pill-topline-item svg{width:13px;height:13px;color:var(--tdc-turkis);flex:none}

/* Notdienst-CTA in topline — Desktop only; auf Mobile als Bubble in Pill-Bar (W170) */
.tdc-pill-notdienst{color:#c0392b;font-weight:600;}
.tdc-pill-notdienst svg{color:#c0392b;}
.tdc-pill-notdienst:hover{color:#a52915;}
@media(max-width:980px){
  .tdc-pill-topline-item.tdc-pill-notdienst{display:none !important;}
}

/* W170: Mobile Notdienst-Bubble in Pill-Bar — rot mit Pulse-Animation
   Hohe Spezifitaet noetig, weil Z. ~370 `header.tdc-pill-header .tdc-pill-mobile-cta a::before`
   per !important auf content:none + display:none gesetzt ist. */
header.tdc-pill-header .tdc-pill-mobile-cta.notdienst a{
  position:relative !important;
  overflow:visible !important;
}
header.tdc-pill-header .tdc-pill-mobile-cta.notdienst a::before{
  content:"" !important;display:block !important;
  position:absolute !important;
  top:-4px !important;right:-4px !important;bottom:-4px !important;left:-4px !important;
  width:auto !important;height:auto !important;
  border-radius:50% !important;
  background:rgba(220,38,38,.45) !important;
  animation:tdcNotdienstPulse 1.8s cubic-bezier(.4,0,.6,1) infinite !important;
  z-index:0 !important;pointer-events:none !important;
}
header.tdc-pill-header .tdc-pill-mobile-cta.notdienst a > svg{
  position:relative !important;z-index:1 !important;
}
@keyframes tdcNotdienstPulse{
  0%{transform:scale(.85);opacity:.7;}
  70%{transform:scale(1.35);opacity:0;}
  100%{transform:scale(1.35);opacity:0;}
}
@media (prefers-reduced-motion:reduce){
  header.tdc-pill-header .tdc-pill-mobile-cta.notdienst a::before{
    animation:none !important;opacity:.4 !important;transform:scale(1.05) !important;
  }
}
/* W170.2: SOS-Text-Icon — CSS-font-size muss !important sein, da Parent <a> font-size:0!important hat */
header.tdc-pill-header .tdc-pill-mobile-cta.notdienst a svg.tdc-sos-svg text{
  font:900 11px/1 Arial,Helvetica,sans-serif !important;
  letter-spacing:-0.6px !important;
}
/* Desktop-Topline-Notdienst: kleineres SOS-Icon (svg 13x13) */
.tdc-pill-topline-item.tdc-pill-notdienst svg.tdc-sos-svg text{
  font:900 11px/1 Arial,Helvetica,sans-serif !important;
  letter-spacing:-0.6px !important;
  fill:#c0392b;
}

/* ---------- Social-Icons (Facebook, Instagram, X, YouTube) ---------- */
.tdc-pill-social{
  display:inline-flex;align-items:center;gap:4px;
  margin-left:6px;padding-left:14px;
  border-left:1px solid var(--tdc-line);
}
.tdc-pill-soc{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:50%;
  color:var(--tdc-ink-soft);
  background:transparent;
  transition:transform .25s var(--ease), background .2s var(--ease), color .2s var(--ease), box-shadow .25s var(--ease);
}
.tdc-pill-soc svg{width:13px;height:13px;display:block}
.tdc-pill-soc:hover{
  transform:translateY(-2px);
  color:#fff;
  box-shadow:0 6px 14px -6px rgba(15,42,42,.35);
}
.tdc-pill-soc.fb:hover{background:#1877f2}
.tdc-pill-soc.ig:hover{background:linear-gradient(135deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%)}
.tdc-pill-soc.x:hover{background:#0e0e0e}
.tdc-pill-soc.yt:hover{background:#ff0000}
.tdc-pill-soc.tt:hover{background:#000;box-shadow:0 0 0 1.5px #25f4ee, 0 0 0 3px #fe2c55, 0 6px 14px -6px rgba(0,0,0,.45)}
.tdc-pill-soc.li:hover{background:#0a66c2}

/* ---------- Floating Pill Bar ---------- */
/* Shell: Logo links, rechts ein 2-Reihen-Stack (Topline oben, Pille unten) */
.tdc-pill-shell{
  /* W163: sticky an .tdc-pill-header verschoben */
  display:flex;align-items:center;gap:18px;
  max-width:1240px;margin:0 auto;
  transition:gap .3s var(--ease);
}
.tdc-pill-stack{
  flex:1;min-width:0;display:flex;flex-direction:column;gap:0;
}

.tdc-pill-bar{
  display:flex;align-items:center;gap:10px;flex:1;min-width:0;
  padding:4px 6px;
  background:rgba(255,255,255,.78);
  -webkit-backdrop-filter:saturate(150%) blur(14px);
  backdrop-filter:saturate(150%) blur(14px);
  border:1px solid rgba(15,133,133,.10);
  border-radius:var(--pill-radius);
  box-shadow:var(--pill-shadow);
  transition:padding .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease);
}
@supports not (backdrop-filter: blur(14px)){
  .tdc-pill-bar{background:rgba(255,255,255,.96)}
}

/* Logo — ausgegliedert, groß, schwebt eigenständig neben der Pille */
.tdc-pill-logo{
  display:inline-flex;align-items:center;flex:none;
  height:144px;
  padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;
  transition:height .3s var(--ease), transform .3s var(--ease);
  filter:drop-shadow(0 4px 10px rgba(15,42,42,.10));
}
.tdc-pill-logo:hover{transform:scale(1.04)}
.tdc-pill-logo img{
  height:100%;width:auto;display:block;object-fit:contain;
  max-width:none;
}

/* ---------- Hauptnav ---------- */
.tdc-pill-nav{
  display:flex;align-items:center;gap:2px;flex:1 1 auto;justify-content:flex-start;width:100%;
}
.tdc-pill-li{position:relative;padding-bottom:0}
.tdc-pill-li.has-sub{padding-bottom:0}
.tdc-pill-li:hover{z-index:2}
.tdc-pill-li.has-sub > a::after{
  content:"";display:inline-block;
  width:6px;height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  opacity:.45;margin-left:4px;
  transition:transform .25s var(--ease), opacity .2s var(--ease);
}
.tdc-pill-li.has-sub:hover > a::after{
  transform:rotate(225deg) translateY(0);opacity:.9;
}
.tdc-pill-li > a:hover,
.tdc-pill-li:hover > a,
.tdc-pill-li > a:focus-visible{
  background:var(--tdc-turkis-soft);
  color:var(--tdc-turkis-deep);
}
.tdc-pill-li.active > a{
  background:var(--tdc-turkis-soft);
  color:var(--tdc-turkis-deep);
}
.tdc-pill-li > a.highlight:hover{
  background:transparent !important;
  color:var(--tdc-ink) !important;
}

/* ---------- Dropdowns ---------- */
.tdc-pill-sub{
  position:absolute;left:50%;top:100%;
  transform:translateX(-50%) translateY(8px);
  background:#fff;border:1px solid var(--tdc-line);
  border-radius:18px;
  box-shadow:var(--pill-shadow);
  min-width:240px;padding:8px;margin-top:10px;
  opacity:0;pointer-events:none;
  transition:.25s var(--ease);
}
/* Bridge · unsichtbare Hover-Zone schließt die Lücke zwischen Pille und Submenu */
.tdc-pill-sub::before{
  content:"";position:absolute;top:-14px;left:0;right:0;height:14px;
  background:transparent;
}
.tdc-pill-li:hover > .tdc-pill-sub,
.tdc-pill-li:focus-within > .tdc-pill-sub{
  opacity:1;pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.tdc-pill-sub a{
  display:flex;align-items:center;gap:8px;
  padding:9px 12px;border-radius:8px; /* W162: Touch-Target >=36px (vorher 6px/10px ~24px) */
  font-size:13.5px;color:var(--tdc-ink);font-weight:400;
  transition:.15s var(--ease);
  white-space:nowrap;line-height:1.3;
  min-height:36px;box-sizing:border-box; /* W162: Touch-Target Mindesthöhe */
}
.tdc-pill-sub a:hover,
.tdc-pill-sub a:focus-visible{
  background:rgba(26,179,179,.08);
  color:var(--tdc-turkis-deep);
}
.tdc-pill-sub a .dot{
  width:4px;height:4px;border-radius:50%;
  background:var(--tdc-turkis);opacity:.4;flex:none;
}
.tdc-pill-sub a .dot.gold{background:var(--tdc-gold);opacity:.8}

/* Wide Mega-Panel für "Leistungen" */
.tdc-pill-sub.wide{
  min-width:560px;
  display:grid;grid-template-columns:1fr 1fr;
  gap:2px 6px; /* W162: vertikaler Gap fuer Touch-Target-Trennung */
  padding:8px;
}
.tdc-pill-sub.wide::before{left:0;right:0;width:auto}

/* Das Mega-Panel oeffnet nach RECHTS, buendig unter seinem Menuepunkt.
   Hier stand bis zum 06.09.2026 'left:auto;right:0' mit dem Kommentar, das
   halte das Panel im Viewport - es bewirkte das Gegenteil. Rechtsbuendig
   heisst: buendig zur rechten Kante des 106 Pixel breiten Menuepunkts, und
   das 560 Pixel breite Panel ragt dann 454 Pixel nach LINKS. Am 06.09.2026
   nachgemessen: bei 1440 px stand die linke Kante gerade noch bei 10 px, bei
   1280 px bei -59 und bei 1100 px bei -87 - das Panel lief links aus dem
   Fenster. Nur 'Leistungen' ist ein Mega-Punkt, und er steht als dritter von
   links; nach rechts ist deshalb immer Platz. Die Breitenklammer faengt den
   Rest ab. */
.tdc-pill-li.mega .tdc-pill-sub{
  left:0;right:auto;transform:translateX(0) translateY(8px);
  max-width:min(560px, calc(100vw - 24px));
}
.tdc-pill-li.mega:hover > .tdc-pill-sub,
.tdc-pill-li.mega:focus-within > .tdc-pill-sub{transform:translateX(0) translateY(0)}
/* Die unsichtbare Bruecke zwischen Menuepunkt und Panel zieht mit um -
   bliebe sie rechts, riesse der Mauszeiger auf halbem Weg ab. */
.tdc-pill-li.mega .tdc-pill-sub::before{left:0;right:auto;width:100%}

/* GEMEINSAME BASIS — gilt für ALLE Nav-Items inkl. Anrufen und Termin */
.tdc-pill-li > a{
  box-sizing:border-box;
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 11px;border-radius:9999px;border:0;margin:0;
  font-family:inherit;font-size:13.5px;font-weight:500;line-height:1;
  letter-spacing:.005em;text-decoration:none;text-transform:none;
  vertical-align:middle;white-space:nowrap;
  height:auto;min-height:0;max-height:none;
  background:transparent;color:var(--tdc-ink);
  transition:.2s var(--ease);
}
.tdc-pill-li > a svg{
  width:12px;height:12px;flex:none;display:block;
  vertical-align:middle;margin:0;
}

/* Highlight (Angstpatienten) */
.tdc-pill-li > a.highlight{
  background:transparent;
  color:var(--tdc-ink);font-weight:600;
}
.tdc-pill-li > a.highlight:hover{
  background:transparent;
  color:var(--tdc-ink);
}

/* Modifier "termin" · Türkis-Pille mit weißer Schrift (sonst identisch zu .highlight) */
.tdc-pill-li > a.highlight.termin,
.tdc-pill-li > a.highlight.termin:link,
.tdc-pill-li > a.highlight.termin:visited{
  background:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep));
  color:#fff;
}
.tdc-pill-li > a.highlight.termin:hover,
.tdc-pill-li > a.highlight.termin:focus,
.tdc-pill-li > a.highlight.termin:active{
  background:linear-gradient(135deg, var(--tdc-ink), #000);
  color:#fff;
}
.tdc-pill-li > a.highlight.termin svg{color:#fff;width:11px;height:11px;transition:transform .2s var(--ease)}
.tdc-pill-li > a.highlight.termin:hover svg{transform:translateX(2px)}

/* ============================================================
   AUSNAHME · Doctolib-Link
   Ultra-spezifische Selector-Kette, die jedes Theme-/Yoast-/Plugin-CSS
   übersteuert, das auf a[target=_blank] / a[href*=doctolib] / externe
   Links reagiert (Padding, Pseudo-Elemente, min-height, BG-Icons etc.)
   ============================================================ */
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin,
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin:link,
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin:visited{
  box-sizing:border-box !important;
  display:inline-flex !important;align-items:center !important;gap:6px !important;
  padding:7px 11px !important;margin:0 !important;border:0 !important;
  border-radius:9999px !important;
  font-family:inherit !important;font-size:13.5px !important;font-weight:600 !important;
  line-height:1 !important;letter-spacing:.005em !important;
  text-decoration:none !important;text-transform:none !important;
  white-space:nowrap !important;vertical-align:middle !important;
  width:auto !important;min-width:0 !important;max-width:none !important;
  height:auto !important;min-height:0 !important;max-height:none !important;
  background-image:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep)) !important;
  background-color:transparent !important;background-repeat:no-repeat !important;
  background-position:0 0 !important;background-size:auto !important;
  color:#fff !important;box-shadow:none !important;
}
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin::before,
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin::after{
  content:none !important;display:none !important;
  width:0 !important;height:0 !important;padding:0 !important;margin:0 !important;
  background:transparent !important;
}
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin svg{
  width:11px !important;height:11px !important;
  flex:none !important;display:block !important;vertical-align:middle !important;
  color:#fff !important;margin:0 !important;
}
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin:hover,
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin:focus,
header.tdc-pill-header .tdc-pill-shell .tdc-pill-bar .tdc-pill-nav .tdc-pill-li.no-sub > a.highlight.termin:active{
  background-image:linear-gradient(135deg, var(--tdc-ink), #000) !important;
  color:#fff !important;
}

/* Anrufen · Modifier mit Telefon-Icon */
.tdc-pill-li > a.action-call svg{color:var(--tdc-turkis-deep)}
.tdc-pill-li > a.action-call:hover{background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep)}

/* Spacer · schiebt Anrufen + Termin nach rechts */
.tdc-pill-spacer{flex:1 1 auto;min-width:8px;list-style:none}

/* ============================================================
   W163: Mobile-Mini-CTAs in der Pille
   Versteckt auf Desktop, erscheinen <=980px (Map + Anrufen + Termin)
   ============================================================ */
/* W163: Mobile-Mini-CTAs — ULTRA-SPEZIFISCHE Overrides gegen tdc-global-buttons
   und a[href*=doctolib]-Selektoren, die padding/width forcieren */
.tdc-pill-mobile-cta{display:none}
header.tdc-pill-header .tdc-pill-mobile-cta a,
header.tdc-pill-header .tdc-pill-mobile-cta a:link,
header.tdc-pill-header .tdc-pill-mobile-cta a:visited{
  box-sizing:border-box !important;
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  width:44px !important;height:44px !important;
  min-width:0 !important;max-width:none !important;
  min-height:0 !important;max-height:none !important;
  padding:0 !important;margin:0 !important;border:0 !important;
  border-radius:50% !important;
  font-size:0 !important;line-height:0 !important;letter-spacing:0 !important;
  text-decoration:none !important;text-transform:none !important;
  transition:.2s var(--ease) !important;
}
header.tdc-pill-header .tdc-pill-mobile-cta a::before,
header.tdc-pill-header .tdc-pill-mobile-cta a::after{
  content:none !important;display:none !important;
  width:0 !important;height:0 !important;padding:0 !important;margin:0 !important;
  background:transparent !important;
}
header.tdc-pill-header .tdc-pill-mobile-cta a svg{
  width:18px !important;height:18px !important;display:block !important;
  flex:none !important;color:inherit !important;
}
.tdc-pill-mobile-cta.call a,
.tdc-pill-mobile-cta.map a{
  background:var(--tdc-turkis-soft) !important;background-image:none !important;
  color:var(--tdc-turkis-deep) !important;
  box-shadow:none !important;
}
.tdc-pill-mobile-cta.call a:hover,
.tdc-pill-mobile-cta.map a:hover{
  background:var(--tdc-turkis) !important;color:#fff !important;
}
.tdc-pill-mobile-cta.termin a{
  background:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep)) !important;
  background-image:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep)) !important;
  background-color:transparent !important;
  color:#fff !important;
  box-shadow:0 4px 10px -4px rgba(15,133,133,.5) !important;
}
.tdc-pill-mobile-cta.termin a:hover{
  background:linear-gradient(135deg, var(--tdc-ink), #000) !important;
  background-image:linear-gradient(135deg, var(--tdc-ink), #000) !important;
}

/* ---------- Burger (mobile only) ---------- */
.tdc-pill-burger{
  display:none;
  flex-direction:column;justify-content:center;gap:4px;
  width:40px;height:40px;border-radius:50%;
  background:transparent;border:0;cursor:pointer;
  padding:10px;
}
.tdc-pill-burger span{
  display:block;height:2px;background:var(--tdc-ink);border-radius:2px;
  transition:.25s var(--ease);
}
.tdc-pill-burger span:nth-child(1){width:18px;align-self:flex-start}
.tdc-pill-burger span:nth-child(2){width:14px;align-self:flex-end}
.tdc-pill-burger span:nth-child(3){width:18px;align-self:flex-start}
.tdc-pill-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg);width:18px}
.tdc-pill-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.tdc-pill-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg);width:18px}

/* ---------- Mobile Drawer ---------- */
.tdc-pill-mobile{
  display:none;
  position:absolute;left:24px;right:24px;top:100%;
  margin-top:10px;
  background:#fff;border:1px solid var(--tdc-line);
  border-radius:24px;
  box-shadow:var(--pill-shadow);
  overflow:hidden;
  max-height:0;opacity:0;
  transition:max-height .35s var(--ease), opacity .25s var(--ease);
}
.tdc-pill-mobile.open{max-height:80vh;overflow-y:auto;opacity:1}
.tdc-pill-mobile > ul{padding:8px}
.tdc-pill-mobile li{margin:2px 0;list-style:none}
.tdc-pill-mobile a{
  display:block;padding:14px 18px;border-radius:12px;
  font-size:15px;font-weight:500;color:var(--tdc-ink);
  transition:.15s var(--ease);text-decoration:none;
}
.tdc-pill-mobile a:hover{background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep)}
.tdc-pill-mobile a.highlight{color:var(--tdc-gold);font-weight:600}

/* W163: Drawer-Submenus (Akkordeon, Tap-Toggle) */
.tdc-pill-mobile .tdc-pill-mob-group{position:relative}
.tdc-pill-mobile .tdc-pill-mob-trigger{
  display:flex;align-items:center;justify-content:space-between;
  width:100%;padding:14px 18px;border-radius:12px;border:0;background:transparent;
  font-family:inherit;font-size:15px;font-weight:500;color:var(--tdc-ink);
  cursor:pointer;text-align:left;
  transition:.15s var(--ease);
}
.tdc-pill-mobile .tdc-pill-mob-trigger:hover,
.tdc-pill-mobile .tdc-pill-mob-trigger[aria-expanded="true"]{
  background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep);
}
.tdc-pill-mobile .tdc-pill-mob-trigger::after{
  content:"";display:inline-block;width:8px;height:8px;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg);margin-left:8px;opacity:.55;
  transition:transform .2s var(--ease);
}
.tdc-pill-mobile .tdc-pill-mob-trigger[aria-expanded="true"]::after{
  transform:rotate(-135deg);opacity:.85;
}
.tdc-pill-mobile .tdc-pill-mob-sub{
  list-style:none;margin:0;padding:0 0 0 8px;
  max-height:0;overflow:hidden;
  transition:max-height .3s var(--ease);
}
.tdc-pill-mobile .tdc-pill-mob-trigger[aria-expanded="true"] + .tdc-pill-mob-sub{
  max-height:1500px;
}
.tdc-pill-mobile .tdc-pill-mob-sub a{
  padding:10px 16px 10px 28px;font-size:14px;font-weight:400;
  color:var(--tdc-ink-soft);position:relative;
}
.tdc-pill-mobile .tdc-pill-mob-sub a::before{
  content:"";position:absolute;left:14px;top:50%;
  width:4px;height:4px;border-radius:50%;
  background:var(--tdc-turkis);opacity:.4;transform:translateY(-50%);
}
.tdc-pill-mobile .tdc-pill-mob-sub a.gold::before{background:var(--tdc-gold);opacity:.8}
.tdc-pill-mobile .tdc-pill-mob-sub a:hover{color:var(--tdc-turkis-deep);background:rgba(26,179,179,.06)}

/* Mob-CTAs unten im Drawer */
.tdc-pill-mobile .tdc-pill-mob-ctas{
  display:flex;gap:6px;padding:8px;border-top:1px solid var(--tdc-line);margin-top:4px;
}
.tdc-pill-mobile .tdc-pill-mob-ctas a{
  flex:1;text-align:center;padding:12px 8px;border-radius:12px;font-size:14px;font-weight:600;
}
.tdc-pill-mobile .tdc-pill-mob-ctas a.mob-call{background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep)}
.tdc-pill-mobile .tdc-pill-mob-ctas a.mob-book{
  background:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep));color:#fff;
}
.tdc-pill-mobile a.mob-call{background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep);font-weight:600;margin-top:8px;text-align:center}
.tdc-pill-mobile a.mob-book{
  background:linear-gradient(135deg, var(--tdc-turkis), var(--tdc-turkis-deep));
  color:#fff;text-align:center;font-weight:600;margin-top:4px;
}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .tdc-pill-nav{gap:0}
  .tdc-pill-li > a{padding:6px 9px;font-size:13px}
  .tdc-pill-li > a.action-call > :not(svg){display:none}
}
/* === W163 MOBILE: <=980px === Logo gross+tiefer, Buttons rechts, Topline kompakt === */
@media (max-width:980px){
  .tdc-pill-header{padding:4px 16px 6px}
  .tdc-pill-shell{gap:8px;align-items:flex-end}
  .tdc-pill-stack{gap:0}

  /* Header ≤980 padding:4px 16px 6px → Topbar Negative-Margin syncen */
  .tdc-pill-topbar{margin:0 -16px;padding:4px 12px;}
  .tdc-pill-topline{
    justify-content:flex-start;gap:8px;font-size:11.5px;
    padding:0;flex-wrap:nowrap;max-width:none;
  }
  .tdc-pill-topline-item:nth-child(2),
  .tdc-pill-topline-item:nth-child(3){display:none}
  .tdc-pill-social{margin-left:0;padding-left:0;border-left:0}

  .tdc-pill-nav{display:none}
  /* W163.2: Items mittig zentrieren, Burger absolut rechts pinnen */
  .tdc-pill-bar{padding:4px 56px 4px 8px;gap:6px;justify-content:center;position:relative}
  .tdc-pill-logo{height:88px;transform:translateY(14px)}
  .tdc-pill-mobile-cta{display:inline-flex}
  .tdc-pill-burger{
    display:inline-flex;
    position:absolute;right:6px;top:50%;
    transform:translateY(-50%);
    margin:0;
  }
  .tdc-pill-mobile{display:block}
}

/* === W163 SMARTPHONE: <=560px === */
@media (max-width:560px){
  .tdc-pill-header{padding:2px 10px 4px}
  .tdc-pill-topbar{margin:0 -10px;padding:3px 10px}
  .tdc-pill-topline{font-size:11px;padding:0;gap:6px}
  .tdc-pill-soc{width:28px;height:28px}
  .tdc-pill-soc svg{width:12px;height:12px}
  .tdc-pill-logo{height:76px}
  header.tdc-pill-header .tdc-pill-mobile-cta a{width:40px !important;height:40px !important}
  header.tdc-pill-header .tdc-pill-mobile-cta a svg{width:16px !important;height:16px !important}
  .tdc-pill-burger{width:40px;height:40px;padding:10px}
  .tdc-pill-mobile{left:10px;right:10px}
}

/* === W163 MINI: <=380px === Termin behaelt Prio === */
@media (max-width:380px){
  .tdc-pill-shell{gap:4px}
  .tdc-pill-logo{height:64px}
  .tdc-pill-mobile-cta.call,
  .tdc-pill-mobile-cta.map{display:none}
  .tdc-pill-topline-item:first-child .tdc-pill-tel-text{display:none}
}

/* Desktop-Verkleinerung beim Scrollen (W163: jetzt am Header) */
@media (min-width:981px){
  .tdc-pill-header.is-scrolled .tdc-pill-shell{gap:12px}
  .tdc-pill-header.is-scrolled .tdc-pill-logo{height:80px}
  .tdc-pill-header.is-scrolled .tdc-pill-bar{
    padding:3px 6px 3px 12px;
    background:rgba(255,255,255,.92);
    box-shadow:0 10px 28px -14px rgba(15,42,42,.28);
  }
  .tdc-pill-header.is-scrolled .tdc-pill-li > a{padding:6px 10px;font-size:13px}
}

/* W163: Weissraum-Killer SCOPED auf Startseite — vorher griffen die Resets sitewide
   und kappten Theme-Padding auf JEDEN Unterseite (Praxis, Leistungen etc.) */
body.home .tdc-hero{
  margin-top:0;border-top:0;border-left:0;border-right:0;
}
body.home > main > .elementor-section:first-of-type,
body.home > .elementor > .elementor-section:first-of-type{
  margin-top:0;padding-top:0;
}
body.home{margin:0}

/* ============================================================
   W203 v2 — CSS-ONLY MOBILE MENU (kein Klick-JS -> immun gegen WP-Rocket delay_js)
   Toggle via versteckte Checkbox + <label>; Submenus via <details>. PSI-neutral.
   ============================================================ */
.tdc-pill-v2 .tdc-pill-toggle{
  position:absolute !important;width:1px;height:1px;opacity:0;
  margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);
  -webkit-appearance:none;appearance:none;
}
.tdc-pill-v2 label.tdc-pill-burger{cursor:pointer;}
/* Drawer: geschlossen unsichtbar (tab-safe), offen via :checked */
.tdc-pill-v2 .tdc-pill-mobile{visibility:hidden;}
.tdc-pill-v2 .tdc-pill-toggle:checked ~ .tdc-pill-mobile{
  max-height:80vh !important;overflow-y:auto !important;opacity:1 !important;visibility:visible !important;
}
/* Burger -> X (CSS-only) */
.tdc-pill-v2 .tdc-pill-toggle:checked ~ .tdc-pill-shell .tdc-pill-burger span:nth-child(1){transform:translateY(6px) rotate(45deg);width:18px}
.tdc-pill-v2 .tdc-pill-toggle:checked ~ .tdc-pill-shell .tdc-pill-burger span:nth-child(2){opacity:0}
.tdc-pill-v2 .tdc-pill-toggle:checked ~ .tdc-pill-shell .tdc-pill-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg);width:18px}
/* Tastatur-Fokus sichtbar */
.tdc-pill-v2 .tdc-pill-toggle:focus-visible ~ .tdc-pill-shell .tdc-pill-burger{outline:2px solid #0f8585;outline-offset:3px;border-radius:8px;}
/* Submenu via <details> (nativ, kein JS) */
.tdc-pill-v2 .tdc-pill-mob-group details{margin:0;}
.tdc-pill-v2 .tdc-pill-mob-group summary.tdc-pill-mob-trigger{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;}
.tdc-pill-v2 .tdc-pill-mob-group summary.tdc-pill-mob-trigger::-webkit-details-marker{display:none}
.tdc-pill-v2 .tdc-pill-mob-group summary.tdc-pill-mob-trigger::marker{content:"";font-size:0}
/* sub voll sichtbar wenn offen (native display steuert show/hide) */
.tdc-pill-v2 .tdc-pill-mob-group .tdc-pill-mob-sub{max-height:none !important;overflow:visible !important;}
/* offen: Trigger-Highlight + Chevron drehen */
.tdc-pill-v2 .tdc-pill-mob-group details[open] > summary.tdc-pill-mob-trigger{background:var(--tdc-turkis-soft);color:var(--tdc-turkis-deep);}
.tdc-pill-v2 .tdc-pill-mob-group details[open] > summary.tdc-pill-mob-trigger::after{transform:rotate(-135deg);opacity:.85;}

  
/* id:tdc-w175-topline-bubbles */

@media (min-width:981px){
  /* Topline-Abstaende auf Minimum */
  .tdc-pill-topline{
    gap:8px !important;
    padding:0 4px !important;
  }
  .tdc-pill-topline-item{
    gap:4px !important;
  }
  /* Social-Block: minimaler Abstand zum letzten Topline-Item + Trenner */
  .tdc-pill-social{
    gap:3px !important;
    margin-left:2px !important;
    padding-left:8px !important;
  }
  /* W175 — Bubbles +50 % (30 -> 45 px) */
  .tdc-pill-soc{
    width:45px !important;
    height:45px !important;
  }
  .tdc-pill-soc svg{
    width:20px !important;
    height:20px !important;
  }
}

/* id:tdc-w251-button-shape */

/* ===== W251: interne CTA-Buttons ECKIG (Termin-Buttons via doctolib.de bleiben Pill) ===== */

/* 1) W214 Hero-Claim CTAs — nur .cta-secondary ist intern (Angst-Ersttermin) */
html body .tdc-w214-hero-claim .tdc-hero-cta-row a:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 2) W214 Angst-Bruecke CTAs */
html body .tdc-w214-angst-bridge .cta-row a:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 3) W243 Direct-Answer-CTA */
html body .tdc-b3-cta:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 4) Popup-Modal-Btn (Termin-Popup bleibt Doctolib; falls andere Popups → eckig) */
html body .tdc-modal__btn:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 5) Elementor-Buttons sitewide — Termin/Doctolib bleiben Pill */
html body .elementor-button:not([href*="doctolib.de"]),
html body a.elementor-button-link:not([href*="doctolib.de"]),
html body .elementor-widget-button a:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 6) Stadtteil-Modern-Lift Buttons (LP-CTAs) — nur intern eckig */
html body .tdc-loc-cta:not([href*="doctolib.de"]),
html body .tdc-loc-trust-cta a:not([href*="doctolib.de"]),
html body .tdc-loc-cta-btn:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* 7) Footer-Buttons (bereits in design-lib fuer Doctolib gepflegt — hier fuer andere) */
html body footer .elementor-button:not([href*="doctolib.de"]):not([href*="termin"]):not([href*="buchen"]),
html body .elementor-location-footer .elementor-button:not([href*="doctolib.de"]):not([href*="termin"]):not([href*="buchen"]) {
    border-radius: 0 !important;
}

/* 8) Generische Links mit CTA-Muster (breiter Fallback fuer Elemente die keine der obigen Klassen haben) */
html body .tdc-cta-btn:not([href*="doctolib.de"]),
html body a.tdc-btn:not([href*="doctolib.de"]),
html body .tdc-story .cta:not([href*="doctolib.de"]),
html body .tdc-aw .cta:not([href*="doctolib.de"]) {
    border-radius: 0 !important;
}

/* Ausnahme-Sicherheit fuer Header-Termin-Pill (der ist explizit ein Doctolib-Termin-Trigger via Menu) */
html body header .tdc-pill-li > a.highlight.termin {
    border-radius: 9999px !important;
}

/* id:tdc-w254-btn-contrast */

/* Doctolib-Termin-Buttons: font-weight boost fuer WCAG-Large-Text-Regel (14pt bold+ = 3:1 Schwelle) */
html body a[href*="doctolib.de"] {
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    background-color: #007a76 !important;
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.25);
}
html body a[href*="doctolib.de"]:hover,
html body a[href*="doctolib.de"]:focus {
    background-color: #005f5c !important;
    color: #ffffff !important;
}
html body a[href*="doctolib.de"] .elementor-button-text,
html body a[href*="doctolib.de"] span {
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* Zusatz 2026-07-25: hoechste Spezifitaet fuer Termin-Buttons */
html body footer a[href*="doctolib"],
html body footer a[href*="doctolib.de"],
html body .elementor-location-footer a[href*="doctolib"],
html body a.tdc-footer-cta__btn,
html body a.tdc-footer-cta__btn[href],
html body footer a.tdc-footer-cta__btn {
    background: #007a76 !important;
    background-color: #007a76 !important;
    background-image: none !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.25) !important;
}
html body footer a[href*="doctolib"]:hover,
html body .elementor-location-footer a[href*="doctolib"]:hover,
html body a.tdc-footer-cta__btn:hover,
html body footer a.tdc-footer-cta__btn:hover {
    background: #005f5c !important;
    background-color: #005f5c !important;
    color: #ffffff !important;
}

/* id:tdc-w265-grautoene */

/* Brotkrume: Trennzeichen und aktuelle Seite (die Links bleiben unberuehrt) */
html body .tdc-breadcrumb span,
html body .tdc-breadcrumb__current { color: #6B6B6B !important; }

/* Autorenzeile unter der Ueberschrift eines Beitrags */
html body .tdc-single__meta span { color: #6B6B6B !important; }

/* Hinweistext im Karten-Platzhalter (steht vor der Einwilligung auf jeder Seite) */
html body .tdc-maps-placeholder p { color: #6B6B6B !important; }

/* Presse-Seite: Meta, Bildunterschrift, Zitatquelle, Fussnoten */
html body .tdcp-tv-meta,
html body .tdcp-press-card-meta,
html body .tdcp-gala-ausgabe,
html body .tdcp-spread-cap,
html body .tdcp-award-note,
html body .tdcp-cta p,
html body .tdcp-press-quote cite { color: #6B6B6B !important; }

/* Zitierbarkeits-Bloecke: Farbton bleibt gruenlich, nur dunkler */
html body .tdc-citability__meta,
html body .tdc-citability__upd { color: #5F6B6A !important; }

/* attr:data-tdc-mlift-anchorbtns */

[data-elementor-type="wp-page"] .elementor-widget-button:has(a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"])),
[data-elementor-type="wp-page"] .elementor-widget-button .elementor-button-wrapper:has(> a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"])){
  width:100% !important;
  background-color:transparent !important;
  box-shadow:none !important;
}
/* Türkis-Widget-Block hinter dem Button entfernen (Ursache des "Stufen-Schattens") */
[data-elementor-type="wp-page"] .elementor-widget-button:has(a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"])){
  background-color:transparent !important;
  box-shadow:none !important;
}
[data-elementor-type="wp-page"] .elementor-widget-button:has(a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"])) > .elementor-widget-container{
  background-color:transparent !important;
  box-shadow:none !important;
}
[data-elementor-type="wp-page"] .elementor-widget-button a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"]){
  width:100% !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:14px !important;
  box-sizing:border-box;
  background:linear-gradient(to right, #009A96 0%, #009A96 30%, rgba(0,154,150,.35) 75%, rgba(0,154,150,0) 100%) !important;
  background-color:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  border-radius:0 !important; /* 2026-07-25: eckige interne Buttons */
  transition:background .3s cubic-bezier(.22,.61,.36,1), transform .3s cubic-bezier(.22,.61,.36,1) !important;
}
[data-elementor-type="wp-page"] .elementor-widget-button a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"]),
[data-elementor-type="wp-page"] .elementor-widget-button a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"]) *{
  color:#fff !important;
  fill:#fff !important;
}
[data-elementor-type="wp-page"] .elementor-widget-button a.elementor-button[href]:not([href*="doctolib"]):not([href*="termin"]):not([href*="beratung"]):not([href*="tel:"]):not([href*="mailto:"]):not([href*="wa.me"]):hover{
  background:linear-gradient(to right, #1a1a1a 0%, #1a1a1a 30%, rgba(26,26,26,.45) 75%, rgba(26,26,26,0) 100%) !important;
  transform:translateY(-2px) !important;
}
/* === Sprungmarken-Streifen: volle BLOCK-Breite + Einfliegen (W176d) ===
   Breite ueber WIDGET + BUTTON (nicht die Spalte) -> kollabiert NIE die Hero-Bild-Spalte (Bug W176c).
   href^="#" schliesst Buchungs-Buttons (volle URLs) automatisch aus. Stapelung ergibt sich (block, full-width). */
[data-elementor-type="wp-page"] .elementor-widget-button:has(a.elementor-button[href^="#"]),
[data-elementor-type="wp-page"] .elementor-widget-button:has(a.elementor-button[href^="#"]) .elementor-button-wrapper{
  width:100% !important;
  max-width:100% !important;
}
[data-elementor-type="wp-page"] .elementor-widget-button a.elementor-button[href^="#"]{
  display:flex !important;
  width:100% !important;
  max-width:100% !important;
  flex:1 0 100% !important;
  justify-content:flex-start !important;
}
/* Grid-Stapelung „untereinander": Spalte auf 100% — die Klasse setzt das JS NUR auf echte
   Button-Grid-Spalten (guarded: nie Spalte mit H1 oder Bild-Geschwisterspalte -> Hero-Bild bleibt). */
[data-elementor-type="wp-page"] .elementor-column.tdc-mlift-jb-stack{
  width:100% !important; max-width:100% !important; flex:0 0 100% !important;
}
/* Einfliegen (von rechts) uebernimmt jetzt der scroll-getriggerte Fly-In (.tdc-fly[data-dir=right],
   W176e) — spielt beim Hereinscrollen, nicht nur on-load. Kein eigener Keyframe mehr hier. */
/* "Wir beraten"-CTA: Türkis-Gradient nach rechts ausblenden (statt voller Balken) */
[data-elementor-type="wp-page"] .tdc-mlift-cta-fade{
  background:linear-gradient(to right, #009A96 0%, #009A96 42%, rgba(0,154,150,0) 100%) !important;
  background-color:transparent !important;
  background-image:linear-gradient(to right, #009A96 0%, #009A96 42%, rgba(0,154,150,0) 100%) !important;
}
[data-elementor-type="wp-page"] .tdc-mlift-cta-fade .elementor-heading-title,
[data-elementor-type="wp-page"] .tdc-mlift-cta-fade .elementor-heading-title *{
  color:#fff !important; text-align:left !important;
}

/* id:tdc-hero-img-normalize */
@media(min-width:769px){body:not(.page-id-3074) [data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body:not(.page-id-3074) [data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 > .elementor-element-populated > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body:not(.page-id-3074) [data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body:not(.page-id-3074) [data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 > .elementor-element-populated > .elementor-widget-wrap:has(> .elementor-widget-image:only-child){flex-direction:column !important;justify-content:center !important;align-items:center !important;}body.page-id-3074 [data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body.page-id-3074 [data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 > .elementor-element-populated > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body.page-id-3074 [data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 > .elementor-widget-wrap:has(> .elementor-widget-image:only-child),body.page-id-3074 [data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 > .elementor-element-populated > .elementor-widget-wrap:has(> .elementor-widget-image:only-child){flex-direction:column !important;justify-content:flex-start !important;align-items:center !important;}[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image:only-child img,[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image:only-child img{max-height:480px !important;width:auto !important;max-width:100% !important;height:auto !important;}[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image.tdc-hero-bild img:not(.tdc-w267-video img):not(.tdc-w267-reihe img),[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image.tdc-hero-bild img:not(.tdc-w267-video img):not(.tdc-w267-reihe img){width:min(calc(480px * var(--tdc-ratio)),var(--tdc-w)) !important;}[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image:only-child figure,[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image:only-child figure,[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image:only-child .elementor-image,[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image:only-child .elementor-image{overflow:hidden !important;}[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image:only-child img,[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image:only-child img{transition:transform .6s cubic-bezier(.22,.61,.36,1) !important;}[data-elementor-type="wp-page"] .elementor-top-section.tdc-hero-mit-h1 .elementor-col-50 .elementor-widget-image:only-child:hover img,[data-elementor-type="wp-page"] .elementor-top-section:has(h1) .elementor-col-50 .elementor-widget-image:only-child:hover img{transform:scale(1.05) !important;}}
/* id:tdc-team-slider-equal-css */

/* Card: display:block (KEIN flex — sonst kollabiert das Image durch flex-shrink) */
.tdc-ts-card{
  display:block!important;
  text-align:center;
  min-height:320px;
}
/* Image (img ODER picture) MUSS feste 230x200 Größe behalten */
.tdc-ts-card > .tdc-ts-photo,
.tdc-ts-card > picture,
.tdc-ts-card > a > picture{
  width:200px!important;height:230px!important;
  display:block!important;
  margin:0 auto;border-radius:14px;overflow:hidden;
  box-shadow:0 6px 20px rgba(0,0,0,.10);
}
.tdc-ts-card > .tdc-ts-photo{object-fit:cover;}
.tdc-ts-card > picture img,
.tdc-ts-card > a > picture img{
  width:100%!important;height:100%!important;
  object-fit:cover;display:block;border-radius:14px;
}
/* continuierliche Rotation — KEIN smooth-scroll (sonst Animations-Konflikt mit RAF) und KEIN scroll-snap */
.tdc-ts-track{
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
}
.tdc-ts-card{scroll-snap-align:none!important;}
.tdc-ts-name{
  margin:14px 0 4px!important;
  text-align:center;font-weight:700;
}
.tdc-ts-role{
  margin:0!important;
  text-align:center;
  min-height:2.7em; /* Platz für 2-zeilige Rollen */
  line-height:1.35;
}

