
* {
	line-height:140%;
	margin:0;
	padding:0;
	font-size:16px;
	}
body {
	background: #fff;
  	cursor: auto;
	font-family: 'Montserrat', sans-serif;
  	font-style:normal;
  	font-weight:400;
  	line-height: 1.5;
  	margin: 0;
  	padding: 0;
	}

/*****************/
#logo {
	 -webkit-transition: all .5s;
    transition: all .5s;
	padding:30px 0 32px 10px;
	border:0;
	max-width:300px;
	}
	:active, :focus {
	outline: none
	border: 0; 
	}
/**************************/
.banner {position:absolute; z-index:99999; top:10%; left:25%;width:50%;background:rgba(245,156,0,0.8);padding:10px 40px;display:block;text-align: center}
.clearbanner{cursor:pointer;  width:100%; height:36px; text-align:center;transition-duration:.2s;display: block;}
.clearbanner span {background: #505d5d; width:300px; margin:auto;padding:6px 10px; font-size: 18px; color:#fff;}
.clearbanner:hover{  filter: brightness(120%); color:#fff; }
.banner h2, .banner h3 {  color:#fff;}
.banner h3 { font-weight:bold}

/**************************/
.header {
	position: fixed;
  	width: 100%;	
	background:#505d5d;
  	height: 150px;
	-webkit-transition: all 0.4s ease;
 	transition: all 0.4s ease;
 	z-index:500;
	}
.abstand_header {
	padding-top:220px;
	}
.scrolled-nav {
  	height: 100px !important;
	-webkit-transition: all 0.4s ease;
 	transition: all 0.4s ease;
	}
.scrolled-nav ul#menu {
  	-webkit-transition: all .5s;
    transition: all .5s;
	padding-top:35px;
	}
.scrolled-nav  #logo {
	 -webkit-transition: all .5s;
    transition: all .5s;
	padding:10px 0 23px 10px;
	max-width:210px;
	}
.header span {
	margin:20px 0 -20px 0;
	font-family: 'Montserrat', sans-serif;
	font-size:0.90em;
	text-decoration:none;
	letter-spacing:0.03em;
	text-transform:uppercase;
	color:#fff;
	padding:0 20px;
    z-index:100;
	}
.header span a{
	font-size:100%;
	font-weight:bold;
	}
.header span.fon, .header span.fon a { 
	color:#f59c00;
	}
.header span.mail, .header span.mail a { 
	color:#fff;
	}
/**************************/	
.footer {
	background:#505d5d;
	height:auto;
	padding:40px 10px 100px 10px;
	}
.footer p, .footer table {
	font-family: 'Montserrat', sans-serif;
	font-size:0.90em;
	text-decoration:none;
	letter-spacing:0.03em;
	text-transform:uppercase;
	color:#fff;
	line-height:170%;
	}	
.footer p {
	margin:30px 0 0 20px;
	}
.footer a, .footer a:visited {
	font-size:100%;
	color:#fff;
	}
.footer img {
	max-width:210px;
	margin:30px 0;
	}	
.footer table {
	max-width:370px;
	margin:0 20px 42px 20px;
	}
.footer table.unstriped tbody td{
	font-size:0.90em;
	padding:3px 0;
	text-align:left;
	}
.footer #back-top img {
	width:40px;
	}
/**************************/	
ul#menu {
	-webkit-transition: all .5s;
    transition: all .5s;
	display:block;
    font-family: 'Montserrat', sans-serif;
	list-style-type:none;
	padding-top:75px;
	margin:0;
	text-align:right;
	}
ul#menu li{
	padding:0;
	display:inline-block;
    padding:0 0 10px 8px;
	}
ul#menu li a{
	color: #fff;
    font-family: 'Montserrat', sans-serif;
	font-weight:500;
	font-size:0.9em;
	margin:0;
	padding:2px 4px;
	text-decoration:none;
	letter-spacing:0.03em;
	text-transform:uppercase;
	}
ul#menu li a:hover, ul#menu li a#current {
	text-decoration:none;
	color: #f59c00;
	cursor:pointer;
	margin:0;
	padding:2px 4px;
	}

a.terminbutton, p.termin a  {
    display: inline-block;
    margin:0 4px 0 0;
    background:#f59c00;
    padding:4px 10px;
    -webkit-border-top-left-radius: 9px;
    -webkit-border-bottom-right-radius: 9px;
    -moz-border-radius-topleft: 9px;
    -moz-border-radius-bottomright: 9px;
    border-top-left-radius: 9px;
    border-bottom-right-radius: 9px;
    color: #fff !important;
	font-weight:700;
	font-size:0.9em;
	text-decoration:none;
	letter-spacing:0.03em;
	text-transform:uppercase;
    }
a.terminbutton:hover, p.termin a:hover { 
     color:#f59c00 !important;
     background:#fff;
    }
/**************************/

h1 {
    font-family: 'Montserrat', sans-serif;
	color:#505d5d;
	font-weight:700;
	font-size:2.2em;
	}
h2 {
    font-family: 'Montserrat', sans-serif;
	color:#505d5d;
	font-weight:700;
	font-size:1.8em;
	}
h3  {
    font-family: 'Montserrat', sans-serif;
    color:#505d5d;
	font-weight:400;
	font-size:1.1em;
	text-transform:uppercase;
	line-height:170%;
	}
p, ul.aufzaehl li{
	color:#505d5d;
    font-family: 'Montserrat', sans-serif;
	font-weight:400;
	font-size:1.1em;
	font-style:normal;
	line-height:170%;
	}
p a, p a:visited {
	font-size:100%;
	color:#505d5d;
	}
p a:hover, p a:visited:hover {
	color:#f59c00;
	}

/**************************/

h1 {
	margin:30px 10px;
	}
h2 {
	margin:80px 10px 10px 10px;
	}
h3 {
	margin:10px 10px 30px 10px;
	}
p {
	margin:20px 10px 20px 10px;
	}

ul.aufzaehl {
	list-style-type:none;
	margin:5px 25px 40px 25px;
	}
ul.aufzaehl li{
	margin:5px 0px;
	padding:0 0;
	}
ul.aufzaehl li img  {
	width:13px;
	height:auto;
	margin:0 5px;
	}
table.inhalt {
	max-width:370px;
	margin:0 60px 42px 60px;
	}
table.unstriped.inhalt tbody td{
	color:#505d5d;
	font-size:1.1em;
	padding:3px 0;
	text-align:left;
	}
/**********************/  
.abgerundet {
	-webkit-border-bottom-right-radius: 60px;
	-moz-border-radius-bottomright: 60px;
	border-bottom-right-radius: 60px;
	}
	
a .teaser {
	-webkit-border-top-left-radius: 60px;
	-webkit-border-bottom-right-radius: 60px;
	-moz-border-radius-topleft: 60px;
	-moz-border-radius-bottomright: 60px;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	min-height:462px;
	  text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
    margin:20px 5px;
     transition: background 0.45s ease-out !important;
	}
a .teaser p {
	color:#505d5d;
	font-size:1.8em;
	font-weight:700;
	padding:15px;
	}
a:hover .teaser p {
	color:#fff;
	}
a:hover .teaser {
	 transition: background 0.45s ease-in;
	}
	
a:hover .teaser.color01 {
		background: #ac9623;
	}
a:hover .teaser.color02 {
		background: #1c5b6d;
	}
a:hover .teaser.color03 {
		background: #9d948e;
	}	
a:hover .teaser.color04 {
		background: #706f6f;
	}	
a:hover .teaser.color05 {
		background: #727f27;
	}	
a:hover .teaser.color06 {
		background: #505d5d;
	}
	
.abstandunten {
	padding-bottom:80px;
	}

.pin {
	width:80px;
	}


/**********************************************/


#kasten {

	-webkit-border-top-left-radius: 60px;
	-webkit-border-bottom-right-radius: 60px;
	-moz-border-radius-topleft: 60px;
	-moz-border-radius-bottomright: 60px;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	min-height:450px;
	padding:20px;
    margin:35px 0;
	}
#kasten h2, p.hinw {position: relative;}
#kasten h2 a, p.hinw a {position: absolute; top:-295px;}	


.color01 {
		border:1px solid #ac9623;
	}
.color02 {
		border:1px solid #1c5b6d;
	}
.color03 {
		border:1px solid #9d948e;
	}	
.color04 {
		border:1px solid #706f6f;
	}	
.color05 {
		border:1px solid #727f27;
	}	
.color06 {
		border:1px solid #505d5d;
	}			
.abstand {
	margin-top:120px;
	}	
.gr-abstand {
	margin-top:220px;
	}	
.neg-abstand {
	margin-top:-220px;
	}	
#kasten_team {

	-webkit-border-top-left-radius: 60px;
	-webkit-border-bottom-right-radius: 60px;
	-moz-border-radius-topleft: 60px;
	-moz-border-radius-bottomright: 60px;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	min-height:304px;
	padding:20px;
    margin:17px 0;
    border:1px solid #505d5d;
	}	
.team img{
	margin:17px 0;
	}	
/**********************************************/
@media only screen and (max-width: 1024px)  {

    
.banner { top:10%; left:5%;width:90%;}
.clearbanner{margin:30px auto;}
.banner h2, .banner h3 {  color:#fff;}
.banner h3 { font-weight:bold}
    

ul#menu {
	margin-top:0;
	padding-top:0;
	text-align:center;
	}
.header {
	position: relative;
	height:182px;
	}
 .scrolled-nav ul#menu {
  	-webkit-transition: all .5s;
    transition: all .5s;
	padding-top:65px;
	}

h2 {
	margin:20px 20px 0 20px;
	}
p, table {
	margin:20px;
	}

.abstand {
	margin-top:10px;
	}	
.gr-abstand {
	margin-top:0;
	}	
.neg-abstand {
	margin-top:0;
	}	
	
}

/**********************************************/
@media only screen and (max-width: 40em) {

.abstand_header {
	padding-top:0;
	}
.scrolled-nav  #logo {
	 -webkit-transition: all .5s;
    transition: all .5s;
	padding:0 0 0 0;
	max-width:300px;
	} 
#logo {
	margin:0;
	border:0;
	padding:30px 0 30px 10px;
	}
ul#menu {
	display:block;
	margin:0 0;
	float:none;
	width:95% !important;
	}
ul#menu li{
	width:100%;
	margin:0;
	display:block;
	text-align:left;
	border-bottom:1px solid #b5b4b4;
	}
ul#menu li:last-child{
	border-bottom:none;
	}
ul#menu li a{
	width:100%;
	padding:10px 10px 0 10px;
	}
ul#menu li a:hover, ul#menu li a#current {
	width:100%;
	padding:10px 10px 0 10px;
	}
a.terminbutton {
    position: absolute;
    right: 10px;
    }
.header {
	position: relative;
	height:auto;
	}
.header span {
	margin:0;
	font-family: 'Montserrat', sans-serif;
	font-size:0.90em;
	text-decoration:none;
	letter-spacing:0.03em;
	text-transform:uppercase;
	color:#fff;
	padding:0 20px;
	}
.header span a{
	font-size:100%;
	font-weight:bold;
	}
.header span.fon { 
	margin-top:-20px;
	}
.header span.mail { 
	display:none;
	}
h1 {
	font-size:1.5em;
	margin:35px 10px 3px 10px;
	}	
h2 {
	font-size:1.15em;
	margin:25px 10px 20pxpx 10px;
	}
h3 {
	font-size:1.0em;
	margin:15px 10px 3px 10px;
	}	
p {
	font-size:1.0em;
	margin:10px 10px 20px 10px;
	}
.text-right {
	text-align:left;
	}

#kasten {
	min-height:250px;	
	}
#kasten h2 {position: relative;}
#kasten h2 a {position: absolute; top:-55px;}	

.footer p {
	margin:40px 0 0 0;
	}
.footer table {
	max-width:90%;
	margin:0;
	}
table.inhalt {
	max-width:370px;
	margin:0 10px 22px 10px;
	}
 table.unstriped tbody td {
	font-size:0.88em;
	margin:0;
	}
	
}


