/*
==========================================================================
   Layout
==========================================================================
*/

#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: 8px solid #4375b8;
	background: #d2cdbf url(../images/layout/header/mrt.jpg) no-repeat 50% -180px;
}

/* .home-intro #header { display: none; }  -- deaktiviert 2026-10-23, Intro-Seite ist nicht mehr Startseite */
			
#main-wrapper {
	position: absolute;
	width: 100%;
	height: 100%;
}
			
	#main-wrapper:after {
		position: absolute;
		bottom: 0;
		left: 0;
		content: ' ';
		width: 100%;
		height: 30px;
		background-color: #a7a39b;
	}
			
#main {
	position: relative;
	margin-top: 8px;
	padding: 0;
	height: auto !important;
    min-height: 100%;
}
			
.home-intro #main { margin-top: 0 !important; }
		
	#main > .row  {
		height: 100%;
		margin: 0;
	}
		
		#main .col-left {
			background-color: #fff;
		}
						
			.logo-container {
				padding: 25px 5px 5px;
				z-index: 10;
			}

				#main .col-left .logo {
					display: inline-block;
					position: relative;
					width: 100%;
					margin-bottom: 30px;
					border: 0 none;
					-webkit-transition: all 0.3s ease;
					   -moz-transition: all 0.3s ease;
						-ms-transition: all 0.3s ease;
						 -o-transition: all 0.3s ease;
							transition: all 0.3s ease;
				}

				#main .col-left .logo:hover {
					opacity: 0.85;
					-webkit-transform: scale(0.95);
					   -moz-transform: scale(0.95);
							transform: scale(0.95);
				}

				#main .col-left .phone-number {
					font-family: 'ITCFranklinGothicW01-Md_812698', 'Trebuchet MS', Arial, sans-serif;
					font-size: 24px;
				}

					#main .col-left .phone-number span {
						position: relative;
						top: -3px;
						display: inline-block;
						width: 40px;
						height: 40px;
						margin-right: 15px;
						background: url(../images/layout/icon-phone.png) no-repeat;
						background-size: contain;
						text-indent: -999em;
					}
				
			#main > .row > .col-left .contact-container {
				display: none;
				margin: 0 -15px;
				padding: 5px 30px 65px;
				background-color: #fff;
			}
				
				#main > .row > .col-left .contact-container > p:before {
					position: relative;
					display: block;
					float: left;
					top: 8px;
					content: ' ';
					width: 38px;
					height: 45px;
					margin-right: 15px;
					background-color: red;
				}
				
				#main > .row > .col-left .contact-container .address:before {
					background: url(../images/layout/icon-location.png) no-repeat;
					background-size: contain;
				}
				
				#main > .row > .col-left .contact-container .contact-methods:before {
					background: url(../images/layout/icon-phone.png) no-repeat;
					background-size: contain;
				}
		
		#main .col-right {
			padding-top: 35px;
			padding-bottom: 50px;
		}
		
		.home-intro #main > .row {
			width: 100%;
			padding-top: 25px;
			padding-bottom: 25px;
		}
		
		#main .col-tech {
			text-align: center;
			background: url(../images/layout/intro-roekotech-bg.gif) no-repeat 50% 0;
			background-size: contain;
			border-left: 18px dotted #4375b8;
		}
		
		#main .col-prax {
			text-align: center;
			background: url(../images/layout/intro-roekoprax-bg.gif) no-repeat 50% 0;
			background-size: contain;
			border-right: 18px dotted #ecc419;
		}
		
			#main .col-tech a,
			#main .col-prax a {
				position: relative;
				width: 100%;
				overflow: hidden;
				display: inline-block;
				-webkit-border-radius: 50%;
				   -moz-border-radius: 50%;
					-ms-border-radius: 50%;
					 -o-border-radius: 50%;
						border-radius: 50%;
				-webkit-transition: border 0.5s ease;
				   -moz-transition: border 0.5s ease;
					-ms-transition: border 0.5s ease;
					 -o-transition: border 0.5s ease;
						transition: border 0.5s ease;
			}
			
			#main .col-tech a {
				border: 10px solid #4375b8;
			}
			
			#main .col-prax a {
				border: 10px solid #f8ca02;
			}
		
			#main .col-tech a:hover,
			#main .col-prax a:hover { border: 10px solid #a7a39b; }
			
			#main .col-tech a .overlay,
			#main .col-prax a .overlay {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				opacity: 1;
				-webkit-border-radius: 50%;
				   -moz-border-radius: 50%;
					-ms-border-radius: 50%;
					 -o-border-radius: 50%;
						border-radius: 50%;
				-webkit-transition: all 0.5s ease;
				   -moz-transition: all 0.5s ease;
					-ms-transition: all 0.5s ease;
					 -o-transition: all 0.5s ease;
						transition: all 0.5s ease;
			}
			
			#main .col-tech a .overlay {
				background-color: #4375b8;
				background-color: rgba(67, 117, 184, 0.85);
			}
			
			#main .col-prax a .overlay {
				background-color: #f8ca02;
				background-color: rgba(248, 202, 2, 0.85);
			}
			
			#main .col-tech a:hover .overlay,
			#main .col-prax a:hover .overlay {
				opacity: 0;
			}
		
			#main .col-tech .logo-container,
			#main .col-prax .logo-container {
				position: absolute;
				top: 50%;
				left: 50%;
				display: block;
				width: 80%;
				height: 80%;
				margin: -40% 0 0 -40%;
				padding: 28% 20px;
				background-color: #f6f5f2;
				z-index: 1;
				-webkit-border-radius: 50%;
				   -moz-border-radius: 50%;
					-ms-border-radius: 50%;
					 -o-border-radius: 50%;
						border-radius: 50%;
				-webkit-transition: all 0.3s ease;
				   -moz-transition: all 0.3s ease;
					-ms-transition: all 0.3s ease;
					 -o-transition: all 0.3s ease;
						transition: all 0.3s ease;
			}
		
			#main .col-tech a:hover .logo-container,
			#main .col-prax a:hover .logo-container {
				-webkit-transform: scale(0.9);
				   -moz-transform: scale(0.9);
				        transform: scale(0.9);
			}
	
			.page-content,
			.cat-content,
			.single-content {
				position: relative;
			}

#footer {
	padding: 20px 0;
	background-color: #e1e9ec;
	-webkit-box-shadow: inset 0 5px 5px #c5dae3;
	   -moz-box-shadow: inset 0 5px 5px #c5dae3;
	        box-shadow: inset 0 5px 5px #c5dae3;
}

#bottom-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	content: ' ';
	width: 100%;
	height: 30px;
	background-color: #a7a39b;
	z-index: 15;
}

.home-intro #bottom-bar { display: none; }

	#bottom-bar .row > div {
		padding: 0;
	}

	#site-switch {
		width: 100%;
		height: 30px;
		padding: 5px 15px;
		background-color: #f5f5f5;
		
	}

		#site-switch a {
			font-family: 'ITCFranklinGothicW01-Dm_812677', 'Trebuchet MS', Arial, sans-serif;
			font-size: 22px;
			line-height: 1;
		}
	
#header > .container,
#main > .container,
#footer > .container {
	position: relative;
}


@media (max-width: 767px) {

	#header > .container > .row,
	#main > .container > .row,
	#footer > .container > .row { margin: 0; }
	
	#main .col-tech,
	#main .col-prax {
		border: none;
	}

}


@media (min-width: 400px) {

	#main .col-left .logo {
		width: 350px;
	}
	
	#main .col-left .phone-number {
		font-size: 28px;
	}

		#main .col-left .phone-number span {
			top: -6px;
			width: 50px;
			height: 50px;
		}
		
	.home-intro #main > .row {
		height: 500px;
	}
	
	#main .col-tech a,
	#main .col-prax a {
		width: 360px;
	}

}


@media (min-width: 768px) {

	#header {
		height: 280px;
	}

	#main {
		margin-top: 30px;
	}

		#main .col-left {
			background-color: rgba(255, 255, 255, 0.9);
		}
		
	.page-content,
	.cat-content,
	.single-content {
		padding: 0 10px;
	}
	
	.home-intro #main > .row {
		position: absolute;
		top: 50%;
		width: 100%;
		height: 400px;
		-webkit-transform: translateY(-50%);
		   -moz-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			 -o-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	
	#main .col-tech {
		border-left: 15px dotted #4375b8;
	}
	
	#main .col-prax {
		border-right: 15px dotted #ecc419;
	}

		#main .col-tech a,
		#main .col-prax a {
			width: 100%;
		}
		
		#main .col-tech .logo-container,
		#main .col-prax .logo-container {
			width: 70%;
			height: 70%;
			margin: -35% 0 0 -35%;
			padding: 23% 20px;
		}
		
	#main .col-tech {
		height: 100%;
		text-align: right;
	}
	
	#main .col-prax {
		height: 100%;
		text-align: left;
	}

}


@media (min-width: 992px) {

	#header {
		height: 363px;
	}

	#main {
		margin-top: 0;
	}

	#main > .row > .col-left {
		position: absolute;
		top: 0;
		bottom: 0;
	}

		#main > .row > .col-left .logo-container {
			height: 355px;
			padding-top: 65px;
		}
		
			#main .col-left .logo {
				width: 100%;
			}

		#main > .row > .col-left .contact-container {
			display: block;
			font-size: 14px;
		}
			
	#main > .row > .col-right {
		margin-left: 33.333333%;
		padding-top: 390px;
		padding-bottom: 50px;
	}
	
	.home-intro #main > .row {
		height: 510px;
	}
	
	#main .col-tech a,
	#main .col-prax a {
		
	}

}


@media (min-width: 1200px) {

	#main .col-tech {
		border-left: 18px dotted #4375b8;
	}
	
	#main .col-prax {
		border-right: 18px dotted #ecc419;
	}

	.home-intro #main > .row {
		height: 555px;
	}
	
	#main .col-tech a,
	#main .col-prax a {
		width: 490px;
	}
	
	#main .col-tech {
		background-position: 100% 0;
	}
	
	#main .col-prax {
		background-position: 0 0;
	}

}


/*
==========================================================================
   Common Content
==========================================================================
*/

/* ===== Images ===== */

#main img {
	width: auto !important;
	height: auto !important;
	max-width: 100%;
}

img.circle {
	border: 10px solid #a6a19b;
	-webkit-border-radius: 50%;
	   -moz-border-radius: 50%;
	    -ms-border-radius: 50%;
	     -o-border-radius: 50%;
	        border-radius: 50%;
}

.image-container {
	overflow: hidden;
	margin: 0 -15px 15px;
}

	.image-container > div {
		text-align: center;
		margin-bottom: 15px;
	}

		.image-container > div > a {
			position: relative;
			display: block;
		}

		.image-container > div > a:hover{
			border: 0 none;
		}

			.image-container a > img {
				margin: 0;
			}

			.image-container a > b {
				opacity: 0;
				position: absolute;
				top: -1px;
				left: -1px;
				width: 101%;
				height: 101%;
				padding: 50% 15px;
				line-height: 0;
				font-weight: normal;
				text-align: center;
				color: #fff;
				font-family: 'ITCFranklinGothicW01-Md_812698', 'Trebuchet MS', Arial, sans-serif;
				font-size: 26px;
				background-color: #4375b8;
				background-color: rgba(67, 117, 184, 0.9);
				-webkit-transition: all 0.3s ease;
				   -moz-transition: all 0.3s ease;
					-ms-transition: all 0.3s ease;
					 -o-transition: all 0.3s ease;
						transition: all 0.3s ease;
				-webkit-border-radius: 50%;
				   -moz-border-radius: 50%;
					-ms-border-radius: 50%;
					 -o-border-radius: 50%;
						border-radius: 50%;
			}

			.image-container a:hover > b {
				opacity: 1;
			}

.alignnone {
    margin: 5px 20px 20px 0;
	border: 8px solid #fff;
}

.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
	border: 8px solid #fff;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
	border: 8px solid #fff;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
	border: 8px solid #fff;
}

a img.aligncenter {
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 100%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 100%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    padding: 5px;
}


@media (min-width: 400px) {

	.image-container > div > a {
		display: inline-block;
	}

	.alignleft {
		float: left;
		margin: 0 20px 10px 0;
	}

	.alignright {
		float: right;
		margin: 0 0 10px 20px;
	}

}

@media (min-width: 768px) {

	.image-container > div > a {
		display: block;
	}
		
}


/* ===== Google Maps ===== */

#easy2map_canvas_1Parent td {border-top:none;}

@media (min-width: 768px) {

	

}


/* ===== Galleries ===== */

.gallery {
	margin: -5px;
}

.gallery dl {
	float: left;
	padding: 5px;
	margin: 0;
}

.gallery.gallery-columns-1 dl { width: 100%; }
.gallery.gallery-columns-2 dl { width: 50%; }
.gallery.gallery-columns-3 dl { width: 33.33%; }
.gallery.gallery-columns-4 dl { width: 25%; }
.gallery.gallery-columns-5 dl { width: 20%; }
.gallery.gallery-columns-6 dl { width: 16.66%; }
.gallery.gallery-columns-7 dl { width: 14.28%; }
.gallery.gallery-columns-8 dl { width: 12.5%; }
.gallery.gallery-columns-9 dl { width: 11.11%; }

.gallery dl dt img {
	width: 100%;
	height: auto;
}


/* ===== Buttons ===== */

.btn {
	position: relative;
	padding: 10px 15px 10px;
	font-family: 'ITCFranklinGothicW01-Dm_812677', 'Trebuchet MS', Arial, sans-serif;
	font-size: 18px;
	line-height: 1.05;
	border: 0 none;
	-webkit-transition: all 0.3s ease;
	   -moz-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
		 -o-transition: all 0.3s ease;
			transition: all 0.3s ease;
}

.btn:hover {
	-webkit-transform: scale(1.1);
	   -moz-transform: scale(1.1);
		-ms-transform: scale(1.1);
		 -o-transform: scale(1.1);
			transform: scale(1.1);	
}

.btn.active,
.btn:active {
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
	        box-shadow: none;
}

/* Standard Button */

.btn-standard {
	border: 1px dashed #a7a7a7;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
	    -ms-border-radius: 2px;
	     -o-border-radius: 2px;
	        border-radius: 2px;
}

.btn-standard:hover,
.btn-standard:focus,
.btn-standard:active,
.btn-standard.active,
.open > .dropdown-toggle.btn-standard {
	border: 1px dashed #0075a1;
}
							

/* ===== Headlines ===== */

.page-title,
.cat-title,
.single-title {
	position: relative;
	margin: 0 0 15px 0;
	padding: 0 25px;
}

	#main .page-title .safe,
	#main .cat-title .safe,
	#main .single-title .safe {
		font-size: 1em;
		color: #000;
	}

@media (min-width: 768px) {

	.page-title,
	.cat-title,
	.single-title {
		text-align: left;
	}

}
			

/* ===== Videos ===== */

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 35px;
    height: 0;
    overflow: hidden;
}

	.video-container iframe {
		position: absolute;
		top:0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	
/*
==========================================================================
   Specific Content
==========================================================================
*/

/* ===== Startseite Allgemein ===== */
	
@media (min-width: 768px) {

	

}


@media (min-width: 992px) {

	

}


@media (min-width: 1200px) {

	

}


/* ===== Ansprechpartner ===== */

.page-id-136 .table .row1 .col1 {
	width: 200px;
}

.page-id-136 .table .row2 .col1 {
	width: 100px;
}


/* ===== Routeplanner ===== */

#routeplanner-container {  }

	#routeplanner-container #saddr { margin-bottom: 15px; }


/* ===== Impressum ===== */

.legal-table .row.odd {
	background: transparent;
}

.legal-table .row {
	margin: 0;
	border-bottom: 2px solid #ddd;
}

.legal-table .row span {
	margin: 0;
	padding: 6px 5px 6px 0;
	display: block;
}

.legal-table .row span img.bit {
	width: auto !important;
}

.legal-table .row span.legal-left {
	font-weight: bold;
	color: #155b9a;
}

#disclaimer {
    overflow: auto;
    height: 625px;
	margin: 0 0 20px 0;
    padding: 20px 20px 5px;
    font-size: 14px;
	background-color: #fff;
	-webkit-box-shadow: 0 0 10px rgba(7,9,9,.1);
	   -moz-box-shadow: 0 0 10px rgba(7,9,9,.1);
			box-shadow: 0 0 10px rgba(7,9,9,.1);
}

.stockphoto-hint {
	font-size: 14px;
	padding-left: 10px;
}


/*
==========================================================================
   Magnific Popup
==========================================================================
*/

.mfp-bg {
	opacity: 0.8;
	background-color: #1f1f1f;
}
	
	.mfp-container {
		padding-left: 20px;
		padding-right: 20px;
	}

		.mfp-iframe-holder .mfp-content { max-width: 1100px; }

			.mfp-content-wrapper {
				padding: 20px;
				color: #292b2f;
				background-color: #fff;
			}

				.mfp-content-wrapper .mfp-headline {
					margin: 0 0 15px 0;
					font-family: 'Myriad Pro Regular', Arial, sans-serif;
					font-size: 20px;
					line-height: 1.35;
					letter-spacing: 0.4em;
					text-transform: uppercase;
				}

				.mfp-content-wrapper .mfp-iframe-scaler {
					position: relative;
				}

				.mfp-content-wrapper .mfp-title {
					padding-top: 20px;
					color: #292b2f;
				}

					.mfp-content-wrapper .mfp-title h4 {
						margin: 0;
						font-size: 18px;
						line-height: 1.25;
						font-family: 'Myriad Pro Regular', Arial, sans-serif;
						letter-spacing: 0.3em;
						text-transform: uppercase;
					}

					.mfp-content-wrapper .mfp-title p { margin: 0; }
						
				.mfp-content-wrapper .mfp-close {
					opacity: 1;
					float: right;
					display: inline-block;
					position: relative;
					bottom: auto;
					right: auto;
					top: auto;
					width: auto;
					height: auto;
					margin-top: 25px;
					padding: 10px 10px 8px;
					background-color: #292b2f;
				}
						
				.mfp-content-wrapper .mfp-close:hover {
					background-color: #e15862;
				}

@media (min-width: 768px) {					
				
	.mfp-content-wrapper {
		padding-left: 60px;
		padding-right: 60px;
	}

}

@media (min-width: 992px) {					
				
	.mfp-content-wrapper {
		padding-left: 120px;
		padding-right: 120px;
	}

}


/*
==========================================================================
   Other
==========================================================================
*/

.more-link {
	display: block;
}

.more-link a {
	display: inline-block;
}

.edit-link {
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 0;
	padding: 5px 12px 6px;
	text-align: center;
	background: #242725;
	display: none;
	filter: alpha(opacity = 75);
	-ms-filter: "alpha(opacity = 75)";
	opacity: 0.75; 
}

.edit-link a {
	color: #fff;
}

.edit-link:hover {
	text-decoration: none;
	background: #fece17;
	filter: alpha(opacity = 100);
	-ms-filter: "alpha(opacity = 100)";
	opacity: 1.0; 
}

.edit-link:hover a {
	color: #242725;
}

#scrolltop {
	display: none !important;
	bottom: 55px;
	right: 25px;
	background-color: transparent;
	border: 0 none;
}

#scrolltop:after { border-color: transparent transparent #4375b8; }

#scrolltop:hover { background-color: #4375b8; }
#scrolltop:hover:after { border-color: transparent transparent #fff; }

#swipebox-overlay {
    background-color: rgba(25, 24, 23, 0.9);
}


@media (min-width: 768px) {

	#scrolltop {
		display: block !important;
	}

	*:hover > .edit-link {
		display: block;
	}

}


/*
==========================================================================
   Animations
==========================================================================
*/


