/*
Theme Name: CeeQoo Divi Child Theme
Theme URI: https://ceeqoo.com
Description: Child Theme For Monika Herbstrith-Lappe
Author: CeeQoo
Author URI: https://ceeqoo.com
Template: Divi
*/

/* Start your custom CSS bellow this comment
============================================ */
/* Schriftdefinitionen */
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-light-webfont.woff2') format('woff2'),
         url('fonts/opensans-light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-lightitalic-webfont.woff2') format('woff2'),
         url('fonts/opensans-lightitalic-webfont.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-regular-webfont.woff2') format('woff2'),
         url('fonts/opensans-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-italic-webfont.woff2') format('woff2'),
         url('fonts/opensans-italic-webfont.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-semibold-webfont.woff2') format('woff2'),
         url('fonts/opensans-semibold-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-semibolditalic-webfont.woff2') format('woff2'),
         url('fonts/opensans-semibolditalic-webfont.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-bold-webfont.woff2') format('woff2'),
         url('fonts/opensans-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-bolditalic-webfont.woff2') format('woff2'),
         url('fonts/opensans-bolditalic-webfont.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-extrabold-webfont.woff2') format('woff2'),
         url('fonts/opensans-extrabold-webfont.woff') format('woff');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Open Sans';
    src: url('fonts/opensans-extrabolditalic-webfont.woff2') format('woff2'),
         url('fonts/opensans-extrabolditalic-webfont.woff') format('woff');
    font-weight: 800;
    font-style: italic;
}

body {
	font-family: "Open Sans", sans-serif;
	font-size: 20px;
	font-weight: 400;
	color: rgb(0 0 0 / 85%);
  	-webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}
a {
	color: #b31061;
}
a:hover {
	color: rgba(179,16,97,0.8);
} 

/* Headlines */
h1, h2, h3, h4, h5, h6 {
	font-family: "Open Sans",sans-serif;
}
/* mobil Headlines*/
@media only screen and (max-width: 768px) {
	h1 { font-size: 1.8em!important; }
	h2 { font-size: 1.5em!important; }
	h4 {font-size: 1.1em !important; }
	body { font-size: 1em!important; }
}

h1 {
    font-size: 40px;
	text-align: left;
    padding-bottom: 10px; 
    line-height: 1.2em;
    font-weight: 500;
	-webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}

/* h2 {
    font-size: 18px!important;
    line-height: 1.3em!important;
    font-weight: 500!important;
}*/
h3 {
    font-size:20px;
	font-weight: 600!important;
	color: #1e3663!important;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
h4{
    font-weight: 600!important;
    font-size: 20px;
} 
/*
h5 {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 1.8em;
} 
 h6 {
font-weight: 600;
    text-transform: uppercase;
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 1.8em;
}*/

/* Startseite */
/* h2 .entry-title {
    font-size: 18px!important;
    line-height: 1.3em!important;
    font-weight: 500!important;
}*/

.et_pb_post blockquote {
	font-size: 30px !important;
	text-align: left !important;
	font-style: italic !important;
}

/*Mehr Abstand bei den Standard-Buttons*/
.et_pb_button {
    padding-top: 10px!important;
    padding-right: 30px!important;
    padding-bottom: 10px!important;
    padding-left: 30px!important;
}
.et_pb_button:hover{
	padding-right: 40px!important;
    padding-left: 40px!important;
}
@media (max-width: 980px){
	.et_pb_button {
   	 	padding-right: 20px!important;
   	 	padding-left: 20px!important;
	}
	.et_pb_button:hover{
		padding-right: 30px!important;
   	 	padding-left: 30px!important;
	}
}

/* Sidebar-Button */
.sidebar_nl_button {
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(179, 16, 97);
    padding: 10px 18px;
    width: 292px;
    height: 60px;
    line-height: 50px;
    text-align: left;
    /* text-transform: uppercase; */
    text-decoration: none;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    }

.sidebar_nl_button:hover {
        background-color: rgb(150, 13, 80); /* Optional: leicht dunklere Farbe beim Hover */
}
/* Video-Modul mobil anpassen */
@media (max-width: 980px){
	.et_pb_video_0, .et_pb_video_1{
		width:100% !important;
	}
}

.et_pb_testimonial .et_pb_testimonial_content p {
    padding-bottom: 0em !important;
}

/* Content-Padding mobil verringern */
/* BETRIFFT ALLE ROWS */
@media only screen and ( max-width:981px ) {
	.et_pb_row{ 
		width: 90% !important;
	}
}

/* ---------- Testimonial Slider Anpassungen START ---------- */
#et-boc .et_pb_b3_testimonial_grid_slider .b3testimonialgridslider_image {
	margin-bottom: 0px !important;
}
.et_pb_b3_testimonial_grid_slider_0 .b3testimonialgridslider_testimonial_text, .et_pb_b3_testimonial_grid_slider_0 .b3testimonialgridslider_testimonial_text p {
	margin-bottom: 0px !important;
}
/* BUGFIX 24.03.2022 */
.swiper-button-next, .swiper-button-prev{
	top: 50% !important;
	/* BUGFIX 24.03.2022 */
}


/* ---------- Testimonial Slider Anpassungen ENDE  ---------- */

/* Untermenü-Abstände */
.nav li li {
  line-height: 1.5em;
}

/* Menü wird auch auf mobilen Geräten fixiert, die Höhe angepasst und das Dropdown-Menü scrollbar gemacht */
@media (max-width: 980px) {
    .et_non_fixed_nav.et_transparent_nav #main-header,
    .et_non_fixed_nav.et_transparent_nav #top-header,
    .et_fixed_nav #main-header, .et_fixed_nav #top-header {
        position: fixed !important;
        } 
    }

.et_mobile_menu {
    overflow: scroll !important;
    max-height: 83vh;
    }

/* Menü auf Mobil anpassen */

/*---------------------------------------------------*/
/* Unterpunkte im Menü mobil ausklappbar */
/* https://joshhall.co/how-to-create-a-divi-mobile-menu-collapse-effect/ */
/**** This hides the sub menu items on mobile ****/
#page-container .mobile_nav li ul.hide {
    display: none !important;
}
/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/
#page-container .mobile_nav .menu-item-has-children {
    position: relative;
}
#page-container .mobile_nav .menu-item-has-children > a {
    background: transparent;
}
/**** This styles the icon and moves it to the right ****/
#page-container .mobile_nav .menu-item-has-children > a + span {
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    z-index: 3;
}
/**** Here you can swap out the actual icons ****/
#page-container span.menu-closed:before {
    content: "\4c";
    display: block;
    color: #000;
    font-size: 16px;
    font-family: ETmodules;
}
#page-container span.menu-closed.menu-open:before {
    content: "\4d";
}
/*---------------------------------------------------*/
@media (max-width: 980px) {
	.logo_container{
		width: 190% !important;
		margin-left: -30px !important;
	}
	#et_search_icon::before{ margin-left: 30px !important; }
	.mobile_menu_bar::before{ margin-right: -30px !important; }
	
  	#main-header {
		height: 76px !important; 
    }
input.et-search-field {
 	   padding-left: 30px;
	}
.et_header_style_split .mobile_menu_bar,
.et_header_style_left .mobile_menu_bar {
  padding-bottom: 5px;
  } 
.et_mobile_menu {
	left: unset;
	top: 76px;
	right: -20px;
	padding: 0% !important;
	width: 100% !important;
}
.et_mobile_menu li a {
	font-size: 16px;
}
.mmkleiner a {
	font-size:14px!important;
	padding-top: 6px!important;
	padding-bottom: 6px!important;
	color: #206be3!important;
}
}
@media only screen and ( max-width: 980px ) { 
	#et_top_search { 
		display:none; 
	} 
	.et_mobile_menu li a:hover, .nav ul li a:hover {
	    opacity: 1;
	}
}
.mobilesearchform input#s {
	width: 80%;
    padding: 6px 12px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
input#mobilesearchsubmit {
	float: right;
    height: 32px;
	font-family: ETmodules;
	font-weight: 900;
    color: white;
	content: "\55";
	background-color: #b31061;
	border-width: 1px;
	border-color: #b31061;
    border-radius: 6px;
    font-size: 14px;
    padding: 6px 12px;
}
@media (min-width: 980px) {
	.hideondesktop { 
		display:none !important; 
	}
}

/* Secondary Menu: auf Mobil auch Social Icons anzeigen */
@media only screen and (max-width: 768px) {
div#et-secondary-menu {
display: block !important;
margin-top: 5px !important;
}
#et-info, #et-secondary-menu {
	float: left;
}
#et-secondary-menu>div.et_duplicate_social_icons>ul>li a {
display: block;
padding-top: 5px;
padding-bottom: .50em;
}
}
/* Header-Anpassungen: große Bildschirmbreiten */
.header-anpassung{
	background-position-y: 0px;
}

/* Header-Slider Anpassungen */
.headerslider .et_pb_slides .et_pb_container {
    width: 100%;
    margin: 0 9vw 0 9vw;
}
@media only screen and (min-width: 981px) and (max-width: 1510px) {
.headerslider .et_pb_slides .et_pb_slider_container_inner {
    width: 90%;
    margin: 0 9vw 0 9vw;
}
}
@media only screen and (max-width: 980px){
.headerslider .et_pb_slides .et_pb_container {
    width: 100%;
    margin: 0 0vw 0 0vw;
}
}
.et_pb_button_wrapper {
	background-color: #206BE3C2;
	border-bottom-left-radius: 8px!important;
	border-bottom-right-radius: 8px!important;
}
.et_pb_text_overlay_wrapper {
	padding-top: 80px!important;
	border-top-left-radius: 8px!important;
	border-top-right-radius: 8px!important;
}


/* Hakerl statt Bullets für UL */
/*.ceeqoo_bullets_check ul li {
  padding-left: 30px;
  list-style:none;
  margin-bottom: 10px;
}

.ceeqoo_bullets_check ul li::before {
  content: '\52';
  display: inline-block;
  margin-right: 7px;
  margin-left: -30px;
  padding-right: 5px;
  font-family:'ETmodules'!important;
  font-size: 1.2em;
  color: #206be3;
  vertical-align: middle;
}*/

/* Footer Credit Design */
#footer-info {
	font-size: 14px;
}

/*bloom Anmeldebox */
.et_bloom .et_bloom_stacked_flyin.et_bloom_form_container { 
	width: 600px !important;
	-webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}
.et_bloom .et_bloom_form_container, .et_bloom .et_bloom_form_container div, .et_bloom .et_bloom_form_container h2, .et_bloom .et_bloom_form_container h3, .et_bloom .et_bloom_form_container h4, .et_bloom .et_bloom_form_container p, .et_bloom .et_bloom_form_container a, .et_bloom .et_bloom_form_container font, .et_bloom .et_bloom_form_container img, .et_bloom .et_bloom_form_container strike, .et_bloom .et_bloom_form_container strong, .et_bloom .et_bloom_form_container b, .et_bloom .et_bloom_form_container u, .et_bloom .et_bloom_form_container i, .et_bloom .et_bloom_form_container ol, .et_bloom .et_bloom_form_container ul, .et_bloom .et_bloom_form_container li .et_bloom .et_bloom_optin_1 .et_bloom_form_container p, .et_bloom .et_bloom_optin_1 .et_bloom_form_container p span, .et_bloom .et_bloom_optin_1 .et_bloom_form_container p strong, .et_bloom .et_bloom_optin_1 .et_bloom_form_container form input, .et_bloom .et_bloom_optin_1 .et_bloom_form_container form button {
	font-family: 'Open Sans' !important;
}
.et_bloom .et_bloom_form_container a:hover{
	color: rgba(255,255,255,0.7)
}

@media only screen and (max-width: 768px){
.et_bloom .et_bloom_stacked_flyin.et_bloom_form_container { 
	width: 100% !important;
}
.et_bloom_form_footer {
	margin-top: 30px !important;
}
}

.cr_form-input {
    border: 1px solid #bbb !important;
    margin-bottom: 10px !important;
}

/*keine Abteilungen*/
.nowrap{
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}
.et_pb_slider .et_pb_slide_2.et_pb_slide .et_pb_slide_description .et_pb_slide_title {
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}
.broken_link, a.broken_link {
    text-decoration: none!important;
	
}
/* Ordered List anders gestalten */
.custom-numbered-list{
	padding-left: 40px; /* Add desired padding for the text */
	text-indent: -20px; /* Make numbers start with less padding */
	padding-bottom: 10px; /* Adjust the value as needed */
}
.custom-list-item::before {
  padding-right: 5px; /* Add desired padding for the numbers */
}

/*---------------------------Tag Cloud ---------------------------*/
.tag-cloud-link {
	color: #B31061 !important;	
	-webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}

/* Fix Testimonials Filterable: remove margin-left*/
.b3_archive_testimonial_view_grid, .filter_on .b3_archive_testimonial_category_list, .b3_archive_testimonial.b3_archive_archive_pagination {
    margin-left: 0%;
  }

/* Zitate(Blockquotes) in Blogartikel kleiner auf mobil machen */
@media only screen and (max-width: 980px){
	.et_pb_post blockquote{font-size: 1.2em !important;}
}
/* Zitate(Blockquotes) mehr Abstand Desktop */
@media only screen and (min-width: 981px){
	.et_pb_post blockquote p{line-height: 1.2 !important;}
}

/* Referenzen-Seite: Salzi-Video-Fix (kein schwarzer Rahmen mehr) */

.videojs_playerContainer {
    min-height: 500px !important;
	
}
/* Header-Video Home Safari Autoplay */
.et_pb_section_video_bg video {
    -webkit-appearance: none;
    appearance: none;
    pointer-events: none;
}

/* Header-Texte global anpassen:
 * links/rechts und Farben bleiben im Modul erhalten
 * Desktop/mobil-Größen werden hier angepasst */
.header-big-text{
	font-size: 33px !important;
	font-weight: 500 !important;
	line-height: 1em !important;
	padding-bottom: 0.5em !important;
}
.header-small-text{
	font-size: 24.5px !important;
	line-height: 1.2em !important;
}
@media only screen and (max-width: 768px) {
	.header-big-text{
		font-size: 1.1em !important;
		padding-bottom: 0.5em !important;
	}
	.header-small-text{
		font-size: 1em !important;
		line-height: 1.4em !important;
	}
}

/* Referenzen-Seite: grid-Reihenfolge ändern */
.b3_archive_testimonial_view_grid {
    display: grid;
	grid-template-columns: repeat(3,1fr); /* wird als Fehler angezeigt, ist aber richtig */
}

/* Secondary Menu anpassen: Text weiter rechts */
#top-header .container {
	width: 100%;
  	max-width: fit-content;
  	margin-right: 34px;
}

/*––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* CEEQOO-KONTAKTELEMENT 2.0

 * Update 09.10.2024: auf MHL eingebaut
 * - SVGs können mit ASE (Admin and Site Enhancements) reingeladen werden
 * 
 * Update 09.05.2023:
   - Farben, Bilder und Desktop-Positionen jetzt in den Divi-Elementen
   - SVGs mit Divi Hacks in die Media-Files migriert (Divi Hacks kann danach wieder deaktiviert werden)
   - CSS-Schatten hinzugefügt
*/

.kontakt-row .et_pb_image{
	  box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
}

/*––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* Row-elemente mobil (4, 5 oder 6 Elemente werden mobil nebeneinander angezeigt) */
@media only screen and (max-width: 980px) {
	.kontakt-row {
		background-color: rgba(0, 0, 0, 0.2);
		box-shadow: 0px -2px 5px rgba(0, 0, 0, 0.2);
		width: 100% !important;
	}
	.kontakt-row .et_pb_image { box-shadow: none; }
	.four-columns .et_pb_column { width: 25%!important; }
	.five-columns .et_pb_column { width: 20%!important; }
	.six-columns .et_pb_column { width: 16.66%!important; }
	
	/* Für ein Layout mit drei Columns, eine davon größer als die anderen zwei (z.B. mittlere Column ist dann column2) */
	.three-columns .column1 { width: 25%!important; }
	.three-columns .column2 { width: 50%!important; }
}