footer .left {
	padding-left: 0;
}/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../fonts/open-sans-v15-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* open-sans-300italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'),
       url('../fonts/open-sans-v15-latin-300italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-300italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'),
       url('../fonts/open-sans-v15-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('../fonts/open-sans-v15-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v15-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v15-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

html, body {
    height: 100%;
    width: 100%;
    max-height: 100%;
    max-width: 100%;
}

body {
    background: #eee;
    font-size: 18px;
    line-height: 1.4;
    font-family: 'Open Sans', Arial, sans-serif;
    font-weight: 300;
}

img {
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto;
}

article p a,
article p a:hover,
article p a:focus,
article p a:visited{
    color: rgb(0,159,227);
    text-decoration: none;
    position: relative;
}

article p a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: rgb(0,159,227);
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

article p a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.cc_container .cc_btn {
	background: rgb(0,159,227) !important;
	color: #fff !important;
}

.header {
    background: #fff; 
    margin-bottom: 1em;
}

.header .logo img {
    max-height:5em;
    margin: 1em 0;
}

.headerImg {
    margin-bottom:0;
}

.contactBtn{
	text-align: right;
	padding-right: 0;
	position: absolute;
	right: 0;
	z-index: 999;
}
.contactBtn:hover{
    cursor: pointer;
}

.contactBtn .contactBtnInner{
    position: relative;
    font-size: 0.9em;
}

.contactBtn .contactBtnInner .out {
    display: inline-block;
    padding: .25em .5em;
    background: rgb(0,159,227);
    color: #fff;
    font-weight: 400;
    border-radius: 0 0 0.5em 0.5em;
	font-size: 1.1em
}

.contactBtn .contactBtnInner .out .glyphicon {
    font-size: 0.9em;
	top:.15em;
	
}

.contactBtn .contactBtnInner .normal,
.contactBtn .contactBtnInner .notfall {
    display: none;
    padding: .35em .5em;	
	width: 14.2em;
	position: absolute;
	right: 0;
    color: #fff;
	font-size: 0.85em;
}

.contactBtn .contactBtnInner .normal {
	background: rgb(0,159,227);
	top: 1.95em;
}

.contactBtn .contactBtnInner .notfall {
	background: red;
	top: 4.25em;
}

.contactBtn:hover .contactBtnInner .out {
    text-align: right;
	width: 11em;
    border-radius: 0 0 0 0;
}

.contactBtn:hover .contactBtnInner .normal,
.contactBtn:hover .contactBtnInner .notfall {
    display: block;
}

nav {
	margin-top: 4em;
}

.navbar {
    border-radius: 0;
}

.nav > li > a:focus, .nav > li > a:hover {
	background-color: #fff;
}

nav a {
    color: rgb(0,75,156);
    display: block;
    position: relative;
}

.nav > li > a:before {
  content: "";
  position: absolute;
  width: calc(100% - 30px);
  height: 1px;
  bottom: 0;
  left: 15px;
  background-color: rgb(0,75,156);
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

.nav > li:hover > a:before,
.nav> li.active > a:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

nav .submenu {
    font-size: .85em;
    line-height: 1.5em;
    list-style-type: square;
}

nav a:hover {
    text-decoration: none;
}

.navbar-toggle .icon-bar {
    background: #fff;
}

.navbar, 
#navbar, 
.navbar-nav li:last-of-type a {
    padding-right: 0 !important;
}

.navbar-nav {
	float: right;
}

.breadcrumb {
    background: none;
    font-size: 0.75em;
    font-weight: 400;
}

.breadcrumb a {
    text-decoration: underline;
}

.breadcrumb a:after {
    content:"»";
    text-decoration: none;
    display: inline-block;
    margin-left: 5px;
}

.breadcrumb .active {
    font-weight: 600;
    color: rgb(0,75,156);
}

.content {
    background: #fff;
    padding-top: 1em;
    padding-bottom: 1em;
}

h1, h2, h3 {
    font-weight: 600;
    margin-bottom: .75em;
    color: rgb(0,75,156);
}

h1 {
    font-weight: 400;
    font-size: 1.75em;
}

h2 {
    font-size: 1.35em;
    font-weight: 400;
}

article h2 {
    margin-top: 1.5em;
}

h3 {
    font-size: 1em;
    color: #000;
    font-weight: 600;
    margin-top: 2em;
    margin-bottom: 0;
}

ul {
    padding-left: 1.2em;
}

article p {
    margin-bottom: 1em;
}

.carousel-indicators {
    margin-bottom: 0;
}

.teaser {
    font-size: 0.85em;
    margin: 2em 0;
    padding: 1em;
    text-align: center;
}

.gallery {
    margin: 1em auto;
}

.gmapsFrame {
    width: 100%;
    height: 450px;
}
.baustellenhinweis {
    position: absolute; 
    margin-top: -6.5em; 
    margin-left: -1.75em; 
    transform: rotate(-8deg);
	background: #fff;
	border: 1px solid #333;
	padding: 0.25em;
	
}

@media screen and (max-width:768px) {
	.baustellenhinweis {
		position: relative; 
		margin-top: .5em;
		margin-bottom:1em;
		margin-left: -.5em; 
		transform: rotate(0);
	}

    body{
        font-size: 16px;
    }
    
    .teaser {
        margin-bottom:0;
        font-size: 1em;
    }
    
    
    
    .gmapsFrame {
        height: 250px;
    }
    
    .nav > li {
        margin-bottom: .5em;
        border-bottom: 1px solid #477cb4;
        padding-bottom: 1em;
    }
    
    .navbar {
        position: absolute;
        right: 0;
        top: .5em;
        margin-top: 0;
    }
    
    .navbar-toggle .icon-bar {
        background: rgb(0,75,156);
    }
    
    .navbar-collapse.in {
        position: absolute;
        right: 1em;
        width: calc(100vw - 3em);
        background: rgb(0,75,156);
        z-index: 9999;
        padding: 0.5em;
        color: #fff !important;
    }
    
    nav li a{
        color: #fff !important;
        margin-left: 1.5em
    }
    
    nav li a.active,
    nav li a:hover {
        font-weight: 600 !important;
    }
    
    .nav > li > a:focus, 
    .nav > li > a:hover {
        background-color: transparent;
    }
    
    nav li .submenu a{
        margin-left: 3em;
        font-size: 1.1em;
        padding-bottom: .25em;
    }
    
    .navbar-nav {
        float: none;
        max-width: 100%;
    }
    
}

.teaserInner {
    background: none;
    position: relative;
}

.teaserInner img {
    width: 100%;   
}

.teaserTxt {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    transition: all 400ms ease;
    overflow: hidden
}
.teaserInner h2 {
    color: #fff;
    text-shadow: 0 0 0.75em #666;
}

.teaserInner p {
    margin-top:30em;
    line-height: 1.2em;
    color: #fff;
    padding: 0 .75em;
}

.teaserInner:focus .teaserTxt,
.teaserInner:hover .teaserTxt {
    background: rgba(0,75,156,.65);
}

.teaserInner:focus .teaserTxt p,
.teaserInner:hover .teaserTxt p {
    margin-top: 0;
}

footer {
    margin-top: 5em;
    font-size: 0.85em;
    background: rgba(0,75,156,.7);
    color: #fff;
}

footer h3 {
    font-weight: 700;
    color: #fff;
    margin-top: 1em;
}

footer a,
footer a:hover,
footer a:visited{
    color: #fff;
    text-decoration: underline;
}

footer a:hover {
    text-decoration: none;
    font-weight: 600;
}

footer .info {
    background: rgb(0,75,156);
    margin-top: 1em;
    padding: .5em 0 .25em 0;
}

footer .left {
	padding-left: 0;
}

footer span.zeit {
    width: 3.5em;
    display: inline-block;
}

hr.trenner {
    background: rgba(0,75,156,.5);
}

img.float-left {
    float: left;
    margin-right: 1em;
    margin-bottom: .5em;
}

.panel-body p:last-of-type{
    margin-bottom: 0;
}

.swipebox {
	display: block;
	float: left;
	width: calc(50% - 11px);
	margin-right: 10px;
}

.swipebox.zwei {
	width: calc(100% - 11px);
}

.swipebox.mittel {
	width: calc(100% - 11px);
}

#swipebox-slider .slide {
	max-height: 80vh;
	margin-top: 5vh;
}

#swipebox-bottom-bar, #swipebox-top-bar {
	transform: translate3d(0,-50px,0);
}

.swipebox {
    margin-bottom: 0.5em;
}

ul.blueDot li {
	color: rgb(0,159,227);	
}

ul.redDot li {
	color: red;	
}

ul li span {
	color: #333;	
}


@media screen and (min-width:768px) { 
	
	.swipebox {
		width: calc(12.5% - 11px);
	}
	
	.swipebox.zwei {
		width: calc(25% - 11px);
	}
	
	.swipebox.mittel {
		width: calc(19.25% - 11px);
	}
	
    .colum-1,
    .colum-2,
    .colum-3,
    .colum-4 {
        padding-right: 0;
    }

    .colum-1 {
        padding-left: 0
    }

    .colum-4 {
        padding-right: 0
    }
    
    .colum-4 .logo-innung {
        max-width: 75%;
    }
    
    footer .info .right {
        text-align: right;
    }
    
    nav .submenu {
        display: none;
        list-style: none;
    }
    
    nav li:hover .submenu {
        display: block;
    }
    
    nav .submenu {
        position: absolute;
        background: #fff;
        z-index: 999;
        width: auto;
        padding:.5em;
        padding-left: 1em;
        color: rgb(0,75,156);
        box-shadow: 0 0 .5em rgba(0,75,156,.25);
        border: 1px solid #ddd;
    }
    
    nav .submenu a {
        color: rgb(0,75,156);
    }
    
    nav .submenu li.active,
    nav .submenu li:hover {
        font-weight: 600;
    }
}

@media screen and (min-width:768px) and (max-width:1200px) {

    .nav li > a {
        padding: .5em !important;
        font-size: .85em;
    }
}

#CybotCookiebotDialog {
    box-shadow: 0 0 100vw 1000px rgba(0,0,0,.4) !important;
}