@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap;}
@font-face{font-family:'Raleway';src:url('../fonts/raleway-v34-latin-900.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap;}

:root{
  --dc-grund:#0A0A0A;
  --dc-flaeche-1:#101012;
  --dc-flaeche-2:#161619;
  --dc-flaeche-3:#1E1E22;
  --dc-linie:rgba(255,255,255,.09);
  --dc-linie-aktiv:rgba(255,112,7,.45);
  --dc-orange:#FF7007;
  --dc-orange-hell:#FF8524;
  --dc-orange-tief:#E8620A;
  --dc-orange-schwach:rgba(255,112,7,.14);
  --dc-orange-dunkel:#B04400;
  --dc-text-stark:#FFFFFF;
  --dc-text:rgba(255,255,255,.78);
  --dc-text-schwach:rgba(255,255,255,.55);
  --dc-hell-flaeche:#F5F4F0;
  --dc-hell-text:#0E0E0E;
  --dc-hell-text-schwach:#5A5A5A;
  --dc-breite:1200px;
  --dc-prosa:680px;
  --dc-rand:24px;
  --dc-r-karte:14px;
  --dc-r-gross:22px;
  --dc-r-button:8px;
  --dc-raster:28px;
  --dc-ease:cubic-bezier(.22,.61,.36,1);
}

@media(min-width:768px){ :root{ --dc-rand:40px } }
@media(min-width:1280px){ :root{ --dc-rand:64px } }

/* Grundlage */

body.dc{
  background-color:var(--dc-grund);
  font-family:'Raleway',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}

body.dc h1,body.dc h2,body.dc h3,body.dc h4{
  font-family:'Raleway',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  overflow-wrap:break-word;
  hyphens:manual;
}
body.dc h1,body.dc h2{ text-wrap:balance }
body.dc h3,body.dc h4{ text-wrap:pretty }

body.dc :focus-visible{
  outline:3px solid var(--dc-orange);
  outline-offset:3px;
  border-radius:4px;
}

body.dc .et_pb_text_inner > p:last-child{ margin-bottom:0 }

/* Gemeinsames Seitenraster — Kopf, Inhalt und Fuss auf denselben Aussenachsen */

body.dc .et_pb_section{ padding-inline:var(--dc-rand) }

body.dc .et_pb_section > .et_pb_row,
body.dc .et-l--header .et_pb_section > .et_pb_row,
body.dc .et-l--footer .et_pb_section > .et_pb_row{
  width:100%;
  max-width:var(--dc-breite);
  margin-inline:auto;
  padding-inline:0;
}

body.dc .dc-prosa{ max-width:var(--dc-prosa) }

/* Gerahmte Felder — Funktionen, Anwendungsfaelle, FAQ */

body.dc .dc-rahmen{
  max-width:var(--dc-breite);
  margin-inline:auto;
  border-radius:var(--dc-r-gross);
  border:1px solid var(--dc-linie);
  background-color:var(--dc-flaeche-1);
}

/* Rasterreihen — Divis columnStructure bleibt in D5 wirkungslos */

body.dc .dc-cards-3,
body.dc .dc-cards-4,
body.dc .dc-badges,
body.dc .dc-stats,
body.dc .dc-hero-row,
body.dc .dc-widget-row,
body.dc .dc-backup-row{
  display:grid;
  align-items:stretch;
  gap:var(--dc-raster);
}

body.dc .dc-cards-3{ grid-template-columns:repeat(3,1fr) }
body.dc .dc-cards-4{ grid-template-columns:repeat(4,1fr) }
body.dc .dc-badges{ grid-template-columns:repeat(5,1fr) }
body.dc .dc-stats{ grid-template-columns:repeat(3,1fr); gap:1px }
body.dc .dc-hero-row{ grid-template-columns:1fr 1.05fr; gap:72px; align-items:center }
body.dc .dc-widget-row{ grid-template-columns:1fr 1fr; gap:64px; align-items:center }
body.dc .dc-backup-row{ grid-template-columns:1fr 1fr; gap:64px; align-items:start }

body.dc .dc-cards-3 > .et_pb_column,
body.dc .dc-cards-4 > .et_pb_column,
body.dc .dc-badges > .et_pb_column,
body.dc .dc-stats > .et_pb_column,
body.dc .dc-hero-row > .et_pb_column,
body.dc .dc-widget-row > .et_pb_column,
body.dc .dc-backup-row > .et_pb_column{
  width:auto !important;
  max-width:none !important;
  min-width:0;
  margin:0 !important;
  float:none;
}

@media(max-width:1024px){
  body.dc .dc-cards-3,
  body.dc .dc-cards-4,
  body.dc .dc-badges{ grid-template-columns:repeat(2,1fr) }
  body.dc .dc-hero-row,
  body.dc .dc-widget-row,
  body.dc .dc-backup-row{ grid-template-columns:1fr; gap:64px }
}

@media(max-width:600px){
  body.dc .dc-cards-3,
  body.dc .dc-cards-4,
  body.dc .dc-badges,
  body.dc .dc-stats{ grid-template-columns:1fr }
}

/* Karten */

body.dc .dc-karte{ display:flex; flex-direction:column }
body.dc .dc-karte .et_pb_module:last-child{ margin-bottom:0 }

body.dc .dc-kachel .et_pb_image_wrap{ display:flex; align-items:center; justify-content:center }
body.dc .dc-kachel img{ width:24px; height:24px; display:block }

/* Vertrauensleiste */

body.dc .dc-stat-num{
  display:block;
  font-size:64px;
  font-weight:900;
  line-height:1;
  color:var(--dc-orange);
  font-variant-numeric:tabular-nums;
  letter-spacing:-.03em;
}
@media(max-width:600px){ body.dc .dc-stat-num{ font-size:52px } }

/* Tagesskala — Leitmotiv, Striche werden per JS erzeugt */

body.dc .dc-skala{
  display:flex;
  align-items:flex-end;
  gap:4px;
  height:18px;
  overflow:hidden;
}
body.dc .dc-skala i{
  display:block;
  width:1px;
  height:10px;
  background:rgba(255,255,255,.14);
  transform-origin:bottom;
}
body.dc .dc-skala i.dc-woche{ height:18px }
body.dc .dc-skala i.dc-rest{ background:var(--dc-orange) }

body.dc .dc-skala-mini{ gap:3px; height:8px }
body.dc .dc-skala-mini i{ height:5px }
body.dc .dc-skala-mini i.dc-woche{ height:8px }

body.dc .dc-backup .dc-skala i{ background:rgba(14,14,14,.16) }
body.dc .dc-backup .dc-skala i.dc-rest{ background:var(--dc-orange-dunkel) }

/* Hero — Startbildschirm */

body.dc .dc-startschirm{ max-width:100% }

body.dc .dc-kleinwidgets,
body.dc .dc-appreihe{ display:grid }
body.dc .dc-kleinwidgets{ grid-template-columns:repeat(2,1fr); gap:12px }
body.dc .dc-appreihe{ grid-template-columns:repeat(4,58px); gap:16px; justify-content:start }
body.dc .dc-appreihe .et_pb_column,
body.dc .dc-kleinwidgets .et_pb_column{ width:auto !important; margin:0 !important; min-width:0 }
body.dc .dc-appsymbol{ aspect-ratio:1 }
body.dc .dc-appsymbol .et_pb_image_wrap{ display:flex; align-items:center; justify-content:center; height:100% }
body.dc .dc-appsymbol img{ width:22px; height:22px }

body.dc .dc-uhr{ font-variant-numeric:tabular-nums }

body.dc .dc-widget-label{
  display:block;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--dc-orange);
}
body.dc .dc-widget-klein-label{
  display:block;
  font-size:10px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--dc-text-schwach);
  margin-bottom:6px;
}
body.dc .dc-widget-zahl{
  display:block;
  font-size:22px;
  font-weight:900;
  line-height:1;
  color:var(--dc-text-stark);
  font-variant-numeric:tabular-nums;
}
body.dc .dc-widget-zahl .dc-einheit{
  font-size:11px;
  font-weight:700;
  color:var(--dc-orange);
  margin-left:4px;
}

/* Listen */

body.dc ul.dc-zusagen{
  list-style:none;
  padding-left:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,max-content);
  gap:12px 40px;
}
body.dc ul.dc-zusagen > li{ margin:0 }
body.dc ul.dc-zusagen .et_pb_icon_list_item{ margin-bottom:0 }

body.dc ul.dc-bullets{
  list-style:none;
  padding-left:0;
  margin:0;
  display:flex;
  flex-direction:column;
  row-gap:12px;
}
body.dc ul.dc-bullets > li{ margin:0; width:auto }

body.dc ul.dc-haken{
  list-style:none;
  padding-left:0;
  margin:0;
  display:flex;
  flex-direction:column;
}
body.dc ul.dc-haken > li{
  margin:0;
  width:auto;
  padding:14px 0;
  border-bottom:1px solid rgba(14,14,14,.12);
}

/* Buttons nebeneinander — der Wrapper ist block-level und traegt kein Attribut */

body.dc .dc-knoepfe .et_pb_button_module_wrapper{
  display:inline-block;
  width:auto;
  margin-right:16px;
  margin-bottom:0;
}
body.dc .dc-knoepfe .et_pb_button_module_wrapper:last-child{ margin-right:0 }

@media(max-width:600px){
  body.dc .dc-knoepfe .et_pb_button_module_wrapper{
    display:block;
    width:100%;
    margin-right:0;
    margin-bottom:14px;
  }
  body.dc .dc-knoepfe .et_pb_button{ display:block; text-align:center }
}

body.dc .et_pb_button{ min-height:52px; display:inline-flex; align-items:center; justify-content:center }

/* Kopf */

body.dc .dc-nav{
  position:relative;
  transition:background-color .45s ease, border-color .45s ease, backdrop-filter .45s ease;
}
body.dc .dc-nav.is-scrolled{
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

body.dc .dc-nav .et-menu > li > a{ color:var(--dc-text-schwach); font-size:16px }
body.dc .dc-nav .et-menu > li > a:hover{ color:var(--dc-orange) }

body.dc .dc-nav::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-1px;
  height:2px;
  width:100%;
  background:var(--dc-orange);
  transform:scaleX(var(--dc-fortschritt,1));
  transform-origin:left;
  pointer-events:none;
}

body.dc .dc-nav-menu .et_mobile_nav_menu .mobile_menu_bar{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  min-height:44px;
}
body.dc .dc-nav-menu .et_mobile_nav_menu .mobile_menu_bar:before{ color:var(--dc-orange); font-size:26px }
body.dc .dc-nav-menu .et_mobile_menu{ background:rgba(10,10,10,.98); border-top-color:var(--dc-orange) }
body.dc .dc-nav-menu .et_mobile_menu a{
  color:var(--dc-text-stark);
  font-size:20px;
  font-weight:600;
  padding:16px 5%;
  border-bottom-color:var(--dc-linie);
}
body.dc .dc-nav-menu .et_mobile_menu a:hover{ color:var(--dc-orange) }

@media(max-width:980px){
  body.dc .dc-nav-row{ display:flex !important; align-items:center; flex-wrap:nowrap }
  body.dc .dc-nav-row > .et_pb_column{ width:auto !important; margin:0 !important }
  body.dc .dc-nav-row > .et_pb_column:first-child{ flex:1 1 auto }
  body.dc .dc-nav-menu .et_mobile_nav_menu{ float:none; margin:0 }
}
@media(max-width:640px){ body.dc .dc-nav-cta{ display:none } }

body.dc .dc-wortmarke{
  color:var(--dc-orange);
  text-decoration:none;
  font-weight:900;
  display:inline-flex;
  align-items:center;
}
body.dc .dc-wortmarke:hover{ color:var(--dc-orange); opacity:.85 }
body.dc .dc-badge{
  display:none;
  margin-left:8px;
  padding:2px 8px;
  border-radius:999px;
  background:var(--dc-orange-schwach);
  color:var(--dc-orange);
  font-size:11px;
  font-weight:600;
  letter-spacing:.02em;
  vertical-align:middle;
}
@media(min-width:640px){ body.dc .dc-badge{ display:inline-block } }

/* FAQ */

body.dc .dc-faq-item .et_pb_toggle_title{ padding-block:18px; min-height:56px }
body.dc .dc-faq-item .et_pb_toggle_title:before{ color:var(--dc-orange); font-size:20px }
body.dc .dc-faq-item.et_pb_toggle_open{ border-color:var(--dc-linie-aktiv) }

/* Fuss */

body.dc .dc-foot-brand{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:20px;
  font-weight:900;
  color:var(--dc-orange);
}
body.dc .dc-foot-tag{
  font-size:11px;
  font-weight:600;
  padding:2px 8px;
  border-radius:999px;
  background:var(--dc-orange-schwach);
}
body.dc ul.dc-foot-links{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}
body.dc ul.dc-foot-links a{
  font-size:16px;
  color:var(--dc-text-schwach);
  text-decoration:none;
  transition:color .25s ease;
}
body.dc ul.dc-foot-links a:hover{ color:var(--dc-orange) }
body.dc .dc-foot-mail{ color:var(--dc-text-schwach); text-decoration:none; transition:color .25s ease }
body.dc .dc-foot-mail:hover{ color:var(--dc-orange) }
body.dc .dc-footer-bottom a{ color:inherit; text-decoration:none }
body.dc .dc-footer-bottom a:hover{ color:var(--dc-orange) }

/* Rechtstexte */

body.dc .dc-legal a{ color:var(--dc-orange-dunkel); text-decoration:none }
body.dc .dc-legal a:hover{ text-decoration:underline }
body.dc ul.dc-legal-list{ margin:0 0 0 22px; padding:0; list-style:disc }
body.dc ul.dc-legal-list > li{ margin-bottom:7px; padding-left:4px }
body.dc ul.dc-legal-list > li::marker{ color:var(--dc-orange-dunkel) }
body.dc .dc-legal-box strong{ color:var(--dc-hell-text) }
body.dc .dc-code{
  background:var(--dc-hell-flaeche);
  border:1px solid #E0DDD8;
  padding:2px 7px;
  border-radius:5px;
  font-size:15px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
body.dc .dc-legal-nav{ display:flex; flex-wrap:wrap; gap:24px }
body.dc .dc-legal-nav a{ font-weight:600 }
body.dc .dc-legal h2{ padding-bottom:8px }
body.dc .dc-legal .et_pb_heading:first-child h2{ margin-top:0 }
@media(max-width:600px){
  body.dc .dc-legal-hero h1{ font-size:clamp(28px,8vw,38px) !important }
}

/* Divi-Hintergruende setzen mit !important und vier Klassen — Kopf davorsetzen */

body.dc .et-l--header > .et_builder_inner_content .et_pb_section.dc-nav{
  background-color:var(--dc-grund) !important;
}
body.dc .et-l--header > .et_builder_inner_content .et_pb_section.dc-nav.is-scrolled{
  background-color:rgba(10,10,10,.94) !important;
  border-bottom-color:var(--dc-linie) !important;
}
body.dc .et-l--header > .et_builder_inner_content .dc-nav .et_pb_button{ color:var(--dc-grund) !important }

@media(prefers-reduced-motion:reduce){
  body.dc *{ transition-duration:.01ms !important; animation-duration:.01ms !important }
}

/* Hero */

body.dc .dc-hero{ position:relative; overflow:hidden }
body.dc .dc-hero::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(820px 560px at 88% 4%,rgba(255,112,7,.14),transparent 68%);
}
body.dc .dc-hero > .et_pb_row{ position:relative; z-index:2 }

body.dc .dc-marker .et_pb_text_inner span:first-child{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 16px;
  border:1px solid var(--dc-linie-aktiv);
  border-radius:999px;
}
body.dc .dc-marker .et_pb_text_inner span:first-child::before{
  content:'';
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--dc-orange);
}

body.dc ul.dc-zusagen .et_pb_icon_list_item{ margin-bottom:0 }
body.dc ul.dc-zusagen .et_pb_icon_list_text{ white-space:nowrap }
@media(max-width:480px){ body.dc ul.dc-zusagen{ grid-template-columns:1fr } }

body.dc .dc-statusleiste .et_pb_text_inner{ display:flex; justify-content:space-between }

body.dc .dc-grosswidget-kopf{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
body.dc .dc-widget-hinweis{ font-size:12px; color:var(--dc-text-schwach) }
body.dc .dc-grosswidget-zahl{ display:flex; align-items:baseline; gap:10px }
body.dc .dc-uhr{
  font-size:56px;
  font-weight:900;
  line-height:1;
  color:var(--dc-text-stark);
  letter-spacing:-.03em;
}
body.dc .dc-grosswidget-einheit{ font-size:14px; font-weight:600; color:var(--dc-text-schwach) }
body.dc .dc-grosswidget .dc-skala{ margin-top:14px }

body.dc .dc-kleinwidgets .et_pb_text_inner{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}
body.dc .dc-kleinwidget{
  padding:14px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
}

body.dc .dc-appreihe .et_pb_text_inner{
  display:grid;
  grid-template-columns:repeat(4,58px);
  gap:16px;
  justify-content:start;
}
body.dc .dc-appsymbol{
  aspect-ratio:1;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  display:flex;
  align-items:center;
  justify-content:center;
}
body.dc .dc-appsymbol-marke{
  background:var(--dc-orange-schwach);
  border:1px solid var(--dc-linie-aktiv);
}
body.dc .dc-appsymbol img{ width:22px; height:22px; display:block }

/* Abstaende kommen aus den Modulen, nicht aus Divis Voreinstellung */

body.dc .et_pb_section,
body.dc .et_pb_column{ row-gap:0 }

/* Divi verpackt Modulinhalt in <p> — Layoutregeln muessen beides treffen */

body.dc .dc-statusleiste .et_pb_text_inner,
body.dc .dc-statusleiste .et_pb_text_inner > p{ display:flex; justify-content:space-between; margin:0 }

body.dc .dc-kleinwidgets .et_pb_text_inner,
body.dc .dc-kleinwidgets .et_pb_text_inner > p{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin:0;
}

body.dc .dc-appreihe .et_pb_text_inner,
body.dc .dc-appreihe .et_pb_text_inner > p{
  display:grid;
  grid-template-columns:repeat(4,58px);
  gap:16px;
  justify-content:start;
  margin:0;
}

body.dc .dc-grosswidget .et_pb_text_inner > p{ margin:0 }
body.dc .dc-marker .et_pb_text_inner > p{ margin:0 }

/* Korrekturen: Elternflex darf das <p> nicht schrumpfen lassen */

body.dc .dc-statusleiste .et_pb_text_inner{ display:block }
body.dc .dc-kleinwidgets .et_pb_text_inner{ display:block }
body.dc .dc-appreihe .et_pb_text_inner{ display:block }

/* Buttongruppe ist ein Flex-Container in Spaltenrichtung */

body.dc .dc-knoepfe{
  flex-direction:row;
  flex-wrap:wrap;
  column-gap:16px;
  row-gap:14px;
  align-items:center;
}
body.dc .dc-knoepfe .et_pb_button_module_wrapper{ margin:0; width:auto }

@media(max-width:600px){
  body.dc .dc-knoepfe{ flex-direction:column; align-items:stretch }
  body.dc .dc-knoepfe .et_pb_button_module_wrapper{ width:100% }
  body.dc .dc-knoepfe .et_pb_button{ display:flex; width:100%; text-align:center }
}

/* Gerahmte Sections */

body.dc .et_pb_section.dc-rahmen{
  width:calc(100% - 2 * var(--dc-rand));
  max-width:var(--dc-breite);
  margin-inline:auto;
  padding:clamp(40px,4.4vw,72px);
  border-radius:var(--dc-r-gross);
  border:1px solid var(--dc-linie);
  background-color:var(--dc-flaeche-1);
}
body.dc .et_pb_section.dc-rahmen > .et_pb_row{ max-width:none }

/* Kopfzeile einer Section */

body.dc .dc-kopfzeile{
  display:grid;
  grid-template-columns:8fr 4fr;
  gap:48px;
  align-items:end;
}
body.dc .dc-kopfzeile > .et_pb_column{
  width:auto !important;
  max-width:none !important;
  min-width:0;
  margin:0 !important;
  float:none;
}
@media(max-width:1024px){
  body.dc .dc-kopfzeile{ grid-template-columns:1fr; gap:20px }
}

body.dc .dc-kicker .et_pb_text_inner{ display:flex; align-items:center; gap:12px }
body.dc .dc-kicker .et_pb_text_inner::before{
  content:'';
  width:32px;
  height:2px;
  flex:0 0 32px;
  background:currentColor;
}

/* Symbolkachel der Karten */

body.dc .dc-kachel{
  width:44px;
  height:44px;
  border-radius:10px;
  background:var(--dc-orange-schwach);
  display:flex;
  align-items:center;
  justify-content:center;
}
body.dc .dc-kachel .et_pb_image_wrap{ display:block; line-height:0 }

body.dc .dc-karte:hover{
  background-color:var(--dc-flaeche-3) !important;
  border-color:var(--dc-linie-aktiv) !important;
  transform:translateY(-4px);
}

/* Trenner */

body.dc .dc-trenner{ padding-block:0 }
body.dc .dc-skala-halter .et_pb_text_inner > p{ margin:0 }

/* Feste Zahl in der Widget-Section */

body.dc .dc-uhr-fest{
  font-size:40px;
  font-weight:900;
  line-height:1;
  color:var(--dc-text-stark);
  letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}

/* Kennzahlen linksbuendig wie der Rest der Seite */

body.dc .dc-stat h3,
body.dc .dc-stat .et_pb_text_inner{ text-align:left }

/* Backup: Haken-Liste kompakter */

body.dc ul.dc-haken > li{ padding:10px 0 }

/* Downloadblock als einziger zentrierter Bruch */

body.dc .dc-download .dc-narrow{ max-width:820px; margin-inline:auto }

/* Abstand der gerahmten Felder zu den Nachbarsections */

body.dc .et_pb_section.dc-rahmen{ margin-block:clamp(40px,4vw,64px) }

/* Trenner sitzt mittig zwischen zwei Sections */

body.dc .dc-trenner .et_pb_row{ padding-block:0 }
body.dc .dc-skala-halter{ width:100% }

/* Trenner ueber die volle Inhaltsbreite */

body.dc .dc-trenner .dc-skala{
  width:100%;
  justify-content:space-between;
}
body.dc .dc-play{ margin-inline:auto }
body.dc .dc-play .et_pb_image_wrap{ display:block }
/* Feinschliff Mobil */

@media(max-width:600px){
  body.dc .dc-knoepfe .et_pb_button{ width:100% !important }
  body.dc .dc-appreihe .et_pb_text_inner > p{ grid-template-columns:repeat(4,1fr) }
}

body.dc .dc-trenner .dc-skala{ gap:0 }
/* Symbolkachel traegt das SVG jetzt inline */

body.dc .dc-kachel{ color:var(--dc-orange) }
body.dc .dc-kachel .et_pb_text_inner,
body.dc .dc-kachel .et_pb_text_inner > p{ margin:0; line-height:0 }
body.dc .dc-kachel svg{ width:24px; height:24px; display:block }

/* Symbollisten: Text erbt sonst Divis Standardfarbe */

body.dc ul.dc-zusagen .et_pb_icon_list_text,
body.dc ul.dc-bullets .et_pb_icon_list_text{ color:var(--dc-text); font-size:16px }
body.dc ul.dc-haken .et_pb_icon_list_text{ color:var(--dc-hell-text); font-size:17px; font-weight:600 }
/* Rechtstexte: Lesebreite innerhalb des gemeinsamen Rasters */

body.dc .dc-legal .et_pb_column{ max-width:var(--dc-prosa) }
body.dc .dc-legal .et_pb_text_inner,
body.dc .dc-legal h2,
body.dc .dc-legal h3{ max-width:var(--dc-prosa) }
/* Rechtstexte im dunklen System */

body.dc .dc-legal-row{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:64px;
  align-items:start;
}
body.dc .dc-legal-row > .et_pb_column{
  width:auto !important;
  max-width:none !important;
  min-width:0;
  margin:0 !important;
  float:none;
}
@media(max-width:1024px){
  body.dc .dc-legal-row{ grid-template-columns:1fr; gap:32px }
}

body.dc .dc-legal-toc{ position:sticky; top:96px }
@media(max-width:1024px){ body.dc .dc-legal-toc{ position:static } }

body.dc .dc-toc-titel{
  display:block;
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--dc-orange);
  margin-bottom:18px;
}
body.dc ul.dc-toc-liste{
  list-style:none;
  margin:0;
  padding:0;
  border-left:1px solid var(--dc-linie);
}
body.dc ul.dc-toc-liste > li{ margin:0 }
body.dc ul.dc-toc-liste a{
  display:block;
  padding:9px 0 9px 18px;
  margin-left:-1px;
  border-left:1px solid transparent;
  color:var(--dc-text-schwach);
  text-decoration:none;
  transition:color .25s ease, border-color .25s ease;
}
body.dc ul.dc-toc-liste a:hover{ color:var(--dc-orange); border-left-color:var(--dc-orange) }

body.dc .dc-legal h2,
body.dc .dc-legal h3{ scroll-margin-top:110px }
body.dc .dc-legal .dc-legal-nav a{ color:var(--dc-orange) }
body.dc .dc-legal a{ color:var(--dc-orange) }
body.dc .dc-legal ul.dc-legal-list > li::marker{ color:var(--dc-orange) }
body.dc .dc-legal .dc-legal-box strong{ color:var(--dc-text-stark) }
body.dc .dc-legal .dc-code{
  background:var(--dc-flaeche-2);
  border-color:var(--dc-linie);
  color:var(--dc-text);
}
body.dc .dc-legal-text .et_pb_module:last-child{ margin-bottom:0 }
/* Links im Flie&szlig;text brauchen ein Merkmal neben der Farbe (WCAG 1.4.1) */

body.dc .dc-legal .et_pb_text_inner a,
body.dc .dc-legal-box a{
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}
body.dc .dc-legal .dc-legal-nav a,
body.dc .dc-legal ul.dc-toc-liste a{ text-decoration:none }
body.dc .dc-legal .dc-legal-nav a:hover,
body.dc .dc-legal ul.dc-toc-liste a:hover{ text-decoration:underline }
/* --- Bewegungstokens -------------------------------------------------- */

:root{
  --dc-ease-premium:cubic-bezier(.22,1,.36,1);
  --dc-t-micro:180ms;
  --dc-t-reveal:550ms;
  --dc-t-feature:800ms;
  --dc-stagger:60ms;
}

/* Appreihe fuellt die Breite wie die Kachelreihe darueber */

body.dc .dc-appreihe .et_pb_text_inner > p{ grid-template-columns:repeat(4,1fr) }
body.dc .dc-appsymbol{ max-width:64px }

/* Mobiles Menue: volle Kopfbreite statt schmalem Dropdown ueber dem CTA */

@media(max-width:980px){
  body.dc .dc-nav .et_pb_row,
  body.dc .dc-nav .et_pb_column,
  body.dc .dc-nav .dc-nav-menu,
  body.dc .dc-nav-menu .et_pb_menu_inner_container,
  body.dc .dc-nav-menu .et_pb_menu__wrap,
  body.dc .dc-nav-menu .et_mobile_nav_menu,
  body.dc .dc-nav-menu .mobile_nav{ position:static }

  body.dc .dc-nav-menu .et_mobile_menu{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    width:auto;
    max-height:calc(100vh - 100%);
    overflow-y:auto;
    padding:8px var(--dc-rand) 24px;
    border-top:1px solid var(--dc-linie-aktiv);
    box-shadow:0 24px 60px rgba(0,0,0,.6);
  }
  body.dc .dc-nav-menu .et_mobile_menu li{ width:100% }
  body.dc .dc-nav-menu .et_mobile_menu a{ padding:16px 0 }
}
@media(max-width:980px){
  body.dc .dc-nav .dc-nav-menu .et_mobile_menu{
    background-color:#0A0A0A !important;
    backdrop-filter:none;
  }
  body.dc .dc-nav .dc-nav-menu .et_mobile_menu li,
  body.dc .dc-nav .dc-nav-menu .et_mobile_menu li a{ background-color:transparent }
}
/* ===================================================================== */
/* Bewegungssystem                                                        */
/* ===================================================================== */

/* --- Auftritte: gestaffelt, hoechstens 20 px von unten ------------------ */

body.dc .dc-auftritt{
  opacity:0;
  transform:translateY(20px);
  transition:opacity var(--dc-t-reveal) var(--dc-ease-premium),
             transform var(--dc-t-reveal) var(--dc-ease-premium);
}
body.dc .dc-auftritt.ist-da{ opacity:1; transform:none }

/* --- Karten: Hover hebt drei Pixel, Kante wird orange ------------------- */

body.dc .dc-karte{
  transition:background-color var(--dc-t-micro) var(--dc-ease-premium),
             border-color var(--dc-t-micro) var(--dc-ease-premium),
             transform var(--dc-t-micro) var(--dc-ease-premium);
}
body.dc .dc-karte:hover{ transform:translateY(-3px) }

/* --- Symbol leuchtet beim Erscheinen einmal kurz auf ------------------- */

@keyframes dc-symbol-glanz{
  0%   { box-shadow:0 0 0 0 rgba(255,112,7,0); }
  35%  { box-shadow:0 0 0 6px rgba(255,112,7,.18); }
  100% { box-shadow:0 0 0 0 rgba(255,112,7,0); }
}
body.dc .dc-auftritt.ist-da .dc-kachel{
  animation:dc-symbol-glanz var(--dc-t-feature) var(--dc-ease-premium) 120ms 1;
}

/* --- Hintergrundziffer im Hero ---------------------------------------- */

body.dc .dc-hero-zahl{
  position:absolute;
  top:50%;
  left:0;
  transform:translateY(-50%);
  pointer-events:none;
  user-select:none;
  z-index:0;
  margin:0;
}
body.dc .dc-hero-zahl .et_pb_text_inner,
body.dc .dc-hero-zahl .et_pb_text_inner > p{ margin:0; line-height:0 }
body.dc .dc-hero-ziffer{
  display:block;
  font-size:clamp(280px,32vw,520px);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.06em;
  color:rgba(255,255,255,.028);
  font-variant-numeric:tabular-nums;
  transition:opacity var(--dc-t-micro) linear;
}
body.dc .dc-hero-text{ position:relative }
body.dc .dc-hero-text > .et_pb_module:not(.dc-hero-zahl){ position:relative; z-index:1 }
@media(max-width:1024px){ body.dc .dc-hero-zahl{ display:none } }

/* --- Knopfpfeil verschiebt sich um drei Pixel -------------------------- */

body.dc .dc-cta::after{
  content:'\2192';
  display:inline-block;
  margin-left:10px;
  transition:transform var(--dc-t-micro) var(--dc-ease-premium);
}
body.dc .dc-cta:hover::after{ transform:translateX(3px) }

/* --- Zeitachse laeuft einmal von links nach rechts ein ------------------ */

body.dc .dc-skala i{
  transition:transform var(--dc-t-reveal) var(--dc-ease-premium);
}

/* --- FAQ: 220 ms, Plus dreht sich zum Minus ---------------------------- */

body.dc .dc-faq-item .et_pb_toggle_content{
  transition:max-height 220ms var(--dc-ease-premium), opacity 220ms var(--dc-ease-premium);
}
body.dc .dc-faq-item .et_pb_toggle_title:before{
  transition:transform 220ms var(--dc-ease-premium);
}
body.dc .dc-faq-item.et_pb_toggle_open .et_pb_toggle_title:before{
  content:'\E050';
  transform:rotate(180deg);
}

/* --- Homescreen: Scroll-Demonstration ---------------------------------- */

body.dc .dc-widget ul.dc-bullets > li{
  transition:opacity var(--dc-t-micro) var(--dc-ease-premium);
  opacity:.62;
}
body.dc .dc-widget ul.dc-bullets > li.ist-aktiv{ opacity:1 }
body.dc .dc-widget ul.dc-bullets > li.ist-aktiv .et_pb_icon_list_text{ color:var(--dc-text-stark) }
body.dc .dc-widget ul.dc-bullets > li.ist-aktiv .et-pb-icon{ color:var(--dc-orange) }

@media(min-width:1025px){
  body.dc .dc-widget .dc-widget-visual{ position:sticky; top:128px }
}

body.dc .dc-widget-schirm{
  transition:opacity var(--dc-t-feature) var(--dc-ease-premium),
             transform var(--dc-t-feature) var(--dc-ease-premium);
}
body.dc .dc-widget-schirm{ border-color:var(--dc-linie) }
body.dc .dc-widget[data-stufe="0"] .dc-widget-schirm{ transform:scale(.985) }
body.dc .dc-widget:not([data-stufe="0"]) .dc-widget-schirm{ border-color:var(--dc-linie-aktiv) }

/* --- Handywechsel: zwei Geraete, wandernder Punkt ---------------------- */

body.dc .dc-transfer{
  display:flex;
  align-items:center;
  gap:20px;
}
body.dc .dc-transfer-geraet{
  flex:0 0 84px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}
body.dc .dc-transfer-schirm{
  width:84px;
  height:132px;
  border-radius:14px;
  border:1px solid var(--dc-linie);
  background:#0B0B0D;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  padding:0 14px;
  transition:border-color var(--dc-t-reveal) var(--dc-ease-premium);
}
body.dc .dc-transfer-zeile{
  display:block;
  height:6px;
  border-radius:3px;
  background:rgba(255,255,255,.12);
  transition:background-color var(--dc-t-reveal) var(--dc-ease-premium);
}
body.dc .dc-transfer-zeile:nth-child(2){ width:70% }
body.dc .dc-transfer-zeile:nth-child(3){ width:45% }
body.dc .dc-transfer-label{
  font-size:12px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--dc-text-schwach);
}
body.dc .dc-transfer-bahn{
  position:relative;
  flex:1 1 auto;
  height:2px;
  margin-bottom:26px;
  background:repeating-linear-gradient(90deg,var(--dc-linie) 0 8px,transparent 8px 14px);
}
body.dc .dc-transfer-punkt{
  position:absolute;
  top:50%;
  left:0;
  width:12px;
  height:12px;
  margin-top:-6px;
  border-radius:50%;
  background:var(--dc-orange);
  box-shadow:0 0 0 6px rgba(255,112,7,.16);
  transform:translateX(0);
}
body.dc .dc-transfer.laeuft .dc-transfer-punkt{
  transition:transform 1200ms var(--dc-ease-premium);
  transform:translateX(calc(100% * var(--dc-weg,0) - 12px * var(--dc-weg,0)));
}
body.dc .dc-transfer.ist-fertig .dc-transfer-neu .dc-transfer-schirm{ border-color:var(--dc-linie-aktiv) }
body.dc .dc-transfer.ist-fertig .dc-transfer-neu .dc-transfer-zeile{ background:rgba(255,112,7,.55) }

/* --- Schritte aktivieren nacheinander ---------------------------------- */

body.dc .dc-schritt{
  transition:border-color var(--dc-t-reveal) var(--dc-ease-premium),
             background-color var(--dc-t-reveal) var(--dc-ease-premium);
}
body.dc .dc-schritt.ist-aktiv{
  border-color:var(--dc-linie-aktiv) !important;
  background-color:var(--dc-flaeche-3) !important;
}

@media(max-width:900px){
  body.dc .dc-transfer{ gap:14px }
  body.dc .dc-transfer-geraet{ flex-basis:66px }
  body.dc .dc-transfer-schirm{ width:66px; height:104px; padding:0 10px }
}

/* --- Reduzierte Bewegung: Endzustand ohne Weg -------------------------- */

@media(prefers-reduced-motion:reduce){
  body.dc .dc-auftritt{ opacity:1; transform:none }
  body.dc .dc-auftritt.ist-da .dc-kachel{ animation:none }
  body.dc .dc-widget ul.dc-bullets > li{ opacity:1 }
  body.dc .dc-widget .dc-widget-visual{ position:static }
  body.dc .dc-widget[data-stufe="0"] .dc-widget-schirm{ transform:none }
  body.dc .dc-transfer-punkt{ transition:none }
  body.dc .dc-karte:hover{ transform:none }
  body.dc .dc-cta:hover::after{ transform:none }
}

/* Hakenliste steht jetzt auf dunklem Grund */

body.dc ul.dc-haken .et_pb_icon_list_text{ color:var(--dc-text); font-size:17px; font-weight:600 }
body.dc ul.dc-haken > li{ border-bottom-color:var(--dc-linie) }

/* Wanderpunkt: exakter Weg in Pixeln, damit nur transform animiert wird */

body.dc .dc-transfer.laeuft .dc-transfer-punkt{
  transition:transform 1200ms var(--dc-ease-premium);
  transform:translateX(var(--dc-weg-px,0px));
}
/* Appreihe eindeutig festlegen — mehrere aeltere Regeln greifen sonst ineinander */

body.dc .dc-appreihe .et_pb_text_inner{ display:block }
body.dc .dc-appreihe .et_pb_text_inner > p{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:14px !important;
  justify-content:stretch !important;
  margin:0;
}
body.dc .dc-appsymbol{ width:auto; max-width:none; aspect-ratio:1 }

/* Der Pfeil kommt aus Divis Buttonsystem und wandert dort bereits beim Hover */

body.dc .dc-cta::after{ content:none }
body.dc .dc-cta:hover:after{ transform:translateX(3px) }
/* Divi verpackt den Inhalt der Appreihe nicht in <p> — Raster gehoert an den Inhaltsrahmen */

body.dc .dc-appreihe .et_pb_text_inner{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:14px !important;
}
body.dc .dc-appreihe .et_pb_text_inner > p{ display:contents }
/* Appreihe: Flex auf beiden Ebenen, damit das Ergebnis nicht davon abhaengt,
   ob Divi den Inhalt in ein <p> verpackt */

body.dc .dc-appreihe .et_pb_text_inner,
body.dc .dc-appreihe .et_pb_text_inner > p{
  display:flex !important;
  flex:1 1 auto;
  justify-content:space-between !important;
  align-items:center;
  gap:14px !important;
  margin:0;
  grid-template-columns:none !important;
}
body.dc .dc-appsymbol{
  flex:0 0 64px;
  width:64px;
  height:64px;
  aspect-ratio:auto;
}
@media(max-width:600px){
  body.dc .dc-appsymbol{ flex-basis:56px; width:56px; height:56px }
}