/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 07 2025 | 13:35:34 */
/* Benefits --------------------------------------------- */
.benefits {
	width: 100%;
	border-spacing: 2px;
	border-collapse: separate;
	border: 1px solid #fff !important;
}
.benefits tr {
}
	.benefits tr td, .benefits tr td * {
		font-size: 13px;
		font-weight: 400;
	}

	.benefits tr td {
		padding: 10px;
	}

.benefits tr td, .benefits tr td * {
	font-size: 16px;
	font-weight: 500;
	color: rgb(255, 255, 255);
}

.benefits tr td {
	width: 33%;
	height: 130px;
	min-height: 130px;
	padding: 20px;
	vertical-align: middle;
	text-align: center;
	background-color: rgb(0, 113, 185);
	transition: all 0.5s;
}


.benefits tr td:hover {
	color: rgb(0, 54, 90);
	background-color: rgba(187, 216, 233, 0.3);
}



/* Blog Detailseite --------------------------------------------- */
.single .post {
	padding-bottom: 0;
}

/* Blog Vorschauelemente --------------------------------------------- */
article.type-post {
	background-color: rgba(0, 0, 0, 0.02) !important;
	border-radius: 5px;
}

.news_startseite article.type-post {
	background-color: #FFF !important;
}

article.type-post .et_pb_image_container .entry-featured-image-url img {
	overflow: hidden;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}



.news_startseite article.type-post {
	position: relative;
}

.news_startseite  .et_pb_salvattore_content .type-post {
	min-height: 540px;
}


.news_startseite  .et_pb_blog_0 .et_pb_post div.post-content a.more-link {
	position: absolute;
	right: 25px;
	bottom: 13px;
}

@media (max-width: 980px) {
	.news_startseite  .et_pb_salvattore_content .type-post { min-height: auto; }
	.news_startseite  .et_pb_blog_0 .et_pb_post div.post-content a.more-link { position: initial; bottom: auto; }
	.news_startseite  .et_pb_salvattore_content .type-post { min-height: 580px !important; }
}
@media (max-width: 768px) {
	.news_startseite  .et_pb_salvattore_content .type-post { min-height: auto !important; }
}




/*
@media (max-width: 767px) {
	.et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post {
		margin-right: 0;
		margin-bottom: 5%;
		width: 45%;
		display: inline-block;
		margin-right: 2.5%;
		margin-left: 2.5%;
	}
}
*/





/* Generelle Einstellungen ------------------------------------------------------------------------ */
html { }
body { }

/*
* { font-family: 'Noto Sans', sans-serif; font-size: 17px; font-weight: 300; line-height: 1.6; color: rgba(0,54,90,1); }
@media (max-width: 500px){
	* { line-height: 1.4; }
}
*/


a { color: rgba(0,54,90,1); }
strong { font-weight: 600; }

::placeholder { color: rgba(0,0,0,0.2); opacity: 1; /* Firefox */ }
::-ms-input-placeholder { /* Edge 12-18 */ color: rgba(0,0,0,0.2); }

/* Ausnahme für "code editor" im Backend */
pre.CodeMirror-line span { color: #fff; }






.et_pb_text_inner ul {
	
}
.et_pb_text_inner ul li {
	margin-bottom: 12px;
}







/* Formulare -------------------- */


/* Formular öffnen/schließen button */
.formular_oeffnen, .formular_oeffnen:hover {
	display: inline-block;
	border: 1px #ea580b solid !important;
	color: #fff;
	padding: 10px 15px;
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 16px;
	font-weight: 600 !important;
	text-transform: uppercase;
	background-color: #ea580b;
}





/* Formular beim laden der seite ausblenden */
.form_wrapper { display: none; padding-top: 20px;  padding-bottom: 20px; }
/* Formular in Administration zeigen */
.et-fb-app-frame .form_wrapper { display: block; }

/* ------- */
.wpcf7-form, .wpcf7-form * { line-height: 1.6em; font-weight: 300; font-size: 17px; line-height: 1.6em; color: #00365a !important; }
.wpcf7-form strong { font-weight: 600; } 
/* ------- */
.wpcf7-form input[type='text'], 
.wpcf7-form input[type='email'], 
.wpcf7-form input[type='tel'],
.wpcf7-form input[type='number'], 
.wpcf7-form .select, 
.wpcf7-form textarea, 
.wpcf7-form button, 
.wpcf7-form input[type='submit'] { width: 100%; border: 1px rgb(0,54,90,0.2) solid; border-radius: 1px; padding: 8px 6px; margin-bottom: 16px; }

.wpcf7-textarea { max-height: 160px; }
.wpcf7-quiz{ max-width: 100px; }
.wpcf7-list-item { display: block; margin: 0; }
.wpcf7-form fieldset { border: 1px rgb(0,54,90,0.2) solid; padding: 10px 20px 20px 20px; margin-bottom: 40px; }
.wpcf7-form fieldset legend { font-weight: 600; }
.wpcf7-form fieldset p { margin: 0 !important; padding: 0 !important; }
.wpcf7-form p { margin: 0 !important; padding: 0 !important; }
.wpcf7-form .wpcf7-submit { background-color: rgb(0, 113, 185) !important; color: #fff !important; font-weight: 700 !important; border: none; }
.wpcf7-form .wpcf7-response-output { margin: 0; padding: 1em; border: 2px solid #00a0d2; }
.wpcf7-form .wpcf7-not-valid-tip { color: red !important; font-size: 12px; font-weight: 700; }









/* Header mit Topnavigation --------------------------------------- */
#page-container .page_top_header { text-align: right; }
#page-container .page_top_link { 
	display: inline-block; padding: 11px 20px 11px 20px; 
	background-color: rgba(234,88,12,0); color: rgba(255,255,255,1); 
	font-size: 13px; line-height: 1.5; font-weight: 500; text-decoration: none;
	border: none; transition: all 0.3s; }
#page-container .page_top_link_active, .page_top_link:hover { background-color: rgba(234,88,12,1); }
@media (max-width: 768px){
	#page-container .page_top_link { /* font-size: 12px;  padding: 11px 10px 11px 10px; */ }
}



/* Header mit Hauptnavigation --------------------------------------- */
#page-container header.et-l--header { position: sticky; top: -42px;  z-index: 10000; }
#page-container .page_header .header_navigation_wrapper {  top: 43px; transition: top 0.4s; }
#page-container .shrink_sticky_header .page_header .header_navigation_wrapper {  top: 18px; transition: top 0.4s; }
#page-container .et_pb_row_1_tb_header.et_pb_row { 
	padding-top: 0 !important; padding-bottom: 0 !important; 
	margin-top: 0px !important; margin-bottom: 0px !important;
}



/* Header Spaltenbreiten anpassen ---------------------------------------  */
#page-container .page_header .et_pb_column_1_4 { width: 10%; z-index: 4; }
#page-container .page_header .et_pb_column_3_4 { width: 82%; z-index: 3;  }
@media (max-width: 980px){
	header .et_pb_section { /* min-height: 78px; */ }
	header .et_pb_column_1_4 { position: absolute; width: 50% !important; padding-left: 15px; z-index: 1; }
	header .et_pb_column_3_4 { position: absolute; right: 0; width: 50% !important; min-width: 400px; z-index: 0; }	
	header .et_pb_column { margin-right: 0 !important;  }
	header .et_pb_column { margin-bottom: 0px !important; }
}
@media (max-width: 500px){
	header .et_pb_column_3_4 { min-width: 100%; }
}

/* Höhen einstellen */
#page-container .page_header .et_pb_row { min-height: 140px; transition: min-height 0.6s; }
#page-container .shrink_sticky_header .page_header .et_pb_row { min-height: 90px; transition: min-height 0.6s; }

/* Logo */
#page-container .logo_sticky_header { 
	position: absolute; top: 28px; width: 135px;  height: auto;
	margin: 0 !important; opacity: 1; transition: opacity 0.4s, top 0.4s;
}
#page-container .logo_sticky_header_shrink { 
	position: absolute; top: 32px; width: 135px; height: auto; 
	margin: 0 !important; opacity: 0; transition: opacity 0.4s, top 0.8s;
}
#page-container .shrink_sticky_header .logo_sticky_header {  opacity: 0; }
#page-container .shrink_sticky_header .logo_sticky_header_shrink { opacity: 1; top: 10px;  }

/* Wechsel vom Hintergrundbild bei verkleinertem Header */
#page-container .page_header { }
#page-container .page_header:before { 
	content: ' '; display: block; 
	position: absolute; left: 0; top: 0; width: 100%; height: 100%; 
	background-image: linear-gradient(90deg,#e3eef5 0%,#ffffff 67%,#f7fcfe 89%,#e3eef5 100%)!important; 
	opacity: 0; transition: opacity 0.8s;
}
#page-container .shrink_sticky_header .page_header:before { opacity: 1; }



/* Hauptnavigation ------------------- */
#menu-hauptnavigation li a { color: rgba(255,255,255,1) !important; white-space: nowrap; font-size: 18px; text-transform: uppercase; }
#menu-hauptnavigation>li { padding-left: 25px; padding-right: 25px; }

/* Farben für Haupt- und Subnavigation */
#page-container .shrink_sticky_header #menu-hauptnavigation li a {  color: rgba(0, 54, 90, 1) !important; }
#page-container #menu-hauptnavigation li:hover a { color: rgba(255,255,255, 1) !important; opacity: 1; }
#menu-hauptnavigation li ul li a {  color: rgba(255,255,255, 1) !important; }
#page-container #menu-hauptnavigation li:hover a:hover {  color: rgba(187, 216, 233, 1) !important; }

/* Subnavigation ------------------ */
#page-container #menu-hauptnavigation .sub-menu { width: fit-content;  top: -65px; background-color: rgba(0, 54, 90, 0.9) !important; border: none; padding-top: 110px; z-index: -1;}
#page-container #menu-hauptnavigation .sub-menu li { padding: 0; margin: 0; }
#page-container #menu-hauptnavigation .sub-menu li a { font-size: 15px; padding: 6px 25px; width: auto; }



/* Mobilnavigation Öffner -------------------------------- */
#page-container .et_mobile_nav_menu { display: block; margin-left: 30px; }
#page-container .mobile_menu_bar { -webkit-transform: translateY(-14%); transform: translateY(-14%); }
#page-container .mobile_menu_bar:before { top: 0px; font-size: 47px; color: #FFF; transition: color 0.8s; }
#page-container .shrink_sticky_header .mobile_menu_bar:before { color: #00365a; }

/* Hamburger Menü - X ----------------------------------- */
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before { content: '\4d'; }

/* Mobilnavigation ------------------------------------------ */
#mobile_menu1 {
	box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.4);
}

#mobile_menu1 { border-top: none; text-align: left; }
#mobile_menu1 { left: auto; right: 0; width: 100%; max-width: 400px; }

#mobile_menu1.et_mobile_menu { padding: 0 0 23px 0; }
#mobile_menu1.et_mobile_menu li { border-bottom: 1px rgba(255, 255, 255, 0.2) solid; } 
#mobile_menu1.et_mobile_menu, 
#mobile_menu1.et_mobile_menu * { background-color: rgba(0, 54, 90, 0.9) !important; color: #fff !important; }
#mobile_menu1.et_mobile_menu ul, 
#mobile_menu1.et_mobile_menu ul * {  background-color: #01416c !important; color: #fff !important; }
#mobile_menu1.et_mobile_menu ul li { border-top: 1px rgba(255, 255, 255, 0.1) solid; border-bottom: none; }




/* Mobilnavigation - Diverse Einstellungen --------- */
.mobile_nav .et_mobile_menu { list-style: none !important; top: 83px !important;  }
.shrink_sticky_header .mobile_nav .et_mobile_menu { top: 58px !important; }
.mobile_nav.opened .et_mobile_menu { height: 100vh; overflow: auto;  }
.mobile_nav.opened .et_mobile_menu li.menu-item:last-child { margin-bottom: 150px !important; }
.mobile_nav.opened .et_mobile_menu ul li.menu-item:last-child { margin-bottom: 0px !important; }

/* Mobilnavigation  ------------------------- */
.mobile_nav, 
.mobile_nav * { font-size: 15px !important;  font-weight: 500 !important;  } 
.mobile_nav li.menu-item-has-children  { position: relative; }
.mobile_nav li.menu-item-has-children .mobile_open_close { border: none; height: 100%; max-height: 44px; position: absolute; right: 21px; top: -3px; transform: rotate(90deg); padding: 0px !important; z-index: 1; }
.mobile_nav li.menu-item-has-children .mobile_open_close:after { content: '»'; color: #fff; font-size: 30px; font-weight: 400; margin: 10px 0px 10px 10px; display: block; }

.mobile_nav li.menu-item-has-children .mobile_open_close.sub_menu_is_open { right: 30px; top: 6px; }
.mobile_nav li.menu-item-has-children .mobile_open_close.sub_menu_is_open { transform: rotate(-90deg); }

.mobile_nav .menu-item-has-children .sub-menu {  display: none !important; }
.mobile_nav .menu-item-has-children .sub-menu.visible { display: block !important; visibility: visible !important; }
.mobile_nav .menu-item-has-children .sub-menu { padding: 0; }
.mobile_nav .menu-item-has-children .sub-menu a { padding: 9px 0px 9px 40px; }
.et_mobile_menu .sub-menu li { padding-left: 0% !important; }





/* Jobs - Listen ---------------------------- */
.job_liste {
	margin-bottom: 0 !important;
}
.job_liste ul {
	padding-bottom: 0 !important;
}
.job_liste ul li {
	padding-bottom: 9px !important;
}
.job_liste ul li a {
	display: block;
}
.job_liste ul li a strong {
	font-size: 12px;
}
.job_liste ul li,
.job_liste ul li * {
	transition: color 0.3s;
}

.job_liste ul li:hover,
.job_liste ul li:hover * {
	color: #ea580c;
}
	




/* Header Einstellungen für Folgeseiten ----------------------------------- */
body:not(.page-id-4157) .page_top_header  { 
	display: none;
}
body:not(.page-id-4157) #page-container header.et-l--header {
	position: -webkit-sticky;
	position: sticky;
	top: 0px;
	z-index: 10000;
}

/*
body:not(.page-id-4157) header .page_header,
body:not(.page-id-4157) header.shrink_sticky_header .page_header {
	transition: min-height 0s;
	min-height: 90px;
}

body:not(.page-id-4157) #page-container .page_header .header_main_navigation_wrapper {
	top: 0px;
	transition: top 0s;
	padding-top: 0px;
}
*/




/* Link Listen z. B. bei Leistungen ----------------------------------------- */
.a_arrow_left a { 
	position: relative;
	transition: color 0.3s;
}

.a_arrow_left a:before,
.a_arrow_left a:after {
	position: absolute;
	left: -17px;
	top: 11px;
	content: ' ';
	display: inline-block;
	width: 6px;
	height: 12px;
	/* padding-right: 8px; */
	background-image: url(/wp-content/uploads/pfeil-rechts-dunkelblau.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	opacity: 1
	transition: opacity 0.3s;
}
.a_arrow_left a:after {
	background-image: url(/wp-content/uploads/pfeil-rechts-orange.svg);
	opacity: 0;
}
.a_arrow_left a:hover:after {
	opacity: 1;
}


.a_arrow_left a {
	margin-left: 17px;
	margin-bottom: 2px;
	display: inline-block;
}


.a_arrow_left a:hover, 
.a_arrow_right a:hover {
	color: rgba(234, 88, 12, 1);
}




/* ------------------------------- */
.font_weight_100 * { font-weight: 100; }
.font_weight_200 * { font-weight: 200; }
.font_weight_300 * { font-weight: 300; }
.font_weight_400 * { font-weight: 400; }
.font_weight_500 * { font-weight: 500; }
.font_weight_600 * { font-weight: 600; }
.font_weight_700 * { font-weight: 700; }	
.font_weight_800 * { font-weight: 800; }	
.font_weight_900 * { font-weight: 900; }	

/*
p:not(.has-background):last-of-type {
	padding-bottom: 1em;
}
*/







/* Überschriften -------------------------------- */
/* Headlines -------------------------------------------------------------------------------------- */
#page-container h1, 
#page-container h2, 
#page-container h3, 
#page-container h4, 
#page-container h5, 
#page-container h6 { 
	color: rgba(0, 54, 90,1); 
	padding-bottom: 20px; 
	line-height: 1em; 
	font-weight: 400; 
	hyphens: none;
}

#page-container footer h1, 
#page-container footer h2, 
#page-container footer h3, 
#page-container footer h4, 
#page-container footer h5,
#page-container footer h6 { 
	padding-bottom: 0px;
}


#page-container h1, 
#page-container .h1, 
#page-container .h1 h1,
#page-container .h2 h1,
#page-container .h3 h1,
#page-container .h4 h1 { 
	font-size: 43px;
	line-height: 1.4em;
}

#page-container h2, 
#page-container .h2, 
#page-container .h2 h1, 
#page-container .h2 h2, 
#page-container .h2 h3, 
#page-container .h2 h4 { 
	font-size: 40px; 
	line-height: 1.4em;
}

#page-container h3, 
#page-container .h3, 
#page-container .h3 h1, 
#page-container .h3 h2, 
#page-container .h3 h3, 
#page-container .h3 h4 { 
	font-size: 30px; 
	line-height: 1.4em;
}
#page-container .h3_infobox h3 { 
	font-size: 22px; 
	line-height: 1.4em;
}



#page-container h4, 
#page-container .h4, 
#page-container .h4 h1, 
#page-container .h4 h2, 
#page-container .h4 h3, 
#page-container .h4 h4 { 
	font-size: 27px; 
	line-height: 1.4em;
}


@media (max-width: 768px) {
	#page-container h1, #page-container .h1, #page-container .h1 h1,#page-container .h2 h1,#page-container .h3 h1,#page-container .h4 h1 { 
			font-size: 32px; line-height: 1.2em;
	}
	#page-container h2, #page-container .h2, #page-container .h2 h1, #page-container .h2 h2, #page-container .h2 h3, #page-container .h2 h4 { 
		font-size: 30px; line-height: 1.2em;
	}
	#page-container h3, #page-container .h3, #page-container .h3 h1, #page-container .h3 h2, #page-container .h3 h3, #page-container .h3 h4 { 
		font-size: 25px; line-height: 1.2em;
	}
	#page-container h4, #page-container .h4, #page-container .h4 h1, #page-container .h4 h2, #page-container .h4 h3, #page-container .h4 h4 { 
		font-size: 20px; line-height: 1.2em;
	}
	
	#page-container h1, #page-container h2, #page-container h3, #page-container h4, #page-container h5, #page-container h6 {
		hyphens: auto;
	}
	
	
}



/*
@media (max-width: 500px){
	#page-container h1, #page-container .h1, #page-container .h1 h1,#page-container .h2 h1,#page-container .h3 h1,#page-container .h4 h1 { font-size: 36px; line-height: 1.2em; }
	#page-container h2, #page-container .h2, #page-container .h2 h1, #page-container .h2 h2, #page-container .h2 h3, #page-container .h2 h4 { font-size: 33px; line-height: 1.2em; }
	#page-container h3, #page-container .h3, #page-container .h3 h1, #page-container .h3 h2, #page-container .h3 h3, #page-container .h3 h4 { font-size: 20px; line-height: 1.2em; }
	#page-container h4, #page-container .h4, #page-container .h4 h1, #page-container .h4 h2, #page-container .h4 h3, #page-container .h4 h4 { font-size: 17px; line-height: 1.2em; }

}
*/

#page-container .h1_no_padding h1, 
#page-container .h1_no_padding h2, 
#page-container .h1_no_padding h3, 
#page-container .h1_no_padding h4, 
#page-container .h2_no_padding h1, 
#page-container .h2_no_padding h2, 
#page-container .h2_no_padding h3, 
#page-container .h2_no_padding h4, 
#page-container .h3_no_padding h1, 
#page-container .h3_no_padding h2, 
#page-container .h3_no_padding h3, 
#page-container .h3_no_padding h4, 
#page-container .h4_no_padding h1, 
#page-container .h4_no_padding h2, 
#page-container .h4_no_padding h3, 
#page-container .h4_no_padding h4 
{ padding: 0px !important; }

#page-container h1 strong, 
#page-container h2 strong, 
#page-container h3 strong, 
#page-container h4 strong, 
#page-container h5 strong, 
#page-container h6 strong { 
	font-weight: 700;
}







/*
h1, .h1 * { font-size: 40px !important; }
*/

/*

h2, .h2 * { font-size: 35px !important; }
h3, .h3 * { font-size: 30px !important; }
h4, .h4 * { font-size: 25px !important; }
h5, .h5 * { font-size: 20px !important; }
h6, .h6 * { font-size: 16px !important; }

h1 strong, .h1 strong, h2 strong, .h2 *, h3 strong, .h3 strong, 
h4 strong, .h4 strong, h5 strong, .h5 strong, h6 strong, .h6 strong { font-weight: 700 !important; }
*/






/* Hintergründe diverser Seiten ----------------- */
/*
.background_blau_weiss_blau {
	background: rgb(217, 229, 236);
	background: linear-gradient(90deg, rgba(217, 229, 236, 1) 0%, rgba(240, 246, 249, 1) 50%, rgba(217, 229, 236, 1) 100%);
}
*/


/* z. B. bei Leistungen vor Footer bzw. auf der Startseite die Notfallnummer */
#page-container .hintergrund_dunkel { background-color: rgb(0,54,90); }
#page-container .hintergrund_dunkel * { color: rgb(240,246,249); }



/* Hotline --------------------------------- */
.hotline_wrapper {
	background-color: rgb(0, 54, 90);
	/* margin-top: -60px; */
	/* transform: translateY(40px); */
}

.hotline_wrapper * {
	color: rgb(187, 216, 233) !important;
}


.hotline_wrapper h2,
.hotline_wrapper h2 a {
	font-size: 40px !important;
	line-height: 1.2 !important;
	font-weight: 500 !important;
}

.hotline_wrapper p {
	margin-bottom: 16px !important;
	line-height: 1.3 !important;
}







/* Startseite --------------------------------- */
.home_header_text h2 {
	font-size: 42px !important;
	line-height: 1.3 !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 1) !important;
}

@media (max-width: 768px) {
	.home_header_text h2 { font-size: 30px !important; }
}






.startseite_leistung_box_text .et_pb_text_inner,
.startseite_leistung_box_text .et_pb_text_inner * {
	text-align: center;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	color: rgb(255, 255, 255) !important;
}











