:root {
	--primary-color: #232529;
	--accent-color: #053EDD;
	--light-color: #23252999;
	--main-bg: #E1E1E1;
	--darker-bg: #9494944F;

	--font-size-small: 18px;
	--font-size-default: 20px;
	--font-size-middle: 24px;
	--font-size-big: 28px;
	--font-size-large: 50px;
	--font-size-xlarge: 60px;

	--small-content-width: 1275px;
	--big-content-width: 1700px;
	--boldness: 700;
	--main-font: "Futura", 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(--main-bg);
	background: var(--accent-color);
}
::selection {
	color: var(--main-bg);
	background: var(--accent-color);
}


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

body {
	background: var(--main-bg);
	word-break: break-word;
	hyphens: auto;
}

p, 
div {
	color: var(--primary-color) !important;
    word-break: break-word;
}

ul {
    list-style: "-- ";
	color: var(--primary-color) !important;
	padding-left: 15px;
}

a {
	display: inline-block;
	color: var(--primary-color) !important;
}

a:hover {
	text-decoration: none !important;
	color: var(--primary-color) !important;
}

*:not(.btn-link) a:not(.social-link):not(.uk-logo):after {
	content: "";
	display: block;
	margin-top: -5px;
	border-bottom: 1px solid;
	transform: scaleX(0);
	transition: transform 0.35s ease-in-out;
}

.footer-section *:not(.btn-link) a:not(.social-link):after {
	margin-top: -3.5px;
}

*:not(.btn-link) a:not(.social-link):not(.uk-logo):hover:after {
    transform: scaleX(1) scaleY(2);;
}

.btn-link {
	font-size: var(--font-size-default);
}

.small-content-width {
	max-width: var(--small-content-width);
	margin-left: auto;
	margin-right: auto;
}

.big-content-width {
	max-width: var(--big-content-width);
	margin-left: auto;
	margin-right: auto;
}

.hidden-heading-section {
	opacity: 0;
    z-index: -1;
    position: relative;
    height: 0;
    display: none;
    pointer-events: none;
}


/* header / navbar */
.tm-header {
	height: 80px;
	padding-top: 30px;
    padding-bottom: 60px;
	display: flex;
    justify-content: center;
}

.tm-header .uk-container {
	/*
    position: fixed;
	z-index: 1;
	left: 0;
    right: 0;
	*/
}

.uk-navbar-right {
	position: fixed;
    right: 20px;
    top: 30px;
	z-index: 3;
}


.uk-navbar-right > ul.uk-navbar-nav {
	display: none !important;
	opacity: 0 !important;
	height: 0 !important;
}

.navbar-download-btn > a {
	background: #98DD05;
	width: 335px;
	font-size: var(--font-size-big);
	text-align: center;
	display: flex;
    justify-content: center;
    align-items: center;
	padding: 2.3px 5px;
    border-radius: 29px;
	transition: var(--transition);
}

.navbar-download-btn > a:hover {
	background: var(--primary-color) !important;
	color: var(--main-bg) !important;
}

a.uk-logo {
	position: relative;
}

/*
a.uk-logo:after {
	display: none;
    content: "";
    z-index: 11111;
    position: fixed;
    background-repeat: no-repeat;
    background-position: initial;
    width: 103px;
    height: 100px;
    background-size: contain;
    background-image: url("/u-net-neu/images/u-net/u-net-logo-fixed.svg");
	top: 52px;
    left: 20px;
}
*/

#module-118 {
	position: absolute;
    top: 0;
    left: -14px;
    display: flex;
    align-items: center;
}

.fixed-logo img {
    position: fixed;
    height: 49px;
    top: 52px;
}

.uk-navbar img {
	z-index: 2;
    transition: var(--transition);
}

.uk-navbar-right > .uk-navbar-item:nth-child(3) {
	display: none;
}

.mobile-menu-btn {
	cursor: pointer;
	display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--accent-color);
}

.mobile-menu-btn > svg {
    width: 29px;
}

.mobile-menu-container {
    background: var(--accent-color);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 3;
	width: 100%;
    max-width: 360px;
    height: 100%;
    max-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-menu-inner > .uk-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.mobile-menu-inner > .uk-grid .el-item a {
    font-size: 24px;
    text-transform: uppercase;
    color: #ffffff !important;
    line-height: normal;
    margin-bottom: 28px;
    margin-top: 26px;
}

.mobile-menu-close-btn {
	cursor: pointer;
    position: absolute;
    right: 28px;
    top: 39px;
}

.mobile-menu-close-btn svg path {
	stroke: white !important;
	stroke-width: 1.3px;
}

.mobile-menu-closed {
	display: none;
}


/* side-scroll-menu */
.side-scroll-menu {
    position: fixed;
	right: -204px;
    top: 50%;
	z-index: 1;
    transform: rotate(-90deg);
}

.side-scroll-menu-inner .el-item {
	margin-right: 25px;
    margin-left: 25px;
	line-height: 1.9;
	text-transform: uppercase;
	font-size: var(--font-size-default);
	color: var(--primary-color);
}


/* background-section */
.mobile-header-background-image {
	display: none;
}

.header-background-section > .uk-container {
    max-width: 1925px;
	padding: 0;
}


/* header-text-section */
.header-text-section {
    position: absolute;
    top: 170px;
    width: 100%;
    background: transparent;
}

.header-text-section > .uk-container {
	max-width: 1255px;
}

.header-text-top {
	font-size: 42px;
	line-height: 57px;
	letter-spacing: 2.5px;
	max-width: 530px;
	margin-bottom: 115px !important;
}

.header-text-bottom {
	font-size: var(--font-size-big);
	line-height: 37.5px;
	max-width: 560px;
	margin-left: auto;
}


/* divider */
.main-divider-section > .uk-container {
	margin: 105px 0;
}

.main-divider-section > .uk-container {
	max-width: 100vw;
	padding: 0;
}

.main-divider-outer {
    height: 1px;
    width: 100%;
    background: var(--primary-color);
}

.footer-divider-outer {
	left: 0;
	height: 2px;
    width: 100vw;
    position: absolute;
	background: var(--primary-color);
}


/* leistungen */
.leistungen-row-top {
	margin-bottom: 80px;
}

.leistungen-text-item {
	display: none;
}

.main-headline {
	font-size: var(--font-size-small);
	line-height: 27px;
	margin-bottom: 90px !important;
}

.sub-headline {
	font-size: var(--font-size-xlarge);
	line-height: 68px;
	letter-spacing: 1.8px;
}

.leistungen-text-content {
	font-size: var(--font-size-small);
	line-height: 27px;
}

.leistungen-row-bottom > .uk-width-1-1 {
    display: flex;
    justify-content: space-between;
}

.leistungen-switcher-btn {
    position: relative;
    cursor: pointer;
    display: inline-block;
	transition: 0.25s ease-in-out;
    width: 100%;
    max-width: 195px;
	height: 66px;
	line-height: 37.5px;
	text-align: center;
	font-size: var(--font-size-big);
	color: var(--light-color) !important;
}

.leistungen-switcher-btn:before,
.leistungen-switcher-btn:after {
    content: "";
    display: block;
    transition: 0.25s ease-in-out;
	border-radius: 50px;
	height: 24px;
	bottom: 0;
	position: absolute;   
	transform: scaleX(1) scaleY(1);
}

.leistungen-switcher-btn:before {
	z-index: 1;
	width: 100%;
	background: var(--darker-bg);
}

.leistungen-switcher-btn:after {
	z-index: 2;
	width: 0%;
	opacity: 0;
	background: var(--accent-color);
}

.leistungen-switcher-btn:hover:after,
.leistungen-switcher-btn.switcher-active:after {
	opacity: 1;
	width: 100%;

}

.leistungen-switcher-btn:hover,
.leistungen-switcher-btn.switcher-active {
	color: var(--primary-color) !important;
}

.leistungen-switcher-svg > svg #buttons > g {
	cursor: pointer;
}



.svg-animate {
	transition: var(--transition);
}

path.svg-animate {
	transition: 0.3s;
}

.leistungen-switcher-svg > svg #buttons > g:hover .svg-animate {
	transform: translateY(-6.2px);
}

@media only screen and (max-width: 959px) {
	.random-shake-animation {
		animation: shake 0.30s;
	}
}


@keyframes shake {
	0% { transform: translateX(0) }
	25% { transform: translateX(5px) }
	50% { transform: translateX(-5px) }
	75% { transform: translateX(5px) }
	100% { transform: translateX(0) }
}


/* unternehmen / team */
.large-font-text {
	font-size: var(--font-size-xlarge);
	line-height: 72.6px;
	letter-spacing: 1.2px;
}

.unternehmen-row-text {
    margin-bottom: 195px !important;
}

.unternehmen-row-team-headline {
    margin-bottom: 115px !important;
}

.team-section {
	margin-bottom: 144px !important;
}

.team-section > .uk-container {
    display: flex;
    justify-content: space-between;
	max-width: var(--small-content-width);
	margin-left: auto;
	margin-right: auto;
}

.team-item {
	height: 363px;
    width: 248px;
	border-radius: 200px;
    overflow: hidden;
}

.team-item:nth-child(odd) {
	margin-top: 70px !important;
}

.team-hover-container {
	position: absolute;
	bottom: 0;
	left: 0;
	background: #053EDDCC;
	width: 100%;
	height: 100%;
	transition: var(--transition);
	opacity: 0;
}

.team-hover-container:hover {
	opacity: 1;
}

.team-hover-container .uk-grid {
    position: absolute;
    bottom: 46px;
    left: 40px;
}

.team-hover-text-position,
.team-hover-text-name {
	color: #ffffff !important;
	line-height: 23px;
	margin-top: 9px !important;
	cursor: default;
}

.team-hover-text-position {
	font-size: var(--font-size-small);
}

.team-hover-text-name {
	font-size: var(--font-size-default);
}

.adresse-text {
	font-size: var(--font-size-large);
	line-height: 56.5px;
	letter-spacing: 1.5px;
}

.team-only-mobile {
	display: none;
}


/* partner */
.partner-logos-grid > .uk-grid {
	width: 100%;
}

.partner-logos-grid .el-item > a {
	overflow: unset !important;
	filter: grayscale(1);
	transition: var(--transition);
}

.partner-logos-grid .el-item > a:hover {
	filter: grayscale(0);
}

.partner-logos-grid .el-item > a:after {
	transform: unset !important;
	border-bottom: unset !important;
}

.partner-logos-grid .el-item > a:hover:after {
	transform: unset !important;
	border-bottom: unset !important;
}


/* footer */
.footer-section {
	margin-top: 158px !important;
}

.footer-divider-row {
	margin-bottom: 0 !important;
}

.footer-image-row {
	margin-bottom: 130px !important;
}

.footer-bottom-row {
    margin-top: 88px !important;
    margin-bottom: 32px !important;
}

.footer-image-row {
	display: none;
}

.footer-adresse-text {
	font-size: var(--font-size-small);
	line-height: 27px 
}

.footer-column-links {
    display: flex;
    align-items: flex-end;
	width: 100%;
    max-width: 625px;
}

.social-link {
	margin-right: 30px;
}

.footer-column-links > div {
	width: 100%;
}

.footer-row-system-links > div {
    display: flex;
    justify-content: space-between;
}

.footer-system-links-container {
	display: flex;
	align-items: flex-end;
}

.social-icons-container {
	display: flex;
	align-items: flex-end;
}

.scroll-top-arrow {
	cursor: pointer;
	margin-left: 41px;
}

.footer-system-links {
	text-align: end;
    display: flex;
    flex-direction: column;
	align-items: flex-end;
}

.system-link {
	font-size: var(--font-size-small);
	line-height: 27px;
	margin-top: 6px;
}

.uk-modal-container p, 
.uk-modal-container td {
    font-size: var(--font-size-small);
}

.uk-modal-dialog .uk-close {
    color: var(--primary-color);
}

.uk-modal-dialog .uk-close svg {
    height: 22px;
    width: 22px;
}


/* mobile */
.tm-header.uk-visible\@m {
	display: block !important;
}

.tm-header-mobile {
	display: none !important;
}

@media only screen and (max-width: 1929px) {
	.header-text-top {
		font-size: 39px;
		line-height: 56px;
		max-width: 610px;
		margin-left: 8%;
		margin-bottom: 155px !important;
	}

	.header-text-bottom {
		font-size: 25px;
		line-height: 37.5px;
		max-width: 510px;
		margin-left: auto;
		margin-right: 4%;
	}
}

@media only screen and (max-width: 1745px) {
	.leistungen-switcher-btn {
		margin-right: 10px;
		margin-left: 10px;
	}
}

@media only screen and (max-width: 1529px) {
	.header-text-top {
		font-size: 36px;
		line-height: 52px;
		max-width: 515px;
		margin-left: 12%;
	}
	
	.header-text-bottom {
		font-size: 23px;
		line-height: 37.5px;
		max-width: 420px;
		margin-left: auto;
		margin-right: 12%;
	}
}

@media only screen and (max-width: 1365px) {
	.team-hover-container .uk-grid {
		bottom: 50px;
		left: 34px;
	}
	.team-item {
		height: 303px;
		width: 248px;
		margin-left: 8px;
		margin-right: 8px;
	}

	.leistungen-row-bottom > .uk-width-1-1 {
		flex-wrap: wrap;
	}

	.leistungen-switcher-btn {
		max-width: initial;
		width: 23.5%;
		margin-top: 65px;
		margin-right: 0;
		margin-left: 0;
	}

	.leistungen-row-top {
		margin-bottom: 30px;
	}
}

@media only screen and (max-width: 1339px) {
	.header-background-section  {
		display: none;
	}

	.mobile-header-background-image {
		display: block;
		margin-bottom: 45px !important;
	}

	.header-text-section {
		position: relative;
		top: initial;
	}

	.header-text-top {
		font-size: var(--font-size-large);
		line-height: 59px;
		max-width: 530px;
		margin-left: 0;
		margin-bottom: 60px !important;
	}

	.header-text-bottom {
		font-size: var(--font-size-big);
		line-height: 41.5px;
		max-width: 470px;
		margin-left: auto;
		margin-right: 0;
	}

	.footer-column-links {
		max-width: 445px;
	}
}

@media only screen and (max-width: 1169px) {
	.team-section > .uk-container {
		flex-wrap: wrap;
		max-width: 920px;
		justify-content: center;
	}

	.team-item,
	.team-item:nth-child(odd) {
		height: 363px;
		width: 268px;
		margin-left: 15px;
		margin-right: 15px;
		margin-top: 20px !important;
	}

	.team-hover-container .uk-grid {
		position: absolute;
		bottom: 52px;
		left: 55px;
	}
}

@media only screen and (min-width: 960px) {
	a.uk-logo:after {
		left: 40px;
	}

	.uk-navbar-right {
		right: 40px;
	}
}

@media only screen and (max-width: 959px) {
	:root {
		--font-size-big: 26px;
		--font-size-large: 32px;
		--font-size-xlarge: 38px;
	}

	.leistungen-column-text  {
		min-height: 280px;
	}

	.header-text-top {
		line-height: 45px;
	}

	.footer-column-adresse {
		width: 50%;
		max-width: 220px;
	}

	.footer-column-links {
		width: 50%;
		max-width: 100%;
	}

	.large-font-text {
		font-size: var(--font-size-middle);
		line-height: 36px;
		letter-spacing: 1px;
	}

	.adresse-column:nth-child(2) {
		margin-top: 18px !important;
	}

	.sub-headline {
		font-size: 30px;
		letter-spacing: 1.1px;
	}

	.team-section {
		margin-bottom: 98px !important;
	}

	.adresse-text {
		line-height: normal;
		letter-spacing: 1.5px;
		font-size: 24px;
		letter-spacing: 1.1px;	
	}
	
	.main-divider-section > .uk-container {
		margin-top: 110px;
		margin-bottom: 68px;
	}

	.main-headline {
		margin-bottom: 56px !important;
	}

	.unternehmen-row-team-headline {
		margin-bottom: 30px !important;
	}

	.unternehmen-row-text {
		margin-bottom: 95px !important;
	}

	.leistungen-column-image {
		display: flex;
		justify-content: end;
	}

	.leistungen-row-bottom {
		display: none;
	}

	.footer-row-system-links > div {
		display: flex;
		justify-content: end;
	}

	.team-only-desktop {
		display: none;
	}

	.team-only-mobile {
		display: flex;
	}

	.team-section > .uk-container {
		justify-content: space-between;
	}

	.team-item {
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-top: 24px !important;
		width: 31% !important;
	}

	.team-item.team-only-mobile {
		width: 48% !important;
		height: 520px;
	}	

	.team-only-mobile .team-hover-container .uk-grid {
		bottom: 72px;
		left: 75px;
	}

	.uk-navbar-right > .uk-navbar-item:nth-child(2) {
		display: none;
	}

	.uk-navbar-right > .uk-navbar-item:nth-child(3) {
		display: block;
	}

	.side-scroll-menu {
		display: none;
	}

	.leistungen-column-image {
		margin-top: 20px !important;
	}
}

@media only screen and (max-width: 767px) {
	.navbar-download-btn > a {
		font-size: 25px;
		width: 245px;
	}

	.team-hover-container .uk-grid {
		position: absolute;
		bottom: 47px;
		left: 25px;
	}

	.team-item, 
	.team-item:nth-child(odd) {
		margin-top: 16px !important;
		width: 31.6% !important;
		height: 323px;
	}

	.team-item.team-only-mobile {
		width: 48.5% !important;
		height: 440px;
	}
}

@media only screen and (max-width: 699px) {
	.leistungen-switcher-btn {
		width: 31%;
		margin-top: 52px;
	}

	.leistungen-row-bottom > .uk-width-1-1 {
		justify-content: space-around;
	}
}

@media only screen and (max-width: 659px) {
	.team-section > .uk-container {
		justify-content: space-around;
	}

	.team-item.team-only-mobile,
	.team-item, 
	.team-item:nth-child(odd) {
		width: 46.5% !important;
		height: 372px;
	}

	.team-only-mobile .team-hover-container .uk-grid,
	.team-hover-container .uk-grid {
		bottom: 52px;
		left: 48px;
	}
}

@media only screen and (max-width: 599px) {
	.social-icons-container {
		margin-bottom: 20px;
	}

	.footer-row-system-links > div {
		justify-content: flex-end;
		flex-direction: column;
		align-items: end;
	}

	.scroll-top-arrow {
		margin-left: 20px;
	}

	.social-link:nth-child(2) {
		margin-right: 0;
	}

	.team-item.team-only-mobile, .team-item, .team-item:nth-child(odd) {
		height: 340px;
	}

	.team-hover-text-position {
		font-size: 17px;
	}

	.team-hover-text-name {
		font-size: 21px;
	}
}

@media only screen and (min-width: 580px) and (max-width: 639px) {
	a.uk-logo:after {
		left: 15px;
	}   
}

@media only screen and (max-width: 579px) {
	#module-118 {
		left: -22px;
	}
	
	.fixed-logo img {
		height: 41px;
		top: 55px;
	}

	a.uk-logo:after {
		width: 87px;
		top: 55px;
		left: 14px;
	}

	.header-text-top {
		line-height: 42px;
		font-size: 35px;
	}
	
	.navbar-download-btn > a {
		font-size: 20px;
		width: 165px;
		margin-left: 26px;
	}

	.uk-navbar img {
		max-width: 170px;
	}

	.team-item.team-only-mobile, .team-item, .team-item:nth-child(odd) {
		height: 460px;
		width: 100% !important;
		max-width: 340px;
	}

	.team-only-mobile .team-hover-container .uk-grid, .team-hover-container .uk-grid {
		bottom: 78px;
		left: 73px;
	}
}

@media only screen and (max-width: 539px) {
	.leistungen-switcher-btn {
		width: 48%;
	}

	.leistungen-row-bottom > .uk-width-1-1 {
		justify-content: space-between;
	}
}