/*
 Theme Name:   Divi Child
 Theme URI:    http://www.elegantthemes.com
 Description:  Divi Child Theme
 Author:       Sabrina Schulz
 Author URI:   xy
 Template:     Divi
 Version:      1.0
*/





/* Global */
:root {
    --first:#0f69b3;
	--second:#fe0100;
	  }

body{font-family: 'Open Sans', 'Helvetica Neue', 'Arial', sans-serif}
#page-container{overflow-x:hidden}

/* Fonts*/
.et_pb_module h1, #header-slider h2{font-size:calc(30px + (40 - 30)*((100vw - 300px)/(1600 - 300)));font-weight:500; line-height:1.2em}
.et_pb_module h2{font-size:calc(24px + (30 - 24)*((100vw - 300px)/(1600 - 300)));font-weight:500; margin-bottom:0.5em}
.et_pb_module h3{font-size:calc(20px + (25 - 20)*((100vw - 300px)/(1600 - 300))); font-weight:500;margin-bottom:0.5em}
.et_pb_module h4{font-size:calc(16px + (18 - 16)*((100vw - 300px)/(1600 - 300)))}
.et_pb_module h5{font-size:calc(14px + (16 - 14)*((100vw - 300px)/(1600 - 300)));}
.et_pb_module h6{font-size:calc(12px + (14 - 12)*((100vw - 300px)/(1600 - 300)))}

.et_pb_module h1, .et_pb_module h2, .et_pb_module h3, .et_pb_module h4, .et_pb_module h5, .et_pb_module h6 {font-family: 'Roboto Condensed', 'Arial Narrow', 'Helvetica Neue', sans-serif;
}


.polylang_langswitcher_flag{list-style-type:none!important;}

/*@media only screen and (min-width : 981px) {.nurmobil, .pll-parent-menu-item {display:none!important}}*/
@media only screen and (max-width : 980px) {.nichtmobil {display:none!important}}

@media only screen and (max-width : 981px) {.polylang_langswitcher_flag img {width:22px!important; height:18px!important}.polylang_langswitcher_flag li{display: inline; margin:0 5px; padding: 5px 8px}
.polylang_langswitcher_flag li:hover{background-color:rgba(255,255,255,0.2); border-radius:20px; }
.polylang_langswitcher_flag {margin:0; padding:0!important;width:100%;    display: flex; justify-content: flex-end; font-size:14px}}


/* Menü*/
.nav li ul {width: 270px;}
.et-menu li li a {padding: 5px 0px;width: 250px}
.polylang_langswitcher_flag .lang-item img{width:22px!important;height:auto!important}
.border {border-bottom:2px solid var(--first)}


.et_mobile_nav_menu .menu-item-gtranslate{display:flex; flex-direction:column}



#header-cta .balken{display: flex;flex-wrap: nowrap;flex-direction: row;justify-content: flex-end;align-items: center;align-content: center;}

#polymenu-item{margin:0!important}

.et-menu-nav a{font-size: calc(16px + (20 - 16) * ((100vw - 300px) / (1600 - 300)))!important}
#header-cta .et_pb_text_inner {font-size: calc(6px + (16 - 6) * ((100vw - 300px) / (1600 - 300)))!important}

#header-cta .balken a{color:#fff}
#header-cta .balken .et_pb_blurb .et_pb_blurb_container{padding-left:0}

@media only screen and (max-width : 980px) {#header-cta{display:none}}

/* Hover effect Menü */
#menu-main li {background-color: transparent; text-decoration: none;position: relative;z-index: 1;color: inherit;padding: 0 15px}
#menu-main li:before {content: "";position: absolute;top: 50%;left: 0;width: 0%;height: 40px;background-color: var(--first);transform: skewX(-15deg) translateY(-50%);transition: all 0.4s ease; opacity: 0; z-index: -1}
#menu-main li:hover:before {width: 100%;opacity: 1 !important;transform: skewX(0) translateY(-50%)}
#menu-main li:hover > a {color: white !important}
#menu-main .menu-item-has-children:hover > a {color: white !important}
#menu-main .menu-item-has-children:hover .sub-menu a {color: var(--first)}
#menu-main .sub-menu li:hover > a {color: white !important}
#menu-main .sub-menu li {max-width: 180px}

.et_mobile_menu li a {font-size:16px!important; padding: 2px 5%!important}
.flex-leistungen  .et_pb_promo_description{ min-height:160px}

.flex-kontakt, .flex-leistungen  {
  display: flex;
  flex-wrap: wrap;
	 flex-direction: row;
   justify-content: flex-start;
    align-items: flex-start;
    align-content: center;
  gap: 10px;
 }

.kontakt-item, .leistungsitem {
  flex: 0 1 calc(25% - 20px);
  box-sizing: border-box;
  padding: 20px;
  text-align: center;

}

@media (max-width: 1200px) {.kontakt-item, .leistungsitem  {flex: 1 1 calc(33.3333% - 20px)}}
@media (max-width: 900px) {.kontakt-item, .leistungsitem  {flex: 1 1 calc(50% - 20px)}}
@media (max-width: 600px) {.kontakt-item, .leistungsitem  {flex: 1 1 100%}}




.polylang_langswitcher {padding:0!important;}

/* ==========================================================================
 Kontaktformular
========================================================================== */

/*allgemeine Kontaktformular Konakt & Analysegespräch */

/* Layout */
.wps-form {width: 100%;margin: 0 auto}
.wps-form-row {-webkit-box-orient: horizontal;-webkit-box-direction: normal;flex-direction: row;-ms-flex-direction: row}
.wps-form-row, .wps-form-secound-column {display: -webkit-box;display: flex;display: -ms-flexbox;display: -webkit-flex;width: 100%;justify-content: space-between}
.wps-form-row .wpcf7-form-control {width: 100%}
.wps-anrede {-webkit-box-flex: 1;flex: 1; -webkit-flex: 1; -ms-flex:1; width: 10%;margin:1em 0}
.wps-produkte {-webkit-box-flex: 1;flex: 1; -webkit-flex: 1; -ms-flex:1; width: 100%;margin-bottom:1em}
.wps-form-column.full {-webkit-box-flex: 0;flex: 0 1 100%;-webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; line-height:1.2em!important}
.wps-form-column.half {-webkit-box-flex: 0;flex: 0 1 49%;-webkit-flex: 0 1 49%; -ms-flex: 0 1 49%; line-height:1.2em!important}
.wps-form .checkboxen {padding: 15px 10px;background: #e3eaf1; margin:20px 0}
.wps-form .checkboxen label {color: #0f69b3;font-size: 18px;margin-bottom: 10px}
.wps-form .checkboxen .wpcf7-list-item-label{color:#333; font-size:14px}
.wps-form .checkboxen .wpcf7-form-control {display:flex;flex-direction: column;}
span.wpcf7-list-item {display: inline-block; margin: 0 1em 0 0 }
.wps-form input.text, .wps-form input.title, .wps-form input[type=email],.wps-form input[type=date], .wps-form input[type=password], .wps-form input[type=tel], .wps-form input[type=text], select, .wps-form textarea  {background-color: #fff;border: 1px solid var(--first);border-radius:4px;padding: 10px;margin: 5px 0; font-size:0.95em}
.secound-left .wpcf7-list-item-label , .wps-form p {font-size:0.85em!important}
.wps-element {margin-bottom:10px}
.wps-form label {width:100%}

/* Hinweismeldungen */
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {border-color: var(--first)}
.wpcf7 form.sent .wpcf7-response-output {background-color: var(--first);color:#fff; border: 2px solid var(--first);border-radius:30px;text-align:center}

/* Mobile Anpassungen*/
@media all and (min-width: 767px) {.first-right{ margin-left: 20px}}
@media all and (max-width: 767px) {.wps-anrede {width: 45%} .wps-form input.text, .wps-form input.title, .wps-form input[type=email], .wps-form input[type=password], .wps-form input[type=tel], .wps-form input[type=text], select, .wps-form textarea {border: 2px solid var(--first)}.wps-form-row {-webkit-box-orient: vertical;-webkit-box-direction: normal;flex-direction: column;-ms-flex-direction: column}}

/* Button */
input[type=submit] {background-color: var(--first)!important;padding:10px 30px; color:#fff; border:none; float: right;margin-top:2em}

/*to top*/
.et_pb_scroll_top.et-pb-icon{background: var(--first); border-radius:50%; right:10px; padding:5px; font-size:40px}
.et_pb_scroll_top:before {content: "\21"}


/* List marker setup */
ul.on-list, .glossary-terms-list{list-style: none!important;list-style-type: none!important;padding-left: 0}
ul.on-list li,  .glossary-terms-list li {position: relative;padding-left: 40px; margin-bottom: 8px}

ul.on-list li:before, .glossary-terms-list li:before {
    content: '$'; /* Font Awesome Free right arrow */
    color: var(--second);
    font-family: ETmodules;
    font-size: 1.5em;
    position: absolute;
    left: 0;
    top: 0;
    line-height: inherit;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}



/* Glossary */
.glossary-cats-list {list-style-type:none!important; display:flex;flex-direction: row;flex-wrap: wrap;justify-content: flex-start;align-items: center;align-content: space-between}
.glossary-cats-list li{flex: 0 1 7%;background-color:var(--first); text-align:center; display:flex;align-items: center;justify-content: center;margin:2px;min-width:60px; height: 60px}
.glossary-cats-list li a{margin-left:-10px;color:#fff!important; font-size:26px}
.tax-glossary-cat #main-content .container:before {content:none}
.count a {display: flex;background-color: var(--first);color: #fff;padding: 1px;text-decoration: none;margin-right: 5px;width:40px;height:40px;align-items: center;justify-content: center}
.count a:hover {color:var(--second)!important} 
.count span {
    display: inline-block;
	position:absolute;
    background-color: #fff; /* Hintergrundfarbe für die Zahl */
    color: var(--first); /* Textfarbe */
    padding: 0 2px; /* Abstand um die Zahl */
	min-width:25px;
    border-radius: 50%; /* Rundes Aussehen */
    margin-top: -40px;
    margin-right: -48px;
	box-shadow:  0px 2px 18px 0px rgba(0,159,227,0.33);
}

.glossary-alphabetical-index .theme-hyphen ul li::after{content:unset}
.post-type-archive-glossary article, .tax-glossary-cat article{margin-bottom:2em}


/* Glossary link */
.glossary-only-link {position: relative;text-decoration: none}

.glossary-only-link:hover:after, article.glossary h2 a:after{
    content: '\f129'; 
    font-family: 'FontAwesome';
	font-style: normal;
    position: absolute;
    right: -10%;
    top: 10%;
    transform: translateY(-50%);
    background-color: var(--first);
    color: #fff; 
    padding: 2px 4px;
    border-radius: 50%;
    font-size: 8px;
    line-height: 8px}

article.glossary h2 a:after{
      right: unset;
    top: unset}


#iconbox .et_pb_main_blurb_image{border-radius:50%; aspect-ratio: 1;  background-color: #edf2f6; width:160px; height:160px}
#iconbox .et_pb_main_blurb_image .et_pb_image_wrap{display:flex;justify-content: center;align-items: center;width:100%; height:100%}
#iconbox .et_pb_main_blurb_image .et_pb_image_wrap img {width:80px}
#iconbox .et_pb_blurb:hover .et_pb_main_blurb_image{background-color: #dce5f0}