/*
Theme Name: Divi Child
Theme URI: https://diviextended.com/
Version: 1.0
Description: Child Theme of Divi
Author: Divi Extended
Template: Divi
*/

@import url("../Divi/style.css");
@import url("leistungen.css");

@font-face {
	font-family: "Museo700";
	font-display: swap;
	src: url("fonts/MuseoSans-700.otf") format("opentype");
}
@font-face {
	font-family: "Museo300";
	font-display: swap;
	src: url("fonts/MuseoSans-300.otf") format("opentype");
}

body, p, td, div, input, textarea, select {
	font-family: 'Museo300', Helvetica, Arial, Lucida, sans-serif !important;
}
h1, h2, h3, h4 {
	font-family: 'Museo700', Helvetica, Arial, Lucida, sans-serif !important;
}

h1 {
	font-size: 3rem !important;
	line-height: 1 !important;
}
h2 {
	font-size: 32px !important;
	line-height: 1.2 !important;
}
h3 {
	font-size: 24px !important;
	line-height: 1.2 !important;
}

.et_pb_button {
	line-height: 1.2 !important;
}

@media screen and (max-width: 782px) {
	html, body {
		overflow-x: hidden;
	}
	h1 {
		font-size: 2.2rem !important;
		line-height: 1 !important;
	}
	h2 {
		font-size: 28px !important;
	}
	h3 {
		font-size: 20px !important;
	}
}

.ymc-filter-sidebar {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}


/* Container als relative Positionierung */
.et_pb_image.hover-caption,
.et_pb_module.hover-caption {
	position: relative;
	display: inline-block;
	overflow: hidden;
}

/* Pseudo-Element für den Alt-Text am Container */
.et_pb_image.hover-caption::after,
.et_pb_module.hover-caption::after {
	content: attr(data-alt); /* Wir holen den Alttext per data-alt */
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 10px;
	background: rgb(0 182 237 / 90%);
	color: #fff;
	font-size: 16px;
	text-align: center;
	opacity: 0;
	transform: translateY(100%);
	transition: all 0.3s ease;
	pointer-events: none;
}

.et_pb_image.hover-caption:hover::after,
.et_pb_module.hover-caption:hover::after {
	opacity: 1;
	transform: translateY(0);
}







#top-menu-nav li a {
	font-weight: normal;
}
.pa-add-accordion-icon .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
	display: block;
	content: "\e04f" !important;
}
.jobs-liste .et_pb_post {
	margin-bottom: 40px !important;
}
#top-menu-nav ul.sub-menu {
	margin: 0;
	padding: 0;
}
#top-menu-nav ul.sub-menu li {
	margin: 0;
	padding: 0;
	width: 100%;
}
#top-menu-nav ul.sub-menu li a {
	display: block;
	position: relative;
	text-transform: none;
	text-align: left;
	border: 0;
	padding: 0 1.5rem !important;
	line-height: 32px !important;
	color: #4d4f4f !important;
	font-size: .8rem;
	letter-spacing: 0;
	border-bottom: 1px solid #f2f2f2;
	font-weight: 400;
	width: 100%;
	transition: color .3s ease, opacity .3s ease;
	-webkit-transition: color .3s ease, opacity .3s ease;
}
#top-menu-nav ul.sub-menu li a:hover {
	background-color: #00b6ed !important;
	color: #fff !important;
	transition: opacity .3s ease;
	-webkit-transition: opacity .3s ease;
}
#top-menu-nav #top-menu li:last-child ul.sub-menu {
	right: 0;
}
.et_pb_button_module_wrapper {
	display: inline-block !important;
}
.kreis {
	background-color: #7CDA24;
	border-width: 0px !important;
	border-color: #FFFFFF;
	border-radius: 50%;
	color: #FFFFFF !important;
	display: flex;
	letter-spacing: 0px;
	font-weight: bold;
	line-height: 120% !important;
	width: 200px;
	height: 200px;
	padding: 20px;
	text-align: center;
	align-items: center;
	justify-content: center;
	z-index: 999;
}

.kreis.et_pb_button_2:hover {
	padding: 20px !important;
}
.kreis.et_pb_button_2:after {
	display: none !important;
}
.kreis.et_pb_button_2:hover:after {
	display: block !important;
	bottom: 0 !important;
}


/* Mega menu container */
li.mega-menu > ul {
	padding: 25px 25px !important;
	background: #fff; /* change bg as needed */
}
li.mega-menu > ul.sub-menu > li > a {
	display: none !important;
}
/* Mega menu titles (first item in each column) */
.et_pb_menu ul li.mega-menu > ul > li > a:first-child {
	color: #000 !important;
	font-weight: bold;
	margin-bottom: 6px;
	border-bottom: 1px solid #eee;
	padding-left: 0;
}
.et_pb_menu li.mega-menu li li a {
	/*
	font-size: 14px;
	color: #333 !important;
	font-weight: 300;
	padding: 5px 0;
	*/
}
.et_pb_menu li.mega-menu li li a:hover {}
.et_pb_menu li.mega-menu > ul > li {
	width: 25%; /* or adjust to number of columns */
	float: left;
}
@media (min-width: 768px) {
	.et_pb_bg_layout_light article.has-post-thumbnail {
		display: grid;
		grid-template-columns: 30% auto;
		grid-template-rows: repeat(4, auto);
		gap: 0 20px;
	}
	.et_pb_bg_layout_light article.et_pb_post {
		margin-bottom: 20px
	}
	.et_pb_bg_layout_light article.has-post-thumbnail .entry-featured-image-url {
		grid-row: span 5;
		margin-bottom: 0;
	}
}
.et-l--footer ul {
	padding: 0;
	margin: 0;
}
.et-l--footer li {
	margin-bottom: 10px;
	padding-left: 25px;
	position: relative;
	padding-bottom: 10px;
	list-style-type: none;
}
.et-l--footer li:last-of-type {
	margin-bottom: 0
}
.et-l--footer li:after {
	opacity: .2;
	content: '';
	display: block;
	left: 0;
	width: 100%;
	bottom: 0;
	position: absolute
}
.et-l--footer li:before {
	content: "\f105";
	font-family: FontAwesome;
	text-align: center;
	position: absolute;
	left: 0;
	display: block;
	height: 20px;
	width: 20px;
	margin-top: 0px;
	font-size: .7em;
}
.et-l--footer li:after {
	opacity: .2;
	content: '';
	display: block;
	left: 0;
	width: 100%;
	bottom: 0;
	position: absolute;
}
.et-l--footer li:after {
	border-bottom: 1px solid #fff;
}
.et-l--footer li a {
	font-size: .9em;
	line-height: 1.6;
}



.tmdivi-wrapper .tmdivi-arrow {
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	z-index: 2;
}

.tmdivi_timeline_story .tmdivi-content {
	background: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: none !important;
}
.tmdivi_timeline_story .tmdivi-content .tmdivi-title {
	border-radius: 30px;
	color: #fff;
	width: fit-content;
	padding: 12px 20px;
	font-size: 1.2rem !important;
	margin-top: 0 !important;
	background: #00b6ed !important;
}


.tmdivi-story .tmdivi-content {
	overflow: initial;
}
.tmdivi-story .tmdivi-content:before {
	content: '' !important;
	position: absolute !important;
	top: 40px !important;
	left: -50px !important;
	height: 2px !important;
	background: #e0e0e0 !important;
	width: 80px;
	z-index: -1;
}
.tmdivi-story-left .tmdivi-content:before {
	left: 50px !important;
	width: 100%;
}


.tmdivi-story-left .tmdivi-icondot  {
	top: 30px !important;
}
.tmdivi-story-right .tmdivi-icondot {
	top: 30px !important;
}
.tmdivi-story-right .tmdivi-arrow {
	border-style: none;
	background: #ccc !important;
	border: none !important;
	top: 40px !important;
	width: 70px;
	left: -40px !important;
	height: 4px !important;
	z-index: 0;
}
.tmdivi_timeline_story .tmdivi-story >.tmdivi-arrow {
	background: #ccc !important;
	border: none !important;
}
.tmdivi-story .tmdivi-arrow {
	display: none !important;
}

@media only screen and (max-width: 767px) {
	.tmdivi-story-left .tmdivi-content:before {
		left: -50px !important;
		width: 80px;
	}
}

.dtq-carousel .slick-slide:hover .dtq-figure {
	top: -5px;
}
.dtq-carousel .slick-slide .dtq-figure:before {
	background: rgb(161 215 222 / 30%);
	border-radius: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 40px !important;
	transform: scale(0);
	transform-origin: center center;
	width: 150px;
	height: 150px;
	margin: 10px auto;
	inset: 0 0 0 0;
	z-index: -1;
	transition: transform 0.3s ease;
	-webkit-transition: transform 0.3s ease;
	-moz-transition: transform 0.3s ease;
	-o-transition: transform 0.3s ease;
}
.dtq-carousel .slick-slide:hover .dtq-figure:before {
	transform: scale(1);
}

