
:root {
	--primary-color: #1C1C1C;
	--accent-color: #FF9900;
	--light-color: #D4D4D4;
	--dark-color: #595959;
	--main-bg: #ffffff;

	--font-size-xxsmall: 14px;
	--font-size-xsmall: 20px;
	--font-size-small: 22px;
	--font-size-medium: 35px;
	--font-size: 38px;
	--font-size-big: 40px;
	--font-size-large: 55px;
	--font-size-xlarge: 100px;

	--boldness: 700;
	--main-font: "PT Sans", sans-serif;
	--title-font: "Helvetica Neue", sans-serif;
	--transition: 0.4s;
	--short-transition: 0.2s;
}


/* custom scrollbar */
/* width */
::-webkit-scrollbar {
	width: 12px;
}
/* bg */
::-webkit-scrollbar-track {
	background: var(--main-bg);
}
/* btn */
::-webkit-scrollbar-thumb {
	background: var(--primary-color);
}
/* btn:hover */
::-webkit-scrollbar-thumb:hover {
	background: var(--primary-color);
}
/* firefox-only */
html, body {
	scrollbar-color: var(--primary-color) var(--main-bg);
	/* scrollbar-width: thin; */
}


/* custom selection */
::-moz-selection { 
	color: var(--primary-color);
	background: var(--accent-color);
}
::selection {
	color: var(--primary-color);
	background: var(--accent-color);
}


/* main css stuff */
.uk-container {
	max-width: 1435px;
}

body {
	word-break: break-word;
	hyphens: auto;
}

.tm-header .uk-navbar-container {
	padding-top: 44px;
	padding-bottom: 44px;
}

.tm-header *:focus,
.dark-section *:focus {
	outline-color: var(--light-color) !important;
}

html,
.dark-section,
.tm-header .uk-navbar-container,
.uk-navbar-container:not(.uk-navbar-transparent) {
	background: var(--primary-color);
	color: var(--light-color);
}

body:not(.active-menu-101) .tm-header .uk-navbar,
body:not(.active-menu-101) .tm-header-mobile .uk-navbar {
    border-bottom: 3px solid;
    padding-bottom: 44px;
}

.light-section {
	background: var(--main-bg);
	color: var(--primary-color);
}

.tm-header .uk-navbar-container a,
.tm-header-mobile .uk-navbar-toggle {
	color: var(--light-color) !important;
}

button {
	font-family: var(--main-font);
    background: transparent;
    border: none;
    padding: 0;
}

h3 {
	font-size: var(--font-size-big);
}

h4 {
	letter-spacing: normal !important;
}

.main-title,
.main-title-dark {
	line-height: 100%;
	font-size: var(--font-size-xlarge);
	font-family: var(--title-font);
	color: var(--accent-color);
	text-transform: uppercase;
	position: relative;
	z-index: 1;
}

.main-title-dark {
	color: var(--primary-color);
}

.header-main-title {
	margin-top: 165px !important;
	line-height: 100%;
	/*max-width: 1225px;*/
}

.leistungs-section .main-title,
.timeline-section .main-title-dark {
    margin-bottom: 148px !important;
}

.blog-title {
	font-family: var(--title-font);
	font-size: var(--font-size-big);
	text-transform: uppercase;
	line-height: normal;
}

.image-slider-row .blog-title {
    padding-bottom: 25px;
}

.default-bold-text {
	font-size: var(--font-size);
	font-weight: var(--boldness);
}

.main-divider {
	padding-bottom: 150px !important;
	width: 100%;
    height: auto;
    border-top: 3px solid var(--primary-color);
}

.main-divider-light {
    margin-top: 130px;
    width: 100%;
    height: auto;
    border-top: 3px solid;
}

a {
	display: inline-block;
	color: inherit;
}

a:hover {
	color: inherit;
	text-decoration: none;
}


.pdf-link a:after,
.footer-infotext a:after,
.footer-row-bottom a:after,
.footer-menu a:after,
.mitarbeiter-link a:after,
.custom-lang-switcher a:after,
.main-menu-item-outer > div > .el-item > a:after,
.main-menu-item-outer > div > .el-item > div:after,
.main-menu-item-outer > a.el-content:first-child:after {
	content: "";
	display: block;
	margin-top: -5px;
	border-bottom: 1px solid;
	transform: scaleX(0);
	transition: transform 0.35s ease-in-out;
}

.pdf-link a:hover:after,
.footer-infotext a:hover:after,
.footer-row-bottom a:hover:after,
.footer-menu a:hover:after,
.mitarbeiter-link a:hover:after,
.custom-lang-switcher a:hover:after,
.main-menu-item-outer > div > .el-item > a:hover:after,
.main-menu-item-outer > a.el-content:first-child:hover:after {
	/* transform: scaleX(1) scaleY(2); */
    transform: scaleX(1) scaleY(2);;
}

.link-underline:after,
.link-underline:hover:after {
	display: none !important;
}

.link-underline,
.link-underline:hover {
	text-decoration: underline;
}

.default-btn {
	width: 100%;
}

.default-btn > a {
	transition: var(--transition);
	font-size: var(--font-size-xsmall);
	color: var(--primary-color);
	background: var(--accent-color);
	font-weight: var(--boldness);
    width: 100%;
    max-width: 350px;
    padding: 15.8px 18px;
	text-align: center;
	display: flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
}

.default-btn > a:hover {
	text-decoration: none;
	background: var(--primary-color);
	color: var(--accent-color);
	max-width: 359px;
}

.default-btn > a:after {
	content: "";
	transition: var(--transition);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 183 92' fill='none'%3E%3Cpath d='M-1.9233e-06 46L180 46M180 46L136.667 2M180 46L136.667 90' stroke='%231C1C1C' stroke-width='11'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
	width: 35px;
    height: 16px;
	margin-left: 18px;
}

.default-btn > a:hover:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 183 92' fill='none'%3E%3Cpath d='M-1.9233e-06 46L180 46M180 46L136.667 2M180 46L136.667 90' stroke='%23FF9900' stroke-width='11'/%3E%3C/svg%3E");
}

.dark-section a {
	color: var(--light-color) !important;
}

.dark-section-btn > a {
	color: var(--primary-color) !important;
	max-width: 275px;
}

.dark-section-btn > a:hover {
	background: var(--accent-color) !important;
	color: var(--primary-color) !important;
	max-width: 282px;
}

.kontakt-header-section .default-btn > a:hover:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 183 92' fill='none'%3E%3Cpath d='M-1.9233e-06 46L180 46M180 46L136.667 2M180 46L136.667 90' stroke='%231C1C1C' stroke-width='11'/%3E%3C/svg%3E");
}


/* home-header */
.home-header-section {
	position: relative;
	padding-top: 0;
    padding-bottom: 225px;
}

.home-header-top-row {
	min-height: calc(100vh - 200px);
}

.home-header-introtext {
	max-width: 460px;
	margin-top: 80px !important;
    margin-left: 85px;
	z-index: 1;
}

.active-menu-101 .home-header-introtext {
    max-width: 397px;
    text-align: center;
}

.home-header-video {
	display: flex;
    justify-content: center;
	top: 0;
    left: 0;
    right: 0;
	/*background: #292929;*/
}

.home-header-video > video {
	width: 100%;
    max-width: 1600px;
	filter: brightness(0.35) grayscale(1);
	/*background: var(--dark-color);*/
    /*mix-blend-mode: overlay;*/
}

.home-header-top-column {
	min-height: 1000px;
}

.home-header-top-column > .uk-width-1-1 {
	position: initial;
}

.header-fulltext {
	max-width: 1160px;
}

.text-arrow-outer {
    padding-bottom: 140px;
    position: initial;
}

.text-arrow-row {
	position: relative;
}

.arrow-down-icon {
	z-index: 3;
    position: absolute;
	right: 0;
    bottom: -50px;
}

.arrow-down-icon a {
    z-index: 1;
    position: relative;
    display: block;
	animation: movingArrow 3.5s ease-in-out infinite;
}

@keyframes movingArrow {
	0% {
	  transform: translateY(0);
	}
	50% {
	  transform: translateY(8px);
	}
	100% {
	  transform: translateY(0);
	}
}

.home-header-section .header-main-title {
	z-index: 2;
}
	
.home-header-section .header-main-title > a {
	color: var(--accent-color) !important;
}

.home-header-section .header-main-title > a:hover {
	color: var(--light-color) !important;
}


/* leistungsspektrum */
.leistungs-section {
	padding-top: 165px !important;
	padding-bottom: 250px !important;
}

.leistungs-accordion > .uk-width-1-1 {
	display: flex;
	flex-wrap: wrap;
	position: relative;
}

.leistungs-accordion-item {
	width: 50%;
	margin-bottom: 60px !important;
}

.leistungs-accordion-item .uk-accordion-content {
    position: relative;
}

.leistungs-accordion-item .uk-accordion-title {
	font-size: var(--font-size-large);
	text-transform: uppercase;
	line-height: normal;
	padding-left: 80px;
	position: relative;
	padding-right: 28px;
}

.leistungs-accordion-item .uk-accordion-title:before {
	position: absolute;
	width: 36px;
	height: 36px;
	margin-left: 0;
	float: unset;
	top: 13px;
	left: 0;
	transition: var(--short-transition);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 75 75' fill='none'%3E%3Cline y1='38.3936' x2='75' y2='38.3936' stroke='%231C1C1C' stroke-width='3'/%3E%3Cline x1='38.3936' y1='75' x2='38.3936' y2='6.55671e-08' stroke='%231C1C1C' stroke-width='3'/%3E%3C/svg%3E");
}

.leistungs-accordion-item .uk-open .uk-accordion-title:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 75 3' fill='none'%3E%3Cline y1='1.5' x2='75' y2='1.5' stroke='%23FF9900' stroke-width='3'/%3E%3C/svg%3E");
}

.leistungs-accordion-item .uk-accordion-content .el-content {
	font-size: var(--font-size-small);
	line-height: 34px;
	margin-top: 0 !important;
	padding-left: 80px;
}

.leistungs-accordion-item .image-outer {
	width: 100vw;
    max-width: 1400px;
    position: absolute;
    bottom: 0;
    left: -40px;
}


.leistungs-accordion-item picture {
	pointer-events: none;
    width: 100vw;
    max-width: 1400px;
    position: absolute;
    bottom: 0;
    left: -40px;
	transition: var(--short-transition);
	z-index: 1;
	opacity: 0;
}

.leistungs-accordion-item picture img {
    position: absolute;
    right: 120px;
    bottom: 0;
    display: block;
    width: 100%;
    max-width: 465px;
}

.leistungs-accordion-item:nth-child(even) picture {
    position: absolute;
	width: 100%;
    max-width: 465px;
    bottom: 0;
    left: -100%;
}


.leistungs-accordion-item:nth-child(even) picture img {
    right: unset;
    left: 80px;
}


/* partner-logos-section */
.partner-logos-section {
	padding-bottom: 150px !important;
}

.partner-text {
	max-width: 1160px;
	margin-bottom: 85px !important;
}

.partner-logos-grid {
	margin-bottom: 130px !important;
}

.partner-logos-grid > .uk-grid > div {
    display: flex;
    align-items: center;
	justify-content: center;
    margin-bottom: 10px;
    height: 130px;
}

.partner-logos-grid .el-item {
	/*-webkit-filter: grayscale(100%);
	filter: grayscale(100%);*/
}

.partner-logos-grid .el-item img {
	max-height: 170px;
	object-fit: contain;
}


/* timeline */
.timeline-section {
	padding-bottom: 135px !important;
}

.timeline-section .main-title-dark {
	z-index: 3;
}


/* wasserkraft-header */
.wasserkraft-header-section {
	opacity: 0;
	transition: 0.3s;
}

.wasserkraft-header-section .arrow-down-icon {
	bottom: 155px;
}

.wasserkraft-header-section .main-title {
	max-width: 480px;
}

html[lang="en-gb"] .wasserkraft-header-section .main-title {
	max-width: 410px;
}

.wasserkraft-header {
	display: flex;
    justify-content: space-between;
	align-items: center;
}

.wasserkraft-header:after {
	content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 95px;
    background: var(--light-color);
}

.comparison-slider-container {
	z-index: 1 !important;
}

.main-subtitle {
	font-family: var(--title-font);
	font-size: var(--font-size-big);
	color: var(--light-color);
	text-transform: uppercase;
}

.wasserkraft-header-left {
    width: 100%;
    max-width: 520px;
	min-height: 385px;
}

.wasserkraft-header-right {
	opacity: 1;
	transition: 0.4s;
	width: 100%;
}

.active-menu-114 .wasserkraft-header,
.active-menu-115 .wasserkraft-header,
.active-menu-116 .wasserkraft-header,
.active-menu-119 .wasserkraft-header {
    padding-bottom: 30px;
    margin-bottom: 100px !important;
}

.active-menu-114 .wasserkraft-header:after,
.active-menu-115 .wasserkraft-header:after,
.active-menu-116 .wasserkraft-header:after,
.active-menu-119 .wasserkraft-header:after {
    bottom: -15px;
}

.twentytwenty-handle {
	background: var(--accent-color) !important;
	height: 56px !important;
    width: 16px !important;
    border-radius: 3px !important;
	margin-left: -10px !important;
    margin-top: -28px !important;
    border: unset !important;
	cursor: pointer;
	cursor: grab;
	cursor: -moz-grab;
	cursor: -webkit-grab;
}

.twentytwenty-handle:active {
	cursor: grabbing;
	cursor: -moz-grabbing;
	cursor: -webkit-grabbing;
}

.twentytwenty-left-arrow,
.twentytwenty-right-arrow {
	display: none !important;
}

.twentytwenty-horizontal .twentytwenty-handle:before,
.twentytwenty-horizontal .twentytwenty-handle:after {
	content: unset !important;
}

.comparison-slider-line {
    position: absolute;
    top: 50%;
    height: 3px;
    width: 100%;
    background: var(--light-color);
    z-index: 11;
}

.comparison-slider-line > svg {
    width: 50px;
    /*height: max-content;*/
    position: absolute;
    top: -10px;
}

.comparison-slider-arrow-left {
    left: -1px;
}

.comparison-slider-arrow-right {
    right: -1px;
	transform: rotate(180deg);
}


/* wasserkraft image-slider */
.image-slider-row:nth-child(even) {
    flex-direction: row-reverse;
}

.image-slider-text {
	font-size: var(--font-size-small);
}

.image-slider-section {
	padding-bottom: 165px !important;
}

.section-overflow-top {
	padding-top: 0;
	margin-top: -80px;
}

.image-slider-container .uk-slidenav-container {
	bottom: -100px !important;
    margin: 0;
    left: 50%;
	z-index: 1;
}

.image-slider-text-column {
    display: flex;
	flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.image-slider-text-column .default-btn {
    padding-top: 80px;
}

.image-slider-row {
	margin-bottom: 168px !important;
}

.image-slider-row .image-slider-text-column {
	padding-top: 60px;
}

.image-slider-row:first-of-type .image-slider-text-column {
	padding-top: 135px;
}

.image-slider-container picture img {
	filter: grayscale(1);
}

.image-slider-container .uk-slidenav > svg {
	display: none;
}

.image-slider-container .uk-slidenav-previous:after,
.image-slider-container .uk-slidenav-next:after {
    content: "";
    height: 40px;
    width: 80px;
    display: block;
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 84 43' fill='none'%3E%3Cpath d='M-8.52372e-07 21.5L81 21.5M81 21.5L61.5 2M81 21.5L61.5 41' stroke='%231C1C1C' stroke-width='3'/%3E%3C/svg%3E");
}

.image-slider-container .uk-slidenav-previous:after {
	transform: rotate(180deg);
}

.image-slider-container .uk-position-cover,
.image-slider-container .uk-position-cover > .uk-panel,
.image-slider-container .uk-position-cover > .uk-panel > div, 
.image-slider-container .uk-position-cover a {
    width: 100%;
    height: 100%;
}

.image-slider-container .uk-position-cover a {
	opacity: 0;
}

.image-slider-text h3 {
	margin-bottom: 0 !important;
	padding-bottom: 5px;
    line-height: normal;
}

.image-slider-text ul {
    list-style: none;
    padding-left: 0;
}

.image-slider-text ul > li {
    border-bottom: 2px solid;
    line-height: 34px;
	padding-bottom: 18px;
    margin-bottom: 17px;
}

.image-slider-text ul > li:last-of-type {
    border-bottom: unset;
    padding-bottom: 0;
    margin-bottom: 0;
}

.active-menu-115 .chart-image-outer-container {
	margin-top: -95px !important;
}

.active-menu-115 .image-slider-text a {
	text-decoration: underline;
}


/* produkte-leistungen menu-icon-grid */
.menu-icon-grid {
    margin-top: 150px !important;
}

.menu-icon-grid > .uk-grid {
    padding-bottom: 95px !important;
}

.menu-icon-grid .uk-panel {
    display: flex !important;
    flex-direction: column;
    align-items: center;
}

.menu-icon-grid .uk-link-text {
    position: relative;
    display: flex;
    justify-content: center;
	text-align: center;
	font-weight: var(--boldness);
	padding-top: 35px;
}

.menu-icon-grid .uk-link-text:after {
    content: "";
	position: absolute;
    transition: var(--transition);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='' height='' viewBox='0 0 121 59' fill='none'%3E%3Cpath d='M0 29.5L118 29.5M118 29.5L89.5926 2M118 29.5L89.5926 57' stroke='%231C1C1C' stroke-width='3'/%3E%3C/svg%3E");    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
    width: 62px;
    height: 29px;
    bottom: -53px;
}

.menu-icon-grid > div > div {
    margin-bottom: 70px;
}

.menu-icon-grid img,
.menu-icon-grid .uk-link-text,
.menu-icon-grid .uk-link-text:after {
	transition: 0.5s;
}

.menu-icon-grid .uk-panel:hover img {
	transform: rotate(40deg);
	filter: invert(62%) sepia(20%) saturate(6523%) hue-rotate(3deg) brightness(106%) contrast(108%);
}

.menu-icon-grid .uk-panel:hover .uk-link-text {
	color: var(--accent-color);
}

.menu-icon-grid .uk-panel:hover .uk-link-text:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='' height='' viewBox='0 0 121 59' fill='none'%3E%3Cpath d='M0 29.5L118 29.5M118 29.5L89.5926 2M118 29.5L89.5926 57' stroke='%23FF9900' stroke-width='3'/%3E%3C/svg%3E");
}


/* main-menu */
header.tm-header .uk-navbar-nav {
	display: none !important;
	height: 0 !important;
	pointer-events: none !important;
}

.tm-header .uk-navbar-right {
	gap: 0 !important;
}

.main-menu-container {
    position: absolute;
    transition: 0.6s;
	opacity: 0;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    min-height: 100vh;
    pointer-events: none;
	padding-top: 95px;
	padding-bottom: 60px;
}

.main-menu-container.menu-open {
	position: fixed !important;
	color: var(--primary-color);
	background: var(--light-color);
	opacity: 1;
	pointer-events: all;
	padding-top: 140px;
	z-index: 6;
	height: 100vh;
	overflow: auto;
}

.main-menu-btn {
	cursor: pointer;
	font-size: var(--font-size-xsmall);
	font-weight: var(--boldness);
	color: var(--light-color);
	text-transform: uppercase;
	z-index: 7;
    position: relative;
}

.main-menu-btn:after {
	content: "";
    width: 36px;
    height: 36px;
    margin-left: 35px;
    margin-top: -3px;
    float: right;
	transition: var(--short-transition);
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 36 36' fill='none'%3E%3Cpath d='M0 17.6489H36M17.6489 36L17.6489 0' stroke='%23D4D4D4' stroke-width='3'/%3E%3C/svg%3E");
}

.main-menu-btn.menu-btn-open {
	color: var(--primary-color);
}

.main-menu-btn.menu-btn-open > span {
	display: none;
}

.main-menu-btn:before {
	transition: 0.5s;
} 

.main-menu-btn.menu-btn-open:before {
	content: "Schließen";	
}

html[lang="en-gb"] .main-menu-btn.menu-btn-open:before {
	content: "Close";	
}

.main-menu-btn.menu-btn-open:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='auto' height='auto' viewBox='0 0 36 3' fill='none'%3E%3Cpath d='M0 1.5H36' stroke='%231C1C1C' stroke-width='3'/%3E%3C/svg%3E");
}

.main-menu-inner {
    height: 100%;
}

.main-menu-item-outer {
    margin-bottom: 48px !important;
}

.main-menu-item-outer:nth-child(2) {
	margin-bottom: 40px !important;
}

.main-menu-item-outer:last-child {
    margin-bottom: 60px !important;
}

.main-menu-item-outer > div {
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.main-menu-item-outer > div > .el-item {
    width: 25% !important;
}

.main-menu-item-outer > div > .el-item:first-child {
    width: 100% !important;
}

.main-menu-item-outer > div > .el-item > a {
	font-size: var(--font-size-small);
	font-family: var(--main-font);
	font-weight: var(--boldness);
	padding-right: 22px;
}

.main-menu-item-outer:nth-child(2) > div > .el-item > a {
	margin-bottom: 13px;
}

.main-menu-item-outer > div > .el-item:first-child > a,
.main-menu-item-outer > div > .el-item:first-child > div,
.main-menu-item-outer > a.el-content:first-child {
	line-height: normal;
	font-size: var(--font-size-large);
	font-family: var(--title-font);
	font-weight: 500;
	text-transform: uppercase;
	margin-bottom: 22px !important;
}

.main-menu-bottom {
	border-top: 3px solid;
    padding-top: 20px;
    padding-bottom: 15px;
}

.no-menu-link {
    cursor: default;
}

.tm-header .uk-navbar.menu-nav-open {
	position: fixed;
    width: 100%;
    max-width: 1435px;
    z-index: 6;
	pointer-events: none;
}

.tm-header .uk-navbar.menu-nav-open .uk-navbar-right {
	pointer-events: all;
}

/* language-switcher */
.tm-header .uk-navbar-item.custom-lang-switcher {
    margin-right: 140px;
}

.tm-header .custom-lang-switcher > ul {
	display: none;
	opacity: 0;
	z-index: 7;
	position: relative;
	transition: var(--transition);
}

#tm-dialog-mobile .custom-lang-switcher > ul {
	z-index: 6;
	position: relative;
	transition: var(--transition);
}

.tm-header .custom-lang-switcher > ul.menu-open,
#tm-dialog-mobile .custom-lang-switcher > ul.menu-open {
	display: block;
	opacity: 1;
}

.tm-header .custom-lang-switcher ul > li,
#tm-dialog-mobile .custom-lang-switcher ul > li {
    margin-left: 15px;
    margin-right: 0px;
}

#tm-dialog-mobile .custom-lang-switcher ul > li:first-of-type {
	margin-left: 0 !important;
}

.tm-header .custom-lang-switcher ul > li > a {
	font-weight: var(--boldness);
}

.tm-header .custom-lang-switcher ul > li > a,
#tm-dialog-mobile .custom-lang-switcher ul > li > a {
	color: var(--primary-color) !important;
	font-size: var(--font-size-xsmall);
	position: relative;
}

.tm-header .custom-lang-switcher ul > li.lang-active > a,
#tm-dialog-mobile .custom-lang-switcher ul > li.lang-active > a {
	color: var(--accent-color)!important;;
}

.tm-header .custom-lang-switcher ul > li:not(:first-child) > a:before,
#tm-dialog-mobile .custom-lang-switcher ul > li:not(:first-child) > a:before {
	content: "|";
    left: -11px;
    position: absolute;
	color: var(--primary-color) !important;
}



/* footer */
.footer-section {
	padding: 138px 0 !important;
}

.footer-infotext {
	font-family: var(--title-font);
	font-size: var(--font-size-medium);
	text-transform: uppercase;
	line-height: 1.2;
}

.footer-row-top {
    padding-bottom: 68px !important;
	margin-bottom: 30px !important;
	border-bottom: 3px solid;
}

.footer-column-top {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
	align-items: flex-end;
}

.footer-images-inner {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

.footer-image:last-child {
    margin-left: 32px;
}

.footer-menu .uk-nav  {
    display: flex;
    justify-content: flex-end;
}

.footer-menu .uk-nav > li {
	margin-left: 70px;
}

.footer-menu .uk-nav a {
	font-weight: var(--boldness);
	font-size: var(--font-size-xsmall);
	display: inline-block;
	padding: 0;
}


/* kontakt */
.kontakt-header-section {
	padding-top: 75px;
	padding-bottom: 445px;
}

.kontakt-header-section .uk-grid {
	position: relative;
}

.kontakt-text {
	font-size: var(--font-size-large);
	line-height: normal;
	margin-bottom: 50px !important;
    margin-top: 70px !important;
}

.kontakt-arrow-down {
	bottom: 45px !important;
}

.map-image-section {
	padding-top: 160px !important;
	padding-bottom: 160px !important;
}

.pdf-link > .uk-grid {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.pdf-link > .uk-grid > .el-item > a {
	display: inline-block;
	margin: 5px 0;
	font-size: var(--font-size-medium);
}

.pdf-link > .uk-grid > .el-item > a span {
	margin-left: 0 !important;
}

.pdf-link > .uk-grid > .el-item > a svg {
	width: 32px;
	margin-top: -9px;
}

.pdf-link > .uk-grid > .el-item > a:before {
	content: unset !important;
	display: none !important;
}


/* kontakt - mitarbeiter */
.mitarbeiter-section > .uk-container {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
	z-index: 1;
    position: relative;
    margin-top: -290px;
	row-gap: 65px;
	max-width: 950px;
}

.mitarbeiter-item {
	/* width: calc(33% - 48px); */
	width: calc(50% - 35px);
}

.mitarbeiter-image img {
	width: 100%;
	height: 100%;
	max-height: 565px;
	object-fit: cover;
}

.mitarbeiter-title,
.mitarbeiter-subtitle {
	color: var(--primary-color) !important;
	font-family: var(--main-font) !important;
}

.mitarbeiter-title {
	margin-top: 42px !important;
	line-height: 55px;
	font-size: var(--font-size);
	font-weight: var(--boldness);
}

.mitarbeiter-subtitle {
	margin-bottom: 35px !important;
	line-height: 34px;
	font-size: var(--font-size-xsmall);
	font-weight: var(--boldness);
	text-transform: uppercase;
}

.mitarbeiter-link {
	display: flex;
	line-height: 34px;
	font-family: var(--main-font) !important;
	font-size: var(--font-size-small);
}

.mitarbeiter-link a {
	color: var(--primary-color) !important;
}

.mitarbeiter-link a:hover {
	color: var(--primary-color) !important;
}

.mitarbeiter-tel:before {
    content: "Tel:";
    width: 38px;
}

.mitarbeiter-mobil:before {
    content: "Mobil:";
    width: 67px;
}

.mitarbeiter-mail:before {
    content: "Mail:";
	min-width: 57px;
}

.mitarbeiter-tel a:hover:after,
.mitarbeiter-mobil a:hover:after {
    transform: scaleX(1) scaleY(1.5);
}

.mitarbeiter-mail a {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

.mitarbeiter-mail a:after,
.mitarbeiter-mail a:hover:after {
	content: unset !important;
}

@media only screen and (max-width: 1199px) {
	.kontakt-header-section {
		padding-bottom: 346px;
	}

	.mitarbeiter-section > .uk-container {
		margin-top: -200px;
	}
}

@media only screen and (max-width: 979px) {
	.mitarbeiter-item {
		width: calc(50% - 38px);
	}

	.mitarbeiter-section > .uk-container {
		justify-content: space-around;
	}
}

@media only screen and (max-width: 676px) {
	.mitarbeiter-item {
		width: 100%;
		max-width: 420px;
	}

	.mitarbeiter-title {
		margin-top: 32px !important;
	}

	.mitarbeiter-subtitle {
		margin-bottom: 20px !important;
	}
}


/* sondermaschinen + referenzen */
.sondermaschinen-header-section,
.referenzen-header-section {
	padding-top: 75px;
}

.sondermaschinen-header-section .uk-grid,
.referenzen-header-section .uk-grid {
	position: relative;
}

.sondermaschinen-header-section .main-title {
    max-width: 600px;
	margin-bottom: 18px !important;
}

html[lang="en-gb"] .sondermaschinen-header-section .main-title {
    max-width: 700px;
}

.referenzen-header-section .main-title {
	margin-bottom: 18px !important;
}

.sondermaschinen-header-section .main-subtitle,
.referenzen-header-section .main-subtitle {
	margin-top: 18px !important;
}

.sondermaschinen-header-section .main-title,
.sondermaschinen-header-section .main-subtitle,
.referenzen-header-section .main-title,
.referenzen-header-section .main-subtitle {
	position: relative;
	z-index: 1;
}

.sondermaschinen-header-image {
	filter: grayscale(1);
	position: absolute;
    right: 90px;
    top: 0;
    width: 100%;
    max-width: 788px;
}

.sondermaschinen-header-row-1 {
	min-height: 530px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.sondermaschinen-header-section .header-fulltext,
.referenzen-header-section .header-fulltext {
	margin-top: 95px !important;
}

.header-video-bg {
    top: 24px;
    max-width: 840px;
	filter: brightness(0.75) grayscale(1);
}

html[lang="en-gb"] .header-video-bg {
    top: 40px;
}


/* blog */
.blog-slider-section {
	padding-top: 140px !important;
	padding-bottom: 110px !important;
}

.blog-slider-row-header {
	margin-bottom: 190px !important;
}

.blog-slider-item {
    margin-bottom: 230px !important;
}

.blog-column-1 {
    padding-right: 65px;
}

.blog-slider-label {
	font-family: var(--main-font);
	font-size: var(--font-size-xsmall);
	font-weight: var(--boldness);
	text-transform: uppercase;
	line-height: 34px;
}

.blog-slider-title {
	font-family: var(--main-font);
	font-size: var(--font-size);
	font-weight: var(--boldness);
	line-height: 40px;
	text-transform: none;
	margin-bottom: 44px !important;
}

.referenzen-section .blog-slider-title {
	margin-bottom: 27px !important;
}

.blog-slider-text {
	font-family: var(--main-font);
	font-size: var(--font-size-small);
	line-height: 34px;
}


/* popover background image */
.popover-container {
	display: flex;
    justify-content: center;
    position: absolute !important;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
	pointer-events: none;
}

.popover-container picture {
	z-index: -1;
	opacity: 0;
}

.popover-container .el-marker {
	background: var(--accent-color);
	height: 24px;
    width: 24px;
    padding: 0;
	pointer-events: all;
}

.popover-container .el-marker:after {
    content: "";
    height: 39px;
    width: 39px;
    border-radius: 50%;
    background: #ff99005c;
    position: absolute;
    top: -8px;
    left: -8px;
	animation: pulseEffect 1.9s ease-in-out infinite;
}

@keyframes pulseEffect {
	0% {
	  opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

.popover-container .el-marker svg {
	display: none !important;
}

.popover-container .uk-card {
	background: var(--accent-color);
	color: var(--primary-color);
	border: none;
	border-radius: 3px;
	padding: 32px !important;
	position: relative;
}

.popover-container .uk-card .el-title,
.popover-container .uk-card .el-content {
	font-size: var(--font-size-small);
}

.popover-container .uk-card .el-title {
	text-align: center;
}


/* simple article template */
.article-header-section {
    padding-bottom: 116px !important;
}

.article-header-section .main-title {
	margin-bottom: 0 !important;
}

.article-content-section h2 {
    font-size: 36px;
    font-weight: bold;
    padding-bottom: 2px;
}


/* mobile-menu */
#tm-dialog-mobile > .uk-modal-dialog,
#tm-dialog-mobile .uk-modal-close-full {
	background: var(--light-color) !important;
	color: var(--primary-color) !important;
}

#tm-dialog-mobile > .uk-modal-dialog a {
	font-family: var(--main-font);
	font-size: 20px;
	line-height: 1.3;
	text-transform: none;
    font-weight: 400;
}

#tm-dialog-mobile > .uk-modal-dialog a,
#tm-dialog-mobile > .uk-modal-dialog .uk-close line { 
	color: var(--primary-color) !important;
}

#tm-dialog-mobile > .uk-modal-dialog .uk-active > a {

}

#tm-dialog-mobile > .uk-modal-dialog img { 
	display: none;
}

#tm-dialog-mobile > .uk-modal-dialog .uk-nav li {
	margin-bottom: 4px;
}

.tm-header-mobile > .uk-navbar-container {
    padding-top: 22px;
    padding-bottom: 22px;
}

#module-menu-dialog-mobile > .uk-nav > li {
	margin-bottom: 28px !important;
}

#module-menu-dialog-mobile > .uk-nav > li > a,
#module-menu-dialog-mobile > .uk-nav > li > div.no-mobile-link {
    font-size: 26px !important;
	font-weight: 500;
	text-transform: uppercase;
}

#tm-dialog-mobile > .uk-modal-dialog > .uk-modal-body {
	padding-top: 50px !important;
}

#tm-dialog-mobile .uk-close {
	top: 20px;
    right: 20px;
}

#tm-dialog-mobile .uk-close svg {
    width: 20px;
    height: 20px;
}


/* mobile */
@media only screen and (max-width: 1304px) {
	:root {
		--font-size-xxsmall: 14px;
		--font-size-xsmall: 20px;
		--font-size-small: 22px;
		--font-size-medium: 35px;
		--font-size: 27px !important;
		--font-size-big: 40px;
		--font-size-large: 42px !important;
		--font-size-xlarge: 68px !important;
	}

	.leistungs-accordion-item .uk-accordion-title {
		padding-right: 32px;
	}

	.home-header-video > video {
		width: auto;
    	height: 795px;
	}
}

@media only screen and (max-width: 1199px) {
	:root {
		--font-size-medium: 32px !important;
	}

	.sondermaschinen-header-image {
		filter: grayscale(1) brightness(0.5);
		right: 60px;
	}
}

@media only screen and (max-width: 1099px) {
	.wasserkraft-header {
		flex-direction: column;
	}

	.wasserkraft-header-left {
		width: 100%;
		max-width: unset;
		min-height: unset;
		padding-bottom: 20px;
	}

	.wasserkraft-header-right  {
		margin-left: auto;
		max-width: 800px;
		margin-right: auto;
	}

	.wasserkraft-header:after {
		bottom: 72px;
	}

	.wasserkraft-header-section .arrow-down-icon {
		bottom: 98px;
	}
	
	.wasserkraft-header-section .arrow-down-icon img {
		width: 27px;
	}
}

@media only screen and (max-width: 989px) {
	:root {
		--font-size: 25px !important;
		--font-size-big: 34px;
		--font-size-large: 35px !important;
		--font-size-xlarge: 48px !important;
	}

	.leistungs-accordion-item .uk-accordion-title:before {
		top: 0;
	}

	.leistungs-accordion-item picture {
		left: 70px;
	}

	.leistungs-accordion-item picture img {
		max-width: 365px;
	}

	.leistungs-accordion-item:nth-child(even) picture {
		left: -110%;
		max-width: 365px;
	}
}

@media only screen and (max-width: 959px) {
	.partner-logos-grid .el-item img {
		height: 115px;
	}

	.partner-logos-grid .el-item img[alt="iDM Logo"] {
		max-height: 138px;
		margin-top: 26px;
	}

	.map-image-section {
		padding-top: 70px !important;
		padding-bottom: 70px !important;
	}

	.image-slider-row .image-slider-text-column {
		padding-top: 150px !important;
	}

	.tm-header-mobile .uk-logo img  {
		max-width: 215px;
	}

	.blog-column-1 {
		padding-right: 0;
		margin-bottom: 50px;
	}
}

@media only screen and (max-width: 919px) {
	.popover-container .el-marker:last-of-type {
		top: 44% !important;
		left: 67% !important;
	}

	.sondermaschinen-header-image {
		right: 0;
	}

	.header-video-bg {
		display: flex;
		justify-content: center;
		top: 0;
		left: 0;
		right: 0;
	}

	.header-video-bg > video {
		max-width: 900px
	}
}

@media only screen and (max-width: 815px) {
	.leistungs-section .main-title, 
	.timeline-section .main-title-dark {
		margin-bottom: 120px !important;
	}

	.leistungs-section {
		padding-top: 115px !important;
		padding-bottom: 95px !important;
	}

	.leistungs-accordion-item {
		width: 100%;
	}

	.leistungs-accordion-item .uk-accordion-content .el-content {
		padding-left: 52px;
	}

	.leistungs-accordion-item picture,
	.leistungs-accordion-item:nth-child(even) picture {
		left: unset;
		position: relative;
		bottom: unset;
		margin-top: 24px;
	}

	.leistungs-accordion-item picture img,
	.leistungs-accordion-item:nth-child(even) picture img {
		max-width: 385px;
		position: relative;
		left: 52px;
		right: unset;
	}

	.leistungs-accordion-item .uk-accordion-title {
		padding-right: 20px;
		padding-left: 52px;
	}

	.leistungs-accordion-item .uk-accordion-content {
		display: flex;
		flex-direction: column-reverse;
	}

	.default-btn > a {
		max-width: 350px;
	}
}

@media only screen and (max-width: 769px) {
	.mitarbeiter-section > .uk-container {
		margin-top: -50px;
	}

	.home-header-section {
		padding-bottom: 105px;
	}

	.wasserkraft-header-section {
		padding-bottom: 160px !important;
	}

	.sondermaschinen-header-image {
		display: flex;
		justify-content: center;
		top: 0;
		left: 0;
		right: 0;
	}

	.referenzen-header-section .arrow-down-icon {
		bottom: -68px;
	}

	.sondermaschinen-header-image img {
		max-width: 1600px;
		width: auto;
		height: 495px;
	}

	.blog-slider-section {
		padding-top: 110px !important;
		padding-bottom: 40px !important;
	}

	.blog-slider-row-header {
		margin-bottom: 110px !important;
	}

	.popover-container {
		display: none !important;
	}
}

@media only screen and (max-width: 699px) {
	:root {
		--font-size-medium: 25px !important;
	}

	.footer-section {
		padding: 90px 0 !important;
	}

	.footer-column-top {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	
	.footer-infotext {
		margin-bottom: 48px !important;
	}

	.footer-menu .uk-nav {
		display: flex;
		justify-content: center;
	}

	.footer-menu .uk-nav > li {
		margin-right: 20px;
		margin-left: 20px;
	}
}

@media only screen and (max-width: 676px) {
	:root {
		--font-size-small: 20px !important;
		--font-size: 22px !important;
		--font-size-big: 28px;
		--font-size-large: 29px !important;
		--font-size-xlarge: 40px !important;
	}

	.arrow-down-icon {
		bottom: -130px;
	}

	.header-main-title {
		margin-top: 110px !important;
	}

	.home-header-introtext {
		margin-left: 0;
		max-width: 100%;
	}

	.arrow-down-icon img {
		width: 34px;
	}
}

@media only screen and (max-width: 639px) {
	.blog-slider-item .uk-visible\@s,
	.image-slider-row .uk-visible\@s {
		display: flex !important;
	} 

	.partner-logos-section .default-btn {
		display: flex;
		justify-content: center;
	}
}

@media only screen and (max-width: 529px) {
	:root {
		--font-size-small: 18px !important;
		--font-size: 20px !important;
		--font-size-big: 29px;
		--font-size-large: 26px !important;
		--font-size-xlarge: 34px !important
	}

	.home-header-introtext {
		font-size: var(--font-size) !important;
	}
	
	.home-header-top-column {
		min-height: 910px;
	}

	.home-header-section {
		padding-bottom: 125px;
	}

	.leistungs-accordion-item .uk-accordion-content .el-content {
		padding-left: 0;
	}
	
	.leistungs-accordion-item picture img, 
	.leistungs-accordion-item:nth-child(even) picture img {
		left: 0;
	}
}

.mobile-title {
	display: none !important;
}

@media only screen and (max-width: 455px) {
	.desktop-title {
		display: none !important;
	}

	.mobile-title {
		display: inline-block !important;
		word-break: auto-phrase;
	}

	.home-header-section .header-main-title > a {
		padding-bottom: 16px;
	}
}

@media only screen and (max-width: 449px) {
	.footer-menu .uk-nav {
		justify-content: center;
		flex-direction: column;
		align-items: center;
	}

	.footer-menu .uk-nav > li {
		margin-bottom: 6px;
		margin-top: 6px;
	}

	.footer-section {
		padding-bottom: 82px !important;
	}

	.wasserkraft-header:after {
		bottom: 22px;
	}

	.wasserkraft-header {
		margin-bottom: 30px !important;
	}

	.wasserkraft-header-section .arrow-down-icon {
		bottom: 50px;
	}
}

.tm-header .uk-navbar .uk-navbar-left {
    transition: 0.3s;
}

.tm-header .uk-navbar.menu-nav-open .uk-navbar-left {
    opacity: 0;
	pointer-events: none;
}

.uk-navbar.menu-nav-open {
    border-bottom: 3px solid transparent !important;	
}

@media only screen and (max-height: 1020px) and (min-height: 695px) and (min-width: 960px) {
	.main-menu-item-outer > div > .el-item:first-child > a, 
	.main-menu-item-outer > div > .el-item:first-child > div, 
	.main-menu-item-outer > a.el-content:first-child {
		margin-bottom: 15px !important;
	}

	.main-menu-container.menu-open {
		padding-top: 40px;
		padding-bottom: 0;
	}

	.main-menu-item-outer {
		margin-bottom: 26px !important;
	}

	.main-menu-item-outer:nth-child(2) {
		margin-bottom: 30px !important;
	}

	.main-menu-item-outer:last-child {
		margin-bottom: 30px !important;
	}
}
