/*
Theme Name: Twenty Twenty-Five-child
Author: 
Description: das ist ein Child-Theme
Version: 1.0
Template: twentytwentyfive

This is the child theme for Twenty Twenty-Five theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
	/* background: red; */
}
body {
    font-family: 'Noto Sans', sans-serif;
}
h1 {
	font-family: Noto Sans;
	font-weight: 200;
	font-style: normal;
}
:root :where(.wp-block-site-title) {
	font-family: Noto Sans;
	font-weight: 200;
	font-style: normal;
}
header .wp-block-group.alignfull.is-layout-flow.wp-block-group-is-layout-flow
  {
	height: 140px !important;
	max-height: 140px !important;
}
header .wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained,
header .wp-block-group.alignwide
.is-content-justification-space-between
.is-nowrap
.is-layout-flex.wp-container-core-group-is-layout-4
.wp-block-group-is-layout-flex {
	height: 100%;
	
}
header .wp-block-group.alignwide.is-content-justification-space-between.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-4.wp-block-group-is-layout-flex {
	height: 100% !important;
}
.wp-block-site-logo.wp-duotone-unset-1 {
	background: #353a90;
	padding: 40px !important;
	z-index: 9 !important;
	padding-top: 175px !important;
	padding-right: 38px !important;
	padding-bottom: 50px !important;
	padding-left: 38px !important;
}

.wp-block-navigation__container .wp-block-navigation-item  {
	color: #000000 !important;
	font-weight: 600;
  	font-size: 20px;
	opacity: .8;
	/* text-decoration-thickness: 5px !important;
	text-decoration-style: solid;
	text-decoration-skip: spaces;	
	text-decoration-skip-ink: spaces;
	text-underline-offset: 7px !important; */
}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover) {
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-color: #2180c1;
	text-decoration-thickness: 3px !important;
	text-decoration-skip: spaces;	
	text-decoration-skip-ink: spaces;
	text-underline-offset: 7px !important;
}
.wp-block-navigation__container .wp-block-navigation-item.current-menu-item  {
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-color: #353a90;
	text-decoration-thickness: 3px !important;
	text-decoration-skip: spaces;	
	text-decoration-skip-ink: spaces;
	text-underline-offset: 7px !important;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 0 !important;
}
header.wp-block-template-part {
	margin-bottom: 0;
}
main#wp--skip-link--target {
	margin-top: 0 !important;
}
.home main .wp-block-group.alignfull.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
	padding-top: 0px !important;
}
header .wp-block-group p select {
	/* width: 175px;*/
	margin-left: 40px !important;
  background-color: #fff; /* Light gray background */
  color: #007BFF; /* Blue text */
  font-size: 16px; /* Adjust font size */
  padding: 10px 20px;
  border: 2px solid #ddd; /* Border for a subtle separation */
  border-radius: 5px; /* Slight rounded corners */
  cursor: pointer;
  /* display: flex; */
  align-items: center;
  justify-content: space-between;
  width: auto;
}


header #wp-block-search__input-1 {
	padding: 2px 10px 2px 10px;
	background: url('/wp-content/uploads/2025/03/search-btn-1.svg'); 
	background-size: 16px 16px;
	background-position: 10px center;
	background-repeat: no-repeat;
	/* cursor: pointer; */
	
}

header #wp-block-search__input-1:focus {
	background: none;
}
select {
	padding: 2px 10px 2px 10px !important;
}
header {
    position: sticky;
    top: 0px;
    z-index: 9999;
    width: 100%;
    background-color: #ffffff;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}


.sticky-scrolled {
    background-color: rgba(255, 255, 255, 1); 
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.9); 
}





/****************************************************
*****************************************************
*****************************************************
*************** Kontaktform *************************
*****************************************************
*****************************************************
*****************************************************/

:where(.wp-site-blocks :focus) {
	outline-width: unset !important;
	outline-style: unset !important;
}

.wpcf7-form-control-wrap {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}
.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
	width: 96.5%;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea, select {
	color: #000;
	border: 1px solid #353A90;
	border-radius: 0;
	padding: 10px;
	width: 100%;
	font-size: 20px;
}
input:focus-visible,textarea:focus-visible {
	border-color: #353A90;  /* Green border when focused */
	/* outline: 2px solid #353A90;   */
	border: 2px solid #353A90;
  }
.wpcf7-form-control-wrap .wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 0;
}
.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
	width: 100%;
	padding: 6px;
	font-size: 25px;
}
.wpcf7-form-control.wpcf7-submit.has-spinner {
	width: 100%;
	padding: 6px;
	font-size: 25px;
}
.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
	color: #353A90;
}
.wpcf7-not-valid-tip {
	font-size: 20px;
}
.captcha-image {
	border: 1px solid #353A90;
	padding: 10px;
	display: inline-block;
	text-align: center;
}
.captcha-image label > input + svg {
	cursor: pointer;
	border: 2px solid transparent;
	position: relative;
	overflow: hidden;
	color: grey;
}
.captcha-image label > input + svg:hover {
	color: #353A90;
}
.wpcf7-form-control-wrap input[type="checkbox"] {
	margin-left: 0;
}

.wpcf7-form.init a {
	text-decoration: unset;
	font-weight: normal;
	color: #353A90;
}
.wpcf7-form.init br {
	display: none;
}


/* Ende KontaktForm*/



.wp-block-button__link.has-accent-3-background-color.has-background.wp-element-button:hover {
	background-color: #EEEEEE !important;
	color: #353A90;
	font-weight: bolder;
}

:root :where(.wp-block-site-title a:where(:not(.wp-element-button)):hover) {
	text-decoration: unset;
	color: #EEEEEE !important;
}

h3.wp-block-heading {
	border-bottom-width: unset !important;
	padding-bottom: 10px !important;
	margin-bottom: 20px;
}


/* .home .wp-block-media-text.is-stacked-on-mobile {
	display: block;
	margin-bottom: 70px;
}
.wp-block-group {
	margin-bottom: 70px;
} */

/****************************************************
*****************************************************
*****************************************************
*************** Slick Slider Für Gallery ************
*****************************************************
*****************************************************
*****************************************************/

.wp-block-image.size-large.slick-slide.slick-active
 {
	height: 400px;
	object-fit: contain;
}


.wp-block-image.size-large.slick-slide img,
.wp-block-image.size-large.slick-slide {
	height: 400px !important;
	object-fit: contain;
	
}
.wp-block-image.size-large.slick-slide.slick-active img {
	width: 435px !important;
}
.slick-list.draggable {
	margin-left: 10px;
}

.icon-arrow_right::before {
	content: "\e902";
	color: #2180C1;
	right: 0;
	position: absolute;
	z-index: 1;
	right: -37px;
	top: 50%;
	font-size: 42px;
	transition: all .3s ease-in-out;
}
.icon-arrow_right:hover::before {
	content: "\e902";
	color: #2180C1;
	right: 0;
	position: absolute;
	z-index: 1;
	right: -37px;
	top: 50%;
	font-size: 42px;
	opacity: .3;
}
.icon-arrow_left::before {
	content: "\e901";
	color: #2180C1;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: -37px;
	font-size: 42px;
	transition: all .3s ease-in-out;
}
.icon-arrow_left:hover:before {
	content: "\e901";
	color: #2180C1;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: -37px;
	font-size: 42px;
	opacity: .3;
}


input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea, select {
	color: #000;
	border: 1px solid #b7b7b7 !important;
	border-radius: 0;
	padding: 10px;
	width: 100%;
	font-size: 20px;
}
/****************************************************
*****************************************************
*****************************************************
*************** Zertifikate Slider ********************
*****************************************************
*****************************************************
*****************************************************/

.n2-ss-layer.n2-ss-layer--auto {
	margin-top: 55px !important;
}

/****************************************************
*****************************************************
*****************************************************
*************** Mobile Anpassung ********************
*****************************************************
*****************************************************
*****************************************************/


@media (max-width: 600px){

.home .wp-block-media-text.is-stacked-on-mobile {
	display: block;
	margin-bottom: 70px;
}
/* .wp-block-group {
	margin-bottom: 70px;
} */
.wp-block-media-text.is-stacked-on-mobile {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.icon-arrow_left::before {
	content: "\e901";
	color: #503AA8;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: -18px;
	font-size: 26px;
}
.icon-arrow_right::before {
	content: "\e902";
	color: #503AA8;
	right: 0;
	position: absolute;
	z-index: 1;
	right: -21px;
	top: 50%;
	font-size: 26px;
}
.slick-list.draggable {
	margin-left: 5px !important;
}
.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, .wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
	width: 93.5%;
}
header .wp-block-group .wp-block-group:not(:first-child),
header .wp-block-group.is-nowrap {
	display: none; 
}
header .wp-block-group:last-child {
	display: flex;
}
header .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: var(--wp--style--global--content-size);
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
	fill: #503AA8 !important;
	display: block !important;
	height: 45px !important;
	pointer-events: none;
	width: 45px !important;
}
.wp-block-site-logo.wp-duotone-unset-1 {
	background: #353a90;
	padding: 22px 20px !important;
	z-index: 9 !important;
}
.custom-logo {
	width: 90px;
}
header .wp-block-group.alignfull.is-layout-flow.wp-block-group-is-layout-flow {
	min-height: 70px !important;
    height: 70px !important;
}
header nav.is-responsive.items-justified-left.wp-block-navigation.is-content-justification-left.is-layout-flex.wp-container-core-navigation-is-layout-1.wp-block-navigation-is-layout-flex {
	margin-top: -20px !important;
}
header .wp-block-group:first-of-type .wp-block-group {
	width: 100%;
}

/** 
**************************
**** Aktuelles Slider
**************************
*/

.aktuelles {
	max-width: 100%;
	width: 100%;
	margin-bottom: 30px;
  }
  .aktuelles .slider-text-box > h2 {
	float: none;
	margin-bottom: 16px;
  }
  .aktuelles .slider-text-box > a {
	float: none;
	color: #fff;
	margin-top: 10px;
	font-weight: 900;
	margin-right: 0;
  }
  .aktuelles-slider .slick-next.slick-arrow {
	left: unset;
	right: 25px;
	transform: translate(50%, -50%);
  }
  .aktuelles .slick-initialized .slick-slide {
	margin-right: 0;
	margin-top: 20px;
  }
  .aktuelles-slider .slick-arrow {
	left: 25px;
  }
  .aktuelles-slider .slick-arrow {
	top: calc(20% + 4px);
  }
}





.aktuelles {
	margin-bottom: 70px;
	padding: 0 !important;
	width: auto;
  }
  .aktuelles .slider-text-box > h2 {
	float: left;
	margin-top: 0;
	color: #FFF;
	margin-bottom: 45px;
  }
  .aktuelles .slider-text-box > a {
	float: right;
	color: #fff;
	margin-top: 10px;
	font-weight: 900;
	margin-right: 26px;
  }
  .aktuelles .slider-text-box > a:hover {
	color: #DBF5FC !important;
  }
  .aktuelles-slider {
	clear: both;
	margin: auto;
  }
  .aktuelles-slider-thumb,
  .aktuelles-slider-text {
	height: 100%;
  }
  .aktuelles-slider-thumb {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 212px;
	padding-left: 20px;
  }
  .aktuelles-slider-text {
	line-height: 1.5;
	height: 330px;
	max-width: 380px;
	padding: 20px;
  }
  .aktuelles .aktuelles-slider-text h4,
  .aktuelles .aktuelles-slider-text h3,
  .aktuelles .aktuelles-slider-text h2,
  .aktuelles .aktuelles-slider-text h1 {
	color: #000;
	margin-top: 20px;
	margin-bottom: 5px;
	padding-bottom: 2px;
	overflow: hidden;
	transition: 0.3s linear;
  }
  .aktuelles-slider .aktuelles-slide .aktuelles-slider-text .the-title {
	color: #000;
	transition: 0.3s linear;
  }
  .aktuelles-slider-text .the_title:hover h4 {
	color: #00BAEF;
  }
  .aktuelles-slider-text p {
	color: #000000;
	max-height: 170px;
	max-width: 340px;
	overflow: hidden;
	margin-top: 5px;
  }
  .aktuelles-slider-text p:first-of-type,
  .aktuelles-slider-text p:last-of-type {
	display: none;
  }
  .aktuelles-slider-text .wp-block-button {
	position: absolute;
	bottom: 23px;
  }
  .aktuelles-slider .slick-arrow {
	/* position: absolute; */
	border-radius: 3px;
	left: -75px;
	top: calc(50% + 4px);
	transform: translate(-50%, -50%);
	height: 50px;
	width: 50px;
	z-index: 6;
	background-color: #00AADA;
	transition: 0.3s linear;
	transition-property: background-color;
  }
  .aktuelles-slider .slick-arrow:hover {
	cursor: pointer;
	background-color: #DBF5FC;
  }
  .aktuelles-slider .aktuelles-slide {
	background-color: #fff;
  }
  /*
  .aktuelles-slider .aktuelles-slide:not(:nth-of-type(3))  {
	  margin-right: 60px;
  }
  */
  .aktuelles-slider .aktuelles-slide a {
	color: #00BAEF;
	transition: all 0.3s linear;
  }
  .aktuelles-slider .aktuelles-slide a:hover {
	color: #00BAEF;
  }
  .aktuelles-slider .slick-next.slick-arrow {
	left: unset;
	right: -40px;
	transform: translate(50%, -50%);
  }
  .aktuelles-slider .arrow-right.slick-arrow {
	left: unset;
	right: -27px;
	transform: translate(50%, -50%);
  }
  .aktuelles-slider .slick-arrow span {
	position: absolute;
	top: 50%;
	left: 48%;
	transform: translate(-50%, -50%);
	color: #ffffff;
	font-size: 36px;
	transition: 0.3s linear;
	transition-property: color;
  }
  @media only screen and (max-width: 1360px) {
	.aktuelles-slider .slick-arrow {
	  top: calc(24% + 4px);
	}
	.aktuelles-slider .arrow-right.slick-arrow {
	  left: unset;
	  right: 50px;
	  transform: translate(50%, -50%);
	}
	.aktuelles-slider .slick-arrow {
	  left: 53px;
	  background-color: #00000075;
	}
	.aktuelles-slider .slick-arrow span {
	  left: 48%;
	}
  }
  .aktuelles-slider .slick-arrow:hover span {
	color: #00BAEF;
  }
  .aktuelles .slick-initialized .slick-slide {
	margin-right: 28px;
  }

 
  .aktuelles-slide {
    position: relative;
    overflow: hidden;
}

/* Das Pseudo-Element für das Overlay */
.aktuelles-slide::before {
    content: ''; /* Das Pseudo-Element muss ein Inhalt haben */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(33,128,193,.4); /* Overlay mit Opazität */
    opacity: 0;
    transition: opacity 0.3s ease; /* Sanfte Übergangsanimation */
    pointer-events: none; /* Verhindert, dass das Overlay das Klicken blockiert */
}

.aktuelles-slide:hover::before {
    opacity: 1; /* Overlay sichtbar machen bei Hover */
}