@font-face{
    font-family:'Din';
    src: url('/fonts/DINWebPro-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face{
    font-family:'Din';
    src: url('/fonts/DINWebPro.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face{
    font-family:'Din';
    src: url('/fonts/DINWebPro-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}
@font-face{
    font-family:'Din';
    src: url('/fonts/DINWebPro-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
body{
    font-family:'Din';
	color:#464646;
	font-size:16px;
	line-height:1.4;
}
h1{
	font-size:262%;
	font-weight:300;
	line-height:1;
	margin:0 0 1em;
}
h2{
	font-size:200%;
	font-weight:300;
	line-height:1;
	margin:0 0 1em;
	padding-bottom:.5em;
	border-bottom:solid 1px #808080;
}
a{
	color:#464646;
}
p{
	margin:0;
}
img{
	max-width:100%;
}
th, td{
	text-align:left;
}
icon{
	display:inline-block;
}
svg{
	display:inline-block;
}
.bread-crumb{
	display:inline-block;
	margin-left:20px;
	padding-left:18px;
	border-left:solid 1px #D20000;
	color:#979797;
}
.back{
	position:relative;
	padding-left:15px;
	text-transform:uppercase;
	font-size:75%;
	text-decoration:none;
}
.back:hover{
	opacity:.8;
}
	.back::before{
		content:"";
		position:absolute;
		top:50%;
		left:0;
		margin-top:-4px;
		width:4px;
		height:4px;
		border-top:solid 2px #464646;
		border-left:solid 2px #464646;
		transform:rotate(-45deg);
	}
.read-more{
	position:relative;
	padding-left:15px;
	text-transform:uppercase;
	font-size:80%;
	text-decoration:underline;
	letter-spacing:.5px;
	font-weight:400;
	color:#464646;
}
.read-more:hover{
	color:#D20000;
}
	.read-more::before{
		content:"";
		position:absolute;
		top:50%;
		left:0;
		margin-top:-4px;
		width:4px;
		height:4px;
		border-top:solid 2px #D20000;
		border-right:solid 2px #D20000;
		transform:rotate(45deg);
	}
.reference-label{
	display:inline-block;
	padding:5px 15px 3px;
	font-size:75%;
	background:#D20000;
	color:#FFF;
	text-transform:uppercase;
	letter-spacing: 4px;
	font-weight:normal;
	line-height:1.3;
}
.social{
	margin-top:20px;
}
	.social a{
		float:left;
		margin-right:5px;
		padding:7px;
	}
		.social a icon{
			display:block;
		}
			.social a svg{
				display:block;
				width:20px;
				height:20px;
				fill:#464646;
			}
.pure-g{
	margin-top:-15px;
	margin-left:-15px;
	width:calc(100% + 30px);
}
	.pure-g > *{
		padding:15px 15px 0;
		box-sizing:border-box;
	}
.container{
	width:100%;
	overflow:hidden;
}
.center{
    margin:0 auto;
    max-width: 1380px;
    padding: 0 20px;
    box-sizing: border-box;
}
.reference-locator-map-container{
	position:relative;
	z-index:1;
}
	.reference-locator-map{
		position:relative;
		height:500px;
		z-index:1;
	}
		.reference-locator-infowindow{
			position:absolute;
			top:0;
			left:0;
			max-width:80vw;
			background:#FFF;
			font-size:14px;
			margin-top:-42px;
			transform:translate(-50%, -100%);
			box-shadow:2px 2px 2px rgba(0,0,0,.1);
		}
		.reference-locator-map-infowindow-overlay{
			position:absolute;
			top:0;
			left:0;
			width:100%;
			height:100%;
			background:rgba(0, 255, 0);
		}
			.reference-locator-infowindow::before{
				content:"";
				position:absolute;
				top:100%;
				left:50%;
				margin-top:-10px;
				margin-left:-10px;
				width:20px;
				height:20px;
				background:#FFF;
				box-shadow:2px 0 2px rgba(0,0,0,.1);
				transform:rotate(45deg);
			}
			.reference-locator-infowindow img{
				display:block;
				width:100%;
			}
			.reference-locator-infowindow-content{
				position:relative;
				padding:45px 20px 20px;
				min-width:250px;
				min-height:100%;
				background:#FFF;
				box-sizing:border-box;
				-webkit-align-self: stretch;
				-ms-flex-item-align: stretch;
				align-self: stretch;
				z-index:2;
			}
				.reference-locator-infowindow-content b{
					display:block;
					margin-bottom:1em;
					font-weight:300;
					font-size:137.5%;
				}
				.reference-locator-infowindow-content .reference-label{
					position:absolute;
					top:0;
					right:0;
				}
	.reference-locator-map-lock{
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		display:none; /* off */
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background:rgba(0,0,0,.1);
		text-align:center;
		color:#FFF;
		font-size:150%;
		text-shadow:2px 2px 2px rgba(0,0,0,.5);
		-webkit-justify-content:center;
		-ms-flex-pack:center;
		justify-content:center;
		-webkit-align-items:center;
		-ms-flex-align:center;
		align-items:center;
		cursor:pointer;
		z-index:2;
	}
	.reference-locator-map-container:hover .reference-locator-map-lock{
		background:rgba(0,0,0,.3);
	}
		.reference-locator-map-lock-text{
			display:none;
			-webkit-align-self:center;
			-ms-flex-item-align:center;
			align-self:center;
		}
		.reference-locator-map-container:hover .reference-locator-map-lock-text{
			display:block;
		}
.reference-locator-filter-form{
	position:relative;
	margin:20px 0;
	box-shadow: 2px 2px 5px 0 rgba(0,0,0,0.2);
	background:#FFF;
	z-index:2;
}
	.reference-locator-filter-form > b{
		display:block;
		padding:22px 20px 18px;
		background:#D20000;
		color:#FFF;
		font-size:125%;
	}
		.reference-locator-enable-disable-mouse{
			display:none; /* off */
			position:absolute;
			top:20px;
			right:30px;
			width:30px;
			fill:#FFF;
		}
		.reference-locator-enable-disable-mouse[disabled]{
			opacity:.5;
		}
		.reference-locator-enable-disable-mouse[disabled]::after{
			content:"";
			position:absolute;
			top:0px;
			left:18px;
			width:3px;
			height:90%;
			background:rgba(255,255,255,.8);
			box-shadow:2px 2px 2px rgba(0,0,0,.2);
			transform:rotate(45deg);
			
		}
	.reference-locator-filters{
		padding:20px;
		line-height:44px;
		overflow:hidden;
	}
		.reference-locator-filter{
			margin-bottom:15px;
			color:#282828;
			overflow:hidden;
		}
			.reference-locator-filter b{
				float:left;
				margin-right:30px;
			}
			.reference-locator-filter label{
				float:right;
				position:relative;
				width:250px;
				max-width:100%;
				height:100%;
				min-height:25px;
				background:#F4F4F4;
				border-radius:24px;
				cursor:pointer;
			}
				.reference-locator-filter label select{
					position:relative;
					width:100%;
					height:100%;
					border:0;
					padding:0 50px 0 20px;
					background:transparent;
					z-index:3;
					cursor:pointer;
					-webkit-appearance: none;
					-moz-appearance: none;
				}
				.reference-locator-filter label select::-ms-expand {
					display: none;
				}
				.reference-locator-filter label select:focus{
					outline: none;
				}
				.reference-locator-filter label::before{
					content:"";
					position:absolute;
					top:50%;
					right:17px;
					width:6px;
					height:6px;
					border-right:solid 2px #D20000;
					border-bottom:solid 2px #D20000;
					transform:rotate(45deg) translate(-50%, -50%);
					z-index:2;
				}
				.reference-locator-filter label::after{
					content:"";
					position:absolute;
					top:0;
					right:0;
					width:38px;
					height:100%;
					border-left:solid 1px #E2E2E2;
					border-top-right-radius:inherit;
					border-bottom-right-radius:inherit;
					background:#F4F4F4;
				}
		.reference-locator-filters button{
			float:right;
			padding:0 42px;
			min-height:30px;
			background:#D20000;
			border-radius:2px;
			border:0;
			color:#FFF;
			font-size:75%;
			text-transform:uppercase;
		}
		.reference-locator-filters button:hover{
			background:#F00000;
		}
			.reference-locator-filters button::before{
				content:"";
				display:inline-block;
				position:relative;
				top:-2px;
				margin-right:3px;
				width:3px;
				height:3px;
				border-right:solid 2px #FFF;
				border-bottom:solid 2px #FFF;
				transform:rotate(-45deg) translate(-50%, -50%);
				z-index:2;
			}
.reference{
	display:block;
	position:relative;
	height:100%;
	border-bottom:solid 50px transparent;
	box-sizing:border-box;
	color:#000;
	font-weight:300;
	text-decoration:none;
}
	.reference .reference-label{
		position:absolute;
		top:0;
		left:0;
		z-index:2;
	}
	.reference img{
		display:block;
		width:100%;
	}
	.reference b{
		display:block;
		width:100%;
		padding:50px 20px 0;
		font-weight:300;
		font-size:137.5%;
	}
	.reference-image{
		display:block;
		position:relative;
	}
		.reference-image b{
			position:absolute;
			left:0;
			bottom:0;
			padding:15px 20px;
			background:rgba(255,2552,255,.8);
			box-sizing:border-box;
		}
	.reference-description{
		display:block;
		padding:15px 20px 0;
		font-weight:400;
	}
	.reference .read-more{
		position:absolute;
		bottom:-30px;
		left:20px;
	}
.reference-details-top{
	padding:25px 0;
}
.reference-details-image{
	position:relative;
	margin-bottom:20px;
}
	.reference-details-image img{
		width:100%;
	}
	.reference-details-image .reference-label{
		position:absolute;
		top:0;
		left:0;
	}
.reference-details-table{
	width:100%;
}
	.reference-details-table tr + tr > *{
		padding-top:.5em;
	}
	.reference-details-table tr + tr > *:nth-child(1){
		width:40%;
	}
.reference-details-info{
	padding:20px;
	background:#D20000;
	color:#FFF;
}
.reference-details-contact-person{
	margin-top:20px;
	padding:20px;
	background:#F4F4F4;
}
.reference-details-other{
	margin-top:100px;
	padding:50px 0;
	background:#F4F4F4;
}
	.reference-details-other h1{
		font-weight:normal;
		text-align:center;
	}
.reference-details-other .pure-u-1:nth-child(3){
	display:none;
}
@media screen and (max-width:64em){
	table, tbody, tr, th, td{
		display:block;
	}
	.reference-details-table tr + tr{
		padding-top:5px;
	}
		.reference-details-table tr + tr > *{
			padding:0;
		}
		.reference-details-table tr + tr > *:nth-child(1){
			width:auto;
		}
}
@media screen and (min-width:35.5em){
	.center{
		padding: 0 40px;
	}
	.social{
		margin-top:40px;
	}
	.reference-locator-infowindow{
		display: -ms-inline-flexbox;
		display: -webkit-inline-flex;
		display: inline-flex;
		-ms-flex-pack: start;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
		.reference-locator-infowindow img{
			width:200px;
		}
	.reference-locator-filter{
		float:left;
		width:48%;
	}
	.reference-locator-filter + .reference-locator-filter{
		margin-left:4%;
	}
	.reference-locator-filter b{
		float:none;
		display:block;
	}
	.reference-locator-filter label{
		float:none;
		display:block;
	}
	.reference-details-image{
		margin-bottom:40px;
	}
	.reference-details-info{
		padding:40px;
	}
	.reference-details-contact-person{
		margin-top:40px;
		padding:40px;
	}
}
@media screen and (min-width:64em){
	.reference-locator-filter-form{
		margin:-73px 0 30px;
	}
	.reference-locator-filter-form > b{
		padding:22px 80px 18px;
		font-size:150%;
	}
	.reference-locator-filters{
		padding:40px;
		height:44px;
		line-height:44px;
	}
	.reference-locator-filter{
		float:left;
		width:auto;
		height:100%;
		margin-bottom:0;
	}
		.reference-locator-filter b {
			float: left;
		}
	.reference-locator-filter + .reference-locator-filter{
		margin-left:20px;
	}
	.reference-locator-filter label{
		float:left;
	}
	.reference-details-other .pure-u-1:nth-child(3){
		display:block;
	}
}
@media screen and (min-width:80em){
	.reference-locator-filter + .reference-locator-filter{
		margin-left:110px;
	}
}
@media all and (-ms-high-contrast:none){
	.reference-locator-infowindow{
		display:block;
	}
}