.elementor-kit-11{--e-global-color-primary:#ED202B;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-4c622e9:#ED202B;--e-global-color-a26bc6b:#0B0F14;--e-global-color-d13a2f0:#2B3440;--e-global-color-4d63224:#667085;--e-global-color-45f4418:#E6E8EC;--e-global-color-5c96744:#FFFFFF;--e-global-color-63d5661:#FDF8F4;--e-global-color-f876df9:#1A1D21;--e-global-color-c4d8dda:#252A31;--e-global-color-b5fefdd:#12B981;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-4e6e1ed-font-family:"Inter";--e-global-typography-4e6e1ed-font-size:56px;--e-global-typography-4e6e1ed-font-weight:900;--e-global-typography-4e6e1ed-line-height:1.08em;--e-global-typography-0e2c281-font-family:"Inter";--e-global-typography-0e2c281-font-size:40px;--e-global-typography-0e2c281-font-weight:800;--e-global-typography-0e2c281-line-height:1.15em;--e-global-typography-07d469b-font-family:"Inter";--e-global-typography-07d469b-font-size:18px;--e-global-typography-07d469b-font-weight:400;--e-global-typography-07d469b-line-height:1.65em;--e-global-typography-dea64e5-font-family:"Inter";--e-global-typography-dea64e5-font-size:14px;--e-global-typography-dea64e5-font-weight:600;--e-global-typography-dea64e5-line-height:1.4em;--e-global-typography-5eb85ef-font-family:"Inter";--e-global-typography-5eb85ef-font-size:15px;--e-global-typography-5eb85ef-font-weight:700;--e-global-typography-5eb85ef-text-transform:uppercase;--e-global-typography-5eb85ef-line-height:1.2em;--e-global-typography-5eb85ef-word-spacing:0.12em;--e-global-typography-d9cdcac-font-family:"Inter";--e-global-typography-d9cdcac-font-size:24px;--e-global-typography-d9cdcac-font-weight:800;--e-global-typography-d9cdcac-line-height:1.25em;--e-global-typography-a73e345-font-family:"Inter";--e-global-typography-a73e345-font-size:20px;--e-global-typography-a73e345-font-weight:700;--e-global-typography-a73e345-line-height:1.3em;}.elementor-kit-11 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:767px){.e-con{--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}/* Start custom CSS *//* Breadcrumb: Parallax AUS, Background immer sichtbar */
.breadcrumb-area{ position: relative !important; }

.breadcrumb-area-bg{
  position: absolute !important;
  inset: 0 !important;            /* füllt die ganze Section */
  overflow: hidden !important;
  z-index: 0 !important;
}

.breadcrumb-area-bg .parallax-bg{
  position: absolute !important;
  inset: 0 !important;            /* füllt den BG-Container */
  height: 100% !important;

  transform: none !important;
  -webkit-transform: none !important;

  background-attachment: scroll !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* Inhalt über dem Background */
.breadcrumb-area .container{
  position: relative !important;
  z-index: 2 !important;
}

@keyframes ddkRotateMe{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}

@keyframes ddkRotateMe {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
img.rotate-me{
  animation: ddkRotateMe 18s linear infinite !important;
  transform-origin: 50% 50% !important;
  will-change: transform;
}



/* =========================================================
   DDK ABOUT – FINAL (PATCHED)
   - Content beginnt höher (weniger padding-top)
   - Mobile: Bild zuerst (Reihenfolge via Flex-Order)
   ========================================================= */

.ddk-about.ddk-about--theme{
  --ddk-accent: var(--thm-base, #e31b23);
  --ddk-text: var(--thm-black, #111);
  --ddk-green: #22c55e;
}
.ddk-about.ddk-about--theme{
  --ddk-accent: var(--thm-base, #e31b23);
  --ddk-text: var(--thm-black, #111);
  --ddk-green: #22c55e;
}
.ddk-about.ddk-about--theme .auto-container{
  max-width: 1280px !important;

}
/* Block spacing */
.ddk-about.ddk-about--theme{
  position: relative;
  /* vorher: clamp(60px, 6vw, 110px)  -> startet jetzt sichtbar früher */
  padding-top: clamp(22px, 3vw, 60px);
  padding-bottom: clamp(60px, 6vw, 110px);
}

.ddk-about.ddk-about--theme .ddk-about__row{ align-items: center; }
.ddk-about.ddk-about--theme .ddk-about__cta{ margin-top: 18px; }

/* Title/Text spacing */
.ddk-about.ddk-about--theme .content-box > .sec-title{
  margin-bottom: 18px;
  padding-bottom: 0;
}

/* Kicker/H2 starten nicht “spät” */
.ddk-about.ddk-about--theme .content-box > .sec-title .sub-title,
.ddk-about.ddk-about--theme .content-box > .sec-title h2{
  margin-top: 0;
}

.ddk-about.ddk-about--theme .content-box > .sec-title h2{ margin-bottom: 0; }
.ddk-about.ddk-about--theme .content-box > .text{ margin-top: 0; padding-top: 0; }
.ddk-about.ddk-about--theme .ddk-about__list{ margin-top: 24px; }

/* Mobile-only elements hidden by default */
.ddk-about.ddk-about--theme .ddk-about__headline--mobile{ display: none; }
.ddk-about.ddk-about--theme .ddk-about__text--mobile{ display: none; }

/* Media wrapper */
.ddk-about.ddk-about--theme .ddk-about__media{
  position: relative;
  max-width: 560px;
  margin-left: auto;
  isolation: isolate;
}

/* Big image */
.ddk-about.ddk-about--theme .ddk-about__image{
  position: relative;
  z-index: 2;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 28px 70px rgba(18,18,18,.12);
  transform: translateZ(0);
}
.ddk-about.ddk-about--theme .ddk-about__image img{
  width: 100%;
  height: auto;
  display: block;
}

/* Checks list */
.ddk-about.ddk-about--theme .ddk-about__list li{
  position: relative;
  padding-left: 28px;
}
.ddk-about.ddk-about--theme .ddk-about__list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:.15em;
  color: var(--ddk-accent);
  font-weight: 700;
}
.ddk-about.ddk-about--theme .ddk-about__li-title{
  display:block;
  font-weight: 600;
  line-height: 1.25;
}

/* Shapes */
.ddk-about.ddk-about--theme .ddk-shape{
  position:absolute;
  display:block;
  pointer-events:none;
  z-index:0;
}
.ddk-about.ddk-about--theme .ddk-shape--dots{
  right:-26px;
  top:34px;
  width:140px;
  height:140px;
  opacity:.20;
  background-image: radial-gradient(rgba(227,27,35,.55) 1.6px, transparent 1.6px);
  background-size:10px 10px;
  border-radius:26px;
  animation: ddk-rotate 18s linear infinite;
}
.ddk-about.ddk-about--theme .ddk-shape--blob{
  left:-26px;
  top:22px;
  width:240px;
  height:240px;
  background: rgba(227,27,35,.10);
  border-radius:34px;
  transform: rotate(14deg);
}

/* =========================================================
   MINI CARD – Premium interaction
   ========================================================= */
.ddk-about.ddk-about--theme a.ddk-mini-card{
  position:absolute;
  left:-52px;
  bottom:-34px;
  width:315px;
  z-index:3;

  display:block;
  color:inherit;
  text-decoration:none;
  cursor:pointer;

  background: rgba(255,255,255,.92);
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.05);
  box-shadow: 0 22px 55px rgba(18,18,18,.16);

  transform: translateZ(0);
  animation: ddk-float 5.5s ease-in-out infinite;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.ddk-about.ddk-about--theme a.ddk-mini-card:focus{ outline:none; }
.ddk-about.ddk-about--theme a.ddk-mini-card:focus-visible{
  outline: 2px solid rgba(34,197,94,.28);
  outline-offset: 3px;
}

.ddk-about.ddk-about--theme a.ddk-mini-card:hover,
.ddk-about.ddk-about--theme a.ddk-mini-card:focus-visible{
  transform: translate3d(0,-3px,0);
  box-shadow: 0 26px 66px rgba(18,18,18,.18);
}

.ddk-about.ddk-about--theme a.ddk-mini-card:active{
  transform: translate3d(0,0,0) scale(.99);
  box-shadow: 0 16px 44px rgba(18,18,18,.14);
}

/* Card image */
.ddk-about.ddk-about--theme .ddk-mini-card__img{
  position:relative;
  height:132px;
  overflow:hidden;
}
.ddk-about.ddk-about--theme .ddk-mini-card__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform: scale(1.02);
}
.ddk-about.ddk-about--theme .ddk-mini-card__img:after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.22) 100%);
  opacity:.45;
}

/* Card text */
.ddk-about.ddk-about--theme .ddk-mini-card__text{
  padding: 12px 40px 14px 14px;
  line-height: 1.2;
}
.ddk-about.ddk-about--theme .ddk-mini-card__title{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:15px;
  margin-bottom: 6px;
  color: var(--ddk-text);

  /* 1 Zeile Desktop */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ddk-about.ddk-about--theme .ddk-mini-card__desc{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  font-size:13px;
  opacity:.78;
  color: var(--ddk-text);
}

/* Arrow */
.ddk-about.ddk-about--theme .ddk-mini-card__arrow{
  position:absolute;
  right:12px;
  bottom:12px;
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color: rgba(17,17,17,.70);
  background: rgba(17,17,17,.04);
  transition: transform .18s ease, background-color .18s ease, color .18s ease;
}
.ddk-about.ddk-about--theme a.ddk-mini-card:hover .ddk-mini-card__arrow,
.ddk-about.ddk-about--theme a.ddk-mini-card:focus-visible .ddk-mini-card__arrow{
  transform: translateX(3px);
  background: rgba(17,17,17,.06);
  color: rgba(17,17,17,.82);
}
.ddk-about.ddk-about--theme a.ddk-mini-card:active .ddk-mini-card__arrow{
  transform: translateX(1px);
}

/* Status dot (green + subtle pulse) */
.ddk-about.ddk-about--theme .ddk-status-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background: var(--ddk-green);
  position:relative;
  flex:0 0 auto;
}
.ddk-about.ddk-about--theme .ddk-status-dot::after{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:999px;
  border: 2px solid rgba(34,197,94,.20);
  opacity:.9;
  animation: ddk-pulse 2.8s ease-out infinite;
}

/* =========================================================
   Tablet (max 991) – (bleibt drin, aber wird durch Patch unten sauber überschrieben)
   ========================================================= */
@media (max-width: 991px){
  .ddk-about.ddk-about--theme .ddk-about__media{
    max-width: 991px;
    margin: 26px auto 0;
  }
  .ddk-about.ddk-about--theme a.ddk-mini-card{
    left: 10px;
    bottom: -18px;
    width: 500px;
  }
}
@media (max-width: 991px){
  .ddk-about.ddk-about--theme .ddk-about__list{
    columns: 1 !important;
    -webkit-columns: 1 !important;
  }
  .ddk-about.ddk-about--theme .ddk-about__list li{
    width: 100% !important;
    float: none !important;
    break-inside: avoid;
    page-break-inside: avoid;
  }
}

/* =========================================================
   PATCH: Tablet (768–991) wieder Desktop-Layout (2 Spalten)
   ========================================================= */
@media (min-width: 768px) and (max-width: 991px){

  .ddk-about.ddk-about--theme .ddk-about__row{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }

  .ddk-about.ddk-about--theme .content-column,
  .ddk-about.ddk-about--theme .image-column{
    flex: 0 0 50%;
    max-width: 50%;
  }

  .ddk-about.ddk-about--theme .ddk-about__media{
    max-width: 560px;
    margin-left: auto;
    margin-top: 0 !important;
  }

  .ddk-about.ddk-about--theme a.ddk-mini-card{
    left: -52px;
    bottom: -34px;
    width: 315px;
  }

  .ddk-about.ddk-about--theme .ddk-about__list{
    columns: auto !important;
    -webkit-columns: auto !important;
  }
  .ddk-about.ddk-about--theme .ddk-about__list li{
    width: auto !important;
    float: none !important;
  }
}

/* =========================================================
   Mobile: Bild zuerst + Mobile-first Flow – bis 767px
   ========================================================= */
@media (max-width: 767px){

  /* Reihenfolge: Bild zuerst */
  .ddk-about.ddk-about--theme .ddk-about__row{
    display:flex;
    flex-direction:column;
  }
  .ddk-about.ddk-about--theme .image-column{ order: 1; }
  .ddk-about.ddk-about--theme .content-column{ order: 2; }

  /* Swap Headline/Text */
  .ddk-about.ddk-about--theme .ddk-about__headline--desktop{ display:none; }
  .ddk-about.ddk-about--theme .ddk-about__headline--mobile{ display:block; }

  .ddk-about.ddk-about--theme .ddk-about__text--desktop{ display:none; }
  .ddk-about.ddk-about--theme .ddk-about__text--mobile{ display:block; }

  /* CTA spacing */
  .ddk-about.ddk-about--theme .ddk-about__cta{
    margin-top: 18px;
    margin-bottom: 12px;
  }

  /* Bullets 1 Spalte */
  .ddk-about.ddk-about--theme .ddk-about__list{
    margin-top: 18px;
    columns: 1 !important;
    -webkit-columns: 1 !important;
  }
  .ddk-about.ddk-about--theme .ddk-about__list li{
    width: 100% !important;
    float: none !important;
  }

  /* Shapes weg */
  .ddk-about.ddk-about--theme .ddk-shape--dots,
  .ddk-about.ddk-about--theme .ddk-shape--blob{
    display:none;
  }

  /* Media */
  .ddk-about.ddk-about--theme .ddk-about__media{
    max-width:100%;
    margin: 0 auto 14px; /* oben kein extra Abstand, weil jetzt oben */
  }

  .ddk-about.ddk-about--theme .ddk-about__image{
    border-radius:18px;
  }
  .ddk-about.ddk-about--theme .ddk-about__image img{
    aspect-ratio: 16 / 10;
    object-fit: cover;
  }

  /* Mini-Card: Glass Panel */
  .ddk-about.ddk-about--theme a.ddk-mini-card{
    left: 12px;
    bottom: calc(12px + env(safe-area-inset-bottom));
    width: min(86%, 360px);
    border-radius: 16px;

    border: 1px solid rgba(255,255,255,.42);
    background: rgba(255,255,255,.72);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);

    box-shadow: 0 18px 46px rgba(18,18,18,.16);
    animation: none; /* Mobile: kein Float */
  }

  .ddk-about.ddk-about--theme .ddk-mini-card__img{ display:none; }

  .ddk-about.ddk-about--theme .ddk-mini-card__text{
    padding: 13px 40px 13px 15px;
    line-height: 1.25;
  }

  /* Mobile: Titel darf umbrechen */
  .ddk-about.ddk-about--theme .ddk-mini-card__title{
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    font-size: 15px;
  }

  .ddk-about.ddk-about--theme .ddk-mini-card__desc{
    -webkit-line-clamp: 2;
    font-size: 13px;
    opacity: .82;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .ddk-about.ddk-about--theme .ddk-shape--dots{ animation:none !important; }
  .ddk-about.ddk-about--theme .ddk-status-dot::after{ animation:none !important; }
  .ddk-about.ddk-about--theme a.ddk-mini-card{ animation:none !important; }
  .ddk-about.ddk-about--theme a.ddk-mini-card,
  .ddk-about.ddk-about--theme .ddk-mini-card__arrow{
    transition:none !important;
  }
}

/* Animations */
@keyframes ddk-rotate{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}
@keyframes ddk-float{
  0%,100%{ transform: translate3d(0,0,0); }
  50%{ transform: translate3d(0,-8px,0); }
}
@keyframes ddk-pulse{
  0%{ transform: scale(.70); opacity:.55; }
  60%{ transform: scale(1.25); opacity:.14; }
  100%{ transform: scale(1.35); opacity:0; }
}
.ddk-hero-highlight{
  margin-top: 14px;
  padding-left: 14px;
  border-left: 3px solid var(--ddk-accent);
  font-weight: 600;
  color: rgba(0,0,0,.75);
}
/* =========================================================
   PATCH: Mobile – Bildhöhe im Hero etwas reduzieren
   ========================================================= */
@media (max-width: 767px){

  /* flacherer Zuschnitt */
  .ddk-about.ddk-about--theme .ddk-about__image img{
    aspect-ratio: 16 / 9;   /* vorher 16 / 10 */
    max-height: 240px;      /* Sicherheitsbremse für kleine Geräte */
    width: 100%;
    object-fit: cover;
  }

}
/* =========================================================
   PATCH: Mobile Abstände (Kicker näher an Titel, Checks näher an Text,
   mehr Luft VOR Button)
   ========================================================= */
@media (max-width: 767px){

  /* --- Kicker näher an den Titel --- */
  .ddk-about.ddk-about--theme .content-box .sec-title{
    margin-bottom: 10px !important; /* weniger Abstand nach Titelblock */
  }

  .ddk-about.ddk-about--theme .content-box .sec-title .sub-title{
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
  }

  .ddk-about.ddk-about--theme .content-box .sec-title .sub-title p{
    margin: 0 0 6px 0 !important;  /* Theme-Default killen */
    line-height: 1.1 !important;
  }

  .ddk-about.ddk-about--theme .content-box .sec-title h2{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* --- Beschreibung näher an Checks --- */
  .ddk-about.ddk-about--theme .content-box .ddk-about__text--mobile{
    margin-bottom: 6px !important;
  }

  .ddk-about.ddk-about--theme .content-box .ddk-about__text--mobile p{
    margin: 0 0 6px 0 !important; /* WICHTIG: das ist meist der Übeltäter */
  }

  /* Checks näher an Beschreibung + kontrollierte Abstände */
  .ddk-about.ddk-about--theme .content-box ul.ddk-about__list{
    margin-top: 12px !important;
    margin-bottom: 25px !important; /* mehr Luft NACH Checks */
  }

  /* Highlight: soll nicht extra Abstand addieren */
  .ddk-about.ddk-about--theme .content-box .ddk-hero-highlight{
    margin-top: 0 !important;
    margin-bottom: 0 !important; /* Platz kommt über CTA */
  }

  /* --- Button: mehr Luft nach oben (vor dem Button) --- */
  .ddk-about.ddk-about--theme .content-box .ddk-about__cta{
    margin-top: 22px !important;  /* mehr Abstand vom Highlight zum Button */
    margin-bottom: 12px !important;
  }
}
/* =========================================================
   PATCH: Mobile – mehr Luft NACH dem Foto
   ========================================================= */
@media (max-width: 767px){

  /* Mehr Abstand zwischen Bild (Media) und dem Kicker/Text-Block */
  .ddk-about.ddk-about--theme .ddk-about__media{
    margin-bottom: 25px !important;  /* z.B. 18–28px */
  }

}
/* =========================================================
   PATCH: Bullets – Desktop Umbruch nach Wort, Mobile kein Umbruch
   ========================================================= */
.ddk-about.ddk-about--theme .ddk-br{
  display:block; /* Desktop: Umbruch erzwingen */
  height:0;
  line-height:0;
}

@media (max-width: 767px){
  .ddk-about.ddk-about--theme .ddk-br{
    display:inline; /* Mobile: kein Umbruch */
  }
}

/* Elementor custom_css removed from element 659f275f @ content[1]/container:4224cec8/elements[0]/container:79c9f38d/elements[3] */
/* =========================================================
   DDK Feature Cards (Icon + Title + Mini Text)
   Einsatz: unter dem SEO-Pflichtblock (3 Karten nebeneinander)
   ========================================================= */

/* Grid-Wrapper */
.ddk-featuregrid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
  margin-top: 0px;
}

/* Karte */
.ddk-featurecard{
  display: flex;
  align-items: center;
  

 
  background: #fff;
  border-radius: 12px;


  /* optional: einheitliche Höhe */
  min-height: 58px;
}

/* Icon links */
.ddk-featurecard__icon{
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

}

/* Icon-Farbe (Theme + Fallback) */
.ddk-featurecard__icon i,
.ddk-featurecard__icon svg{
  font-size: 40px;
  color: var(--thm-base, #e31b23);
  fill: var(--thm-base, #e31b23);
}

/* Text */
.ddk-featurecard__title{
  margin: 0;
  color: var(--thm-black, #111);
  font-family: var(--thm-font-2, inherit);
  font-weight: 800;
  font-size: 13.5px;
  line-height: 1.5;
}

.ddk-featurecard__text{
  margin: 0;
  color: var(--thm-gray, #666);
  font-size: 12px;
  line-height: 1.25;
}

/* Falls du Texteditor nutzt: <p>-Margin entfernen */
.ddk-featurecard__text p{
  margin: 0;
}

/* Responsive */
@media (max-width: 1024px){
  .ddk-featuregrid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px){
  .ddk-featuregrid{
    grid-template-columns: 1fr;
  }
}
/* Nur Mobile */
@media (max-width: 768px){
  .ddk-featurecard{
    padding: 10px;
  }
}
/* --- PATCH: Icon + Textblock immer nebeneinander (auch mobil) --- */
.ddk-featurecard{
  flex-wrap: nowrap;           /* verhindert Umbruch von Icon/Text */
  align-items: center;
  gap: 10px;                   /* sinnvoller Abstand statt 1px */
}

.ddk-featurecard__icon{
  flex: 0 0 34px;              /* Icon bleibt fix breit */
}

.ddk-featurecard__content{
  flex: 1 1 auto;              /* Textbereich nimmt Restbreite */
  min-width: 0;                /* wichtig gegen "push out" */
  display: flex;
  flex-direction: column;
  gap: 2px;
}

/* Elementor custom_css removed from element 6660ca92 @ content[2]/container:59b097e3/elements[0] */
/* Quick-Check als sanfte Highlight-Box */
.elementor-element-f90a27a #ddk-qc{
  background:rgba(0,0,0,.02);
  border-color:rgba(0,0,0,.05);
}

/* Elementor custom_css removed from element 4e94f6a1 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[0]/container:7094483/elements[0] */
.ddk-qc{
  --qc-bg:#fff;
  --qc-text:#111827;
  --qc-muted:#6b7280;
  --qc-border:rgba(17,24,39,.10);
  --qc-shadow:0 12px 30px rgba(17,24,39,.10);
  --qc-radius:18px;

  --qc-red:#e11d2e;
  --qc-green:#16a34a;
  --qc-amber:#f59e0b;
  --qc-blue:#0ea5e9;

  background:var(--qc-bg);
  border:1px solid var(--qc-border);
  border-radius:var(--qc-radius);
  box-shadow:var(--qc-shadow);
  overflow:hidden;
  font-family:inherit;
}

.ddk-qc__head{
  padding:18px 18px 10px;
  background:
    radial-gradient(1000px 220px at 20% -40%, rgba(225,29,46,.18), transparent 50%),
    radial-gradient(900px 240px at 80% -40%, rgba(14,165,233,.14), transparent 55%),
    #fff;
}
.ddk-qc__badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  color:rgba(17,24,39,.75);
  background:rgba(17,24,39,.04);
  border:1px solid var(--qc-border);
}
.ddk-qc__title{
  margin:10px 0 6px;
  font-size:18px;
  line-height:1.2;
  color:var(--qc-text);
  letter-spacing:-.2px;
}
.ddk-qc__sub{
  margin:0 0 6px;
  font-size:13px;
  line-height:1.45;
  color:var(--qc-muted);
}

.ddk-qc__progress{height:8px;background:rgba(17,24,39,.06);}
.ddk-qc__bar{
  height:100%;
  width:0%;
  background:linear-gradient(90deg, rgba(225,29,46,.95), rgba(14,165,233,.85));
  transition:width .25s ease;
}

.ddk-qc__form{padding:14px 18px 18px;}
.ddk-qc__q{display:none;}
.ddk-qc__q.is-active{display:block;}

.ddk-qc__label{
  display:block;
  font-weight:800;
  font-size:13px;
  color:var(--qc-text);
  margin:6px 0 10px;
}

.ddk-qc__select{
  width:100%;
  border:1px solid var(--qc-border);
  background:#fff;
  border-radius:12px;
  padding:11px 12px;
  font-size:14px;
  outline:none;
  transition:box-shadow .2s ease, border-color .2s ease;
}
.ddk-qc__select:focus{
  border-color:rgba(225,29,46,.45);
  box-shadow:0 0 0 4px rgba(225,29,46,.10);
}

.ddk-qc__chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:2px 0 6px;
}
.ddk-qc__chip{
  flex:1 1 auto;
  min-width:180px;
  border:1px solid var(--qc-border);
  background:#fff;
  border-radius:14px;
  padding:10px 10px;
  font-size:13px;
  color:rgba(17,24,39,.85);
  cursor:pointer;
  user-select:none;
  display:flex;
  gap:10px;
  align-items:flex-start;
  transition:transform .08s ease, border-color .2s ease, box-shadow .2s ease;
}
.ddk-qc__chip input{margin-top:2px;}
.ddk-qc__chip:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 18px rgba(17,24,39,.08);
  border-color:rgba(17,24,39,.16);
}
.ddk-qc__chip.is-selected{
  border-color:rgba(225,29,46,.40);
  box-shadow:0 0 0 4px rgba(225,29,46,.10);
}

.ddk-qc__hint{
  margin:8px 0 0;
  font-size:12px;
  color:rgba(17,24,39,.62);
}

.ddk-qc__actions{
  display:flex;
  gap:10px;
  margin-top:14px;
}
.ddk-qc__btn{
  flex:1 1 0;
  border-radius:14px;
  padding:11px 12px;
  font-size:14px;
  font-weight:900;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .08s ease, box-shadow .2s ease, opacity .2s ease;
}
.ddk-qc__btn:active{transform:translateY(1px);}
.ddk-qc__btn[disabled]{opacity:.55;cursor:not-allowed;}
.ddk-qc__btn--ghost{
  background:rgba(17,24,39,.04);
  border-color:var(--qc-border);
  color:rgba(17,24,39,.86);
}
.ddk-qc__btn--primary{
  background:linear-gradient(90deg, rgba(225,29,46,.98), rgba(225,29,46,.86));
  color:#fff;
  box-shadow:0 14px 26px rgba(225,29,46,.18);
}

.ddk-qc__footnote{
  margin-top:10px;
  font-size:11.5px;
  line-height:1.35;
  color:rgba(17,24,39,.52);
}

/* result */
.ddk-qc__result{
  padding:16px 18px 18px;
  border-top:1px solid var(--qc-border);
  background:linear-gradient(180deg, rgba(17,24,39,.02), transparent 40%);
}
.ddk-qc__pill{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  border:1px solid var(--qc-border);
  background:#fff;
  color:rgba(17,24,39,.78);
}
.ddk-qc__resultTitle{
  margin:10px 0 6px;
  font-size:18px;
  line-height:1.2;
  letter-spacing:-.2px;
  color:var(--qc-text);
}
.ddk-qc__resultSub{
  margin:0 0 12px;
  font-size:13px;
  line-height:1.45;
  color:rgba(17,24,39,.70);
}
.ddk-qc__cards{display:grid;gap:12px;}
.ddk-qc__card{
  border:1px solid var(--qc-border);
  background:#fff;
  border-radius:16px;
  padding:12px;
  box-shadow:0 10px 18px rgba(17,24,39,.06);
}
.ddk-qc__cardHead{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
  color:rgba(17,24,39,.86);
  font-size:13px;
}
.ddk-qc__dot{width:10px;height:10px;border-radius:999px;}
.ddk-qc__dot--ok{background:var(--qc-green);}
.ddk-qc__dot--info{background:var(--qc-blue);}

.ddk-qc__list{
  margin:0;
  padding-left:18px;
  color:rgba(17,24,39,.78);
  font-size:13px;
  line-height:1.5;
}
.ddk-qc__p{
  margin:0 0 10px;
  color:rgba(17,24,39,.78);
  font-size:13px;
  line-height:1.45;
}
.ddk-qc__ctaRow{display:flex;gap:10px;flex-wrap:wrap;}
.ddk-qc__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  padding:11px 12px;
  font-size:14px;
  font-weight:900;
  text-decoration:none;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .08s ease, box-shadow .2s ease, opacity .2s ease;
  flex:1 1 160px;
}
.ddk-qc__cta:active{transform:translateY(1px);}
.ddk-qc__cta{
  background:linear-gradient(90deg, rgba(225,29,46,.98), rgba(225,29,46,.86));
  color:#fff;
  box-shadow:0 14px 26px rgba(225,29,46,.18);
}
.ddk-qc__cta--light{
  background:rgba(17,24,39,.04);
  border-color:var(--qc-border);
  color:rgba(17,24,39,.86);
  box-shadow:none;
}

@media (max-width:520px){
  .ddk-qc__chip{min-width:100%;}
}
.ddk-qc__toggle{
  margin-top:12px;
  width:100%;
  border-radius:14px;
  padding:12px 12px;
  font-size:14px;
  font-weight:900;
  cursor:pointer;
  border:1px solid rgba(17,24,39,.12);
  background:rgba(17,24,39,.04);
  color:rgba(17,24,39,.86);
  transition:transform .08s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.ddk-qc__toggle:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 18px rgba(17,24,39,.08);
  border-color:rgba(17,24,39,.18);
}

/* Body Animation: wir animieren max-height + opacity */
.ddk-qc__body{
  overflow:hidden;
  max-height:0;
  opacity:0;
  transition:max-height .35s ease, opacity .25s ease;
}

/* Wenn geöffnet */
.ddk-qc.is-open .ddk-qc__body{
  max-height:2000px; /* groß genug, damit alles reinpasst */
  opacity:1;
}

/* Optional: Toggle-Text in offenem Zustand hübscher */
.ddk-qc.is-open .ddk-qc__toggle{
  background:linear-gradient(90deg, rgba(225,29,46,.98), rgba(225,29,46,.86));
  color:#fff;
  border-color:transparent;
  box-shadow:0 14px 26px rgba(225,29,46,.18);
}
/* Wenn geöffnet: Start-Button ausblenden */
.ddk-qc.is-open .ddk-qc__toggle{
  display:none;
}

/* Elementor custom_css removed from element 6712511c @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[1]/container:43ec247a/elements[0] */
.ddk-gbadge{
  width: 100%;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 84px 1fr;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.35);
  background: #fff;
  overflow: hidden;
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color: #111;
}

.ddk-gbadge__left{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  border-right: 1px solid rgba(0,0,0,.35);
}

.ddk-gbadge__right{
  padding: 12px 14px;
  display: grid;
  gap: 4px;
  align-content: center;
  min-width: 0;
}

.ddk-gbadge__top{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.ddk-gbadge__stars{
  display: inline-flex;
  gap: 3px;
  align-items: center;
}

.ddk-gbadge__star{
  width: 16px !important;
  height: 16px !important;
  display: block !important;
  flex: 0 0 auto !important;
  fill: #F4B400;
}

.ddk-gbadge__score{
  font-size: 14px;
  font-weight: 600;
  color: rgba(17,24,39,.90);
  white-space: nowrap;
}

.ddk-gbadge__title{
  font-size: 14px;
  font-weight: 700;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ddk-gbadge__meta{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: rgba(17,24,39,.70);
  line-height: 1.2;
}

.ddk-gbadge__num{
  font-weight: 700;
  color: rgba(17,24,39,.85);
}

/* Icon wrapper – stabil, kein transform-box, keine Subpixel */
.ddk-gbadge__iconbox{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  line-height: 0 !important;
  font-size: 0 !important;
  vertical-align: middle !important;
}

.ddk-gbadge__iconbox--g{ width: 44px !important; height: 44px !important; }
.ddk-gbadge__iconbox--check{ width: 16px !important; height: 16px !important; }

.ddk-gbadge__iconbox > svg.ddk-gbadge__svg{
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  max-width: none !important;
  max-height: none !important;
}

@media (max-width: 420px){
  .ddk-gbadge{ grid-template-columns: 74px 1fr; }
  .ddk-gbadge__iconbox--g{ width: 40px !important; height: 40px !important; }
}
.ddk-gbadge__iconbox--check svg path:first-child{
  fill: #0B57D0 !important; /* dein gewünschtes Blau */
}

/* Elementor custom_css removed from element 5f0b175e @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[2]/container:e28233a/elements[0] */
/* Karte */
.ddk-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius:16px;
  padding:20px;
  box-shadow:0 14px 40px rgba(0,0,0,.10);
}

/* Titelblock: Theme-Look ohne sec-title(line-height:0) */
.ddk-card__title .sub-title{ padding-bottom:3px; }
.ddk-card__title .sub-title p{
  color: var(--thm-base);
  font-size: 16px;
  line-height: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin:0;
  font-family: var(--thm-font);
}
.ddk-card__title h3{
  margin:0;
  color: var(--thm-black);
  font-weight:800;
  line-height:1.2em;
  font-family: var(--thm-font-2);
  font-size: 28px; /* Karten-tauglich */
}

/* Text */
.ddk-card__text p{
  margin:0;
  color: var(--thm-gray);
  font-size:14px;
  line-height:18px;
  font-family: var(--thm-font);
}

/* Buttons in der Karte: volle Breite + Text überlagert nicht */
.ddk-card__btn .elementor-button{
  width:100%;
}
.ddk-card__btn .elementor-button .elementor-button-content-wrapper{
  position: relative;
  z-index: 2;
}
.ddk-card{
  border: 1px solid rgba(0,0,0,.08);
}
.ddk-card{
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 14px 40px rgba(0,0,0,.10);
}

/* Elementor custom_css removed from element 27120d25 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[2]/container:e28233a/elements[0]/container:5f0b175e/elements[0] */
/* Theme-Kicker für Elementor Text-Editor */
.ddk-theme-kicker p{
  margin: 0 !important;
  padding: 0 !important;

  color: var(--thm-base);
  font-family: var(--thm-font);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;

  font-size: 14px;      /* schlank & modern */
  line-height: 1.2;
}

/* Elementor custom_css removed from element 3394ec27 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[2]/container:e28233a/elements[0]/container:5f0b175e/elements[1] */
/* Theme-Titel für Elementor Heading */
.ddk-theme-title .elementor-heading-title{
  margin: 0 !important;

  color: var(--thm-black);
  font-family: var(--thm-font-2);
  font-weight: 800;

  font-size: 20px;   /* Karten-Size (nicht 44px Section-Title) */
  line-height: 1.15;
}

/* Elementor custom_css removed from element 641b0091 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[2]/container:e28233a/elements[0]/container:5f0b175e/elements[3] */
/* Elementor Button -> Theme Button Look */
.ddk-theme-btn .elementor-button{
  position: relative;
  display: inline-block;
  overflow: hidden;
  border-radius: 30px;
 padding: 0 28px;
line-height: 46px;
font-size: 15px;
  font-weight: 600;
  font-family: var(--thm-font-2);
  color: #fff !important;

  background: transparent !important; /* kill Elementor default */
  border: none !important;
  box-shadow: none !important;
}

/* Text immer oben */
.ddk-theme-btn .elementor-button *{
  position: relative;
  z-index: 5;
}

/* roter Hintergrund wie Theme */
.ddk-theme-btn .elementor-button:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:30px;
  background: var(--thm-base);
  z-index:0;
  transition-duration: 800ms;
  transform: scaleX(1);
}

/* schwarzer Hover-Bogen wie Theme */
.ddk-theme-btn .elementor-button:before{
  content:""; 
  position:absolute; 
  top:110px;
  left:-50px;
  right:-50px;
  height:170px;
  background: var(--thm-black);
  border-radius:50%;
  transform: translateY(-55px);
  z-index:1;
  transition-duration: 800ms;
}

/* Hover */
.ddk-theme-btn .elementor-button:hover:before{
  top:0%; 
  left:-70px;
  right:-70px;
}
.ddk-theme-btn .elementor-button:hover:after{
  transform: scaleX(0);
  transition-duration: 1500ms;
}

/* Elementor custom_css removed from element 6d364eb5 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[3]/container:cdef6c3/elements[0] */
/* Wrapper */
.ddk-nav{
  background: #fff;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 1px 20px rgba(0,0,0,.08);
}

/* Head */
.ddk-nav__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding-bottom: 6px;
}

/*CHIP Navigation */
.ddk-nav__title .elementor-heading-title{
  margin:0 !important;
  font-family: var(--thm-font-2);
  font-weight: 800;
  font-size: 18px;
  color: var(--thm-black);
}

.ddk-nav__chip .elementor-button{
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.55) !important;
  font-weight: 700;
  font-size: 11px;
  line-height: 1.2;
  text-transform: none;
}

.ddk-nav__chip .elementor-button{
  position: relative;
}

.ddk-nav__chip .elementor-button:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  border-radius: 2px;
  background: rgba(var(--thm-base-rgb), .45);
}

.ddk-nav__chip .elementor-button:hover{
  color: rgba(0,0,0,.70) !important;
}

.ddk-nav__chip .elementor-button:hover:after{
  background: var(--thm-base);
}





/* List */
.ddk-nav__list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

/* Item */
.ddk-nav__item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.ddk-nav__item:hover{
  transform: translateY(-1px);
  
  border-color: rgba(var(--thm-base-rgb), .35);
}

/* ============ THEME ICON LOOK (like .icon .shape1:after) ============ */

/* Icon-Wrapper größer + “icon holder” */
.ddk-nav__icon{
  position: relative;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 16px;                /* leicht squircle, wirkt moderner */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: transparent;            /* Background kommt über ::after */
}

/* Shape (entspricht .shape1::after) */
.ddk-nav__icon:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 16px;
  background: rgba(var(--thm-base-rgb), .10);   /* “theme light” */
  border: 1px solid rgba(var(--thm-base-rgb), .18);
  transition: all .35s ease;
  z-index: 0;
}

/* Icon selbst (entspricht flaticon color/size) */
.ddk-nav__icon i,
.ddk-nav__icon svg{
  position: relative;
  z-index: 2;
  width: 25px;
  height: 25px;
  font-size: 30px;
  color: var(--thm-base);
  transition: all .35s ease;
}

/* Hover: Shape wird kräftig (wie Theme “after”), Icon wird weiß */
.ddk-nav__item:hover .ddk-nav__icon:after{
  background: var(--thm-base);
  border-color: rgba(var(--thm-base-rgb), .55);
  transform: translateY(-1px);
}

.ddk-nav__item:hover .ddk-nav__icon i,
.ddk-nav__item:hover .ddk-nav__icon svg{
  color: #fff;
  transform: scale(1.03);
}

/* Optional: sehr subtiler “Glow” wie Premium UI */
.ddk-nav__item:hover .ddk-nav__icon{
  filter: drop-shadow(0 10px 18px rgba(var(--thm-base-rgb), .18));
}



/* Text */
.ddk-nav__text{
  display:flex;
  flex-direction:column;
  gap:2px;
  flex: 1;
  min-width: 0;
}

.ddk-nav__item-title .elementor-heading-title{
  margin:0 !important;
  font-family: var(--thm-font-2);
  font-weight: 800;
  font-size: 15px;
  color: var(--thm-black);
}

.ddk-nav__item-sub{
  color: rgba(0,0,0,.60);
  font-size: 13px;
  line-height: 1.35;
}
.ddk-nav__item-sub p{ margin:0 !important; }

/* Arrow */
.ddk-nav__arrow{
  width: 24px;
  height: 24px;
  flex: 0 0 50px;
  border-radius: 10px;
}

.ddk-nav__arrow i,
.ddk-nav__arrow svg{
  width: 13px;
  height: 13px;
  font-size: 28px;
}
/* Items wie Theme-Liste statt Card */
.ddk-nav__item{
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  padding: 17px 0 !important;
  border-bottom: 1px solid #e5e5e5 !important;
}


/* Titel beim Hover rot */
.ddk-nav__item:hover .ddk-nav__item-title .elementor-heading-title{
  color: var(--thm-base) !important;
}

/* Pfeil: Basis (damit Animation sichtbar ist) */
.ddk-nav__arrow{
  transition: transform .18s ease, color .18s ease !important;
  transform-origin: center;
  will-change: transform;
}

/* Pfeil: Icon muss currentColor übernehmen */
.ddk-nav__arrow i,
.ddk-nav__arrow svg{
  color: inherit !important;
}
.ddk-nav__arrow svg{ fill: currentColor !important; }

/* Pfeil beim Hover: rot + grow + mini-rotation */
.ddk-nav__item:hover .ddk-nav__arrow{
  color: var(--thm-base) !important;
  transform: scale(1.12) rotate(12deg);
}
.ddk-nav__item:hover .ddk-nav__arrow,
.ddk-nav__item:hover .ddk-nav__arrow .elementor-icon{
  color: var(--thm-base) !important;
  transform: scale(1.12) rotate(12deg);
}
.ddk-nav__arrow .elementor-icon svg{ fill: currentColor !important; }
/* Kein Drehen mehr – Pfeil bleibt immer nach rechts */
.ddk-nav__arrow,
.ddk-nav__arrow .elementor-icon{
  transform: none !important;
  rotate: 0deg !important;
  animation: none !important;
}
/* Hover: rot + grow, aber ohne Rotation */
.ddk-nav__arrow,
.ddk-nav__arrow .elementor-icon{
  transition: color .18s ease, transform .18s ease !important;
  transform-origin: center;
}

.ddk-nav__arrow svg{ fill: currentColor !important; }

.ddk-nav__item:hover .ddk-nav__arrow,
.ddk-nav__item:hover .ddk-nav__arrow .elementor-icon{
  color: var(--thm-base) !important;
  transform: scale(1.12) !important;
}

/* Elementor custom_css removed from element 20dd98b6 @ content[2]/container:59b097e3/elements[0]/container:6660ca92/elements[3]/container:cdef6c3/elements[0]/container:6d364eb5/elements[2] */
/* Elementor Button -> Theme Button Look */
.ddk-theme-btn .elementor-button{
  position: relative;
  display: inline-block;
  overflow: hidden;
  border-radius: 30px;
 padding: 0 28px;
line-height: 46px;
font-size: 15px;
  font-weight: 600;
  font-family: var(--thm-font-2);
  color: #fff !important;

  background: transparent !important; /* kill Elementor default */
  border: none !important;
  box-shadow: none !important;
}

/* Text immer oben */
.ddk-theme-btn .elementor-button *{
  position: relative;
  z-index: 5;
}

/* roter Hintergrund wie Theme */
.ddk-theme-btn .elementor-button:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:30px;
  background: var(--thm-base);
  z-index:0;
  transition-duration: 800ms;
  transform: scaleX(1);
}

/* schwarzer Hover-Bogen wie Theme */
.ddk-theme-btn .elementor-button:before{
  content:"";
  position:absolute;
  top:110px;
  left:-50px;
  right:-50px;
  height:170px;
  background: var(--thm-black);
  border-radius:50%;
  transform: translateY(-55px);
  z-index:1;
  transition-duration: 800ms;
}

/* Hover */
.ddk-theme-btn .elementor-button:hover:before{
  top:0%;
  left:-70px;
  right:-70px;
}
.ddk-theme-btn .elementor-button:hover:after{
  transform: scaleX(0);
  transition-duration: 1500ms;
}

/* Elementor custom_css removed from element 3daa7624 @ content[2]/container:59b097e3/elements[1]/container:24e65742/elements[0] */
/* Pflichtblock – Basis */
.ddk-pflichtblock{
  padding: 20px 0;

}

/* Titelbereich: nutze Theme-Optik von .sec-title */
.ddk-pflichtblock .sec-title{
  margin-top: 4px;
  padding-bottom: 0px; /* etwas kompakter als Theme-default 50px */
  line-height: 0;
}

/* Kicker wie im Theme: .sec-title .sub-title p */
.ddk-pflichtblock .sub-title{
  padding-bottom: 3px;
}
.ddk-pflichtblock .sub-title .elementor-heading-title{
  color: var(--thm-base);
  font-size: 16px;
  line-height: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

/* H2 wie Theme .sec-title h2 */
.ddk-pflichtblock .ddk-pflichtblock__h2 .elementor-heading-title{
  color: var(--thm-black);
  font-family: var(--thm-font-2);
  font-size: 44px;
  line-height: 1.2em;
  font-weight: 800;
  text-transform: none;
}

.ddk-pflichtblock .ddk-pflichtblock__text p{
  margin: 0 0 6px 0;   /* statt 12 */
}
.ddk-pflichtblock .ddk-pflichtblock__text p:last-child{
  margin-bottom: 0;
}

.ddk-pflichtblock .ddk-pflichtblock__text p{
  margin: 0 0 12px 0;
  color: var(--thm-gray);
  font-size: 15px;
  line-height: 26px;
}


/* Responsive */
@media (max-width: 1024px){
  .ddk-pflichtblock{
    padding: 60px 0;
  }
  .ddk-pflichtblock .ddk-pflichtblock__h2 .elementor-heading-title{
    font-size: 36px;
  }
  .ddk-pflichtblock .ddk-pflichtblock__bullets .elementor-icon-list-items{
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px){
  .ddk-pflichtblock{
    padding: 46px 0;
  }
  .ddk-pflichtblock .ddk-pflichtblock__h2 .elementor-heading-title{
    font-size: 30px;
  }
}
@media (max-width: 767px){
  /* nur die äußere Box */
  .ddk-pflichtblock{
    border-radius: 0 !important;
    box-shadow: none !important;
  }
}

/* Elementor custom_css removed from element 38057e85 @ content[2]/container:59b097e3/elements[1]/container:24e65742/elements[0]/container:3daa7624/elements[0] */
/* =========================================================
   DDK Compare – Vertical (untereinander), clean & theme-like
   Klassen:
   - ddk-compare__grid
   - ddk-compare__card (+ optional is-repair)
   - ddk-compare__top
   - ddk-compare__title
   - ddk-compare__badge
   - ddk-compare__label
   - ddk-compare__list (+ is-plus / is-minus)
   - ddk-compare__hint
========================================================= */

/* Karten untereinander */
.ddk-compare__grid{
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* Card Basis (FINAL) */
.ddk-compare__card{
  position: relative;
  width: 100%;
  background: #fff;
  border-radius: 22px;
  padding: 22px 22px 18px;
  overflow: hidden;

  border: 1px solid rgba(0,0,0,0.07);
  box-shadow: 0 8px 22px rgba(0,0,0,0.04);
  transition: transform .22s ease, box-shadow .22s ease;
}

/* Hover (FINAL) */
.ddk-compare__card:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.06);
}

/* Akzentlinie oben (Default = Theme-Rot) */
.ddk-compare__card:before{
  content:"";
  position:absolute;
  top:0; left:0;
  width:100%;
  height:6px;
  background: rgba(var(--thm-base-rgb), 0.18);
}

/* Reparatur: grünlicher Akzent */
.ddk-compare__card.is-repair:before{
  background: rgba(0, 150, 90, 0.20);
}

/* Kopfzeile: Titel + Badge */
.ddk-compare__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  margin-bottom: 10px;
}

/* Titel */
.ddk-compare__title .elementor-heading-title,
.ddk-compare__title{
  margin: 0 !important;
  font-family: var(--thm-font-2);
  font-weight: 800;
  font-size: 20px;
  line-height: 1.2em;
  color: var(--thm-black);
}

/* Badge (FINAL: kleiner) */
.ddk-compare__badge{
  display:inline-flex;
  align-items:center;
  height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  white-space: nowrap;

  background: rgba(0,0,0,0.04);
  color: var(--thm-black);
}

/* Badge <p> Reset (Texteditor) */
.ddk-compare__badge p{
  margin: 0 !important;
}

/* Badge Reparatur */
.ddk-compare__card.is-repair .ddk-compare__badge{
  background: rgba(0, 150, 90, 0.10);
  color: #0d5a3a;
}

/* Inneres 2-Spalten Raster in der Card erzwingen */
.ddk-compare__card .e-grid{
  --e-con-grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  --e-con-grid-template-rows: auto !important;
  column-gap: 40px !important;
  row-gap: 10px !important;
}

/* Label (Sinnvoll / Nicht ausreichend) */
.ddk-compare__label .elementor-heading-title,
.ddk-compare__label{
  margin: 5px 0 8px !important;
  font-family: var(--thm-font-2);
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--thm-black);
}

/* Icon-List Reset */
.ddk-compare__list .elementor-icon-list-items{
  margin: 0 !important;
  padding: 0 !important;
}

.ddk-compare__list .elementor-icon-list-item{
  align-items:flex-start;
  margin: 0 0 6px 0 !important;
}

.ddk-compare__list .elementor-icon-list-item:last-child{
  margin-bottom: 0 !important;
}

/* Icon + Text Alignment */
.ddk-compare__list .elementor-icon-list-icon{
  min-width: 18px;
  margin-top: 2px;
}

/* Text (FINAL: dunkler als thm-gray) */
.ddk-compare__list .elementor-icon-list-text{
  color: rgba(37,38,40,.75);
  line-height: 1.65em;
}

/* Plus-Liste Icons (Default = Theme-Rot, Repair = Grün) */
.ddk-compare__list.is-plus .elementor-icon-list-icon i,
.ddk-compare__list.is-plus .elementor-icon-list-icon svg{
  color: rgba(var(--thm-base-rgb), 0.92);
  fill: rgba(var(--thm-base-rgb), 0.92);
  opacity: .85;
}

.ddk-compare__card.is-repair .ddk-compare__list.is-plus .elementor-icon-list-icon i,
.ddk-compare__card.is-repair .ddk-compare__list.is-plus .elementor-icon-list-icon svg{
  color: rgba(0, 150, 90, 0.92);
  fill: rgba(0, 150, 90, 0.92);
  opacity: .85;
}

/* Minus-Liste Icons: Theme-Rot (FINAL: etwas softer) */
.ddk-compare__list.is-minus .elementor-icon-list-icon i,
.ddk-compare__list.is-minus .elementor-icon-list-icon svg{
  color: rgba(var(--thm-base-rgb), 0.92);
  fill: rgba(var(--thm-base-rgb), 0.92);
  opacity: .75;
}

/* Hinweis unten (kompakt) */
.ddk-compare__hint{
  margin-top: 10px;
  padding: 8px 12px;
  border-top: none;
  border-radius: 12px;
  background: rgba(0, 150, 90, 0.09);
  line-height: 1.35em;
  font-weight: 700;
  color: var(--thm-black);
}

.ddk-compare__hint p{
  margin: 0 !important;
}

/* Elementor custom_css removed from element 68f885f7 @ content[2]/container:59b097e3/elements[1]/container:24e65742/elements[0]/container:3daa7624/elements[0]/container:38057e85/elements[4]/container:6cf901a7/elements[0]/container:64d95706/elements[0]/container:42d74d38/elements[0]/container:117b0c29/elements[0] */
.ddk-compare__title-icon{
  width: 15px;
  height: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}

.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  width: 35px;
  height: 35px;
  color: rgba(var(--thm-base-rgb), .85);
  fill: rgba(var(--thm-base-rgb), .85);
}
.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(37,38,40,.7);
  fill: rgba(37,38,40,.7);
}

/* Elementor custom_css removed from element 6794693c @ content[3] */
.ddk-pflichtblock{
  padding: 20px 20px;

}/* ==============================
   CORPORATE PREMIUM (SERIOUS)
   Scope: .rp-sec + .rp-grid
   ============================== */

/* Section: clean, no pink glow */
.rp-sec{
  position: relative;
  background: transparent;
}
.rp-sec::before,
.rp-sec::after{ content:none !important; }

/* Kicker: match corporate style (small, strict, dark) */
.rp-sec .sub-title p{
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(37,38,40,.72); /* close to --thm-black but muted */
  margin: 0 0 10px;
}

/* H2: strict, heavy, no weird spacing */
.rp-sec .ddk-pflichtblock__h2 h2{
  font-family: var(--thm-font-2);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: var(--thm-black);
  margin: 0 0 14px;
}

/* Intro text: calmer and more premium */
.rp-sec .elementor-widget-text-editor p{
  color: rgba(37,38,40,.78);
  line-height: 1.75;
  font-size: 16px;
  margin: 0;
}
.rp-sec .elementor-widget-text-editor strong{
  color: var(--thm-black);
  font-weight: 800;
}

/* Grid */
.rp-grid{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px !important;
  margin-top: 26px;
}
@media (max-width: 1024px){
  .rp-grid{ grid-template-columns: 1fr; }
}

/* Card: corporate */
.rp-symptom-card{
  position: relative;
  background: #fff;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  padding: 28px 28px 22px;
  box-shadow: 0 14px 40px rgba(2,6,23,.08);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

/* Top accent line: subtle, not loud */
.rp-symptom-card::before{
  content:"";
  position:absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: rgba(var(--thm-base-rgb), .85);
  opacity: .55;
}

.rp-symptom-card:hover{
  transform: translateY(-4px);
  border-color: rgba(15,23,42,.16);
  box-shadow: 0 22px 62px rgba(2,6,23,.12);
  
}



/* Icon: neutral, corporate */
.rp-symptom-head .elementor-icon{
  border-radius: 12px;
  background: rgba(15,23,42,.04);
  border: 1px solid rgba(15,23,42,.08);
  color: rgba(15,23,42,.78);
  box-shadow: none;
  padding: 8px;
}
.rp-symptom-head .elementor-icon{
  display: inline-flex;
  align-items: center;      /* vertikal */
  justify-content: center;  /* horizontal */
  line-height: 1;
}


/* Title */
.rp-symptom-title h4{
  font-family: var(--thm-font-2);
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.015em;
  color: var(--thm-black);
}

/* Text */
.rp-symptom-text{
  margin: 0 0 14px 0;
  color: rgba(37,38,40,.70);
  font-size: 15px;
  line-height: 1.7;
}

/* Note: clean and consistent */
.rp-symptom-note{
  margin: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(15,23,42,.08);
}
.rp-symptom-note p{
  margin: 0;
  color: rgba(37,38,40,.90);
  font-weight: 700;
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.rp-symptom-note p::before{
  content:"";
  width: 6px;
  height: 6px;
  border-radius: 99px;
  margin-top: 9px;
  background: rgba(var(--thm-base-rgb), .95);
}

/* Badge: serious label */
.rp-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap: 10px !important;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(15,23,42,.03);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: none;
}

/* badge text */
.rp-badge p{
  margin:0 !important;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(15,23,42,.70);
}

/* bar */
.rp-badge-bar{
  width: 52px;
  height: 8px;
  border-radius: 999px;
  background: rgba(15,23,42,.10);
  position: relative;
  overflow: hidden;
}
.rp-badge-bar::after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width: 56%; /* default mid */
  border-radius: 999px;
  background: rgba(var(--thm-base-rgb), .95);
}

/* LEVELS (supports your current structure too) */
.rp-badge.rp-badge--low .rp-badge-bar::after,
.rp-badge .rp-badge--low .rp-badge-bar::after{ width: 28%; opacity:.65; }

.rp-badge.rp-badge--mid .rp-badge-bar::after,
.rp-badge .rp-badge--mid .rp-badge-bar::after{ width: 56%; opacity:.85; }

.rp-badge.rp-badge--high .rp-badge-bar::after,
.rp-badge .rp-badge--high .rp-badge-bar::after{ width: 86%; opacity:1; }

/* Mobile */
@media (max-width: 767px){
  .rp-symptom-card{ padding: 22px 20px 18px; border-radius: 14px; }
  .rp-badge{ padding: 7px 10px; }
}

/* Badge soll NICHT volle Breite ziehen (shrink-to-fit) */
.rp-badge{
  display: inline-flex !important;
  width: fit-content !important;
  max-width: max-content !important;
  flex: 0 0 auto !important;   /* falls Parent flex ist */
  align-self: flex-start !important; /* falls Parent align-items:stretch nutzt */
}

/* falls dein Theme/Elementor dem direkten Container 100% gibt */
.rp-badge,
.rp-badge *{
  box-sizing: border-box;
}

/* Elementor custom_css removed from element 24e6da7 @ content[3]/container:6794693c/elements[3]/container:1562ac5e/elements[0]/container:195d728d/elements[0]/container:28fa4767/elements[0]/container:4162532c/elements[0] */
.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(var(--thm-base-rgb), .85);
  fill: rgba(var(--thm-base-rgb), .85);}

.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(37,38,40,.7);
  fill: rgba(37,38,40,.7);
}

/* Elementor custom_css removed from element 7397f255 @ content[3]/container:6794693c/elements[3]/container:1562ac5e/elements[1]/container:6091d542/elements[0]/container:7ace4f67/elements[0]/container:66a7cca8/elements[0] */
.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(var(--thm-base-rgb), .85);
  fill: rgba(var(--thm-base-rgb), .85);}

.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(37,38,40,.7);
  fill: rgba(37,38,40,.7);
}

/* Elementor custom_css removed from element 7180dfa2 @ content[3]/container:6794693c/elements[3]/container:1562ac5e/elements[2]/container:1c00fa39/elements[0]/container:537359f1/elements[0]/container:5dd0013d/elements[0] */
.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(var(--thm-base-rgb), .85);
  fill: rgba(var(--thm-base-rgb), .85);}

.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(37,38,40,.7);
  fill: rgba(37,38,40,.7);
}

/* Elementor custom_css removed from element 1ad6ab9 @ content[3]/container:6794693c/elements[3]/container:1562ac5e/elements[3]/container:66d80519/elements[0]/container:3c7d131d/elements[0]/container:e5fe21e/elements[0] */
.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(var(--thm-base-rgb), .85);
  fill: rgba(var(--thm-base-rgb), .85);}

.ddk-compare__title-icon svg,
.ddk-compare__title-icon i{
  color: rgba(37,38,40,.7);
  fill: rgba(37,38,40,.7);
}

/* Elementor custom_css removed from element 287e0512 @ content[6] */
/* ===== DDK Reviews: Section Spacing wie Theme ===== */
.ddk-sec-reviews-google{
  padding: 90px 0;
}
@media (max-width: 991px){
  .ddk-sec-reviews-google{ padding: 70px 0; }
}
@media (max-width: 767px){
  .ddk-sec-reviews-google{ padding: 55px 0; }
}

/* ===== Title Spacing fix (Kicker + H2 + Text enger & zentriert) ===== */
.ddk-sec-reviews-google .sec-title.centered{
  text-align: center;
  margin-bottom: 34px;
}
.ddk-sec-reviews-google .sec-title .sub-title{ margin-bottom: 10px; }
.ddk-sec-reviews-google .sec-title h2{ margin-bottom: 12px; }
.ddk-sec-reviews-google .sec-title .text{
  max-width: 760px;
  margin: 0 auto;
}

/* ===== Typo Guardrail: erzwinge Theme-Fonts im Block ===== */
.ddk-sec-reviews-google,
.ddk-sec-reviews-google p,
.ddk-sec-reviews-google a,
.ddk-sec-reviews-google button{
  font-family: var(--thm-font);
}
.ddk-sec-reviews-google h2,
.ddk-sec-reviews-google .ddk-gsum__num,
.ddk-sec-reviews-google .ddk-gcard__name{
  font-family: var(--thm-font-2);
}

/* Elementor custom_css removed from element 703f7100 @ content[6]/container:287e0512/elements[0] */
/* =========================
   DDK Reviews Google – FINAL
   ========================= */

/* Section spacing (Theme Rhythmus) */
.ddk-sec-reviews-google{ padding:90px 0; }
@media (max-width:991px){ .ddk-sec-reviews-google{ padding:70px 0; } }
@media (max-width:767px){ .ddk-sec-reviews-google{ padding:55px 0; } }

/* Reset nur innerhalb der Sektion */
.ddk-sec-reviews-google p{ margin:0; }

/* -------------------------
   Title (Premium + enger)
   ------------------------- */
.ddk-sec-reviews-google .sec-title.centered{
  text-align:center;
  margin-bottom:30px; /* enger: Title + Summary zusammengehörig */
  padding-bottom:0;
}
.ddk-sec-reviews-google .sec-title .sub-title{ margin:0; padding:0; }
.ddk-sec-reviews-google .sec-title .sub-title p{ margin:0 0 16px 0; }

.ddk-sec-reviews-google .sec-title h2{
  margin:0 0 8px 0;
  font-weight:700;
  letter-spacing:-0.01em;
  font-size:clamp(28px, 3.1vw, 44px);
  line-height:1.12;
}

.ddk-sec-reviews-google .sec-title .text{
  max-width:760px;
  margin:4px auto 0;
  line-height:1.6;
  opacity:1;
  color:rgba(17,17,17,.72);
}

/* Stars */
.ddk-sec-reviews-google .ddk-stars{ display:flex; gap:3px; line-height:1; }
.ddk-sec-reviews-google .ddk-stars span{ color:var(--thm-primary); font-size:16px; }
.ddk-sec-reviews-google .ddk-stars--sm span{ font-size:15px; }

/* -------------------------
   Summary Bar
   ------------------------- */
.ddk-sec-reviews-google .ddk-gsum{
  margin:0 auto 26px;
  max-width:920px;
  padding:18px 20px;
  background:#fff;
  border:1px solid rgba(var(--thm-base-rgb), .08);
  border-radius:14px;
  display:flex;
  gap:18px;
  justify-content:space-between;
  align-items:center;
}
.ddk-sec-reviews-google .ddk-gsum__left{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.ddk-sec-reviews-google .ddk-gsum__score{ display:flex; align-items:baseline; gap:6px; font-family:var(--thm-font-2); color:var(--thm-black); }
.ddk-sec-reviews-google .ddk-gsum__num{ font-size:28px; font-weight:700; line-height:1; }
.ddk-sec-reviews-google .ddk-gsum__outof{ font-size:14px; color:var(--thm-gray); }
.ddk-sec-reviews-google .ddk-gsum__based{ color:var(--thm-gray); font-size:14px; }
.ddk-sec-reviews-google .ddk-gsum__right{ display:flex; align-items:center; gap:12px; }
.ddk-sec-reviews-google .ddk-googlemark{ display:inline-flex; align-items:center; justify-content:center; transform:translateY(1px); opacity:.95; }
.ddk-sec-reviews-google .ddk-gsum__link{
  font-family:var(--thm-font);
  color:var(--thm-black);
  text-decoration:none;
  border-bottom:1px solid rgba(var(--thm-base-rgb), .18);
  transition:all .25s ease;
}
.ddk-sec-reviews-google .ddk-gsum__link:hover{ border-bottom-color:rgba(var(--thm-base-rgb), .45); }

/* Grid */
.ddk-sec-reviews-google .ddk-ggrid{ display:flex; gap:24px; flex-wrap:wrap; }

/* -------------------------
   Cards (premium ambient)
   ------------------------- */
.ddk-sec-reviews-google .ddk-gcard{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius:14px;
  padding:22px 22px 18px;
  flex:1 1 calc(33.333% - 16px);
  min-width:260px;
  display:flex;
  flex-direction:column;

  box-shadow:
    0 10px 30px rgba(17,17,17,.06),
    0 2px 10px rgba(17,17,17,.03);

  transition:transform .20s ease, box-shadow .20s ease, border-color .20s ease;
}
@media (hover:hover){
  .ddk-sec-reviews-google .ddk-gcard:hover{
    transform:translateY(-2px);
    box-shadow:
      0 14px 44px rgba(17,17,17,.08),
      0 4px 14px rgba(17,17,17,.04);
    border-color:rgba(0,0,0,.08);
  }
}

/* Card header */
.ddk-sec-reviews-google .ddk-gcard__top{ display:flex; justify-content:space-between; align-items:flex-start; gap:14px; margin-bottom:10px; }
.ddk-sec-reviews-google .ddk-gcard__who{ display:flex; gap:12px; align-items:center; }
.ddk-sec-reviews-google .ddk-gcard__avatar{
  width:34px; height:34px; border-radius:999px;
  background:rgba(227,27,35,.06);
  color:var(--thm-black);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--thm-font-2); font-weight:700;
}
.ddk-sec-reviews-google .ddk-gcard__name{ font-family:var(--thm-font-2); color:var(--thm-black); font-weight:700; font-size:16px; line-height:1.2; }
.ddk-sec-reviews-google .ddk-gcard__nameLink{ color:inherit; text-decoration:none; border-bottom:1px solid transparent; transition:all .2s ease; }
.ddk-sec-reviews-google .ddk-gcard__nameLink:hover{ border-bottom-color:rgba(var(--thm-base-rgb), .35); }
.ddk-sec-reviews-google .ddk-gcard__date{ font-size:13px; color:var(--thm-gray); }

.ddk-sec-reviews-google .ddk-gcard__badge{
  width:28px; height:28px; border-radius:999px;
  background:transparent;
  display:flex; align-items:center; justify-content:center;
}

/* Review text (dunkler + smooth toggle) */
.ddk-sec-reviews-google .ddk-gcard .ddk-stars{ margin:6px 0 12px; }

.ddk-sec-reviews-google .ddk-gcard__text{
  color:rgba(17,17,17,.78);
  line-height:1.65;
  font-size:15px;
  margin-bottom:10px;

  overflow:hidden;
  max-height:6.6em;               /* ~4 Zeilen */
  transition:max-height .35s ease;
  will-change:max-height;
}
.ddk-sec-reviews-google .ddk-gcard__text.is-open{
  overflow:hidden; /* max-height wird via JS gesetzt */
}

/* Actions */
.ddk-sec-reviews-google .ddk-gcard__actions{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.ddk-sec-reviews-google .ddk-gcard__more{
  background:transparent;
  border:0;
  padding:8px 0 0;
  cursor:pointer;
  font-family:var(--thm-font);
  color:var(--thm-black);
  text-align:left;
  opacity:.82;
  transition:opacity .2s ease, color .2s ease;
}
.ddk-sec-reviews-google .ddk-gcard__more:hover{ opacity:1; color:var(--thm-base); }
.ddk-sec-reviews-google .ddk-gcard__more::after{ content:" →"; opacity:.75; }

.ddk-sec-reviews-google .ddk-gcard__openLink{
  padding-top:8px;
  font-size:12px;
  line-height:1;
  color:var(--thm-gray);
  opacity:.75;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  transition:all .2s ease;
  white-space:nowrap;
}
.ddk-sec-reviews-google .ddk-gcard__openLink::before{ content:"↗"; font-size:12px; opacity:.75; }
.ddk-sec-reviews-google .ddk-gcard__openLink:hover{ opacity:1; color:var(--thm-base); }

/* Responsive */
@media (max-width:991px){
  .ddk-sec-reviews-google .ddk-gsum{ flex-direction:column; align-items:flex-start; }
  .ddk-sec-reviews-google .ddk-gcard{ flex:1 1 calc(50% - 12px); }
}
@media (max-width:767px){
  .ddk-sec-reviews-google .ddk-ggrid{ gap:16px; }
  .ddk-sec-reviews-google .ddk-gcard{ flex:1 1 100%; }
}

/* -------------------------
   Mobile Deck (Stacked Cards)
   ------------------------- */
.ddk-sec-reviews-google .ddk-deck-nav{ display:none; }

@media (max-width:767px){
  .ddk-sec-reviews-google .ddk-ggrid{
    position:relative;
    display:block;
    max-width:420px;
    margin:0 auto;
    padding-bottom:14px;
  }

  .ddk-sec-reviews-google .ddk-gcard{
    position:absolute;
    left:0; right:0;
    top:0;
    width:100%;
    opacity:0;
    transform:translateY(18px) scale(.98);
    pointer-events:none;
    transition:
      transform .42s cubic-bezier(.2,.9,.2,1),
      opacity  .42s ease,
      filter   .42s ease;
    will-change:transform, opacity;
  }

  .ddk-sec-reviews-google .ddk-gcard.is-active{
    position:relative;
    opacity:1;
    transform:translateY(0) scale(1);
    pointer-events:auto;
    z-index:3;
    will-change:transform;
    transform:translateZ(0);
    backface-visibility:hidden;
  }

  .ddk-sec-reviews-google .ddk-gcard.is-next{
    opacity:1;
    transform:translateY(14px) scale(.98);
    z-index:2;
    pointer-events:none;
    filter:blur(.2px);
    box-shadow:0 8px 18px rgba(0,0,0,.08);
  }

  .ddk-sec-reviews-google .ddk-gcard.is-next2{
    opacity:1;
    transform:translateY(26px) scale(.965);
    z-index:1;
    pointer-events:none;
    filter:blur(.2px);
    box-shadow:0 6px 14px rgba(0,0,0,.06);
  }

  .ddk-sec-reviews-google .ddk-ggrid.is-anim-next .ddk-gcard.is-active{
    transform:translateX(-10px) translateY(-4px) scale(.995);
    opacity:0;
  }
  .ddk-sec-reviews-google .ddk-ggrid.is-anim-prev .ddk-gcard.is-active{
    transform:translateX(10px) translateY(-4px) scale(.995);
    opacity:0;
  }
  .ddk-sec-reviews-google .ddk-ggrid.is-anim-next .ddk-gcard.is-next,
  .ddk-sec-reviews-google .ddk-ggrid.is-anim-prev .ddk-gcard.is-next{
    transform:translateY(0) scale(1);
  }

  .ddk-sec-reviews-google .ddk-deck-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-top:14px;
    user-select:none;
  }

  .ddk-sec-reviews-google .ddk-deck-btn{
    width:42px; height:42px;
    border-radius:999px;
    border:1px solid rgba(var(--thm-base-rgb), .10);
    background:#fff;
    box-shadow:0 10px 22px rgba(0,0,0,.06);
    color:var(--thm-black);
    font-size:20px;
    line-height:1;
    cursor:pointer;
    transition:transform .2s ease, box-shadow .2s ease;
  }
  .ddk-sec-reviews-google .ddk-deck-btn:active{
    transform:scale(.94);
    box-shadow:0 6px 14px rgba(0,0,0,.12);
  }

  .ddk-sec-reviews-google .ddk-deck-ind{
    font-size:13px;
    color:var(--thm-gray);
    min-width:70px;
    text-align:center;
  }
}

/* -------------------------
   Trustbar (ultra-clean)
   ------------------------- */
.ddk-sec-reviews-google .ddk-trustbar{
  margin:18px auto 16px;
  max-width:920px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
}

.ddk-sec-reviews-google .ddk-trustbar__item{
  background:#fff;
  border:1px solid rgba(227,27,35,.04);
  border-radius:999px;
  padding:6px 10px;
  display:flex;
  align-items:center;
  gap:10px;
  box-shadow:0 6px 14px rgba(0,0,0,.02);
}

.ddk-sec-reviews-google .ddk-trustbar__icon{
  width:22px;
  height:22px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(227,27,35,.035);
  font-size:12px;
}

.ddk-sec-reviews-google .ddk-trustbar__text{
  font-size:12px;
  font-weight:500;
  color:rgba(17,17,17,.64);
  line-height:1.15;
}

/* -------------------------
   CTA (clean + black hover)
   ------------------------- */
.ddk-sec-reviews-google .ddk-reviews-cta{
  margin-top:30px;
  text-align:center;
}

.ddk-sec-reviews-google .ddk-reviews-cta__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:50px;
  padding:0 28px;
  border-radius:999px;

  background:#fff;
  color:var(--thm-black);
  text-decoration:none;

  font-family:var(--thm-font-2);
  font-weight:650;
  font-size:15px;
  letter-spacing:-0.01em;

  border:1px solid rgba(17,17,17,.18);
  box-shadow:0 12px 30px rgba(17,17,17,.10);

  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}

.ddk-sec-reviews-google .ddk-reviews-cta__btn:hover{
  transform:translateY(-1px);
  background:#111;
  color:#fff;
  border-color:rgba(17,17,17,.55);
  box-shadow:0 18px 44px rgba(17,17,17,.18);
}

.ddk-sec-reviews-google .ddk-reviews-cta__btn:active{
  transform:translateY(0);
  background:#0b0b0b;
  color:#fff;
  box-shadow:0 12px 30px rgba(17,17,17,.14);
}

.ddk-sec-reviews-google .ddk-reviews-cta__btn:focus{ outline:none; }
.ddk-sec-reviews-google .ddk-reviews-cta__btn:focus-visible{
  box-shadow:0 0 0 4px rgba(17,17,17,.18), 0 12px 30px rgba(17,17,17,.10);
  border-color:rgba(17,17,17,.55);
}

.ddk-sec-reviews-google .ddk-reviews-cta__hint{
  margin-top:8px;
  font-size:12px;
  font-weight:400;
  color:rgba(17,17,17,.55);
}

@media (max-width:767px){
  .ddk-sec-reviews-google .ddk-reviews-cta__btn{
    width:100%;
    max-width:420px;
  }
}
/* =========================
   DDK Reviews Google – Mobile Patch
   (nur max-width:767px)
   ========================= */
@media (max-width:767px){

  /* 1) Summary kompakter: wirkt wie Info-Badge */
  .ddk-sec-reviews-google .ddk-gsum{
    padding:12px 14px;            /* weniger vertikal */
    gap:10px;
    margin:0 auto 16px;           /* enger zum Deck */
    border-radius:12px;
  }

  /* links kompakter */
  .ddk-sec-reviews-google .ddk-gsum__left{
    gap:10px;
    flex-wrap:wrap;
  }

  /* Score etwas kleiner */
  .ddk-sec-reviews-google .ddk-gsum__num{ font-size:24px; }
  .ddk-sec-reviews-google .ddk-gsum__outof{ font-size:12px; }

  /* Sterne + "Basierend auf ..." in eine Zeile */
  .ddk-sec-reviews-google .ddk-gsum__left .ddk-stars{
    order:3;
    display:inline-flex;
    align-items:center;
    transform:translateY(1px);
  }
  .ddk-sec-reviews-google .ddk-gsum__based{
    order:4;
    font-size:12px;
    white-space:nowrap;
  }

  /* rechts: Google-Link kleiner, unter dem Icon */
  .ddk-sec-reviews-google .ddk-gsum__right{
    gap:6px;
    align-items:flex-start;
  }
  .ddk-sec-reviews-google .ddk-googlemark svg{
    width:26px; height:26px;
  }
  .ddk-sec-reviews-google .ddk-gsum__link{
    font-size:12px;
    line-height:1.2;
    opacity:.85;
    border-bottom-color:rgba(var(--thm-base-rgb), .14);
    display:block;
    margin-top:2px;
  }

  /* Optional: wenn es auf sehr kleinen Geräten zu eng wird */
  @media (max-width:380px){
    .ddk-sec-reviews-google .ddk-gsum__based{ white-space:normal; }
  }


  /* 3) Deck-Navigation näher an die Karten */
  .ddk-sec-reviews-google .ddk-ggrid{
    padding-bottom:8px;           /* weniger "Boden" unterm Deck */
  }
  .ddk-sec-reviews-google .ddk-deck-nav{
    margin-top:8px;              /* war 14px */
    gap:10px;
  }
  .ddk-sec-reviews-google .ddk-deck-btn{
    width:40px; height:40px;     /* minimal kompakter */
  }
  .ddk-sec-reviews-google .ddk-deck-ind{
    font-size:12px;
    min-width:62px;
  }


  /* 4) Trustbar auf Mobile: default ausblenden (cleaner) */
  .ddk-sec-reviews-google .ddk-trustbar{
    display:none;
  }

  /* CTA etwas näher (weil Trustbar weg ist) */
  .ddk-sec-reviews-google .ddk-reviews-cta{
    margin-top:18px;             /* war 30px */
  }
}
@media (max-width:767px){

  /* Mehr Luft unter dem Deck, damit peek-cards + Schatten nicht in die Nav rutschen */
  .ddk-sec-reviews-google .ddk-ggrid{
    padding-bottom:34px;   /* war 14px / 8px – jetzt genug Reserve */
    margin-bottom:6px;
  }

  /* Nav etwas weiter weg von den Karten */
  .ddk-sec-reviews-google .ddk-deck-nav{
    margin-top:14px;       /* war 14px (oder in deinem Patch 8px) – hier bewusst mehr Luft */
    position:relative;
    z-index:5;             /* sicher über Schatten */
  }

  /* Optional: wenn es immer noch eng wirkt → aktive Karte minimal „anheben“ */
  /* .ddk-sec-reviews-google .ddk-gcard.is-active{ margin-bottom:6px; } */
}
@media (max-width:767px){

  /* Summary-Box auf Mobile weg (sonst redundant) */
  .ddk-sec-reviews-google .ddk-gsum{ display:none; }

  /* Mobile Google Chip */
  .ddk-sec-reviews-google .ddk-gchip{
    max-width:420px;
    margin:6px auto 16px;          /* direkt unter Subline */
    padding:10px 14px;
    display:flex;
    align-items:center;
    gap:10px;

    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:999px;

    text-decoration:none;
    color:var(--thm-black);

    box-shadow:0 8px 18px rgba(17,17,17,.05); /* sehr dezent */
  }

  .ddk-sec-reviews-google .ddk-gchip__g{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    opacity:.95;
    transform:translateY(1px);
    flex:0 0 auto;
  }

  .ddk-sec-reviews-google .ddk-gchip__stars{
    display:inline-flex;
    gap:2px;
    flex:0 0 auto;
  }
  .ddk-sec-reviews-google .ddk-gchip__stars span{ font-size:14px; }

  .ddk-sec-reviews-google .ddk-gchip__txt{
    display:flex;
    align-items:baseline;
    gap:8px;
    min-width:0;
    flex:1 1 auto;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .ddk-sec-reviews-google .ddk-gchip__score{
    font-family:var(--thm-font-2);
    font-weight:700;
    letter-spacing:-0.01em;
  }
  .ddk-sec-reviews-google .ddk-gchip__sep{
    opacity:.45;
  }
  .ddk-sec-reviews-google .ddk-gchip__count{
    font-size:13px;
    color:rgba(17,17,17,.70);
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .ddk-sec-reviews-google .ddk-gchip__chev{
    flex:0 0 auto;
    font-size:18px;
    opacity:.55;
    transform:translateY(-1px);
  }

  /* Tap feel */
  .ddk-sec-reviews-google .ddk-gchip:active{
    transform:scale(.99);
  }
}
/* Google Chip: default AUS (Desktop/Tablet) */
.ddk-sec-reviews-google .ddk-gchip{ display:none; }

@media (max-width:767px){
  .ddk-sec-reviews-google .ddk-gchip{ display:flex; }
}
@media (max-width:767px){

  /* noch badge-artiger */
  .ddk-sec-reviews-google .ddk-gchip{
    padding:8px 12px;        /* war 10px 14px */
    gap:8px;                 /* war 10px */
    box-shadow:0 6px 14px rgba(17,17,17,.04); /* noch ruhiger */
  }

  .ddk-sec-reviews-google .ddk-gchip__count{
    font-size:13px;
    color:rgba(17,17,17,.68);
  }

  .ddk-sec-reviews-google .ddk-gchip__chev{
    font-size:17px;
    opacity:.5;
  }
}
@media (max-width:767px){

  /* Mehr Luft NACH dem Slider (Nav) Richtung CTA */
  .ddk-sec-reviews-google .ddk-deck-nav{
    margin-bottom:40px;  /* neu: Abstand nach unten */
  }

  /* Falls du Trustbar auf Mobile ausgeblendet hast, CTA trotzdem nicht zu nah */
  .ddk-sec-reviews-google .ddk-reviews-cta{
    margin-top:26px;     /* war 18px/30px – hier etwas mehr Luft */
  }
}


/* ===== Extracted from <style> blocks inside HTML widgets ===== */

/* HTML-widget <style> removed from element 35d9cbb1 @ content[4]/container:500a6261/elements[0]/container:1184e028/elements[0] */
.ddk-cta-band{
    --bg1: #14161a;
    --bg2: #0e1013;
    --red: #e51b23;          /* DDK Rot */
    --red2:#b90f16;
    --txt: #ffffff;
    --muted: rgba(255,255,255,.78);
    --line: rgba(255,255,255,.10);
    --radius: 18px;

    width: 100%;
    padding: 18px 0;
  }

  .ddk-cta-band__inner{
    position: relative;
    overflow: hidden;
    border-radius: var(--radius);
    color: var(--txt);

    background:
      radial-gradient(900px 260px at 15% -40%, rgba(229,27,35,.20) 0%, rgba(229,27,35,0) 60%),
      radial-gradient(700px 280px at 85% -40%, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 55%),
      linear-gradient(180deg, var(--bg1) 0%, var(--bg2) 100%);

    border: 1px solid rgba(255,255,255,.08);
    box-shadow: 0 18px 50px rgba(0,0,0,.25);
    padding: 22px 22px;
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 22px;
    align-items: center;
  }

  .ddk-cta-band__inner::after{
    content:"";
    position:absolute;
    inset:0;
    background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 18px 18px;
    opacity:.10;
    pointer-events:none;
    mix-blend-mode: overlay;
  }

  .ddk-cta-band__left{
    position: relative;
    z-index: 1;
  }

  .ddk-cta-band__title{
    margin: 0 0 10px 0;
    font-size: clamp(18px, 2.0vw, 24px);
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -0.01em;
  }

  .ddk-cta-band__text{
    margin: 0;
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--muted);
    max-width: 62ch;
  }

  /* Abstand zwischen den beiden Absätzen links */
  .ddk-cta-band__left .ddk-cta-band__text + .ddk-cta-band__text{
    margin-top: 10px;
  }

  .ddk-cta-band__right{
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
    justify-items: start;
  }

  .ddk-cta-band__list{
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
  }

  .ddk-cta-band__list li{
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 10px;
    align-items: start;
    color: rgba(255,255,255,.92);
    font-size: 14px;
    line-height: 1.35;
  }

  .ddk-cta-band__icon{
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 13px;
    color: #fff;
    background: rgba(229,27,35,.22);
    border: 1px solid rgba(229,27,35,.35);
    transform: translateY(1px);
  }

  .ddk-cta-band__btn{
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-radius: 14px;
    text-decoration: none;
    color: #fff;
    font-weight: 900;
    font-size: 14px;
    background: linear-gradient(180deg, var(--red) 0%, var(--red2) 100%);
    box-shadow: 0 14px 28px rgba(229,27,35,.26);
    border: 1px solid rgba(255,255,255,.10);
    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
    white-space: nowrap;
  }

  /* Wichtig: Textfarbe beim Hover NICHT blau werden lassen (Theme-Link-Hover überschreiben) */
  .ddk-cta-band__btn,
  .ddk-cta-band__btn:visited,
  .ddk-cta-band__btn:hover,
  .ddk-cta-band__btn:active,
  .ddk-cta-band__btn:focus,
  .ddk-cta-band__btn:focus-visible{
    color: #fff !important;
    text-decoration: none !important;
  }

  .ddk-cta-band__btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(229,27,35,.30);
    filter: brightness(1.02);
  }

  .ddk-cta-band__arrow{
    display:inline-flex;
    font-size: 18px;
    transform: translateY(1px);
  }

  @media (max-width: 860px){
    .ddk-cta-band__inner{
      grid-template-columns: 1fr;
      gap: 16px;
      padding: 18px 18px;
    }
    .ddk-cta-band__right{
      border-top: 1px solid var(--line);
      padding-top: 14px;
    }
    .ddk-cta-band__btn{
      width: 100%;
      justify-content: center;
    }
  }/* End custom CSS */