@charset "utf-8";
/* CSS Document */


/* BACKGROUNDS & COLORS */



.bg-rot {
	background-color: #ab0061;
}

	.cl-rot {
		color: #ab0061;
	}

	
.bg-dunkelblau {
	background-color: #0c2e44;
	color: #fff !important;
}

	.cl-dunkelblau {
		color: #0c2e44;
	}


.bg-himmelblau {
	background-color: #56c3e5;
}

	.cl-himmelblau {
		color: #56c3e5;
	}


.bg-gelb {
	background-color: #dcdf55;
}

	.cl-gelb {
		color: #dcdf55;
	}


.bg-dunkelblau2 {
	background-color: #2b4457;
	color: #fff !important;
}

	.cl-dunkelblau2 {
		color: #2b4457;
	}


.bg-grau {
	background-color: #f4f5f6;
}

	.cl-grau {
		color: #f4f5f6;
	}


.bg-grau-rotate {
	background-color: #f4f5f6;
	overflow: hidden;
	position: relative;
}

	.bg-grau-rotate:after {
		content:"";
		background-color: #fff;
		bottom: -30%;
		padding: 300px 1500px;
		left: -150%;
		position: absolute;
		transform: rotate(20deg);
	}






/* BUTTONS */

.btn {
	padding: 10px 30px;
	text-transform: uppercase;
	display: inline-block;
	font-weight: 500;
	margin-top: 15px;
	text-decoration: none;
}

	.btn:hover {
		cursor: pointer;
		text-decoration: none;
	}

	.btn-blau {
		background-color: #0c2e44;
		color: #fff !important;
	}

		.btn-blau:hover {
			background-color: #ab0061;
			text-decoration: none;
		}


	.btn-himmelblau {
		background-color: #56c3e5;
		color: #fff;
	}

		.btn-himmelblau:hover {
			background-color: #ab0061;
			text-decoration: none;
		}





/* POP-UP FENSTER */

	.popup {
		box-shadow: 0 0 20px 10px rgba(0,0,0,0.2);
		margin-top: 100px;
		margin-bottom: 100px;
	}




.popup .close {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 30px;
  font-weight: bold;
  text-decoration: none !important;
  color: #0c2e44;
	background: #fff;
	border-radius: 100%;
	width: 40px;
	height: 40px;
}

	.popup .close:hover {
	  color: #d3d8db;
	}


.overlay {
  position: fixed;
	overflow: scroll;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.7);
  transition: opacity 500ms;
  visibility: hidden;
  opacity: 0;
  z-index: 100;
}

	.overlay:target {
	  visibility: visible;
	  opacity: 1;
	}




/* HEADER */

header {}

.page-header {
	display: flex;
	flex-direction: row;
	align-items: center;
	height: 120px;
}

.logo-demetec {
	background: url("/App_Themes/Demetec/img/logo_demetec.svg") center no-repeat;
	background-size: contain;
	width: 300px;
	padding: 15px 0;
}

	.logo-demetec img {
		max-width: 300px;
	}

.search-box {
	width: 100%;
	text-align: right;
}

	.search-box label {
		display: none;
	}


.search-box input {
	border: 1px solid rgba(12,46,68,0.5);
	padding: 4px;
}

.search-box .btn {
	background: #0c2e44;
	color: #fff;
	border: none;
	padding: 5px;
	margin-right: 15px;
}

	.search-box .btn:hover {
		cursor: pointer;
	}



.language {
	display: block;
	margin: 0;
	text-align: right;
}

	.language ul {
		margin: 0;
		padding: 0;
		list-style: none;
		display: block;
	}

		.language ul li {
			display: inline-block;
			margin: 0 0 0 20px;
			border-radius: 100%;
			width: 25px;
			height: 25px;
			text-align:center;
			border: 1px solid #dae4fa;
			background-color: #91b0f1;
			text-transform: uppercase;
			font-size: 0.8em;
			font-weight: 600;
			padding-top: 2px;
		}

			.language ul li .language_nl,.language_en,.language_fr,.language_de {
				text-decoration: none;
				color: #b5caf6;
			}


			.language ul li .language_active {
				text-decoration: none;
				color: #183c86;
			}





/* NAVI */

.page-navigation {
	text-transform: uppercase;
	position: relative;
	z-index: 2;
}


	.page-navigation ul {
		list-style: none;
		margin: 0;
		padding: 0;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		width: 100%;
		font-weight: 600;
		font-size: 1.1rem;
	}

		.page-navigation ul li {
			display: inline-block;
			padding: 15px;
			width: 230px;
			text-align: center;
			background-color: rgba(255, 255, 255, 0.75);
		}

			.page-navigation ul li:hover {
				background-color: rgba(255, 255, 255, 0.95);
			}


			.page-navigation ul li a {
				text-decoration: none;
				color: #0c2e44;
				word-wrap: break-word;
			}


		.page-navigation #menuElem li{
			position: relative;
		}

		.page-navigation #menuElem li:hover ul{
			display: block;
		}



			/* SUB-MENU */


			.page-navigation #menuElem li ul {
				position: absolute;
				top: 52px;
				display: none;
				margin: 0;
				padding: 0;
				left: 0;
				width: 230px;
				font-size: 1rem;
				transform: translate(0,0);
			}

				.page-navigation #menuElem li ul li:first-child {
					display: block;
					margin-top: 2px;
			}

				.page-navigation #menuElem li ul li {
					background-color: rgba(255, 255, 255, 0.95);
					margin-top: 2px;
					display: block;
				}

				.page-navigation #menuElem li ul li:hover {
						background-color: rgba(33, 241, 253, 0.95);
				}




/* MOBILE NAVI */

.mobile-navi {
	display: none;
	position: relative;
	z-index: 2;
}

	.mobile-navi .btn {
		position: absolute;
		top: -15px;
		left: 0;
	}

	.mobile-navi .popup {
		box-shadow: none;
	}



.page-mobilenavigation {

}

	.page-mobilenavigation ul {
			list-style: none;
			margin: 0 auto;
			padding: 0;
			font-weight: 600;
			font-size: 1.1rem;
			text-align: center;
			width: 230px;
		}

			.page-mobilenavigation ul li {
				display: block;
				padding: 15px;
				text-align: center;
				background-color: rgba(255, 255, 255, 0.95);
				margin-top: 15px;
			}


				.page-mobilenavigation ul li a {
					text-decoration: none;
					color: #0c2e44;
					word-wrap: break-word;
					}



			.page-mobilenavigation #menuElem li:hover ul{
				display: block;
			}



				/* SUB-MENU */


				.page-mobilenavigation #menuElem li ul {
					display: none;
					margin: 0 0 -15px -15px;
					padding: 0;
					font-size: 1rem;
				}

					.page-mobilenavigation #menuElem li ul li:first-child {
						margin-top: 17px;
						display: block;
					}


					.page-mobilenavigation #menuElem li ul li {
						margin-top: 2px;
						display: block;
					}

					.page-mobilenavigation #menuElem li ul li:hover {
							background-color: rgba(33, 241, 253, 0.95);
					}




/* TEASER */

.page-teaser-area {
	height: 800px;
	width: auto;
	overflow: hidden;
	position: relative;
}

	.page-teaser-subarea {
		height: 400px;
		overflow: hidden;
		position: relative;
	}

.page-teaser-area #p_lt_content_pageplaceholder_p_lt_zoneMain_EditableImage_ucEditableImage_imgImage {
	min-width: 100%;
	min-height: 800px;
}

.page-teaser-subarea img {
	width: 100%;
}



	/* KONTAKT-BOX */


.teaser-kontakt {
	position: absolute;
	display: flex;
	flex-direction: column;
	background-color: #0c2e44;
	color: #fff;
	right: 0;
	top: 50%;
	transform: translate(0,-50%)
}

	.teaser-kontakt-icon {
		width: 40px;
		height: 60px;
		padding: 12px;
	}

		.teaser-kontakt:hover {
			background-color: #56c3e5;
		}

		.teaser-kontakt:hover .teaser-kontakt-box {
			display: block;
		}


.teaser-kontakt-box {
	position: absolute;
	right: 40px;
	top: 0;
	background-color: #0c2e44;
	display: none;
	padding: 30px;
	color: #fff;
	width: 240px;
}

	.teaser-kontakt-box h3 {
		color: #fff;
	}

	.teaser-kontakt-box a {
		color: #fff;
		text-decoration: none;
	}

		.teaser-kontakt-box a:hover {
			text-decoration: underline;
		}




	/* TEASER-TXT */


.teaser-text-box {
	position: relative;
}

	.teaser-text {
		position: absolute;
		top: -500px;
	}

	.subteaser-text {
		position: absolute;
		top: -250px;
		left: -150px;
	}

		.teaser-text h1 {
			font-size: 3.5rem;
			line-height: 45px;
		}

		.teaser-text h2 {
			font-size: 2rem;
			line-height: 30px;
		}

			.subteaser-text h1 {
				font-size: 3.5rem;
				line-height: 45px;
			}

			.subteaser-text h2 {
				font-size: 2rem;
				line-height: 30px;
			}





/* CONTENT */

.page-content-area {}

	.page-content {
		padding: 60px 30px;
	}


/* BREADCRUMBS */

.breadcrumbs {
	text-transform: uppercase;
	color: #0c2e44;
	font-weight: 700;
	padding: 30px 30px 0 30px;
}

	.breadcrumbs a {
		text-decoration: none;
		color: #0c2e44;
	}






/* HOME */

	/* USPS */

.col-box {
	padding: 10px;
	margin-bottom: 30px;
}



.usp-img {
	overflow: hidden;
	margin-bottom: 5px;
	background-color: rgba(12,46,68,0.95);
	position: relative;
}

	.usp-img img {
		max-width: 300px;
		left: 50%;
		transform: translate(-5%,0);
	}

		.usp-img:hover img {
			opacity: 0.2;
		}


.usp-detail {
	position: absolute;
	top: 15px;
	left: 15px;
	color: #fff;
	width: 238px;
}

	.usp-detail p:first-child {
		font-weight: 600;
		font-size: 110%;
	}

.usp-txt {
	text-align: center;
	height: 80px;
	width: 268px;
	display: table-cell;
	vertical-align: middle;
	padding: 0 15px;
}

	.usp-txt a {
		text-transform: uppercase;
		color: #fff;
		text-decoration: none;
	}

		.usp-txt a p {
			font-weight: 600;
		}

	.usp-txt:hover a {
		font-size: 110%;
	}






	/* PRODUCTS */

.product-img {
	margin-bottom: 15px;
}

.title {
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 10px;
}

.txt {
	text-align: center;
}

	.txt p {
		text-align: left;
	}

	.txt span {
		color: #56c3e5;
		text-transform: uppercase;
		font-weight: 600;
	}




	/* NEWS */

.img-news {
	overflow: hidden;
}

.box-news {
	background-color: #fff;
	padding: 30px;
}



	/* MITARBEITER */



.img-mitarbeiter {
	overflow: hidden;
	max-height: 300px;
}

	.img-mitarbeiter img {
		left: 50%;
		max-width: 135%;
		width: 100%;
	}

		.projekte .img-mitarbeiter img {
			transform: translate(-13%,0);
		}



.box-quote {
	padding: 30px;
	position: relative;
	text-transform: uppercase;
}

	.box-quote:after {
		content: "";
		width: 30px;
		height: 30px;
		position: absolute;
		top: -15px;
		left: 10%;
		transform: rotate(45deg);
		background-color: #dcdf55;
	}

		.box-quote .title {
			margin-top: -10px;
		}



.quote {
	font-weight: 900;
	font-size: 2rem;
	line-height: 30px;
}

	.flex-top .flex-changer:nth-child(odd) {
		flex-direction: column-reverse;
	}

		.flex-top .flex-changer:nth-child(odd) .box-quote {
			background-color: #0c2e44;
			color: #fff;
		}

		.flex-top .flex-changer:nth-child(odd) .box-quote:after {
			content: "";
			width: 30px;
			height: 30px;
			position: absolute;
			bottom: -15px;
			left: 10%;
			transform: rotate(45deg);
			background-color: #0c2e44;
		}





/* FOOTER */


footer {
	color: #fff;
}

	footer h3 {
		color: #fff;
	}

	footer a {
		color: #fff;
		text-decoration: none;
	}

		footer a:hover {
				text-decoration: underline;
			}

footer .footer-socials {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-top: 15px;
}

	footer .footer-socials li{
		display: inline-block;
		height: 20px;
		width: 20px;
		margin-right: 10px;
	}

		footer .footer-socials li img{
			width: 100%;
			filter: brightness(0) invert(1);
		}

			footer .footer-socials li:hover img{
				filter: none;
				cursor: pointer;
			}




.footer {
	background-color: #dee4e8;
	color: #0c2e44;
}

	.footer .page-content {
		padding: 7.5px 15px;
	}

		.footer .page-content a {
				color: #0c2e44;
				text-decoration: none;
			}

				.footer .page-content a:hover {
						text-decoration: underline;
					}



.footer .arrow-up:hover {
	cursor: pointer
}

	.footer .arrow-up img {
		width: 40px;
	}