.elementor-kit-4{--e-global-color-primary:#101828;--e-global-color-secondary:#6D6E70;--e-global-color-text:#667085;--e-global-color-accent:#FF8F00;--e-global-color-c1fb569:#F9FAFB;--e-global-color-8a6f595:#2A2F3A;--e-global-color-017d420:#FFFFFF;--e-global-color-ea376dd:#F2F4F7;--e-global-color-8a6b9b7:#E57E00;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:56px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-letter-spacing:-1.1px;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-letter-spacing:-0.6px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:500;--e-global-typography-5305649-font-family:"Inter";--e-global-typography-5305649-font-size:48px;--e-global-typography-5305649-font-weight:600;--e-global-typography-5305649-line-height:120%;--e-global-typography-5305649-letter-spacing:-0.9px;--e-global-typography-4ead2bf-font-family:"Inter";--e-global-typography-4ead2bf-font-size:32px;--e-global-typography-4ead2bf-font-weight:600;--e-global-typography-4ead2bf-line-height:130%;--e-global-typography-4ead2bf-letter-spacing:-0.64px;--e-global-typography-6bc5150-font-family:"Inter";--e-global-typography-6bc5150-font-size:18px;--e-global-typography-6bc5150-font-weight:400;--e-global-typography-6bc5150-line-height:150%;--e-global-typography-e963f0b-font-family:"Inter";--e-global-typography-e963f0b-font-size:16px;--e-global-typography-3a13929-font-family:"Inter";--e-global-typography-3a13929-font-weight:400;color:var( --e-global-color-text );font-family:"Roboto", Sans-serif;font-weight:400;line-height:1.6em;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Roboto", Sans-serif;font-size:1rem;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.5px;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:6px 6px 6px 6px;padding:12px 20px 12px 20px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#E57E00;color:#FFFFFF;box-shadow:2px 2px 20px 0px rgba(0, 0, 0, 0.22);border-style:solid;border-color:#E57E00;border-radius:6px 6px 6px 6px;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:var( --e-global-color-accent );}.elementor-kit-4 a:hover{color:#E57E00;}.elementor-kit-4 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1312px;}.e-con{--container-max-width:1312px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-4{--e-global-typography-primary-font-size:52px;--e-global-typography-primary-letter-spacing:-1px;--e-global-typography-secondary-font-size:28px;--e-global-typography-secondary-letter-spacing:-0.6px;--e-global-typography-text-font-size:18px;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-size:14px;--e-global-typography-5305649-font-size:44px;--e-global-typography-5305649-letter-spacing:-0.88px;--e-global-typography-4ead2bf-font-size:28px;--e-global-typography-4ead2bf-letter-spacing:-0.56px;--e-global-typography-e963f0b-font-size:16px;}.elementor-kit-4 h1{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h2{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h3{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h4{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h5{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h6{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-letter-spacing:-0.8px;--e-global-typography-secondary-font-size:24px;--e-global-typography-secondary-line-height:1.4rlh;--e-global-typography-secondary-letter-spacing:-0.5px;--e-global-typography-text-font-size:16px;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-size:14px;--e-global-typography-5305649-font-size:36px;--e-global-typography-5305649-letter-spacing:-0.72px;--e-global-typography-4ead2bf-font-size:24px;--e-global-typography-4ead2bf-line-height:140%;--e-global-typography-4ead2bf-letter-spacing:-0.48px;--e-global-typography-6bc5150-font-size:16px;--e-global-typography-6bc5150-line-height:150%;--e-global-typography-e963f0b-font-size:14px;--e-global-typography-3a13929-font-size:12px;}.elementor-kit-4 h1{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h2{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-4 h3{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h4{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h5{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-4 h6{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.elementor-widget-text-editor h2 {
  margin-top: 2.5em;
}
.elementor-widget-text-editor h3 {
  margin-top: 2em;
}
.elementor-widget-text-editor h4 {
  margin-top: 1.5em;
}
.elementor-widget-text-editor h5 {
  margin-top: 1em;
}




/* ---- Global default icon for Elementor Icon Lists + underline hover ---- */
:root{
  --heli-orange:#FF8F00;

  /* Standard-Icon (Font Awesome Solid) */
  --icon-glyph:"\f054"; /* default: chevron-right */
  --icon-font:"Font Awesome 6 Free","Font Awesome 5 Free";
  --icon-weight:900;
}

/* --- Alternative Icons (Font Awesome Solid) ---
   chevron-right      \f054   (schmaler Pfeil)
   chevron-circle-r   \f138   (Pfeil im Kreis)
   angle-right        \f105   (breiterer Pfeil)
   arrow-right        \f061   (klassischer Pfeil)
   long-arrow-alt-r   \f30b   (langer Pfeil)
   caret-right        \f0da   (kleines Dreieck)
   play               \f04b   (Play-Symbol)
   square-full        \f45c   (Block / Bullet)
   circle             \f111   (Kreis / Bullet)
   dot-circle         \f192   (Punkt im Kreis)
------------------------------------------------ */

/* 0) Native leere Icon-Spalte ausblenden (spart Leerraum) */
.elementor-icon-list-icon:empty{
  display:none;
}

/* 1) Wenn KEIN natives Icon vorhanden ist -> Pseudo-Icon einsetzen */
.elementor-icon-list-item:not(:has(.elementor-icon-list-icon:not(:empty))) > a::before{
  content:var(--icon-glyph);
  font-family:var(--icon-font);
  font-weight:var(--icon-weight);
  display:inline-block;
  margin-right:.5em;
  transform:translateY(1px);
}

/* 2) Falls ein natives Icon existiert, normal darstellen */
.elementor-icon-list-icon{
  display:inline-flex; 
  align-items:center; 
  margin-right:.5em;
}
.elementor-icon-list-icon i,
.elementor-icon-list-icon svg{
  width:1em; height:1em;
  color:currentColor; fill:currentColor;
}

/* 3) Text-Underline in Orange, nur unter Text */
.elementor-icon-list-item a{
  text-decoration:none; 
  color:inherit;
}
.elementor-icon-list-item a .elementor-icon-list-text{
  display:inline-block;
  padding-bottom:2px;
  background-image:linear-gradient(var(--heli-orange), var(--heli-orange));
  background-position:left bottom;
  background-repeat:no-repeat;
  background-size:0% 1px;  /* dünne Linie */
  transition:background-size .2s ease;
}
.elementor-icon-list-item:hover a .elementor-icon-list-text,
.elementor-icon-list-item a:focus .elementor-icon-list-text{
  background-size:100% 1px;
}

/* 4) Fallback, falls Font Awesome nicht geladen ist */
@supports not (content:"\f054"){
  .elementor-icon-list-item:not(:has(.elementor-icon-list-icon:not(:empty))) > a::before{
    content:"›"; 
    font-weight:700;
  }
}





:root { --heli-orange:#FF8F00; }

/* Inline Switcher */
.wpml-ls,
.wpml-ls ul {
  display:flex;
  align-items:center;
  margin:0; padding:0;
  list-style:none;
  gap:0;
  white-space:nowrap;   /* verhindert Zeilenumbruch */
}

.wpml-ls a {
  font:inherit;
  color:inherit;
  text-decoration:none;
  display:inline-block;
  padding:0 .3rem; /* kompakter, auch für Mobile */
  background-image:linear-gradient(var(--heli-orange), var(--heli-orange));
  background-position:left 100%;
  background-repeat:no-repeat;
  background-size:0% 2px;
  transition:background-size .2s ease;
}

.wpml-ls a:hover,
.wpml-ls-current-language a {
  background-size:100% 2px;
  font-weight:600;
}

/* Trenner zwischen Sprachen */
.wpml-ls li:not(:last-child)::after {
  content:"|";
  margin:0 .2rem;  /* enger für Mobile */
  opacity:.6;
}

/* Mobile Optimierung: noch enger */
@media (max-width: 768px) {
  .wpml-ls a {
    padding:0 .2rem; /* weniger horizontaler Platz */
    font-size: 0.9em; /* Schrift minimal kleiner */
  }
  .wpml-ls li:not(:last-child)::after {
    margin:0 .15rem;
  }
}






/* === Heliotis Global Table Styles ======================================= */
/* Wrapper bleibt scrollbar, beeinflusst Caption nicht */
.table-wrap, .heliotis-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Tabelle: echte Tabelle (wichtig für Caption-Breite), runde Ecken am Table */
.tbl, .heliotis-tbl {
  display: table;
  width: 100%;
  border-collapse: separate;   /* nötig für border-radius */
  border-spacing: 0;
  table-layout: auto;

  /* Global Typography / Colors (an Elementor-Globals gekoppelt) */
  font-family: var(--e-global-typography-text-font-family, inherit);
  font-weight: var(--e-global-typography-text-font-weight, inherit);
  font-size:  var(--e-global-typography-text-font-size, 1rem);
  line-height:var(--e-global-typography-text-line-height, 1.5);
  letter-spacing: var(--e-global-typography-text-letter-spacing, normal);
  color: var(--e-global-color-text, inherit);

  /* äußerer Rahmen + Radius */
  border: 1px solid #e2e2e2;   /* ggf. koppeln: var(--e-global-color-border) */
  border-radius: 10px;
  background: #fff;            /* sorgt für saubere Rundung bei Zebra */
}

/* Titel: volle Breite, Secondary Font + Primary Color, ~halb so groß */
.tbl caption,
.heliotis-tbl caption {
  display: table-caption;      /* wichtig: nicht block, damit volle Breite */
  caption-side: top;
  text-align: left;
  margin: .25rem 0 .5rem 0;

  font-family: var(--e-global-typography-secondary-font-family, inherit);
  font-weight: var(--e-global-typography-secondary-font-weight, 700);
  font-size: calc(var(--e-global-typography-secondary-font-size, 1rem) / 1.7);
  line-height: var(--e-global-typography-secondary-line-height, 1.2);
  letter-spacing: var(--e-global-typography-secondary-letter-spacing, normal);
  color: /*#FF8F00; */var(--e-global-color-primary, #FF8F00);
}

/* Zellen */
.tbl th, .tbl td,
.heliotis-tbl th, .heliotis-tbl td {
  border: 1px solid #e2e2e2;
  padding: .6rem .8rem;
  text-align: left;
  vertical-align: top;
  background-clip: padding-box;
}

/* Außenkanten der Zellen ausblenden: außen nur Rahmen der Tabelle sichtbar */
.tbl tr:first-child > *, .heliotis-tbl tr:first-child > * { border-top: 0; }
.tbl tr:last-child  > *, .heliotis-tbl tr:last-child  > * { border-bottom: 0; }
.tbl tr > *:first-child,  .heliotis-tbl tr > *:first-child  { border-left: 0; }
.tbl tr > *:last-child,   .heliotis-tbl tr > *:last-child   { border-right: 0; }

/* Tabellenkopf: Secondary Font + Kontrastfarbe */
.tbl thead th,
.heliotis-tbl thead th {
  background: #6D6E70; /* neutral grau für Lesbarkeit; vermeidet Color-Clash */
  font-family: var(--e-global-typography-secondary-font-family, inherit);
  font-weight: 400; /*var(--e-global-typography-secondary-font-weight, 700);*/
  font-size:  calc(var(--e-global-typography-secondary-font-size, 1rem) / 1.4);
  line-height:var(--e-global-typography-secondary-line-height, 1.2);
  letter-spacing: var(--e-global-typography-secondary-letter-spacing, normal);
  color: #FFF; /* alternativ: var(--e-global-color-secondary-contrast) */
  position: relative;
  z-index: 1; /* hilft bei horizontalem Scroll */
}

/* (Optional) Sticky Header bei viel vertikalem Content – auskommentieren, wenn unerwünscht */
/*
.table-wrap thead th,
.heliotis-table-wrap thead th { position: sticky; top: 0; }
*/

/* präziser, falls erste Spalte THs als Zeilenüberschrift sind */
.tbl tbody th[scope="row"],
.heliotis-tbl tbody th[scope="row"] {
  font-size: 0.9em;
  font-weight: 500;
  color: #667085;
  background: #9f9f9;
}

/* Zebra */
.tbl tbody tr:nth-child(even),
.heliotis-tbl tbody tr:nth-child(even) { background: #FAFAFA; }

/* tfoot rechtsbündig */
.tbl tfoot th, .tbl tfoot td,
.heliotis-tbl tfoot th, .heliotis-tbl tfoot td { text-align: right; }

/* Zahlen optional rechtsbündig */
.tbl td.num, .heliotis-tbl td.num { text-align: right; }





/* ------------------- Mobile: Label | Wert nebeneinander ------------------- */
@media (max-width: 640px) {
  /* thead für Screenreader behalten, visuell verstecken */
  .tbl thead, .heliotis-tbl thead {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); border: 0; white-space: nowrap;
  }

  /* WICHTIG: .tbl NICHT auf display:block setzen, damit Caption volle Breite behält */
  .tbl tbody, .tbl tr, .tbl th[scope="row"], .tbl td,
  .heliotis-tbl tbody, .heliotis-tbl tr, .heliotis-tbl th[scope="row"], .heliotis-tbl td {
    display: block; width: 100%;
  }

  .tbl tr, .heliotis-tbl tr {
    border: 1px solid #e2e2e2;      /* eigene Kartenkante */
    margin-bottom: .8rem;
    background: #fff;
  }

  /* Zeilenüberschrift */
  .tbl th[scope="row"], .heliotis-tbl th[scope="row"] {
    border: 0; border-bottom: 1px solid #e2e2e2;
    font-family: var(--e-global-typography-secondary-font-family, inherit);
    font-weight: var(--e-global-typography-secondary-font-weight, 700);
    line-height: var(--e-global-typography-secondary-line-height, 1.2);
    letter-spacing: var(--e-global-typography-secondary-letter-spacing, normal);
    color: #667085; /* var(--e-global-color-secondary) möglich */
    padding: .6rem .8rem;
    background: #f9f9f9;
  }

  /* Datenzellen als 2-Spalten-Grid: [Label | Wert] */
  .tbl td, .heliotis-tbl td {
    display: grid;
    grid-template-columns: minmax(9ch, 42%) 1fr;
    gap: .5rem;
    align-items: start;
    border: 0; border-top: 1px solid #e2e2e2;
    padding: .6rem .8rem;
    background: transparent;
  }

  /* Label aus data-label */
  .tbl td::before, .heliotis-tbl td::before {
    content: attr(data-label);
    font-weight: 600;
    color: var(--e-global-color-secondary, #6D6E70);
  }

  /* Zebra-Striping pro Zelle */
  .tbl tbody tr:nth-child(odd)  > *,
  .heliotis-tbl tbody tr:nth-child(odd)  > * { background: #fff; }
  .tbl tbody tr:nth-child(even) > *,
  .heliotis-tbl tbody tr:nth-child(even) > * { background: #FAFAFA; }
}



/* ==== MOBILE SCROLL-MODUS: horizontales Scrollen + sticky erste Spalte ==== */
@media (max-width:640px){
  /* Wrapper horizontal scrollen lassen */
  .heliotis-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Echte Tabelle wiederherstellen (statt Stack/Karten) */
  .heliotis-tbl.scroll-mobile {
    display: table;
    width: max-content;          /* Breite nach Inhalt -> horizontales Scrollen */
    table-layout: auto;          /* Spaltenbreite aus Inhalt ableiten */
    border-collapse: separate;
    border-spacing: 0;
    white-space: nowrap;         /* kein Umbruch in Zellen */
    background: #fff;            /* saubere Rundungen */
  }
  .heliotis-tbl.scroll-mobile thead {
    display: table-header-group !important;
    position: static !important;
    width: auto; height: auto; padding: 0; margin: 0;
    overflow: visible; clip: auto; clip-path: none; white-space: nowrap; border: 0;
  }
  .heliotis-tbl.scroll-mobile tbody { display: table-row-group; }
  .heliotis-tbl.scroll-mobile tr    { display: table-row; margin: 0; border: 0; background: transparent; }
  .heliotis-tbl.scroll-mobile th,
  .heliotis-tbl.scroll-mobile td    {
    display: table-cell;
    padding: .45rem .6rem;
    line-height: 1.25;
    border: 1px solid #e2e2e2;
    background: transparent;
    white-space: nowrap;
    vertical-align: top;
  }

  /* Header-Farben (Fix gegen „weißen“ Header) */
  .heliotis-tbl.scroll-mobile thead th {
    background: var(--e-global-color-secondary, #BDBEBF);
    color: var(--e-global-color-secondary-contrast, #FFF);
  }

  /* Stack-Labels deaktivieren */
  .heliotis-tbl.scroll-mobile td::before { content: none !important; }

  /* ---- Sticky erste Spalte (Row-Header) ---- */
  .heliotis-tbl.scroll-mobile thead th:first-child,
  .heliotis-tbl.scroll-mobile td:first-child,
  .heliotis-tbl.scroll-mobile th[scope="row"] {
    position: sticky;
    left: 0;
    z-index: 3; /* über Datenzellen */
    background: #fff; /* solider Hintergrund */
  }
  
  
  
    /* Row-Header kompakter darstellen */
  .heliotis-tbl.scroll-mobile th[scope="row"] {
    font-size: 0.9em;   /* kleiner als Standard */
    font-weight: 400;    /* etwas leichter als 700, spart Platz */
    padding: .3rem .45rem;
    line-height: 1.2;
  }

  /* Kopfzelle oben links bleibt im Header-Stil */
  .heliotis-tbl.scroll-mobile thead th:first-child {
    background: var(--e-global-color-secondary, #BDBEBF);
    color: var(--e-global-color-secondary-contrast, #FFF);
    z-index: 4;
  }
  /* Row-Header optisch leicht absetzen (wie im Stack) */
  .heliotis-tbl.scroll-mobile th[scope="row"] {
    background: #f9f9f9;
    font-weight: 500;
  }
  /* dezenter Trennschatten rechts an der Sticky-Spalte (optional) */
  .heliotis-tbl.scroll-mobile td:first-child,
  .heliotis-tbl.scroll-mobile th:first-child {
    box-shadow: 6px 0 0 rgba(0,0,0,0.06);
  }

  /* ---- Option: fixe Spaltenbreiten für absolut stabile Layouts ----
     Nutzung: <table class="heliotis-tbl scroll-mobile cols-8"> … </table>
     (1 Header-Spalte + 7 Wertespalten = 8 Spalten gesamt)
  */
  .heliotis-tbl.scroll-mobile.cols-8 {
    table-layout: fixed;
    min-width: 960px; /* an Inhalt/Design anpassen */
  }
  .heliotis-tbl.scroll-mobile.cols-8 th:first-child,
  .heliotis-tbl.scroll-mobile.cols-8 td:first-child {
    width: 220px;     /* erste Spalte breiter, darf umbrechen */
    white-space: normal;
  }
  .heliotis-tbl.scroll-mobile.cols-8 th:nth-child(n+2),
  .heliotis-tbl.scroll-mobile.cols-8 td:nth-child(n+2) {
    width: calc((960px - 220px) / 7);
  }
}




/* 1) Allgemein für Buttons im WPDM-Block */
.wpdm-metro .btn:hover,
.wpdm-metro .btn:focus,
.wpdm-metro .btn:active {
  color: #fff !important;           /* Text bleibt weiß */
}

/* 2) Typisch: Download-Link ist .btn.btn-primary */
.wpdm-metro .btn.btn-primary:hover,
.wpdm-metro .btn.btn-primary:focus,
.wpdm-metro .btn.btn-primary:active {
  color: #fff !important;
  background-color: #F39200;        /* optional: Heliotis-Orange beim Hover */
  border-color: #F39200;            /* optional: Rand passend */
}

/* 3) Dein "Details"-Button als .btn-secondary */
.wpdm-metro .btn.btn-secondary:hover,
.wpdm-metro .btn.btn-secondary:focus,
.wpdm-metro .btn.btn-secondary:active {
  color: #fff !important;
  background-color: #6D6E70;        /* optional: Heliotis-Grau */
  border-color: #6D6E70;
}

/* Falls Elementor/Theme eine stärkere Regel hat (z. B. a.btn:hover),
   erhöhe die Spezifität noch etwas: */
.wpdm-metro .wpdm-download-button a.btn:hover { color:#fff !important; }





/* === WPDM Login + Lost Password: Abstand, Zentrierung, 640px Breite === */
.w3eden #wpdmlogin{
  margin: 6rem auto 8rem !important;  /* oben / rechts+links / unten */
  max-width: 640px !important;        /* gewünschte Breite */
  width: 100% !important;             /* fluid innerhalb der max-Breite */
  box-sizing: border-box;             /* sichere Breitenberechnung */
}

/* Nice-to-have #2: etwas Luft im Panel für längere Meldungen */
.w3eden #wpdmlogin .panel{
  padding-bottom: 0.5rem !important;
  width: 100% !important;             /* Panel auf volle Widget-Breite */
  box-sizing: border-box;
}

/* Form-Elemente auf volle Breite ziehen (robust) */
.w3eden #wpdmlogin .form-control,
.w3eden #wpdmlogin input[type="text"],
.w3eden #wpdmlogin input[type="email"],
.w3eden #wpdmlogin input[type="password"],
.w3eden #wpdmlogin input[type="submit"],
.w3eden #wpdmlogin button{
  width: 100% !important;
  box-sizing: border-box;
}

/* Mobile: etwas weniger Außenabstand */
@media (max-width: 767.98px){
  .w3eden #wpdmlogin{
    margin: 3.5rem auto 4rem !important;
  }
}


/* WPDM Login-Logo sichtbar machen und sauber skalieren */
.w3eden #wpdmlogin .wpdmlogin-logo{
  display: block !important;
  text-align: center !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  height: auto !important;
  overflow: visible !important;
}

.w3eden #wpdmlogin .wpdmlogin-logo img{
  display: inline-block !important;
  max-width: 220px !important;   /* passe an (z. B. 240/260px) */
  width: 60% !important;         /* skaliert fluide bis max */
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
}

/* Falls irgendwo (Theme/Plugin) SVGs auf 0px gesetzt werden: */
.w3eden #wpdmlogin .wpdmlogin-logo img[src$=".svg"]{
  width: 220px !important;       /* erzwinge Breite für SVG */
  max-width: 100% !important;
}/* End custom CSS */