/*
 Theme Name:     Divi Child Theme
 Theme URI:      http://www.elegantthemes.com
 Description:    Child Theme for Divi Theme by Elegant Themes
 Author:         Divi.world
 Author URI:     http://divi.world
 Template:       Divi
 Version:        1.0.0
*/

/* =Ab hier kannst du deine CSS-Anpassungen eintragen
------------------------------------------------------- */
/* inter-100 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 100;
    src: url('assets/fonts/inter/inter-v20-latin-100.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-100.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-100italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 100;
    src: url('assets/fonts/inter/inter-v20-latin-100italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-100italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-200 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 200;
    src: url('assets/fonts/inter/inter-v20-latin-200.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-200.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-200italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 200;
    src: url('assets/fonts/inter/inter-v20-latin-200italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-200italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-300 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    src: url('assets/fonts/inter/inter-v20-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-300italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 300;
    src: url('assets/fonts/inter/inter-v20-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('assets/fonts/inter/inter-v20-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 400;
    src: url('assets/fonts/inter/inter-v20-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-500 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    src: url('assets/fonts/inter/inter-v20-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-500italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 500;
    src: url('assets/fonts/inter/inter-v20-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-500italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-600 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    src: url('assets/fonts/inter/inter-v20-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-600italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 600;
    src: url('assets/fonts/inter/inter-v20-latin-600italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-600italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: url('assets/fonts/inter/inter-v20-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-700italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 700;
    src: url('assets/fonts/inter/inter-v20-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-700italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-800 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 800;
    src: url('assets/fonts/inter/inter-v20-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-800.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-800italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 800;
    src: url('assets/fonts/inter/inter-v20-latin-800italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-800italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-900 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 900;
    src: url('assets/fonts/inter/inter-v20-latin-900.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-900.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-900italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 900;
    src: url('assets/fonts/inter/inter-v20-latin-900italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
        url('assets/fonts/inter/inter-v20-latin-900italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* ============================================================
   1. ZENTRALE FARB-DEFINITIONEN (ROOT)
   ============================================================ */
:root {
    /* Referenzwerte */
    --helics-orange-akzent: #F96B0B;
    --helics-text-dunkelgrau: #414141;
    --helics-anthrazit-hintergrund: #1A1A1A;
    --helics-hellgrau-subline: #A5A5A5;
    --helics-weiss-kontrast: #FFFFFF;

    /* --body-hintergrund: #fAfAfA; */
    --body-hintergrund: #414141;

    /* Direkte Zuweisungen für Website-Elemente */
    --header-hintergrund: #414141;
    --footer-hintergrund: #414141;

    --button-hintergrund: #F96B0B;
    --button-hintergrund-hover: #CC5500;
    --button-text: #1A1A1A;
    --button-text: #FFFFFF;
    --button-text-hover: #FFFFFF;

    --menue-textfarbe: #FFFFFF;
    --menue-textfarbe-hover: #F96B0B;

    --linkfarbe: #F96B0B;
    --linkfarbe-hover: #CC5500;

    --menue-textfarbe-aktiv: #FFFFFF;
    --menue-textfarbe-aktiv: #F96B0B;
    --menue-a-border-farbe: #F96B0B;
    --menue-a-aktive-farbe: #F96B0B;
    --menue-border-farbe: #F96B0B;    /* Dein optimiertes, leuchtendes Orange für die Linie */
    --menue-border-farbe: #414141;    /* Dein optimiertes, leuchtendes Orange für die Linie */
    --slider-h: #FFFFFF;
    --slider-textfarbe: #ffffff; /* #ededed */

    --text-textfarbe: #414141;
    --h-textfarbe: #414141;

    --footer-textfarbe: #FFFFFF;
    --footer-linkfarbe: #FFFFFF;
    --footer-linkfarbe-hover: #F96B0B;
    --footer-border-farbe: #ededed;    /* Dein optimiertes, leuchtendes Orange für die Linie */

    --hintergrund_1: #ffffff;
    --hintergrund_1_color: #414141;
    --hintergrund_1_color_a: #414141;
    --hintergrund_1_color_a_hover: #414141;

    --hintergrund_2: #f6f6f6                                      ;
    --hintergrund_2_color: #414141;
    --hintergrund_2_color_a: #414141;
    --hintergrund_2_color_a_hover: #414141;

    --linien-farbe-akzent: #F96B0B;
}

a {
    color: var(--linkfarbe);
}
a:hover {
    color: var(--linkfarbe-hover);
}
.h4,
p.h4 {
    font-size: 20px;
}
.et_pb_module.et_pb_text.kontaktzeile {
    margin-bottom:0.5em;
}


.et_pb_module.et_pb_text.kontaktzeile p{
    padding-bottom: 0;
    line-height: 1.7;

}
#footer-trenner,
#main-header.helics-products-header {
    border-bottom: solid 3px #F96B0B;
}


div#main-content div#kontaktformular-zeile h2{
    font-size: 46px;
}

/* Reserviert Platz unter jedem Feld, damit nichts springt */
#formular-kontaktformular .mit-fehleranzeige .wpcf7-form-control-wrap {
    display: block;
    min-height: 65px; /* Wert anpassen, je nach Schriftgröße */
    margin-bottom: 5px;
}

/* Die Fehlermeldung selbst absolut positionieren, falls min-height nicht reicht */
#formular-kontaktformular .wpcf7-not-valid-tip {
    position: absolute;
    font-size: 13px;
    line-height: 1;
    margin-top: 2px;
}

/* ============================================================
   2. TYPOGRAFIE & GRUNDSTIL
   ============================================================ */
.page.et_pb_pagebuilder_layout #main-content,
div#et-main-area,
body{
    background-color: var(--body-hintergrund);
    background: var(--body-hintergrund);

}
.organge_strich_unten {
    border-bottom: solid 1px var(--helics-orange-akzent);
}

/* Standard-Bullets ausblenden */
.liste-mit-sonder-icons-haekchen-orange ul {
    list-style-type: none !important;
    padding-left: 0 !important;
}

/* Eigene Häkchen hinzufügen */
.liste-mit-sonder-icons-haekchen-orange ul li {
    position: relative;
    padding-left: 30px; /* Platz für das Häkchen */
    margin-bottom: 10px; /* Abstand zwischen den Punkten */
}

.liste-mit-sonder-icons-haekchen-orange ul li::before {
    content: "\2714"; /* Dein fettes Häkchen-Symbol */
    position: absolute;
    left: 0;
    color: #F96B0B;    /* Hier dein gewünschtes Orange einsetzen */
    font-weight: bold;
    font-size: 19px;   /* Größe des Häkchens */
    line-height: 1;
}

/* Die Liste ansprechen */
.liste-mit-sonder-icons-bullets-orange ul {
    list-style-type: disc !important; /* Stellt sicher, dass es Punkte sind */
    padding-left: 20px !important;    /* Platz für die Punkte */
}

/* Nur den Punkt (Marker) ansprechen und orange färben */
.liste-mit-sonder-icons-bullets-orange ul li::marker {
    color: #F96B0B !important;
    font-size: 1.2em; /* Hier kannst du die Größe der Punkte anpassen */
}


div#startseite-hero h1,
div#startseite-hero h2,
div#startseite-hero h3,
div#startseite-hero h4,
div#startseite-hero h5,
div#startseite-hero h6{

}
div#startseite-hero h1 {

}
div#easyquerv-hero span,
div#easyquerv-hero p,
div#startseite-hero span,
div#startseite-hero p{
    color: var(--slider-textfarbe);
}

div#projekte-referenzen {

}

#easyquerv p {
    color: #fff;
}
div#easyquerv {

}
div#easyquerv .h2_mit_text_nebeneinander{

}
div#easyquerv .h2_mit_text_nebeneinander .et_pb_text_inner{

}
div#easyquerv .h2_mit_text_nebeneinander .et_pb_text_inner p,
div#easyquerv .h2_mit_text_nebeneinander .et_pb_text_inner h2{
    display: inline-block;
}
.et_pb_text.h2_mit_text_nebeneinander .et_pb_text_inner p,
.et_pb_text.h2_mit_text_nebeneinander .et_pb_text_inner h2{

}

div#projekte-referenzen .et_pb_column.et_pb_css_mix_blend_mode_passthrough {
    /* padding-top: 300px;
     padding-right: 20px;
     padding-bottom: 20px;
     padding-left: 20px;*/
}

div#projekte-referenzen h3{
    letter-spacing: 0.05em !important;
    /* min-height: 80px;*/
}


/* Grundschrift für Fließtext und Header-Elemente */
#main-header, #top-menu a, #mobile_menu li a {
    font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}
body, p {
    font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

/* Überschriften im Engineering-Look (Großbuchstaben & weites Spacing) */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', sans-serif !important;
}
div#startseite-hero h2 {
    /* font-size: 30px;*/
}

.hintergrund_1 {
    background-color: var(--hintergrund_1);
}

.hintergrund_2 {
    background-color: var(--hintergrund_2);

}
.hintergrund_363636  {
    background-color: #363636;

}
.hintergrund_414141   {
    background-color: #414141;

}


/* Große Zahlen für technische Daten */
.zahl-engineering {
    font-family: 'Inter', sans-serif !important;
    font-weight: 800;
    font-size: 2.5em;
    color: var(--helics-orange-akzent);
    letter-spacing: 0.05em;
    display: inline-block;
}

/* ============================================================
   3. NAVIGATION (HEADER)
   ============================================================ */

/* Hintergrund für den Kopfbereich */
#main-header, #top-header {
    background-color: var(--header-hintergrund) !important;
}

/* Menü-Schriftart & Farben */
#top-menu li a, #mobile_menu li a {
    font-weight: 500;
    letter-spacing: 0.05em;
    color: var(--menue-textfarbe) !important;
}

/* Hover-Effekt und aktive Seite (über deine JS-Klasse) */
#top-menu li a:hover{
    color: var(--menue-textfarbe-hover) !important;

}
#top-menu li.menue-aktiv > a,
#mobile_menu li.menue-aktiv > a {
    color: var(--menue-textfarbe-aktiv) !important;
}
div#divi-child-header-logo-container #logo {
    max-height: 70px;
}
header#main-header.et-fixed-header div#divi-child-header-logo-container #logo {
    max-height: 50px;
}
#top-menu li {
    display: inline-block;
    font-size: 13px;
    padding-right: 10px;
}
/* Verhindert das Stapeln der Sprachen */
#top-menu .lang-item{
    display: inline-block !important;
    float: none !important;

}
#mobile_menu .lang-item {
    display: inline-block !important;
    float: none !important;
}
#mobile_menu .lang-item.lang-item-de {

    margin-left: 5%;
}


/* 3. Das Hexagon direkt vor den Link-Text setzen */
.liste-mit-sonder-icons-bullets-orange ul li a::before ,
.sonder-icons .sub-menu li a::before {
    content: "\2B22";
    color: #F96B0B;
    font-size: 15px;
    line-height: 1;
    padding-right: 5px;    /* Ein bisschen mehr Abstand zum Text sieht sauberer aus */
    display: inline-block;  /* Wichtig, damit das Padding zum Text hin wirkt */
    vertical-align: middle; /* Damit die Wabe mittig zur Texthöhe sitzt */
}
.et_fixed_nav #main-header {
    position: fixed  !important;
}
#mobile_menu {
    /* background: var(--header-hintergrund) !important; */
    color: var(--menue-textfarbe);
    background:var(--header-hintergrund);       
left: auto !important;   /* Hebt die linke Ausrichtung auf */
    right: 0 !important;     /* Setzt die rechte Ausrichtung fest */
    max-width: 300px;
    font-size: 14px;
}

#mobile_menu li.lang-item-de a {
    border-bottom: 1px solid rgba(0,0,0,.03);
    color: #666;
    padding: 10px 5%;
}

/* Der Trenner als echte Linie (Border) */
.lang-item-de {
    border-right: 1px solid #F96B0B !important; /* Orange Linie rechts neben DE */
    padding-right: 5px !important;
    margin-right: 5px !important;
}

/* Sprach-Links Styling */
.lang-item a {
    padding: 0 5px !important;
    font-weight: bold !important;
    color: #FFFFFF !important;
    text-transform: uppercase;
}
/* Optionale feine Linie unter dem Header */
#main-header {
    /*  border-bottom: 3px solid var(--menue-border-farbe) !important; /* Dezentes Dunkelgrau */
}
#top-menu li:not(.lang-item) a,
#mobile_menu li:not(.lang-item) a {
    /* border-bottom: 2px solid transparent !important;*/
    transition: all 0.3s ease;
}
#top-menu li:not(.lang-item) a:hover,
#top-menu li:not(.lang-item).menue-aktiv > a,
#mobile_menu li:not(.lang-item).menue-aktiv > a {
    /*    border-bottom: 2px solid var(--menue-a-border-farbe)!important; /* Dein neues Orange für den Border */
    color: var(--menue-a-aktive-farbe)!important;
    opacity: 1.0;
}
span.kunden-farbe {
    color:var(--helics-orange-akzent);
}

#top-menu li .sub-menu {
    width: auto;
    min-width: 200px;

}
#top-menu li .sub-menu li a {
    padding: 6px 20px;
    width: auto;
}
div#et-top-navigation ul.sub-menu {
    background: var(--header-hintergrund) !important;
}
div#et-top-navigation ul.sub-menu li{
    background: var(--header-hintergrund) !important;
    color: var(--menue-textfarbe);
    padding: 0;
}

div#et-top-navigation ul.sub-menu li a{
    color: var(--menue-textfarbe);
    padding: 6px 10px;
}
div#et-top-navigation ul.sub-menu li.current-menu-item > a{
    color: var(--menue-textfarbe-aktiv)!important;

}




footer.et-l.et-l--footer div#footer-helics-row,
footer.et-l.et-l--footer div#footer-helics-row-teil-1,
footer.et-l.et-l--footer div#footer-helics-row-teil-2,
footer.et-l.et-l--footer {
    background-color: var(--footer-hintergrund);
    color: var(--footer-textfarbe);
}
footer.et-l.et-l--footer div#footer-helics-row-teil-1 a,
footer.et-l.et-l--footer div#footer-helics-row-teil-2 a,
footer.et-l.et-l--footer div#footer-helics-row a{
    color: var(--footer-linkfarbe);
}
footer.et-l.et-l--footer div#footer-helics-row-teil-1 a:hover,
footer.et-l.et-l--footer div#footer-helics-row-teil-2 a:hover,
footer.et-l.et-l--footer div#footer-helics-row a:hover{
    color: var(--footer-linkfarbe-hover);
}

/* Rechtsbündige Texte (Desktop) */
#helics-ik-websites,
#helics-social-media {
    text-align: right;
}

body #page-container .mit-helics-button-orange a.et_pb_button,
input.helics-button-orange,
input.wpcf7-form-control.wpcf7-submit.has-spinner.helics-button-orange,
body #page-container .et_pb_section a.et_pb_button.et_pb_more_button,
body #page-container .et_pb_section a.et_pb_button.helics-button-orange {
    background-color: var(--button-hintergrund);
    color: var(--button-text);
    border-color: var(--button-hintergrund);
    border-radius: 4px;
    /*letter-spacing: 1px;
    font-size: 14px;
    line-height: 1.7em !important;
    */
    border: 2px solid var(--button-hintergrund);
    padding: .3em 1em;
    font-weight: 500;

}
body #page-container .mit-helics-button-orange a.et_pb_button:hover,
input.helics-button-orange:hover,
input.wpcf7-form-control.wpcf7-submit.has-spinner.helics-button-orange:hover,
body #page-container .et_pb_section a.et_pb_button.et_pb_more_button:hover,
body #page-container .et_pb_section a.et_pb_button.helics-button-orange:hover {
    background-color: var(--button-hintergrund-hover);
    color: var(--button-text-hover);
    border-color: var(--button-hintergrund-hover);

}
body #page-container .mit-helics-button-orange a.et_pb_button:hover:after,
body #page-container .et_pb_section a.et_pb_button.et_pb_more_button:hover:after,
body #page-container .et_pb_section a.et_pb_button.helics-button-orange:hover:after {
    display: none;
}

div#helics-footer-row-reihe-1 {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
    /* border-top: 1px solid var(--footer-border-farbe);*/
    border-bottom: 1px solid var(--footer-border-farbe);
}


/* ============================================================
   HELICS TOOLBOX - FINALES KOMPLETT-CSS
   ============================================================ */

/* 1. Alles auf eine vertikale Linie (Zentrierung) */
.helics-footer-nav,
.helics-social-wrapper,
.helics-footer-nav ul,
.helics-social-list {
    display: flex !important;
    align-items: center !important; /* Vertikale Mitte erzwingen */
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-wrap: wrap;
}

/* 2. Footer-Links: Der Strich-Stil (|) */
.helics-footer-nav li {
    display: flex;
    align-items: center;
}

/* Abstand und Trennstrich (außer beim letzten Element) */
.helics-footer-nav li:not(:last-child)::after {
    content: "|";
    margin: 0 10px;    /* Abstand links und rechts vom Strich */
    color: #ffffff;    /* Weißer Strich */
    font-size: 13px;   /* Etwas kleiner als der Text für edle Optik */
    opacity: 0.5;      /* Dezent transparent */
}

.helics-footer-nav a {
    text-decoration: none;
    color: inherit;
    line-height: 1;
}

/* 3. Social Media Icons */
.helics-social-list li.social-item {
    margin-left: 15px; /* Abstand zwischen den Icons */
}

.helics-social-list li.social-item:first-child {
    margin-left: 0;
}

.social-item img {
    display: block;
    height: 30px;      /* Einheitliche Größe */
    width: auto;
}

/* 4. Ausrichtung (Links, Mitte, Rechts aus Admin) */
.helics-social-wrapper.align-flex-start {
    justify-content: flex-start;
}
.helics-social-wrapper.align-center     {
    justify-content: center;
}
.helics-social-wrapper.align-flex-end   {
    justify-content: flex-end;
}

.helics-footer-nav.align-left ul   {
    justify-content: flex-start;
}
.helics-footer-nav.align-center ul {
    justify-content: center;
}
.helics-footer-nav.align-right ul  {
    justify-content: flex-end;
}

/* 5. Copyright & Farben */
#helics-copyright, .ik-websites, #webdesign {
    margin: 10px 0;
    color: var(--footer-textfarbe);
    font-size: 1em;
}
#helics-copyright a {
    color: var(--footer-linkfarbe);
}

/* 6. Responsive (Mobil unter 980px) */
@media screen and (max-width: 980px) {
    .helics-footer-nav, .helics-social-wrapper {
        justify-content: center !important;
        width: 100% !important;
        flex-direction: column !important;
    }

    .helics-footer-nav ul, .helics-social-list {
        justify-content: center !important;
        padding: 10px 0;
    }

    /* Striche mobil entfernen für sauberen Umbruch */
    .helics-footer-nav li:not(:last-child)::after {
        display: none;
    }

    .helics-footer-nav li {
        padding: 5px 10px;
    }
}


/* ============================================================
   WP-TOOLBOX GRID SYSTEM (UNIVERSAL)
   ============================================================ */

/* Haupt-Container (für Reihen/Rows) */
.wptoolbox-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center; /* Standardmäßig vertikal zentriert */
    gap: 0;
    width: 100%;
}

/* Die Spalten (Columns) */
.wptoolbox-col {
    flex-grow: 0;
    flex-shrink: 0;
    box-sizing: border-box;
}

/* --- DESKTOP (ab 992px) --- */
@media (min-width: 992px) {
    .wptoolbox-wd-d-20  {
        flex-basis: 20%;
    }
    .wptoolbox-wd-d-25  {
        flex-basis: 25%;
    }
    .wptoolbox-wd-d-30  {
        flex-basis: 30%;
    }
    .wptoolbox-wd-d-33  {
        flex-basis: 33.3333%;
    }
    .wptoolbox-wd-d-40  {
        flex-basis: 40%;
    }
    .wptoolbox-wd-d-50  {
        flex-basis: 50%;
    }
    .wptoolbox-wd-d-60  {
        flex-basis: 60%;
    }
    .wptoolbox-wd-d-67  {
        flex-basis: 66.6666%;
    }
    .wptoolbox-wd-d-75  {
        flex-basis: 75%;
    }
    .wptoolbox-wd-d-80  {
        flex-basis: 80%;
    }
    .wptoolbox-wd-d-100 {
        flex-basis: 100%;
    }

    .wptoolbox-ta-d-left   {
        text-align: left;
    }
    .wptoolbox-ta-d-center {
        text-align: center;
    }
    .wptoolbox-ta-d-right  {
        text-align: right;
    }
}

/* --- TABLET (768px bis 991px) --- */
@media (min-width: 768px) and (max-width: 991px) {
    .wptoolbox-wd-t-25  {
        flex-basis: 25%;
    }
    .wptoolbox-wd-t-33  {
        flex-basis: 33.3333%;
    }
    .wptoolbox-wd-t-50  {
        flex-basis: 50%;
    }
    .wptoolbox-wd-t-67  {
        flex-basis: 66.6666%;
    }
    .wptoolbox-wd-t-75  {
        flex-basis: 75%;
    }
    .wptoolbox-wd-t-100 {
        flex-basis: 100%;
    }

    .wptoolbox-ta-t-left   {
        text-align: left;
    }
    .wptoolbox-ta-t-center {
        text-align: center;
    }
    .wptoolbox-ta-t-right  {
        text-align: right;
    }
}

/* --- MOBILE (unter 767px) --- */
@media (max-width: 767px) {
    .wptoolbox-wd-m-25  {
        flex-basis: 25%;
    }
    .wptoolbox-wd-m-33  {
        flex-basis: 33.3333%;
    }
    .wptoolbox-wd-m-50  {
        flex-basis: 50%;
    }
    .wptoolbox-wd-m-100 {
        flex-basis: 100%;
    }

    .wptoolbox-ta-m-left   {
        text-align: left;
    }
    .wptoolbox-ta-m-center {
        text-align: center;
    }
    .wptoolbox-ta-m-right  {
        text-align: right;
    }
}

/* Hilfsklasse für vertikale Ausrichtung */
.align-center {
    align-items: center !important;
}
.align-top    {
    align-items: flex-start !important;
}
.align-bottom {
    align-items: flex-end !important;
}


label.kontaktformular_label {
    display: inline-block;
    width: 100%;
    padding-bottom: 1em;

}
div#formular-kontaktformular p{
    padding-bottom: 1em;
}

div#formular-kontaktformular .wptoolbox-section.mit-checkbox {
    padding-bottom: 1em;
}
/* Container-Fix: Erzeugt den Abstand zwischen den Spalten */
#formular-kontaktformular .wptoolbox-section {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important; /* Hier stellst du den Abstand zwischen den Feldern ein */
    margin-bottom: 0px !important; /* Abstand zur nächsten Zeile */
    width: 100% !important;
}
div#formular-kontaktformular .wptoolbox-section.mit-checkbox.mit-fehleranzeig,
div#formular-kontaktformular .wptoolbox-section.mit-fehleranzeige.mit-nachricht-feld {
    margin-bottom: 1em;
    padding-bottom: 1.5em;
}

/* Markiert die Checkbox rot, wenn sie nicht gültig ist */
.wpcf7-not-valid input[type="checkbox"] {
    outline: 2px solid #dc3232 !important;
    outline-offset: 2px; /* Erzeugt einen kleinen Abstand zwischen Haken und Rahmen */
    appearance: none; /* Optional: Entfernt das Standard-Design bei manchen Browsern */
    -webkit-appearance: checkbox; /* Stellt sicher, dass es eine Checkbox bleibt */
}

/* Markiert Textfelder, E-Mail-Felder und Textareas bei Fehlern rot */
#formular-kontaktformular input[type="text"].wpcf7-not-valid,
#formular-kontaktformular input[type="email"].wpcf7-not-valid,
#formular-kontaktformular textarea.wpcf7-not-valid {
    border: 2px solid #dc3232 !important;
    background-color: #fff8f8 !important; /* Ganz leichter Rotschimmer im Hintergrund */
    transition: border-color 0.3s ease-in-out;
}

/* Fokus-Zustand: Wenn der User reinklickt, um den Fehler zu beheben */
#formular-kontaktformular .wpcf7-not-valid:focus {
    border-color: #ff6600 !important; /* Wechselt zu deinem Orange beim Tippen */
    outline: none;
}

/* Die Fehlermeldung "Dies ist ein Pflichtfeld" farblich anpassen */
#formular-kontaktformular .wpcf7-not-valid-tip {
    color: #dc3232 !important;
    font-size: 12px;
    font-weight: bold;
    margin-top: 4px;
    display: block;
}

/* 1. Die Checkbox-Reihe ordentlich ausrichten */
.wptoolbox-form-checkbox-row {
    display: flex;
    flex-wrap: wrap; /* Erlaubt der Fehlermeldung, in die nächste Zeile zu rutschen */
    align-items: flex-start;
    margin-bottom: 25px;
}

/* 2. Nur die Checkbox selbst rot umranden */
.wpcf7-not-valid input[type="checkbox"] {
    outline: 2px solid #dc3232 !important;
    outline-offset: 2px;
}

/* 3. Den Text (dein span) daneben positionieren */
.datenschutz-hinweiss {
    flex: 1; /* Nimmt den restlichen Platz ein */
    margin-left: 10px;
    font-size: 14px;
    line-height: 1.4;
}

/* 4. Die Fehlermeldung unter die Checkbox zwingen */
.wptoolbox-form-checkbox-row .wpcf7-not-valid-tip {
    width: 100%; /* Nimmt die volle Breite ein und rutscht so nach unten */
    color: #dc3232 !important;
    font-size: 12px;
    margin-top: 5px;
    display: block;
}
    .wptoolbox-col.wptoolbox-wd-d-100 {
    width: 100%;
}
/* Spalten-Fix: Stellt sicher, dass 3 Felder exakt nebeneinander passen */
@media (min-width: 768px) {
    #formular-kontaktformular .wptoolbox-col.wptoolbox-wd-d-33 {
        flex: 1 !important; /* Felder dehnen sich gleichmäßig aus */
        min-width: 190px !important; /* Verhindert, dass sie zu schmal werden */
        max-width: calc(33.33% - 14px) !important; /* 33% minus Anteil vom Gap */
    }
    .wptoolbox-col.wptoolbox-wd-d-100 {
    width: 100%;
}
    
}

/* Input-Styling für den "schönen" Look (1em Padding/Abstand innen) */
#formular-kontaktformular input[type="text"],
#formular-kontaktformular input[type="email"],
#formular-kontaktformular input[type="tel"],
#formular-kontaktformular textarea,
#formular-kontaktformular select {
    width: 100% !important;
    padding: 0.5em !important; /* 1em Abstand zum Text innen */
    border: 1px solid #ccc !important;
    border-radius: 0px !important;
    background-color: #fff !important;
    box-sizing: border-box !important; /* WICHTIG: Padding wird nicht zur Breite addiert */
    font-size: 16px !important;
    transition: border-color 0.3s ease;
}

/* Fokus-Effekt (wenn man reinklickt) */
#formular-kontaktformular input:focus,
#formular-kontaktformular textarea:focus {
    border-color: #ff6600 !important; /* Orange wie dein Senden-Button */
    outline: none !important;
}

#formular-kontaktformular span.wpcf7-form-control.wpcf7-checkbox span.wpcf7-list-item {
    margin: 0;
    margin-left: 0px;
}

#formular-kontaktformular span.wpcf7-form-control.wpcf7-checkbox span.wpcf7-list-item  input[type="checkbox"] {
    vertical-align: text-top;
}

@media (max-width: 1199px) {

    #et_mobile_nav_menu{
        display: block;
    }

    #top-menu {
        display: none;
    }
}
/* div#main-content div#kontaktformular-zeile h2{
    font-size: 46px;
} */

span.wpcf7-list-item-label,
label.kontaktformular_label,
 div#formular-kontaktformular p,
div#formular-kontaktformular {
    font-size: 19px;

}
input.wpcf7-form-control.wpcf7-submit.has-spinner.helics-button-orange {
    font-size: 17px;
}
/* --- Tablet (Laptop-Werte aus deinem Bild) --- */
@media only screen and (max-width: 980px) {
    div#main-content div#kontaktformular-zeile h2{
        font-size: 36px;
    }
    input.wpcf7-form-control.wpcf7-submit.has-spinner.helics-button-orange {
        font-size: 15px;
    }
    span.wpcf7-list-item-label,
label.kontaktformular_label,
 div#formular-kontaktformular p,
    div#formular-kontaktformular {
        font-size: 17px;

    }
}


/* --- Mobile (Handy-Werte aus deinem Bild) --- */
@media only screen and (max-width: 767px) {

    div#main-content div#kontaktformular-zeile h2{
        font-size: 28px;
    }
    input.wpcf7-form-control.wpcf7-submit.has-spinner.helics-button-orange {
        font-size: 13px;
    }
    span.wpcf7-list-item-label,
label.kontaktformular_label,
 div#formular-kontaktformular p,
    div#formular-kontaktformular {
        font-size: 15px;

    }
}