/**
colors:
rot: #cc0033
dunkelrot: #770014

hellgrau panels #eef1f5


 * 
 */

/* Basics */
/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  color: #222222;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  margin-top: 0.2rem;
  text-rendering: optimizeLegibility; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    color: #6f6f6f;
    font-size: 60%;
    line-height: 0; }

h1 {
  font-size: 1.6875rem; }

h2 {
  font-size: 1.6875rem; }

h3 {
  font-size: 1.375rem; }

h4 {
  font-size: 1.125rem; }

h5 {
  font-size: 1.125rem; }

h6 {
  font-size: 1rem; }

.b-start main h3,
.b-start .main h3,
.teaser h3
 {
    border-bottom: 1px solid #dbdee4;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
}

main h2,
.main h2
 {
    border-bottom: 1px solid #dbdee4;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
}



figure {
	padding: 0;
	margin: 0;
}


.wrapper {
	max-width: 65rem;
	margin: 0 auto;
}

header {
	padding-top: 1rem;
}

.logobox {
	padding: 1rem;
}

.navbox {
	padding: 0;
}

.teaser {
	margin-bottom: 1.5rem;
}

button, .button {
	padding: .5rem 2rem .625rem;
}

/* -- Navigation ----------------------------------------------- */


/* -- Slider/Keyvisual ----------------------------------------------- */
.keyvisual {
	padding: 0;
	width: 100%;
	background: #dbdee4;
	margin-bottom: 2rem;
}

.b-start .keyvisual {
	margin-bottom: 0;
}


/* -- Teaser Start ----------------------------------------------- */
.teaser_leistung {
	width: 100%;
}

.teaser_leistung .row:first-child {
	border-top: 4px solid #fff;
}

.teaser_leistung h2 {
	margin: 0;
}

.teaser_leistung h2 a {
	display: block;
	color: #fff;
	width: 100%;
	height: auto;
	font-size: 1rem;
	font-weight: bold;
	text-transform: uppercase;
	margin: 0;
	padding: 1rem;
	display: block;
	min-height: 5rem;
	background: #770014;
	background: #960019;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	transition: background-color 300ms ease-out 0s;
}

.teaser_leistung h2 a:hover {
	background: #cc0033;
	background: #770014;
}

.teaser_leistung .columns {
	margin: 0;
	padding: 0;
}

.teaser_leistung .teaser_leistung_mod {
	background: #960019;
	background: #cc0033;
	border-bottom: 4px solid #fff;
	color: #fff;
	height: auto;
	min-height: 280px;
}

.teaser_leistung .teaser_leistung_mod div {
	padding: 1.5rem 1rem 1rem 1rem;
}

.teaser_leistung .teaser_leistung_mod .button {
	padding: 0.5rem 2rem 0.625rem;
	margin-top: 1.5rem;
	border-radius: 5px;
	font-size: .875rem;
	background: #960019;
}

.teaser_leistung .teaser_leistung_mod .button:hover {
	background: #770014;
}

.teaser_leistung_mod {
	text-align: center;
}

.main,
aside {
/*	margin: 3rem 0;*/
	padding: 3rem 0;
}

.b-start .main {
	margin-top: 0;
}


ul.bullet {
	margin-left: 0;
}

ul.bullet li {
	list-style: none;
	margin-bottom: .5rem;
	padding-left: 1.75rem;
	background: transparent url(../img/layout/content_list.gif) no-repeat scroll center left;
}

/* -- Clearing Gallery ----------------------------------------------- */
.clearing-thumbs li, [data-clearing] li {
	margin-bottom: 10px;
}

.th:hover, .th:focus {
    box-shadow: 0 0 6px 1px rgba(51, 51, 51, 0.5);
}

/* -- Accordeons ----------------------------------------------- */

.accordion .accordion-navigation {
    display: block;
    margin-bottom: 0.25rem !important;
}

ul.accordion {
	margin-left: 0;
}

.accordion .accordion-navigation > a {
	background: #eef1f5;
}

.accordion .accordion-navigation > a:hover,
.accordion .accordion-navigation.active > a {
	background: #dbdee4;
}


.accordion .accordion-navigation > a:before {
    content: "+";
	font-size: 1.25rem;
	font-weight: bold;
	color: #cc0033;
	padding-right: 1rem;
}

.accordion .accordion-navigation.active > a:before {
    content: "-";
}




/* -- Googlemap ------------------------------------------------- */

#map {
    width: 100%;
    height: 15rem;
    border: none;
    margin-bottom: 0;
    margin-top: 0;
}

#map img {
    max-width: none;
    height: auto;
    }

span.pos {
    display: inline-block;
    padding: 2px 4px 1px 5px;
    border: 1px dotted silver;
    color: silver;
    line-height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

#map .gm-style-iw {
    width: 100% !important;
    height: auto !important;
}

#mapcontent1  {
    width: 100%;
    height: auto;
	padding: .5rem 1.5rem 0 0;
}

#mapcontent1 p {
    color: #222;
    width: 100%;
    font-size: .75rem;
	padding: 0 1rem;
}


footer {
	background: #dbdee4;
	padding: 3rem 0 2rem 0;
}

footer .right {
	float: none !important;
}

footer .inline-list > li {
	margin-left: 0;
	padding-left: 0;
}

/*------------------------------------*\
    Mediaqueries
\*------------------------------------*/
@media only screen and (min-width:40.063em) { 
	
	
	/* Teaser Leistung */
	.teaser_leistung .teaser_leistung_mod {
		min-height: 220px;
	}

	.teaser_leistung .columns:nth-child(1) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(3) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(5) .teaser_leistung_mod
	 {
		border-left: 0;
		border-right: 2px solid #fff;
	}
	
/*	.teaser_leistung .columns:nth-child(2) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(5) .teaser_leistung_mod
	 {
		border-left: 2px solid #fff;
		border-right: 2px solid #fff;
	}*/
	
	.teaser_leistung .columns:nth-child(2) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(4) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(6) .teaser_leistung_mod
	 {
		border-left: 2px solid #fff;
		border-right: 0;
	}

}

@media only screen and (min-width:58.75em) {
	
	header {
		padding: 0 0 1.5rem 0;
	}
	
	.logobox {
		width: 28%;
		padding: 1rem;
		
	}
	
	.logo {
		margin-top: 1.5rem;
		display: inline-block;
	}
	
	
	/* -- Navigation ----------------------------------------------- */
	
	.navbox {
		width: 72%;
	}
	
	.top-bar {
		background: #fff;
	}
	
	.top-bar-section ul,
	.top-bar-section ul li {
		background: #fff;
	}

	.top-bar-section li:not(.has-form) a:not(.button) {
		background: #fff;
		font-size: .875rem;
		color: #666;
		padding: 0 0.75rem;
		line-height: 7rem;
		text-transform: uppercase;
		transition: background-color 300ms ease-out 0s;
	}

	.top-bar-section li:not(.has-form) a:not(.button):hover {
		background: #960019;  
  	  	color: #fff;
  	}
	
	.top-bar-section li.curr:not(.has-form) a:not(.button) {
		background: #cc0033; 
  	  	color: #fff;
  	}
	
	.top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] {
	    border-bottom: medium none;
	    border-right: 1px solid #ddd;
	    border-top: medium none;
	    clear: none;
	    height: 7rem;
	    width: 0;
	}
}

@media only screen and (min-width:64em) {
	
	header {
		padding: 0 0 1.5rem 0;
	}
	
	.logobox {
		width: 30%;
	}
	
	.logo {
		margin-top: 1.5rem;
		margin-left: 0;
		display: inline-block;
	}
	
	/* -- Navigation ----------------------------------------------- */
	
	.navbox {
		width: 65%;
	}
	
	.top-bar {
		background: #fff;
	}
	
	.top-bar-section ul,
	.top-bar-section ul li {
		background: #fff;
	}

	.top-bar-section li:not(.has-form) a:not(.button) {
		background: #fff;
		font-size: .8125rem;
		color: #666;
		padding: 0 0.75rem;
		line-height: 7rem;
		text-transform: uppercase;
		transition: background-color 300ms ease-out 0s;
	}

	.top-bar-section li:not(.has-form) a:not(.button):hover {
		background: #960019;  
  	  	color: #fff;
  	}
	
	.top-bar-section li.curr:not(.has-form) a:not(.button) {
		background: #cc0033; 
  	  	color: #fff;
  	}
	
	.top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] {
	    border-bottom: medium none;
	    border-right: 1px solid #ddd;
	    border-top: medium none;
	    clear: none;
	    height: 7rem;
	    width: 0;
	}
	  
	  
	 /* -- Teaser Start ----------------------------------------------- */
	.teaser_leistung .columns:nth-child(1) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(4) .teaser_leistung_mod
	 {
		border-left: 0;
		border-right: 2px solid #fff;
		/*		background: green;*/
	}
	
	.teaser_leistung .columns:nth-child(2) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(5) .teaser_leistung_mod
	 {
		border-left: 2px solid #fff;
		border-right: 2px solid #fff;
		/*		background: yellow;*/
	}
	
	.teaser_leistung .columns:nth-child(3) .teaser_leistung_mod,
	.teaser_leistung .columns:nth-child(6) .teaser_leistung_mod
	 {
		border-left: 2px solid #fff;
		border-right: 0;
		/*		background: blue;*/
	}
	
	#map {
	    width: 100%;
	    height: 27.875rem;
	}
	
	footer .right {
		float: right !important;
	}

}


@media only screen and (min-width:90.063em) { }


@media only screen and (min-width:120.063em) { }	

@media print {
    .top-logo, nav, footer ul {
        display: none;
    }
    
    .keyvisual {
        min-height: auto;
    }
    
    .keyvisual .show-for-small
     {
       display: none;
    }
	
	.panel.map-panel {
		background-color: rgba(255,255,255,.9);
		border: none;
		margin-bottom: 0;
		padding: 0;
	}

	#map {
	    width: 100%;
	    height: 15em;
		height: 100%;
	    border: 3px solid #fff;
	}

	#map img {
	    max-width: none;
	    height: auto;
	    }

	span.pos {
	    display: inline-block;
	    padding: 2px 4px 1px 5px;
	    border: 1px dotted silver;
	    color: silver;
	    line-height: 100%;
	    -webkit-touch-callout: none;
	    -webkit-user-select: none;
	    -khtml-user-select: none;
	    -moz-user-select: none;
	    -ms-user-select: none;
	    -o-user-select: none;
	    user-select: none;
	}

	#map .gm-style-iw {
	    width: 100% !important;
	    height: auto !important;
	}

	#mapcontent1  {
	    width: 100%;
	    height: auto;
		padding: .5rem 1.5rem 0 0;
	}

	#mapcontent1 p {
	    color: #222;
	    width: 100%;
	    font-size: .75rem;
		padding: 0 1rem;
	}
	
    
    a[href]:after {
      content: ""; }
	
	.accordion .accordion-navigation > .content, .accordion dd > .content {
	    display: block;
	    padding: 1.25em;
	}
}
	