/*   Content by 
  Druck & Service Garhammer GmbH
  Florian Garhammer
  f.garhammer@garhammer-druck.de
  Tel. +49 9921 8822711
==================================================
  #Reset & Basics
  #Typography
  #Menu
    #CSS Menu
  #Links
  #Lists
  #Images
  #Buttons
  #Forms, Tables & Tabs
  #Grid & Positions
  #Responsive
  #Misc
  	#Scroll Button
    #Page Navigation
	#Anker
    #Back-to-Topic
    #Xmap
	#Foxcontact
    #Transition
  #Zeile Details und Tooltip ausblenden
  */

/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, svg, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline; }
    
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }
  
body {  
  line-height: 1; }
  
ol, ul, li, a {
  list-style: none;
  text-decoration: none; }

blockquote, q {
  quotes: none; }
    
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }
  
table {  
  border-collapse: collapse;
  border-spacing: 0; }

html {
  height:100.001%;
  overflow: scroll; }


/* #Typography
================================================== */

h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a  {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight:700;
  color: #484848;
  text-decoration: none;
  line-height: 1.5; }

h1, h1 a {
  font-size: 2.25em;
  text-transform:uppercase;}

h2, h2 a {
  font-size: 1.75em; }

h3, h3 a {
  font-size: 1.5em; }

h4, h4 a {
  font-size: 1.3em; }

h5, h5 a {
  font-size: 1.2em; }

p, a, .semihead, button {
  font-family: 'Roboto Condensed', serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.8;
  color: #707070; 
  text-align: center;}
  
a, button {  
  font-weight: 700; 
   }

a:hover, button:hover{  
  text-decoration: none; }
  
p.readmore {
  text-align: right; }

p.readmore a {  
  font-family: 'Roboto Condensed', serif;
  color: #cece15;
  font-weight: 700;
  text-decoration: none;
  padding: 0.25em 0.5em;
  margin: 5px 0 15px 0; }

.readmore a:hover {
  color: #fff;
  background-color: #cece15;
  border-radius: 3px; }

.strong { 
  font-weight: 700; 
  color: #484848; }
 
span.big {
  font-size: 1.35em;
  font-weight: 700; } 
  
.small { 
  font-size: 80%;
  text-transform: uppercase; }
  
hr {
  border: none;
  border-bottom: 1px dotted #ccc;
  margin: 14px 0 28px;}

.same {
  margin: 14px 14px;}
  
.center {
  text-align: center; }
  
p.header {
  margin: 28px 0px;
  text-align: center;
  background: url(../images/diagonal_grey.png) repeat scroll 0px 0px;
  font-size: 0px;
  border-radius: 3px; }
  
span.header {  
  font: 700 18px 'Roboto Condensed', sans-serif;
  line-height: 20px;
  text-transform: uppercase;
  display: inline;
  padding: 0px 10px;
  letter-spacing: 0.1em;
  background: url(../images/bg_content.png) repeat-x scroll 0px 0px;
  white-space: pre-wrap; }

p.headerdark {
  margin: 28px 0px;
  text-align: center;
  background: url(../images/diagonal_darkgrey.png) repeat scroll 0px 0px;
  font-size: 0px;
  border-radius: 3px; }
  
span.headerdark {  
  font: 700 16px 'Roboto Condensed', sans-serif;
  color: #D9D9D9;
  line-height: 18px;
  text-transform: uppercase;
  display: inline;
  padding: 0px 10px;
  letter-spacing: 0.1em;
  background: url(../images/bg_dark.jpg) repeat-x scroll 0px 0px; }
  
.blue {color: #7FBAF1; }
a.blue:hover {color: #5FA9EF; }

.yellow {color: #F6DC7F; }
a.yellow:hover {color: #F4D55F; }

.red {color: #DF8F81; }
a.red:hover {color: #D77363; }

.green {color: #70daa2; }
a.green:hover {color: #9eeac3; }

.silver {color: #484848; }
a.silver:hover {color: #323232; }

.white {color: #fff; }
a.white:hover {color: #5FA9EF; }

a.white  {
    background-color: rgba(255, 255, 255, 0.9);
	padding: 2px 6px;
    border-radius: 4px 1px 4px 1px;
    margin: 0px 8px;
	white-space: nowrap;
	color: #8da9c0;
}

a.white:hover {
    border-radius: 10px 1px 10px 1px;
	color: #5FA9EF;
}

p.headersilver {
  margin: 28px 0px;
  text-align: center;
  background: url(../images/diagonal_darkgrey.png) repeat scroll 0px 0px #212121; 
  font-size: 0px;
  border-radius: 3px; }
  
span.headersilver {
  font: 700 18px 'Roboto Condensed', sans-serif;
  line-height: 14px;
  text-transform: uppercase;
  display: inline;
  padding: 0px 10px;
  letter-spacing: 0.1em;
  background-color: #212121; }

.published {
  font-family: 'Roboto Condensed', serfi;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.8;
  color: #707070; }
  
 .semihead {
	text-shadow:1px 1px 0px #fff;}
 
/* #Menu
================================================== */

/* #CSS Menu
--------------------------------------------------------- */

@font-face {
	font-family: 'icomoon';
	src: url('../fonts/icomoon.eot');
	src: url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/icomoon.woff') format('woff'),
		 url('../fonts/icomoon.ttf') format('truetype'),
		 url('../fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Windows Chrome ugly fix http://stackoverflow.com/questions/13674808/chrome-svg-font-rendering-breaks-layout/14345363#14345363 */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	@font-face {
		font-family: 'icomoon';
		src: url('../fonts/icomoon.svg#icomoon') format('svg');
	}
}

.icon-102, .icon-112, .icon-203, .icon-204, .icon-205, .icon-111, .icon-112, .icon-menu {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

.icon-102:before {
	content: '';
	background: url(../images/menuicon_portfolio.png) no-repeat 3px 5px;
	width: 65px;
	height: 60px;
	display: inline-block;	}

.icon-112:before {
	content: '';
	background: url(../images/menuicon_kontakt.png) no-repeat 3px 5px;
	width: 65px;
	height: 60px;
	display: inline-block;
}

.icon-203:before {
	content: '';
	background: url(../images/menuicon_ueberuns.png) no-repeat 3px 5px;
	width: 65px;
	height: 60px;
	display: inline-block;
}

.icon-204:before {
	content: '';
	background: url(../images/menuicon_impressum.png) no-repeat 3px 5px;
	width: 65px;
	height: 60px;
	display: inline-block;
}

.icon-205:before {
	content: '';
	background: url(../images/menuicon_datenschutz.png) no-repeat 3px 5px;
	width: 65px;
	height: 60px;
	display: inline-block;
}

.icon-209:before {
	content: '';
	background: url(../images/menuicon_referenzen.png) no-repeat 3px 5px;
	width: 65px;
	height: 48px;
	display: inline-block;
}

a, li {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


/* Global CSS that are applied for all screen sizes */

.fixed-nav {
	z-index: 9999;
	position: fixed;
	top: 0;
	padding: 0 15px;
	margin-top: -140px;
	margin-left: -15px;
}

.nav ul {
	max-width: 1240px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.5em;
	font-weight: 300;
}

.nav li span {
	display: block;
}

.nav a {
	display: block;
	color: rgba(249, 249, 249, .9);
	text-decoration: none;
	-webkit-transition: color .5s, background .5s, height .5s;
	-moz-transition: color .5s, background .5s, height .5s;
	-o-transition: color .5s, background .5s, height .5s;
	-ms-transition: color .5s, background .5s, height .5s;
	transition: color .5s, background .5s, height .5s;
}

.nav i{
	/* Make the font smoother for Chrome */
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

/* Remove the blue Webkit background when element is tapped */

a, button {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Hover effect for the whole navigation to make the hovered item stand out */

.no-touch .nav ul:hover a {
	color: rgba(249, 249, 249, .5);
}

.no-touch .nav ul:hover a:hover {
	color: rgba(249, 249, 249, 0.99);
}

.nav li:first-child{
	display: none;}

/* Adding some background color to the different menu items */

.nav li:nth-child(6n+1), .nav li:nth-child(6n+2), .nav li:nth-child(6n+3), .nav li:nth-child(6n+4), .nav li:nth-child(6n+5), .nav li:nth-child(6n+6) {
background: #b7be00; /* Old browsers */
background: -moz-linear-gradient(45deg,  #b7be00 0%, #a8a804 100%);
background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#b7be00), color-stop(100%,#a8a804));
background: -webkit-linear-gradient(45deg,  #b7be00 0%,#a8a804 100%);
background: -o-linear-gradient(45deg,  #b7be00 0%,#a8a804 100%);
background: -ms-linear-gradient(45deg,  #b7be00 0%,#a8a804 100%);
background: linear-gradient(45deg,  #b7be00 0%,#a8a804 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7be00', endColorstr='#a8a804',GradientType=1 );
}

.nav li:last-child {
background: #94b0c5;}

/* For screen bigger than 768px */
@media (min-width: 768px) {

	/* Transforms the list into a horizontal navigation */
	.nav li {
		float: left;
		width: 11%;
		text-align: center;
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}

	.nav a {
		display: block;
		width: auto;
	}

	/* hover, focused and active effects that add a little colored border to the different items */
	.no-touch .nav li:nth-child(6n+1) a:hover,
	.no-touch .nav li:nth-child(6n+1) a:active,
	.no-touch .nav li:nth-child(6n+1) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	.no-touch .nav li:nth-child(6n+2) a:hover,
	.no-touch .nav li:nth-child(6n+2) a:active,
	.no-touch .nav li:nth-child(6n+2) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	.no-touch .nav li:nth-child(6n+3) a:hover,
	.no-touch .nav li:nth-child(6n+3) a:active,
	.no-touch .nav li:nth-child(6n+3) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	.no-touch .nav li:nth-child(6n+4) a:hover,
	.no-touch .nav li:nth-child(6n+4) a:active,
	.no-touch .nav li:nth-child(6n+4) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	.no-touch .nav li:nth-child(6n+5) a:hover,
	.no-touch .nav li:nth-child(6n+5) a:active,
	.no-touch .nav li:nth-child(6n+5) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	.no-touch .nav li:nth-child(6n+6) a:hover,
	.no-touch .nav li:nth-child(6n+6) a:active,
	.no-touch .nav li:nth-child(6n+6) a:focus {
		border-bottom: 4px solid #9DA04A;
	}

	/* Placing the icon */
	
	.icon {
		padding-top: 1em;
	}

	.icon + span {
		margin-top: 1.5em;
		-webkit-transition: margin .5s;
		-moz-transition: margin .5s;
		-o-transition: margin .5s;
		-ms-transition: margin .5s;
		transition: margin .5s;
	}

	/* Animating the height of the element*/
	.nav a {
		height: 9em;}

	.no-touch .nav a:hover ,
	.nav a:active ,
	.nav a:focus {
		height: 10em;
	}	

	/* Making the text follow the height animation */
	.no-touch .nav a:hover .icon + span {
		margin-top: 2.5em;
		-webkit-transition: margin .5s;
		-moz-transition: margin .5s;
		-o-transition: margin .5s;
		-ms-transition: margin .5s;
		transition: margin .5s;
	}

	/* Positioning the icons and preparing for the animation*/
	.nav i {
		position: relative;
		display: inline-block;
		margin: 0 auto;
		padding: 0.2em;
		border-radius: 50%;
		font-size: 1.8em;
		box-shadow: 0 0 0 30px transparent;
		background: rgba(255,255,255,0.1);
		-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		-webkit-transition: box-shadow .5s ease-in-out;
		-moz-transition: box-shadow .5s ease-in-out;
		-o-transition: box-shadow .5s ease-in-out;
		-ms-transition: box-shadow .5s ease-in-out;
		transition: box-shadow .5s ease-in-out;
	}	
	
	/* Animate the box-shadow to create the effect */
	.no-touch .nav a:hover i,
	.no-touch .nav a:active i,
	.no-touch .nav a:focus i {		
		box-shadow: 0 0 0 0 rgba(255,255,255,0.2);
		-webkit-transition: box-shadow .3s ease-in-out;
		-moz-transition: box-shadow .3s ease-in-out;
		-o-transition: box-shadow .3s ease-in-out;
		-ms-transition: box-shadow .3s ease-in-out;
		transition: box-shadow .3s ease-in-out;
	}
		
}

@media (min-width: 769px) and (max-width: 991px) {

	/* Size and font adjustments to make it fit into the screen*/
	.nav ul {
		font-size: 1.2em;
	}
	.nav li span:nth-child(2){
	font-size: 0.8em;
	margin-top: 2.2em;}

}

/* The "tablet" and "mobile" version */

@media (max-width: 768px) {
	
.fixed-nav {
	position: relative;
}
	
	/* Instead of adding a border, we transition the background color */
	.no-touch .nav ul li:nth-child(6n+1) a:hover,
	.no-touch .nav ul li:nth-child(6n+1) a:active,
	.no-touch .nav ul li:nth-child(6n+1) a:focus {
		background: #cecc22;
	}

	.no-touch .nav li:nth-child(6n+2) a:hover,
	.no-touch .nav li:nth-child(6n+2) a:active,
	.no-touch .nav li:nth-child(6n+2) a:focus {
		background: #cecc22;
	}

	.no-touch .nav li:nth-child(6n+3) a:hover,
	.no-touch .nav li:nth-child(6n+3) a:active,
	.no-touch .nav li:nth-child(6n+3) a:focus {
		background: #cecc22;
	}

	.no-touch .nav li:nth-child(6n+4) a:hover,
	.no-touch .nav li:nth-child(6n+4) a:active,
	.no-touch .nav li:nth-child(6n+4) a:focus {
		background: #cecc22;
	}

	.no-touch .nav li:nth-child(6n+5) a:hover,
	.no-touch .nav li:nth-child(6n+5) a:active,
	.no-touch .nav li:nth-child(6n+5) a:focus {
		background: #cecc22;
	}

	.no-touch .nav li:nth-child(6n+6) a:hover,
	.no-touch .nav li:nth-child(6n+6) a:active,
	.no-touch .nav li:nth-child(6n+6) a:focus {
		background: #cecc22;
	}

	.nav ul li {
		-webkit-transition: background 0.3s;
		-moz-transition: background 0.3s;
		-o-transition: background 0.3s;
		-ms-transition: background 0.3s;
		transition: background 0.3s;
	}	

}

/* CSS specific to the 2x3 columns version */
@media (min-width:481px) and (max-width: 768px) {
	
	/* Creating the 2 column layout using floating elements once again */
	.nav li {
		display: block;
		float: left;
		width: 50%;
	}
	
	/* Adding some padding to make the elements look nicer*/
	.nav a {
		padding: 0.8em;	
		text-align: left;
	}

	/* Displaying the icons on the left, and the text on the right side using inlin-block*/
	.nav li span, 
	.nav li span.icon {
		display: inline-block;
	}

	.nav li span.icon {
		width: 50%;
	}

	.nav li .icon + span {
		font-size: 1em;
	}

	.icon + span {
		position: relative;
		top: -0.2em;
	}

.icon-102:before, .icon-112:before, .icon-203:before, .icon-204:before, .icon-205:before, .icon-209:before {
	width: 62px;}
	
.nav li span {
    vertical-align: middle;
}

.nav li span:nth-child(2) {
    padding-top: 10px;
}

	/* Adaptating to the icons to animate the size and border of the rounded background in a more discreet way */
	.nav li i {
		display: inline-block;
		padding: 8% 9%;
		border: 4px solid transparent;
		border-radius: 50%;
		font-size: 1.5em;
		background: rgba(255,255,255,0.1);
		-webkit-transition: border .4s;
		-moz-transition: border .4s;
		-o-transition: border .4s;
		-ms-transition: border .4s;
		transition: border .4s;
	}

	/* Transition effect on the border color */
	.no-touch .nav li:hover i,
	.no-touch .nav li:active i,
	.no-touch .nav li:focus i {
		border: 4px solid rgba(255,255,255,0.1);
	}
	
}

/* Adapting the font size and width for smaller screns*/
@media (min-width: 480px) and (max-width: 540px) {
	
	.nav li span.icon {
		width: 50%;
	}

	.nav li .icon + span {
		font-size: 0.8em;
	}
	
}

/* Styling the toggle menu link and hiding it */
.nav .navtoogle{
	display: none;	
	width: 100%;
	padding: 0.5em 0.8em 0.4em;
	font-family: 'Roboto Condensed', sans-serif;
	text-align: left;
	color: #fff;
	font-size: 1.3em;
	background: #b7be00; /* Old browsers */
background: -webkit-linear-gradient(bottom left, #b7be00 0%, #a8a804 100%);
background: -o-linear-gradient(bottom left, #b7be00 0%, #a8a804 100%);
background: linear-gradient(to top right, #b7be00 0%, #a8a804 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7be00', endColorstr='#a8a804',GradientType=1 );
	border: none;
	cursor: pointer;
	font-weight: 700;
	text-transform: uppercase;
}

.icon-menu {
	position: relative;
	top: 3px;
	line-height: 0;
	font-size: 1.6em;
}

@media (max-width: 480px) {

	/* Unhiding the styled menu link */
	.nav .navtoogle{
		margin: 0;
		display: block;
	}
	
	/* Animating the height of the navigation when the button is clicked */
	
	/* When JavaScript is disabled, we hide the menu */
	.no-js .nav ul {
		max-height: 30em;
		overflow: hidden;
	}
	
	/* When JavaScript is enabled, we hide the menu */
	.js .nav ul {
		max-height: 0em;
		overflow: hidden;
	}
	
	/* Displaying the menu when the user has clicked on the button*/
	.js .nav .active + ul {		
		max-height: 30em;
		overflow: hidden;
		-webkit-transition: max-height .3s;
		-moz-transition: max-height .3s;
		-o-transition: max-height .3s;
		-ms-transition: max-height .3s;
		transition: max-height .3s;
	}

	/* Adapting the layout of the menu for smaller screens : icon on the left and text on the right*/
	
	.nav li span {
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	}
	
.nav li span:nth-child(2) {
		padding-top: 10px;
	}

	.nav a {
		padding: 0.5em 0.5em 0.5em 2em;
		text-align: left;
	}
	
	.icon + span {
		margin-left: 1em;
		font-size: 0.8em;
	}
	
	/* Adding a left border of 8 px with a different color for each menu item*/
	.nav li:nth-child(6n+1) {
		border-left: 8px solid #A3A63F;
	}

	.nav li:nth-child(6n+2) {
		border-left: 8px solid #A3A63F;
	}

	.nav li:nth-child(6n+3) {
		border-left: 8px solid #A3A63F;
	}

	.nav li:nth-child(6n+4) {
		border-left: 8px solid #A3A63F;
	}

	.nav li:nth-child(6n+5) {
		border-left: 8px solid #A3A63F;
	}

	.nav li:nth-child(6n+6) {
		border-left: 8px solid #A3A63F;
	}

	/* make the nav bigger on touch screens */
	.touch .nav a {
		padding: 0.8em;
	}
	
.icon-menu::before {
    content: "\f0c9";}


}


/* #Links
================================================== */



/* #Lists
================================================== */

li.downloads{
  padding: 2px 10px 2px 20px;
  list-style: none;
  line-height: 1.4;
  font-size: 14pt; }

li.downloads{
  background: url(../images/lidownloads.png) 0px 10px no-repeat; }


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

img.borderpic, .pull-left img {
  padding: 6px;
  border: 1px solid #ededed;
  background: #fff; 
  line-height: 0px;
  box-shadow:1px 1px 10px #eee;
      -webkit-transition:all .9s ease-in-out;
       -moz-transition:all .9s ease-in-out;
            -ms-transition:all .9s ease-in-out; 
             -o-transition:all .9s ease-in-out; 
                transition:all .9s ease-in-out; 
}
  
img.borderpic:hover, .pull-left img:hover { 
}
  
.popbutton {
	font-size: 16pt;
  }
  
.popbutton img {
  border: 3px solid #333;
  -webkit-transition: -webkit-transform 200ms, opacity 300ms;
     -moz-transition: -moz-transform 200ms, opacity 300ms;
      -ms-transition: -ms-transform 200ms, opacity 300ms;
       -o-transition: -o-transform 200ms, opacity 300ms;
          transition: transform 200ms, opacity 300ms;
  -webkit-border-radius:50%;
     -moz-border-radius:50%;
      -ms-border-radius:50%;
       -o-border-radius:50%;
          border-radius:50%;
  padding: 3px;
  cursor: pointer; }
  
.popbutton img:hover {
  border: 3px solid #555;
  -webkit-transform:scale(1.08);
     -moz-transform:scale(1.08);
      -ms-transform:scale(1.08);
       -o-transform:scale(1.08);
          transform:scale(1.08); }
      
.popbutton img:after{
  -webkit-transform:scale(1.08);
     -moz-transform:scale(1.08);
      -ms-transform:scale(1.08);
       -o-transform:scale(1.08);
          transform:scale(1.08); }   
		  
.iconbutton img {
  background-color: rgba(0,71,103,0.8);
  -webkit-transition: -webkit-transform 200ms, opacity 300ms;
     -moz-transition: -moz-transform 200ms, opacity 300ms;
      -ms-transition: -ms-transform 200ms, opacity 300ms;
       -o-transition: -o-transform 200ms, opacity 300ms;
          transition: transform 200ms, opacity 300ms;
  -webkit-border-radius:50%;
     -moz-border-radius:50%;
      -ms-border-radius:50%;
       -o-border-radius:50%;
          border-radius:50%;
  padding: 20px;
  margin: 20px; }
  
.iconbutton img:hover {
  background-color: rgba(0,71,103,1.0);
  -webkit-transform:scale(0.9);
     -moz-transform:scale(0.9);
      -ms-transform:scale(0.9);
       -o-transform:scale(0.9);
          transform:scale(0.9);
  padding: 40px;
  margin: 20px;}
      
           

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

.button,[class*="button-"] {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 2em 0.5em;
  height: 0em;
  font: 700 14px/0em 'Roboto Condensed', sans-serif;
  background-color: #7FBAF1;
  color: #fff;
  border-radius: 3px;
  -webkit-transition: all 400ms ease;
     -moz-transition: all 400ms ease;
      -ms-transition: all 400ms ease;
       -o-transition: all 400ms ease;
          transition: all 400ms ease;
  margin: 5px 0;
  top: 10px;
  width: 100%;
}
  
.button:hover, a.button.abstamm:hover{
  line-height: 8em;
  background: #7FBAF1; }
    
.button:before, a.button.abstamm:before {
  content: "GLEICH EINE E-MAIL SENDEN";
  text-align: center;
  color: #5FA9EF;
  position: absolute;
  top: -2em; }
  
.button.left {
  float: left;
  margin: 0px 15px 0px 0px; }
  
.button.center{
  text-align: center;
  float: none; }
 
.button.center:hover {
  background-color: #fff;
  color: #7FBAF1;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1); }
  
    
/* Forms, Tables & Tabs
================================================== */

tr:nth-child(even) {
  background: #eee; }
  
tr:hover {
  background: rgba(255,255,255,0.05); }

.hlcyan {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight:700;
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-transform: uppercase;
  margin-left: 5%;
  margin-right: 5%;
  width: 90%;
  font-size: 28px;
  padding: 1.2em 1.2em;
  background: #fff;
  border-radius: 3px;
  text-align: center;
  border-bottom: 5px solid #ddd;
  border-top: 5px solid #ddd;
	opacity: 0.7;}
  
  

/* #Grid & Positions
================================================== */

 /* #Grid
--------------------------------------------------------- */





/* #Position
--------------------------------------------------------- */
#topbox {
	padding: 0;
	min-height: 350px;
}

#logo {
	padding-left: 1.6667%;
	width: 30%;
	top: 74px;
	position:relative;
}

#menu {
}

#main {
	border-bottom: 102px solid #eee;
	width: 100%;}

#main > #body {
	position: relative;
	left: 50%;
	margin-left: -600px;
	width: 1200px;
	height: auto;
	padding: 0 0 50px 0;}

#main > #body p, #main > #body a, #main > #body .semihead, #main > #body button {
	text-align: left; }

#beforebox > .moduletable {
	width: 61%;
    float: right;
	margin: -50px 0 150px}

#bannerbox {
}

#betweenover a {
    border: 2px solid;
    display: block;
    padding: 10px 60px;
    border-radius: 100px;
    font-size: 1.2em;
    background: #fff;
    margin: 20px;}

#betweenbox1 {
  padding: 30px 10px;
}

#betweenbox2 {
  padding: 30px 10px;
}

#betweenbox3 {
  padding: 30px 10px;
}

#betweenbox1:not(:hover), #betweenbox2:not(:hover), #betweenbox3:not(:hover) {
	opacity: 0.7;}

#betweenbox1, #betweenbox2, #betweenbox3{
    -webkit-transition:all .4s ease-in-out;
       -moz-transition:all .4s ease-in-out;
            -ms-transition:all .4s ease-in-out; 
             -o-transition:all .4s ease-in-out; 
                transition:all .4s ease-in-out; }

#contentbox {
	padding: 50px 30% 50px 10px;
}

#contentbox2 {
  padding: 30px 10px;
}

#contentbox3 {
  padding: 50px 30% 50px 10px;
}

#contentbox4 .moduletable {
  padding: 30px 10px;
}

#contentbox5 {
	padding: 30px 10px;
}



#top100, #before100, #banner100, #between100, #content100, #content2_100, #content3_100, #content4_100, #content5_100,  #footer100 {
	width: 100%;}

#top100, #content5_100 {
  background: #e8e8b7;
  background: -webkit-linear-gradient(133deg, #e8e8b7, #ddda6f);
  background: -o-linear-gradient(133deg, #e8e8b7, #ddda6f);
  background: linear-gradient(133deg, #e8e8b7, #ddda6f);
  background-size: 100% 100%;}

#before100 {
}

#banner100 {
	background-color: #CCC;
}

#between100 {
  background: url("../images/bg_content.png") repeat scroll 0px 0px #fdfdfd;
  -webkit-transform: skew(0, 4deg);
  -ms-transform: skew(0, 4deg);
  transform: skew(0, 4deg);
  margin: -100px 0;
}

#between {
  -webkit-transform: skew(0, -4deg);
  -ms-transform: skew(0, -4deg);
  transform: skew(0, -4deg);
  padding: 50px 0;
}
 
#content100 {
  background: #8da9c0; /* Old browsers */
  background: url("../images/bg_poscontent.jpg") no-repeat center center fixed;
  padding: 200px 0;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.myBackground.jpg', sizingMethod='scale');
  -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='myBackground.jpg', sizingMethod='scale')";
}

#content2_100 {
  background: url("../images/bg_content.png") repeat scroll 0px 0px #fdfdfd;
  -webkit-transform: skew(0, -2deg);
  -ms-transform: skew(0, -2deg);
  transform: skew(0, -2deg);
  margin: -100px 0;
}

#content2 {
  -webkit-transform: skew(0, 2deg);
  -ms-transform: skew(0, 2deg);
  transform: skew(0, 2deg);
  padding: 50px 0;
}

#content3_100 {
  background: #215A89; /* Old browsers */
  padding: 200px 0;
  background: url("../images/bg_pos_content3.jpg") no-repeat center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.myBackground.jpg', sizingMethod='scale');
  -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='myBackground.jpg', sizingMethod='scale')";
}

#content4_100 {
  background: url("../images/bg_content.png") repeat scroll 0px 0px #fdfdfd;
  -webkit-transform: skew(0, 4deg);
  -ms-transform: skew(0, 4deg);
  transform: skew(0, 4deg);
  margin: -100px 0 -150px;
}

#content4 {
  -webkit-transform: skew(0, -4deg);
  -ms-transform: skew(0, -4deg);
  transform: skew(0, -4deg);
  padding: 50px 0 200px;
	display: none;
}

#contentbox4 > .moduletable:not(:first-child) {
  width: 30%;
  margin: 10px;
  padding: 20px 5px 0px;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
  float: left;
  border-radius: 3px;
  border-top: 2pt solid #7FBAF1;
}

#contentbox4 > .moduletable:hover:not(:first-child) {
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
}

#contentbox4 > .moduletable:nth-child(1) {
  text-align: center;
  margin: 30px 0;
  width: 100%;}

#content5_100 {
  -webkit-transform: skew(0, -2deg);
  -ms-transform: skew(0, -2deg);
  transform: skew(0, -2deg);
  margin: -100px 0;}
  
#content5 {
  -webkit-transform: skew(0, 2deg);
  -ms-transform: skew(0, 2deg);
  transform: skew(0, 2deg);}
	
	
#contentbox5 > .moduletable:not(:first-child) {
  width: 48%;
  margin: 10px;
  padding: 20px 5px 0px;
  color: #fff;
  float: left;
}
	
#contentbox5 > .moduletable:nth-child(1), #contentbox5 > .moduletable.full {
  text-align: center;
  margin: 30px 0;
  width: 100%;}

#footer100 {
  background: url("../images/bg_content.png") repeat scroll 0px 0px #fdfdfd;
  margin: -100px 0;
}

#footer {
  padding: 150px 0 120px 0px;}

#footerbox > .moduletable:nth-child(1) {
	float: left;}

#footerbox > .moduletable:nth-child(1) p {
	text-align: left;}

#footerbox > .moduletable:nth-child(2) {
  float: right;}

#footerbox a > img {
    margin: 0 40px;}

/* --------------------------------------------
RESPONSIVE
---------------------------------------------*/
@media (min-width:768px) {
#betweenbox1:hover, #betweenbox2:hover, #betweenbox3:hover {
    -webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	transform: scale(1.05);
    background: rgba(255,255,255,0.8);
    z-index: 100;}
	}

@media (min-width:768px) and (max-width: 1200px) {

#contentbox5 > .moduletable:not(:first-child) {
  width: 100%;
  margin: 0%;
  padding: 50px 0 10px;}
	
#main > #body {
    width: 100%;
    margin: 0;
    left: 0%;
    padding: 0 35px 50px 35px;}
}


@media (min-width: 769px) and (max-width: 991px)  {
	#topbox {
		min-height: 275px; }

.button,[class*="button-"] {
  font: 700 12px/0em 'Roboto Condensed', sans-serif;
}		
}


@media (max-width: 768px) {		
#logo {	
		padding-left: 30%;
		padding-right: 30%;
		width: 100%;
		top: 30px; 
		margin-bottom: 50px;}
		
#betweenbox1:not(:hover), #betweenbox2:not(:hover), #betweenbox3:not(:hover) {
	opacity: 1.0;}

img.borderpic, .pull-left img {
  width: 50%
}
	
#main > #body {
    width: 100%;
    margin: 0;
    left: 0%;
    padding: 0 35px 50px 35px;}
	
#beforebox > .moduletable {
	width: 100%;
    float: right;
	margin: 50px 0 150px}

#contentbox4 > .moduletable:not(:first-child) {
  width: 46%;
  margin: 2%;
  padding: 20px 2% 10px;
}

#contentbox5 > .moduletable:not(:first-child) {
  width: 100%;
  margin: 0%;
  padding: 50px 0 10px;
}
  
div#fox-container-m121{ 
	margin: 0 0 100px 0;} 
	
#footerbox > .moduletable:nth-child(2) {
  float: none;}

#footerbox a > img {
	margin: 0 auto 25px;
	float: center;
	display: flex;}
}


@media (min-width:540px) and (max-width: 768px) {
#blockrandom {
    height: 280px !important;}
	
.ytp-thumbnail-overlay-image{
	background-position: initial;}}




@media (min-width: 480px) and (max-width: 540px) {
#blockrandom {
    height: 220px !important;}
	
.ytp-thumbnail-overlay-image{
	background-position: initial;}

	#logo {	
		padding-left: 25%;
		padding-right: 25%; }

#contentbox4 > .moduletable:not(:first-child) {
  width: 90%;
  margin: 5%;
  padding: 20px 5% 10px;
}

}


@media (max-width: 480px) {
#blockrandom {
    height: 200px !important;}

.ytp-thumbnail-overlay-image{
	background-position: initial;}

#topbox {
		min-height: 250px; }
	
#logo {	
		padding-left: 10%;
		padding-right: 10%; }
	
#logo img {
    max-height: 140px;
    width: auto;
    margin: 0 auto;
    display: block;}
	
.fixed-nav {
	z-index: 9999;
	position: fixed;
	top: 0;
	width: 100%;
	padding: 0 27px 0 0;
	margin-top: 0px;
	margin-left: 0px;}
		
#contentbox {
	padding: 50px 10px 50px 10px;}
	
.button,[class*="button-"] {
  padding: 2em 0.2em;
  font: 700 13px/0em 'Roboto Condensed', sans-serif;
  letter-spacing: .08em;}
  
#contentbox3, #contentbox5 {
  padding: 50px 10px 80px;}

#content100 {
  padding: 100px 0;
  background: url("../images/bg_poscontent.jpg") repeat center center fixed; }
	
#content3_100 {
  padding: 100px 0;
  background: url("../images/bg_content.png") repeat scroll 0px 0px #fdfdfd;}

#content2, #between, #content6 {
  padding: 50px 0;}
  
#contentbox4 > .moduletable:not(:first-child) {
  width: 90%;
  margin: 5%;
  padding: 20px 5% 10px;
}

.iconbutton img {
  width:120px;
  height: auto;}
  
.iconbutton img:hover {
  margin: 20px;}

}

@media (max-width: 700px) {
	
.fmodal {
	margin: 20px !important;}

a.fclose {
	top: 40px !important;
	right: 40px !important;}

.fcontent p, .fcontent a {
    font-size: 14px;}

.fcontent img{
    max-width: 100%;}
}


/* Misc
================================================== */

/* --------------------------------------------
SCROLLBUTTONS
---------------------------------------------*/
@keyframes scrollit
{
0%   {margin-bottom: 0px; opacity:1}
50%  {margin-bottom: -20px; opacity:0}
100% {margin-bottom: 0px; opacity:1}
}

@-webkit-keyframes scrollit
{
0%   {margin-bottom: 0px; -webkit-opacity:1}
50%  {margin-bottom: -20px; -webkit-opacity:0}
100% {margin-bottom: 0px; -webkit-opacity:1}
}

@-moz-keyframes scrollit
{
0%   {margin-bottom: 0px; -moz-opacity:1}
50%  {margin-bottom: -20px; -moz-opacity:0}
100% {margin-bottom: 0px; -moz-opacity:1}
}

@-o-keyframes scrollit
{
0%   {margin-bottom: 0px; -o-opacity:1}
50%  {margin-bottom: -20px; -o-opacity:0}
100% {margin-bottom: 0px; -o-opacity:1}
}


#scroller {
	position: absolute;
	display:block;
	background-image:url(../images/scroller.png); background-size:100%;
	margin-left: -19px;
	left: 20%;
	bottom: 180px;
	z-index: 1000;
	width: 38px;
	height: 32px;
	animation: scrollit 2.5s infinite;
	-moz-animation: scrollit 2.5s infinite;
	-webkit-animation: scrollit 2.5s infinite;
	-o-animation: scrollit 2.5s infinite;
	animation-timing-function: ease;
	-webkit-animation-timing-function: ease;
	-moz-animation-timing-function: ease;
	-o-animation-timing-function: ease;
     }

 /* #Modal Box
--------------------------------------------------------- */
.fmodalbox {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;}

.fboxoverlay {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	visibility: hidden;
	opacity: 0;
	background: rgba(0, 0, 0, 0.7);
	-webkit-transition: opacity 0.5s;
	-moz-transition: opacity 0.5s;
	-o-transition: opacity 0.5;
	-ms-transition: opacity 0.5s;
	transition: opacity 0.5s;}

.fboxoverlay:target {
    visibility: visible;
    opacity: 1;}

.fmodal {
	padding: 50px 2rem 2rem 2rem;
	background: #fff;
	border-radius: 4px;
	overflow: auto;
	margin: 100px;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5;
	-ms-transition: 0.5s;
	transition: 0.5s;}
	
.fmodal .content {
    margin-bottom: 40px;}
	
.fmodal > .content a {
	max-width: 60%;
    margin: auto;
    display: block;}

.fboxoverlay:target > .modal {
  	-webkit-transform: translateY(100px) scale(0.9);
	-moz-transform: translateY(100px) scale(0.9);
	-o-transform: translateY(100px) scale(0.9);
	-ms-transform: translateY(100px) scale(0.9);
	transform: translateY(100px) scale(0.9);
	-webkit-transition-timing-function: cubic-bezier(.8, 0, 0, 1.5);
	-moz-transition-timing-function: cubic-bezier(.8, 0, 0, 1.5);
	-o-transition-timing-function: cubic-bezier(.8, 0, 0, 1.5);
	-ms-transition-timing-function: cubic-bezier(.8, 0, 0, 1.5);
	transition-timing-function: cubic-bezier(.8, 0, 0, 1.5);
  	opacity: 1;}

.fholecontent {
	overflow-y: auto;
	overflow-x: hidden;
	max-height: calc(100vh - 240px);
	border-bottom: 2px solid #ddd;
	padding-right: 30px;}

a.fclose {
	position: absolute;
	top: 120px;
	right: 120px;
	width: 40px;
	height: 40px;
	text-align: center;
	font-size: 40px;
	line-height: 32px;
	color: #aaa !important;
	border: 2px solid #ddd;
	border-radius: 50px;
	background-color: #f9f9f9;
 	-webkit-transition: 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
  	-moz-transition: 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -o-transition: 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    -ms-transition: 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    transition: 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);}

a.fclose:hover {
    color: #555;
    background-color: #fff;
    border: 2px solid #ccc;
	-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);}

.buttonmod {
    padding: 10px 20px;
    border: 2px solid #ddd;
    margin: 20px 0;
    display: block;
    width: 100%;}

.buttonmod:hover {
    background-color: #fff;}

  /* #Page Navigation
--------------------------------------------------------- */
div.pagination a {
  color:#484848;
  font:300 .8em 'Roboto Condensed', sans-serif;
  -webkit-box-sizing:border-box;
     -moz-box-sizing:border-box;
      -ms-box-sizing:border-box;
          box-sizing:border-box; }

div.pagination ul {
  width:100%;
  text-align:center;
  margin:21px 0 35px; }

div.pagination li {
  display:inline;
  margin:0 2px; }

div.pagination li a {
  display:inline-block;
  line-height:35px;
  width:35px;
  height:35px;
  text-align:center;
  text-decoration:none;
  border-bottom:3px solid #ccc;
  font-weight:700;
  padding:0 7px; }

div.pagination li a:hover,div.pagination li a.selected {
  background:url("../images/dark.jpg")repeat scroll 0 0 transparent;
  border:none;
  color:#fff; }

#gototop {
    
	
	background-color:#0990d8;
	
	}	
	
    /* #Back-to-Topic
--------------------------------------------------------- */
#gototop {
    position:fixed;
    bottom:0px;
    right:10%;
    display:none;
    background: url('../images/backtotopic_roll_s.png') 14px no-repeat;
	background-color: #b7bd00;
	border-radius: 10px 10px 0px 0px;
	border-top: 7px solid #dfe517;
	border-left: none;
	border-right: none;
	border-bottom: none;
	height: 60px;
	width: 60px;
	margin: 0px;
	border-radius: 3px;
	bottom: 90px;
	right: 30px;
	z-index: 10000000000;
}

#gototop:hover{background-color:#dfe517;}

  
  /* #Anker
--------------------------------------------------------- */

a.portfolio, a.ueberuns, a.kontakt {
  position: relative;
  top: -150px;}
  

  /* #Xmap
--------------------------------------------------------- */

.level_0 li {
  margin-left: 50px;
  list-style: none;
  color: #eda4ea;
  font-size: 14px;
  text-transform:uppercase;
  line-height: 2em;
  padding-left: 20px;
  background: url(../images/arrow_footer.png) 0 10px no-repeat; }

.level_1 {
  list-style: none;
  padding-left: 40px; }

.level_2 {
  list-style: none;
  padding-left: 80px; }
  
.level_0 ul {
  padding-bottom: 20px; }

.label {
  display: block; 
  width: 90px; 
  float: left; }
  
    /* #Fox Contact
--------------------------------------------------------- */
div#fox-container-m121{ 
	padding: 0 5px; 
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 1.5; } 
	
div#fox-container-m121 .controls {
    color: #707070;}
	
div#fox-container-m121 .fox_form select, div#fox-container-m121 .fox_form textarea, div#fox-container-m121 .fox_form input[type="text"] {   		
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 12px;}
	
div#fox-container-m121 .fox-form input[type="text"]:hover, div#fox-container-m121 .fox-form textarea:hover, div#fox-container-m121 .fox-form input[type="text"]:focus, div#fox-container-m121 .fox-form textarea:focus {
    background-color: #eefafe;} 

div#fox-container-m121 select, div#fox-container-m121 input[type="text"], div#fox-container-m121 input[type="email"] {
    height: 40px;}

  
     /* #Video
--------------------------------------------------------- */
 .avPlayerWrapper {
  	position:relative;       
    -webkit-box-shadow:0 20px 10px rgba(0, 0, 0, 0.4), 0 0 40px rgba(0, 0, 0, 0.2) inset;
       -moz-box-shadow:0 20px 10px rgba(0, 0, 0, 0.4), 0 0 40px rgba(0, 0, 0, 0.2) inset;
            box-shadow:0 20px 10px rgba(0, 0, 0, 0.4), 0 0 40px rgba(0, 0, 0, 0.2) inset;
	background: #111;
	padding: 15px;
	border-radius: 0px 10px;}
  
   /* #Transition
--------------------------------------------------------- */ 
a, .readmore a, .menu_top a, #bottom1, tr, .hlcyan, .button.center, .white a, .iconbutton img, div#fox-container-m121 .fox-form input[type="text"]:hover, div#fox-container-m121 .fox-form textarea:hover, div#fox-container-m121 .fox-form input[type="text"]:focus, div#fox-container-m121 .fox-form textarea:focus    {
  -webkit-transition: all 400ms ease-in-out;
     -moz-transition: all 400ms ease-in-out;
      -ms-transition: all 400ms ease-in-out;
       -o-transition: all 400ms ease-in-out;
          transition: all 400ms ease-in-out; }

	 