@charset "UTF-8"; /*
Theme Name: Schutzpartner
Author: Manuel Isenschmid
Author URI: x
Description: Main theme for the official website of Schutzpartner GmbH
Version: 1.1.0 */

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Typography
# Elements
# Gallery
# Lazy/Progressive Loading
# Helper
# Fixed
# Menue
# Navigation
# Forms
# Boltforms
# Animation
# SVG
# Bootstrap Extension
# Google
# Media Queries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
@font-face {
		font-weight: bold;
		font-style: normal;
		font-family: 'MaisonNeue';
		src: url('../source/font/MaisonNeue-Bold.woff') format('woff'); }
@font-face {
		font-weight: 500;
		font-style: normal;
		font-family: 'MaisonNeue';
		src: url('../source/font/MaisonNeue-Bold.woff') format('woff'); }
@font-face {
		font-weight: normal;
		font-style: normal;
		font-family: 'MaisonNeue';
		src: url('../source/font/MaisonNeue-Book.woff') format('woff'); }
@font-face {
		font-weight: normal;
		font-style: normal;
		font-family: 'MaisonNeueMono';
		src: url('../source/font/MaisonNeueMono-Regular.woff') format('woff');
}

html{
		scroll-behavior: smooth;
}

body{
		background-color: #00BF6F; /* green */
	  margin: 0;
}

body, button, input, select, textarea {
		color: #FFF;
		font-family: 'MaisonNeue', sans-serif;
	  font-weight: normal;
		font-size: 13.5px;
	  line-height: 1.45;
		letter-spacing: .35px;
	  /*-moz-font-feature-settings: "frac";
	  -webkit-font-feature-settings: "frac";
	  font-feature-settings: "frac";
	  font-variant-numeric: ordinal;
	  -moz-font-feature-settings: "ordn";
	  -webkit-font-feature-settings: "ordn";
	  font-feature-settings: "ordn"*/
}
.bg-light{
		color: #7B3F92; /* violet */
}
input, select, textarea {
		font-size: 15px;
		font-weight: bold;
}

html{
		quotes: "\00AB" "\00BB" "\2039" "\203A";
		quotes: "«" "»" "‹" "›"; }
html.has-overlay{
		overflow-y: hidden;
}

::selection{
		color: #f5f5f5; background-color: #7B3F92; text-shadow: 0; }
::-moz-selection{
		color: #f5f5f5; background-color: #7B3F92; text-shadow: none;
}

blockquote, dd, div, dl, dt, form, h1, h2, .like-h1, .like-h2,
h3, h4, h5, h6, li, ol, p, pre, td, th, ul {
		margin: 0;
		padding: 0; }
a, b, em, i, small, strong {
		line-height: inherit; }
dl, ol, p, ul {
  	margin-bottom: 15px;
}

hr{
		margin: 10px 0;
		border: 0;
		border-top: 3px solid rgba(238,238,238,1); }
.entry hr{
		width: auto;
		margin: 0;
}

h1, h2, h3, h4, h5, h6, .like-h1, .like-h2{
		color: #FFF;
		font-family: 'MaisonNeue', 'Helvetica', sans-serif;
	  font-weight: bold;
	  text-align: left;
		text-rendering: optimizeLegibility;
}
.bg-light h1, .bg-light h2, .bg-light h3,
.bg-light h4, .bg-light h5, .bg-light h6,
.bg-light .like-h1, .bg-light .like-h2{
		color: #7B3F92; /* violett */
}

h1, .like-h1{
		/*font-family:'Minion Pro', 'Palatino', serif;*/
	  font-size: 33px;
		font-weight: 900;
	  line-height: 1;
	  letter-spacing: -.25px;
	  margin-top: 50px;
	  margin-bottom: 50px;
}
h2, .like-h2{
	  font-size: 25px;
	  line-height: 1.1;
	  letter-spacing: -.15px;
	  margin-top: 50px;
	  margin-bottom: 15px;
}
h3{
	  font-size: 16px;
	  line-height: 1.3;
		letter-spacing: 0;
	  margin: 25px 0 10px 0; }
.type-news .content h3,
.type-angebote .content h3{
  	font-size: 17px;
}
h4{
	  font-size: 14px;
	  line-height: 1.4;
	  letter-spacing: 0;
	  margin: 10px 0 10px 0; }
.type-news .content h4,
.type-angebote .content h4{
		font-size: 17px;
}
h5{
	  font-size: 14px;
		font-weight: 500;
	  line-height: 1.4;
	  letter-spacing: 0;
	  margin: 0;
}

.line-2{
		display: inline-block;
}
h1 .line-2, h2 .line-2, h3 .line-2,
h3 .line-2, h4 .line-2, h6 .line-2,
.spacer-left{
		margin-left: 20px!important;
}
.row-spacer-left{
		padding-left: 20px!important;
}
.spacer-left-xl{
		margin-left: 40px!important;
}
@media screen and (max-width: 639px) {
		h1 .line-2, h2 .line-2, h3 .line-2,
		h3 .line-2, h4 .line-2, h6 .line-2,
		.spacer-left{
				margin-left: 10px!important;
		}
		.row-spacer-left{
				padding-left: 10px!important;
		}
		.spacer-left-xl{
				margin-left: 20px!important;
		}
}



p{
		/*letter-spacing:-.15px;*/
	  -ms-hyphens: manual;
	  -webkit-hyphens: manual;
	  hyphens: manual;
	  text-rendering: optimizeLegibility;
}

.type-news .header .teaser,
.type-angebote .header .teaser{
		font-size: 16px;
		font-weight: 500;
		line-height: 1.4;
		margin-bottom: 10px;
}
.lead, div.lead p{
		color: #7B3F92;
	  font-size: 16px;
	  font-weight: 500;
	  line-height: 1.5;
	  margin-bottom: 25px;
}
.bg-violet .lead, .bg-violet div.lead p{
		color: #fff;
}

.type-news .font-body,
.type-angebote .font-body{
		font-size: 16px;
}

small, small p, .meta,
.type-news .quellen{
		font-family: 'MaisonNeueMono', monospace;
		font-weight: bold;
		font-style: normal;
	  font-size: 11px;
		line-height: 1.5;
		letter-spacing: 0; }
.meta{
  	margin-bottom:0; }
.meta-large{
		font-size:13px;
		margin-bottom:15px;
}

@media screen and (min-width: 768px) {
		a, a p{
				-webkit-transition: color .25s, border-color .25s, padding .25s;
				-moz-transition: color .25s, border-color .25s, padding .25s;
				-ms-transition: color .25s, border-color .25s, padding .25s;
				-o-transition: color .25s, border-color .25s, padding .25s;
				transition: color .25s, border-color .25s, padding .25s;
		}
}
a, .menu li a, .nav-element a{
		color: inherit; /* #7B3F92; /*inherit;*/
		text-decoration: none;
}
p a{
		padding: 0 1px;
		margin: 0 -1px;
		border-bottom: 1px solid rgba(255,255,255,.5); }
.bg-light p a{
		border-bottom: 1px solid rgba(123,63,146,.25); }
.bg-green p a:hover{
		color: #7B3F92!important;
		border-bottom: 1px solid rgba(123,63,146,.25)!important;
}

a:hover{
		cursor: pointer!important;
	}
a:hover, a:focus,
p a:hover, p a:focus,
a:hover p, a:focus p,
.menu li a:hover, .menu li a:focus,
a.active{
		color: #7B3F92;
		border-color: gba(123,63,146,1);
		text-decoration: none;
}
.bg-violet a:hover, .bg-violet a:focus,
.bg-violet p a:hover, .bg-violet p a:focus,
.bg-violet a:hover p, .bg-violet a:focus p,
.bg-violet .menu li a:hover, .bg-violet .menu li a:focus,
.bg-violet a.active{
		color: #00BF6F;
		border-color: rgba(0,191,111,1);
}
.bg-white a:hover, .bg-white a:focus,
.bg-white p a:hover, .bg-white p a:focus,
.bg-white a:hover p, .bg-white a:focus p,
.bg-white .menu li a:hover, .bg-white .menu li a:focus,
.bg-white a.active{
		color: #00BF6F;
		border-color: rgba(0,191,111,1);
}

h1 a, .like-h1 a{
		display: inline-block;
		border-width: 3px;
		padding: 0 2px;
		margin: 0 -2px;
}
h2 a, .like-h2 a, h3 a{
		display: inline-block;
		border-width: 1px;
		padding: 0 1px;
		margin: 0 -1px;
}

.active a, a.active,
.menu li a.active,
.menu li.active a{
		color: #000;
		border-color: transparent;
}

blockquote,
blockquote p{
		font-size: 30px;
	  font-weight: 900;
	  color: #7B3F92;
	  line-height: 1.25;
		margin: 0; padding: 0; border: 0;
}
blockquote i{
		display: block;
		font-size: 14px!important;
		letter-spacing: 0;
		text-align: right;
		margin-top: 8px; }
blockquote i::before{
		position: absolute;
	  content: "\2015";
	  margin-left: -16px; }
blockquote p::before{
		content: "«";
		margin-right: 3px; }
@media screen and (min-width: 640px) {
		blockquote p::before{ margin-left: -16px; }
}
blockquote p::after{
		content: "»";
		margin-left: 3px;
}

blockquote.large{
		text-align: center;
		margin: 60px auto 90px; }
blockquote.large p{
		color: #7B3F92;
}



/* Change List Bullet Icon*/
.main-content ul {
	  list-style-type: none!important;
	  padding-left: 20px; text-indent: -20px; }
.main-content .font-body ul{
		padding-left: 18px; }
.main-content ul > li {
		margin-bottom: 5px; }
.main-content ul > li:before {
  	content: "\2014\a0";
}

code, kbd, pre, samp {
	  font-family: 'MaisonNeueMono', monospace;
	  font-size: 1em;
	  color: #0a0a0a }
abbr {
	  border-bottom: 1px dotted #0a0a0a;
	  color: #0a0a0a;
	  cursor: help; }
code {
	  padding: .125rem .3125rem .0625rem;
	  border: 1px solid #cacaca;
}

mark{
		color:#000;
	  background-color:#F4CC00;
		padding:2px 4px;
}


/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

*, ::after, ::before {
  	box-sizing: inherit;
}
html {
	  box-sizing: border-box;
	  font-size: 100%; }
body {
		/*-webkit-transform:translate3d(0,0,0); verträgt sich nicht mit position:fixed; */
	  -webkit-font-smoothing: antialiased;
	  -moz-osx-font-smoothing: grayscale; }
body, html{
  	overflow-x: hidden;
}

img {
	  display:inline-block;
	  border-style:none; height:auto;
	  -ms-interpolation-mode:bicubic;
	  max-width:100%;
	 	font-size:12.75px;
		text-align:center;
		color:rgba(10,10,10,.3);
		background-color:rgba(238,238,238,1); }
.transparent img,
img.transparent{
		background-color:transparent; }
img.empty{
		width:100%;
		padding-bottom:30%;
}


/* 0. Ebene */
a.skip-main:focus, a.skip-main:active {
  	z-index: 999999999999; }
/* 1. Ebene */
#branding, #menu-toggle{
  	z-index: 99999999; }
/* 2. Ebene */
#menu, .overlay{
  	z-index: 9999999; }
/* 3. Ebene */
#top-bar{
  	z-index: 999999; }
/* 4. Ebene */
.top-bar-site-nav{
  	z-index: 99999;
}

.container-fluid{
  	padding: 0;
}
.main-content .container-fluid{
	  margin-top: 50px;
		margin-bottom: 80px; }
.main-content .container-fluid:first-of-type{
		margin-top: 0;
}

.container-fluid.site-nav{
  	margin: 75px auto 0 auto!important;
}
.main-content .container-fluid .row:not(.list) > div:last-of-type,
.main-content .container-fluid .row:not(.list) > p:last-of-type{
		margin-bottom: 0;
}
.main-content > .container-fluid h1{
		margin-top: 0;
}
.container-fluid > .row > div > h1:first-child, .container-fluid > .row > div > h2:first-child,
.container-fluid > .row > div > h3:first-child, .container-fluid > .row > div > h4:first-child{
  	margin-top: 0;
}
.main-content h1 + .container-fluid, .main-content h2 + .container-fluid,
.main-content h3 + .container-fluid, .main-content h4 + .container-fluid,
.main-content h5 + .container-fluid, .main-content h6 + .container-fluid{
  	margin: 30px 0 60px;
}

.row {
	  /*max-width: 75rem;*/
	  margin-right: auto;
	  margin-left: auto; }
.row::after, .row::before {
	  display: table;
	  content: ' '; }
.row::after { clear: both; }
.row .row{
		margin-right: -15px;
		margin-left: -15px;
}

.column:last-child:not(:first-child),
.columns:last-child:not(:first-child) {
		float: right; }
.column.end:last-child:last-child,
.end.columns:last-child:last-child {
		float: left; }
.column.row.row, .row.row.columns {
		float: none;
}

.row .column.row.row, .row .row.row.columns {
	  margin-right:0; margin-left:0;
	  padding-right:0; padding-left:0;
}

.row.eq-height {
	  display: flex;
	  flex-wrap: wrap; }
.row.eq-height > [class*='col-'] {
	  display: flex;
	  flex-direction: column;
}


/* Blocks Site */
.columns .columns { padding:0; }
.Blocks > .row{ margin:0; }
.Blocks h1{
		text-align:center;
		width:100%;
}

/*#lightbox{  FOR LATER USE
	  position:fixed;
	  top:40px;left:40px;
	  height:calc(100% - 80px);width:calc(100% - 80px);
	  background-color: #2f486d;
	  background-image: url("../images/content/IMG_6998-3000px.jpg");
	  background-size: cover;
	  background-position: center center;
	  background-repeat: no-repeat;
	  z-index: 9999;
}*/

.top-bar::after { clear: both; }
.top-bar::after, .top-bar::before { display: table; }
.clearfix::after, .clearfix::before, .tabs::after, .tabs::before,
.title-bar::after, .title-bar::before, .top-bar::after, .top-bar::before{ content: ' '; }

.top-bar{
	  position: fixed;
		top: 0; left: 0; right: 0;
	  width: 100%;
	  height: 101px;
		padding: 20px 0;
		margin: 0 auto;
		background-color: transparent;
	  -webkit-transition: top 0.15s;
	  -moz-transition: top 0.15s;
	  -ms-transition: top 0.15s;
	  -o-transition: top 0.15s;
	  transition: top 0.15s; }
.top-bar-up {
		top: -101px;
}
.top-bar-site-nav{
	  position: absolute; top: 0; left: 0; right: 0;
		margin:0 auto;
}

.main-content{
		outline: 0;
		min-height: calc(100vh - 62px); /* 62px=footer */
	  margin-right: auto;
		margin-left: auto;
		padding-top: 180px; }
.menu-container{
		padding-top: 180px;
		padding-bottom: 60px;
}
.main-content,
.menu-container > .container-fluid,
.top-bar, footer{
		padding-left: 60px;
		padding-right: 60px;
}
.main-content,
.menu-container > .container-fluid,
.top-bar > .container-fluid,
.menu-container > .container-fluid,
footer > .container-fluid{
		max-width: 1200px;
}


.bar-elem{
		padding: 60px 0; }
.bar-elem.bar-elem-space-top{
		padding-top: 100px; }
.bar-elem.bar-elem-space-bottom{
		padding-bottom: 110px;
}
.bar-elem .container-fluid{
		margin: 0;
}
.main-content > .bar-elem:first-of-type{
		padding-top: 0; }
.bar-elem p:last-child{
		margin-bottom: 0;
}

.home .bar-elem{
		overflow: hidden; }
.home .main-content > .bar-elem:first-of-type{
		padding-top: 150px;
		margin-top: -150px;
}
.home .bar-elem svg{
		position: absolute;
		top: 0; right: 10%;
		margin-bottom: -60px;
		opacity: .75;
		pointer-events: none; }
.home .bar-elem:nth-of-type(1) svg{
		max-height: 200%;
		margin-top: -50px;
		-webkit-transform: rotate(-15deg);
	  transform:rotate(-15deg);
		z-index: -1; }
.home .bar-elem:nth-of-type(3) svg{
		right: 15%;
		max-height: 250%;
		margin-top: -40px;
		-webkit-transform: rotate(8deg);
	  transform:rotate(8deg); }
.home .bar-elem svg *{
		stroke: #fff;
		stroke-width: 2px;
		vector-effect: non-scaling-stroke; }
.home .bar-elem.bg-green svg *,
.home.bg-green .bar-elem svg *{
		stroke: #7B3F92;
}
.home .bar-elem.bg-violet svg *,
.home.bg-violet .bar-elem svg *{
		stroke: #fff;
}
@media screen and (max-width: 991px) {
		.home .bar-elem svg{ opacity: .25; }
		.home .bar-elem:nth-of-type(1) svg{ right: 13%; }
		.home .bar-elem:nth-of-type(3) svg{
				right: 11%;
				margin-top: -30px;
		}
}
@media screen and (max-width: 767px) {
		.home .bar-elem:nth-of-type(1) svg{
				max-height: 170%;
				right: 4%;
				margin-top: -40px; }
		.home .bar-elem:nth-of-type(3) svg{
				max-height: 210%;
				right: 10%;
				margin-top: -20px;
		}
}
@media screen and (max-width: 639px) {
		.home .bar-elem svg{ opacity: .125; }
		.home .bar-elem:nth-of-type(1) svg{ margin-top: -20px; }
}

.bar-elem.bg-white svg{
		margin-top: -20px;
		margin-bottom: -20px; }
.bar-elem.bg-white svg *{
		stroke: #7B3F92;
}

.bg-light{

}
.bg-green,
.bg-green .bg-inherit,
.bg-green .menu-container{
		background-color: #00BF6F; /* green */ }
.bg-green .top-bar{
		background-color: rgba(0,191,111,.93);
}
.bg-violet,
.bg-violet .bg-inherit,
.bg-violet .top-bar,
.bg-violet .menu-container{
		background-color: #7B3F92; /* violett */ }
.bg-violet .top-bar{
		background-color: rgba(123,63,146,.93);
}
.bg-white,
.bg-white .bg-inherit,
.bg-white .top-bar,
.bg-white .menu-container{
		background-color: #FFF; }
.bg-white .top-bar{
		background-color: rgba(255,255,255,.93);
}


.branding{
		position: fixed;
}
.branding a, .branding p{
		float: left;
	  height: 60px;
	  line-height: 60px;
		font-weight: 500;
	  -webkit-transition: color 0.25s;
	  -moz-transition: color 0.25s;
	  -ms-transition: color 0.25s;
	  -o-transition: color 0.25s;
	  transition: color 0.25s;
}
.branding svg:hover .lines {
		animation: bounce .5s; }
.branding svg .lines:nth-of-type(1){
		animation-delay: .05s;
}
@keyframes bounce {
		0%, 20%, 60%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
		40% { -webkit-transform: translateY(3px); transform: translateY(3px); }
		80% { -webkit-transform: translateY(2px); transform: translateY(2px); }
}


/* Lists / Entries */
/*******************/
@media screen and (min-width: 992px) {
		.container-fluid.list-container{
				margin-top: 0;
				margin-bottom: 0;
		}
}

.list .entry-title,
.list .entry-teaser,
.list .meta{
		font-family: 'MaisonNeueMono';
		margin: 0; padding: 0;
}
.list > div{
		border: 0;
}

.entry{
  	margin-bottom: 60px;
}
.entry .entry-limit{
		position: relative;
		box-shadow: 10px 10px 10px rgba(0,0,0,.1);
}
.entry .entry-limit:hover{
  	cursor: pointer;
		box-shadow: 10px 10px 20px rgba(0,0,0,.1);
}


.entry img{
		-webkit-filter: grayscale(100%);
		filter: grayscale(100%);
	  -webkit-transition: -webkit-filter 0.5s ease-in-out;
	  -moz-transition: filter 0.5s ease-in-out;
	  -ms-transition: filter 0.5s ease-in-out;
	  -o-transition: filter 0.5s ease-in-out;
	  transition: filter 0.5s ease-in-out; }
.entry img:hover,
.entry .entry-limit:hover img{
		-webkit-filter: grayscale(0%);
		filter: grayscale(0%);
}

@media screen and (min-width: 640px) {
		.entry{
				opacity: 0;
			  -webkit-animation: fade-in .5s cubic-bezier(.5,0,0,.5) forwards;
			  -moz-animation: fade-in .5s cubic-bezier(.5,0,0,.5) forwards;
			  -ms-animation: fade-in .5s cubic-bezier(.5,0,0,.5) forwards;
			  -o-animation: fade-in .5s cubic-bezier(.5,0,0,.5) forwards;
			  animation: fade-in .5s cubic-bezier(.5,0,0,.5) forwards; }
		@-webkit-keyframes fade-in {
			  0% { opacity: 0; -webkit-transform:translateY(30px); }
			  100% { opacity: 1; -webkit-transform:translateY(0); } }
		@-moz-keyframes fade-in {
			  0% { opacity: 0; -moz-transform:translateY(30px); }
			  100% { opacity: 1; -moz-transform:translateY(0); } }
		@keyframes fade-in {
			  0% { opacity: 0; transform:translateY(30px); }
			  100% { opacity: 1; transform:translateY(0); } }
		.entry:nth-of-type(2){ -webkit-animation-delay:0.1s; -moz-animation-delay:0.1s; -o-animation-delay:0.1s; animation-delay:0.1s; }
		.entry:nth-of-type(3){ -webkit-animation-delay:0.2s; -moz-animation-delay:0.2s; -o-animation-delay:0.2s; animation-delay:0.2s; }
		.entry:nth-of-type(4){ -webkit-animation-delay:0.3s; -moz-animation-delay:0.3s; -o-animation-delay:0.3s; animation-delay:0.3s; }
		.entry:nth-of-type(5){ -webkit-animation-delay:0.4s; -moz-animation-delay:0.4s; -o-animation-delay:0.4s; animation-delay:0.4s; }
		.entry:nth-of-type(6){ -webkit-animation-delay:0.5s; -moz-animation-delay:0.5s; -o-animation-delay:0.5s; animation-delay:0.5s; }
		.entry:nth-of-type(7){ -webkit-animation-delay:0.6s; -moz-animation-delay:0.6s; -o-animation-delay:0.6s; animation-delay:0.6s; }
		.entry:nth-of-type(8){ -webkit-animation-delay:0.7s; -moz-animation-delay:0.7s; -o-animation-delay:0.7s; animation-delay:0.7s; }
		.entry:nth-of-type(9){ -webkit-animation-delay:0.8s; -moz-animation-delay:0.8s; -o-animation-delay:0.8s; animation-delay:0.8s; }
		.entry:nth-of-type(10){ -webkit-animation-delay:0.9s; -moz-animation-delay:0.9s; -o-animation-delay:0.9s; animation-delay:0.9s; }
		.entry:nth-of-type(11){ -webkit-animation-delay:1.0s; -moz-animation-delay:1.0s; -o-animation-delay:1.0s; animation-delay:1.0s; }
		.entry:nth-of-type(12){ -webkit-animation-delay:1.1s; -moz-animation-delay:1.1s; -o-animation-delay:1.1s; animation-delay:1.1s; }
		.entry:nth-of-type(13){ -webkit-animation-delay:1.2s; -moz-animation-delay:1.2s; -o-animation-delay:1.2s; animation-delay:1.2s; }
		.entry:nth-of-type(14){ -webkit-animation-delay:1.3s; -moz-animation-delay:1.3s; -o-animation-delay:1.3s; animation-delay:1.3s; }
		.entry:nth-of-type(15){ -webkit-animation-delay:1.4s; -moz-animation-delay:1.4s; -o-animation-delay:1.4s; animation-delay:1.4s; }
}
@media screen and (min-width: 768px) {
		.entry *{
				-webkit-transition: box-shadow .25s ease-in-out;
				-moz-transition: box-shadow .25s ease-in-out;
				-ms-transition: box-shadow .25s ease-in-out;
				-o-transition: box-shadow .25s ease-in-out;
				transition: box-shadow .25s ease-in-out;
		}
}
.entry > a{
	  position: relative;
		display: block;
}
.entry .entry-title{
		display: inline-block;
		position: absolute;
		top: 20px;
		max-width: 100%;
		margin-left: 20px;
		margin-right: 20px;
		font-size: 13px;
		padding: 5px 10px;
		z-index: 99999;
}
.entry .entry-text{
		padding: 13px 10px 15px 13px;
}
.entry .lazy-aspect-ratio{
		padding-bottom: 70%;
}


/* Montage Grid */
/*****************/
.list-montage .entry{
		margin-bottom: 40px;
}
.list-montage .entry .lazy-aspect-ratio{
		padding-bottom: 90%;
}


/* News & Angebot Record */
/***************************/
.type-news .header,
.type-angebote .header{
		margin-bottom: 50px; }
.type-news .header-title,
.type-angebote .header-title{
		margin-top: 0;
		margin-bottom: 75px; }
.type-news .content{
		margin-bottom: 100px; }
.type-angebote .content{
		margin-bottom: 150px;
}

.type-news .header-image .loaded,
.type-news .header-image .loaded img{
		background-color: transparent;
}

.type-news .header .meta,
.type-angebote .header .meta{
		margin-bottom: 10px; }
}
.type-news .content h2, .type-angebote .content h2{
		margin: 50px 0 20px; }
.type-news .content h3, .type-angebote .content h3{
		margin: 30px 0 15px;
}

.type-news .quellen{
		margin-top:30px; }
.type-news .quellen .quellen-title{
		margin-top:0;
}

.type-news .font-body > p,
.type-angebote .font-body > p{
	  margin-bottom:22px;
		line-height:1.6;
}
.type-news .font-body > p:last-of-type::after{
		position:absolute;
		content:"\2015";
		color:#7B3F92;
		padding-left:7px;
}
.type-news .font-body img{
		display:block;
	  margin:40px auto;
}
.type-news .quellen p{
	  line-height:1.4;
	  margin-bottom:8px;
}

.type-news blockquote,
.type-angebote blockquote{
  	margin:80px auto; }
.type-news blockquote,
.type-angebote blockquote{
  	max-width:80%; }
@media screen and (min-width: 640px) {
		.type-angebote blockquote{
				margin-left:27px;
		}
}

/* Wir */
/*******/
.mitarbeiter-entry{
		margin-bottom: 60px;
}
.mitarbeiter-name{
		margin-bottom: 5px; }
.mitarbeiter-meta .meta{
		margin-bottom: 3px;
}
@media screen and (max-width: 640px) {
		.mitarbeiter-meta .meta.email a{
				font-size: 0;
		}
		.mitarbeiter-meta .meta.email a:after{
				content: 'E-Mail';
				font-size: 12px;
		}
}
.mitarbeiter-image{
		position: relative;
		overflow: hidden;
		margin-bottom: 20px;
}
.mitarbeiter-image img{
		background-color: transparent;
}
.mitarbeiter-image .secondary{
		display: none;
		position:absolute; top:0;
		height: 100%; width: 100%;
		background-position: center center;
		background-size: cover; }
.mitarbeiter-image:hover .secondary{
		display: block;
		z-index: 999;
}

.item, .item-hidden{
		opacity:0;
	  -webkit-animation: fade-in .5s ease-in-out forwards;
	  -moz-animation: fade-in .5s ease-in-out forwards;
	  -ms-animation: fade-in .5s ease-in-out forwards;
	  -o-animation: fade-in .5s ease-in-out forwards;
	  animation: fade-in .5s ease-in-out forwards; }
@-webkit-keyframes fade-in {
  	0% { opacity:0; } 100% { opacity:1; } }
@-moz-keyframes fade-in {
  	0% { opacity:0; } 100% { opacity:1; } }
@keyframes fade-in {
  	0% { opacity:0; } 100% { opacity:1; } }
.item:nth-of-type(2){ -webkit-animation-delay:0.1s; -moz-animation-delay:0.1s; -o-animation-delay:0.1s; animation-delay:0.1s; }
.item:nth-of-type(3){ -webkit-animation-delay:0.2s; -moz-animation-delay:0.2s; -o-animation-delay:0.2s; animation-delay:0.2s; }
.item:nth-of-type(4){ -webkit-animation-delay:0.3s; -moz-animation-delay:0.3s; -o-animation-delay:0.3s; animation-delay:0.3s; }
.item-hidden:nth-of-type(2){ -webkit-animation-delay:0.1s; -moz-animation-delay:0.1s; -o-animation-delay:0.1s; animation-delay:0.1s; }
.item-hidden:nth-of-type(3){ -webkit-animation-delay:0.2s; -moz-animation-delay:0.2s; -o-animation-delay:0.2s; animation-delay:0.2s; }
.item-hidden:nth-of-type(4){ -webkit-animation-delay:0.3s; -moz-animation-delay:0.3s; -o-animation-delay:0.3s; animation-delay:0.3s; }
.item-hidden:nth-of-type(5){ -webkit-animation-delay:0.4s; -moz-animation-delay:0.4s; -o-animation-delay:0.4s; animation-delay:0.4s; }
.item-hidden:nth-of-type(6){ -webkit-animation-delay:0.5s; -moz-animation-delay:0.5s; -o-animation-delay:0.5s; animation-delay:0.5s; }
.item-hidden:nth-of-type(7){ -webkit-animation-delay:0.6s; -moz-animation-delay:0.6s; -o-animation-delay:0.6s; animation-delay:0.6s; }
.item-hidden:nth-of-type(8){ -webkit-animation-delay:0.7s; -moz-animation-delay:0.7s; -o-animation-delay:0.7s; animation-delay:0.7s; }
.item-hidden:nth-of-type(9){ -webkit-animation-delay:0.8s; -moz-animation-delay:0.8s; -o-animation-delay:0.8s; animation-delay:0.8s; }
.item-hidden:nth-of-type(10){ -webkit-animation-delay:0.9s; -moz-animation-delay:0.9s; -o-animation-delay:0.9s; animation-delay:0.9s; }
.item-hidden:nth-of-type(11){ -webkit-animation-delay:1.0s; -moz-animation-delay:1.0s; -o-animation-delay:1.0s; animation-delay:1.0s; }
.item-hidden:nth-of-type(12){ -webkit-animation-delay:1.1s; -moz-animation-delay:1.1s; -o-animation-delay:1.1s; animation-delay:1.1s; }
.item-hidden:nth-of-type(13){ -webkit-animation-delay:1.2s; -moz-animation-delay:1.2s; -o-animation-delay:1.2s; animation-delay:1.2s; }
.item-hidden:nth-of-type(14){ -webkit-animation-delay:1.3s; -moz-animation-delay:1.3s; -o-animation-delay:1.3s; animation-delay:1.3s; }
.item-hidden:nth-of-type(15){ -webkit-animation-delay:1.4s; -moz-animation-delay:1.4s; -o-animation-delay:1.4s; animation-delay:1.4s; }

.item-hidden.hide{
		display:none!important;
}


/* Wissenswertes */
.slug-wissenswertes .tree-of-law h2{
		display: block;
		margin: 0;
		padding-top: 25px;
		padding-bottom: 25px;
}
@media screen and (max-width: 768px) {
		.slug-wissenswertes .tree-of-law h2{
				padding-top: 15px;
				padding-bottom: 15px;
		}
}
@media screen and (max-width: 639px) {
		.slug-wissenswertes .tree-of-law svg{
				margin-top: 10px;
		}
}
@media screen and (max-width: 479px) {
		.slug-wissenswertes .tree-of-law h2{
				font-size: 14px;
				padding-top: 10px;
				padding-bottom: 10px;
		}
}
@media screen and (max-width: 399px) {
		.slug-wissenswertes .tree-of-law h2{
				padding-top: 5px;
				padding-bottom: 5px;
		}
}

.slug-wissenswertes .elem-nr-1,
.slug-wissenswertes .elem-nr-2,
.slug-wissenswertes .elem-nr-3,
.slug-wissenswertes .elem-nr-4,
.slug-wissenswertes .elem-nr-5,
.slug-wissenswertes .elem-nr-6{
		display: none;
}
.slug-wissenswertes .elem-nr-1:target,
.slug-wissenswertes .elem-nr-2:target,
.slug-wissenswertes .elem-nr-3:target,
.slug-wissenswertes .elem-nr-4:target,
.slug-wissenswertes .elem-nr-5:target,
.slug-wissenswertes .elem-nr-6:target{
		display: block;
}


/* Nothing Found Text */
.text-empty{
		text-align: center;
		max-width: 400px;
		margin-left: auto!important;
		margin-right: auto!important;
}
.slug-404-not-found h1,
.slug-404-not-found h1+div{
		text-align: center;
}
.slug-404-not-found img{
		margin-bottom: 15px;
}


/* Search */
.search h1 b{
		font-style:italic;
		word-break:break-all;
}

a.skip-main {
	  left:-999px; top:auto;
	  position:absolute;
	  width:1px; height:1px;
	  overflow:hidden;
	  z-index:-999; }
a.skip-main:focus, a.skip-main:active {
	  color:#fff;
	  background-color:#7B3F92;
	  left:auto; top:auto;
	  width:18%; height:45px;
	  overflow:auto;
	  margin:15px 41%;
	  text-align:center;
	  font-size:14px;
	  line-height:45px;
		outline:none;
}



/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/

.gallery{
		position: relative;
		background-color: rgba(34,34,34,.03);
}
.gallery,
.gallery{
	  position: relative;
	  width: 100%; }
.slider-bar .gallery,
.slider-bar-random .gallery{
	  position: absolute;
	  width: 100vw;
}
.gallery,
.carousel-inner,
.carousel .item{
  	height: 75vh; }
.slider-bar .gallery,
.slider-bar-random .gallery,
.slider-bar .carousel-inner,
.slider-bar .carousel .item{
  	height: 100vh;
}
.slider-bar-random .progressive{
  	z-index: -1;
}
.gallery .progressive img,
.gallery .progressive div.object-fit-polyfill{
		object-fit: contain;
}
.container-fluid.banner-bar-midpage{
  	margin: 100px 0 120px;
}
.container-fluid.banner-bar-midpage .progressive .lazy-aspect-ratio{
  	padding-bottom: 38%!important;
}
.gallery img{
		margin: 0 auto;
		background-color: #cccccc;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
}
.gallery .meta{
		position: absolute;
		bottom: 0; left: calc(50% - 300px);
		background-color: white;
		padding: 10px 10px 0 10px;
		width: 600px;
		line-height: 1.35;
		text-align: center;
}

.carousel {
  	position: relative;
}
.carousel-inner {
	  position: relative;
	  width: 100%;
	  overflow: hidden;
}
.carousel-inner > .item {
	  position: relative;
	  display: none;
	  -webkit-transition: .6s ease-in-out left;
	       -o-transition: .6s ease-in-out left;
	          transition: .6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  	line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
	  .carousel-inner > .item {
		    -webkit-transition: -webkit-transform .6s ease-in-out;
		         -o-transition:      -o-transform .6s ease-in-out;
		            transition:         transform .6s ease-in-out;

		    -webkit-backface-visibility: hidden;
		            backface-visibility: hidden;
		    -webkit-perspective: 1000;
		            perspective: 1000;
	  }
	  .carousel-inner > .item.next,
	  .carousel-inner > .item.active.right {
		    left: 0;
		    -webkit-transform: translate3d(100%, 0, 0);
		            transform: translate3d(100%, 0, 0);
	  }
	  .carousel-inner > .item.prev,
	  .carousel-inner > .item.active.left {
		    left: 0;
		    -webkit-transform: translate3d(-100%, 0, 0);
		            transform: translate3d(-100%, 0, 0);
	  }
	  .carousel-inner > .item.next.left,
	  .carousel-inner > .item.prev.right,
	  .carousel-inner > .item.active {
		    left: 0;
		    -webkit-transform: translate3d(0, 0, 0);
		            transform: translate3d(0, 0, 0);
	  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  	display: block;
}
.carousel-inner > .active {
  	left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
	  position: absolute;
	  top: 0;
	  width: 100%;
}
.carousel-inner > .next { left: 100%; }
.carousel-inner > .prev { left: -100%; }
.carousel-inner > .next.left,
.carousel-inner > .prev.right { left: 0; }
.carousel-inner > .active.left { left: -100%; }
.carousel-inner > .active.right { left: 100%; }

.carousel-control {
	  position: absolute;
	  top: 0; bottom: 0;
	  width: 15%;
	  z-index: 999; }
.carousel-control.left {
  	left: 0; }
.carousel-control.right {
  	right: 0;
}

.carousel svg{
		bottom: calc(50% - 30px);
	  width: 60px; height: 60px; }
.carousel a svg .line{
		stroke: #fff;
		stroke-width: 3.5px; }
.carousel a:hover svg .line{
		stroke: #7B3F92;
		filter: none;
}
.carousel .carousel-control.left svg{
		position: absolute;
		left: 0;
	  transform-origin: center;
	  transform: rotate(90deg);
}
.carousel .carousel-control.right svg{
	  position: absolute;
		right: 0;
	  transform-origin: center;
	  transform: rotate(-90deg);
}
.carousel-control.right,
.carousel-control.left{
  	background: none;
}

.carousel-caption {
	  position: absolute;
	  right: 15%; bottom: 20px; left: 15%;
	  z-index: 10;
	  color: #fff;
	  text-align: center;
	  text-shadow: 0 1px 2px rgba(0, 0, 0, .6); }
@media screen and (min-width: 768px) {
	  .carousel-caption {
	    	right: 20%; left: 20%; bottom: 30px;
	  }
}


/*--------------------------------------------------------------
# Lazy/Progressive Loading
--------------------------------------------------------------*/

.progressive-wrapper{
		z-index: 1; }
.progressive{
		z-index: 10;
}
.eye-on-hover a.loaded:before,
.eye-on-hover a.loaded:after{
		z-index: 99; }
.entry .progressive:before,
.entry .progressive:after{
		z-index: 100;
}
.lazy-aspect-ratio,
.aspect-ratio{
  	z-index: -999999;
}

/* progressive image CSS */
.progressive {
	  position: relative;
	  display: block;
	  height: 100%; width: 100%; /* for IE polyfill */
	  overflow: hidden;
	  outline: none;
		background-color: rgba(34,34,34,.03); }
.transparent .progressive,
.type-wissen .content .progressive,
.type-projekte .content .progressive{
		background-color: transparent;
}
.progressive img, .progressive div.object-fit-polyfill {
		position: absolute;
	  left: 0; top: 0;
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  max-width: none;
	  border: 0 none;
		background-color: transparent;
}
.progressive img.reveal, .progressive div.object-fit-polyfill.reveal {
	  position: absolute;
	  left: 0; top: 0;
	  will-change: opacity;
	  -webkit-animation: progressiveReveal 1s ease-in-out;
		-moz-animation: progressiveReveal 1s ease-in-out;
		-ms-animation: progressiveReveal 1s ease-in-out;
		-o-animation: progressiveReveal 1s ease-in-out;
	  animation: progressiveReveal 1s ease-in-out; }
.progressive div.object-fit-polyfill{
	  /* object-fit IE polyfill */
	  background-size: cover;
	  background-position: center;
	  background-repeat: no-repeat; }
.progressive img.preview{
	  /*-webkit-backface-visibility: hidden;
	  -webkit-perspective: 1000;
	  -webkit-transform: translate3d(0,0,0);
	  -webkit-transform: translateZ(0);
	  backface-visibility: hidden;
	  perspective: 1000;
	  transform: translate3d(0,0,0);
	  transform: translateZ(0);*/
	  -webkit-filter: blur(50px);
	  -moz-filter: blur(50px);
	  -ms-filter: blur(50px);
	  -o-filter: blur(50px);
	  filter: blur(50px);
	  /* filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='30'); */
	  -webkit-transform: scale(1.2);
	  -moz-transform: scale(1.2);
	  transform: scale(1.2);
	  will-change: opacity;
	  -webkit-animation: progressiveReveal 1s ease-in-out;
		-moz-animation: progressiveReveal 1s ease-in-out;
		-ms-animation: progressiveReveal 1s ease-in-out;
		-o-animation: progressiveReveal 1s ease-in-out;
	  animation: progressiveReveal 1s ease-in-out;
}
@-webkit-keyframes progressiveReveal {
	  0% { opacity: 0; }
	  100% { opacity: 1; } }
@-moz-keyframes progressiveReveal {
	  0% { opacity: 0; }
	  100% { opacity: 1; } }
@keyframes progressiveReveal {
	  0% { opacity: 0; }
	  100% { opacity: 1; }
}



/*--------------------------------------------------------------
# Helper
--------------------------------------------------------------*/

.show{
		display:inherit; }
.hide{
		display:none;
}

@media screen and (min-width: 640px) {
		.mobile-only { display:none!important; }
}
@media screen and (max-width: 639px) {
		.desktop-only{ display:none!important; }
}

.only-xs, .only-ms, .only-sm, .only-md, .only-lg{ display:none; }
@media screen and (max-width: 479px) {
		.only-xs{ display: inherit; }
}
@media screen and (min-width: 480px) and (max-width: 767px) {
		.only-ms{ display: inherit; }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
		.only-sm{ display: inherit; }
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
		.only-md{ display: inherit; }
}
@media screen and (min-width: 1200px) {
		.only-lg{ display: inherit; }
}


@media screen and (max-width: 767px) {
		.min-sm{ display: none; }
}

.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }
.text-nowrap { white-space: nowrap; }
.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }

.align-left{ text-align:left!important; margin-left:0!important; margin-right:auto!important; }
.align-right{ text-align:right!important; margin-left:auto!important; margin-right:0!important; }
.align-center{ text-align:center!important; margin-left:auto!important; margin-right:auto!important; }
.align-bottom{ vertical-align:bottom!important; }
.inline{ display:inline!important; }
.no-border{ border:0!important; }
.no-float{ float:none!important; }

span.line { display: inline-block; }

@media (max-width: 639px) {
	.full-width{ margin-left:-20px!important; margin-right:-20px!important;
							 padding-left:20px!important; padding-right:20px!important; } }
@media (min-width: 640px) {
	.full-width{ margin-left:-60px!important; margin-right:-60px!important;
							 padding-left:60px!important; padding-right:60px!important; } }
@media (min-width: 1023px) {
	.full-width{ margin-left:-60px!important; margin-right:-60px!important;
							 padding-left:60px!important; padding-right:60px!important; } }
@media (min-width: 1200px) {
	.full-width{
		margin-left: calc(-100vw / 2 + 1080px / 2)!important; /* 1200px - 2 x 60px */
	  margin-right: calc(-100vw / 2 + 1080px / 2)!important;
		padding-left: calc(100vw / 2 - 1080px / 2)!important; /* 1200px - 2 x 60px */
	  padding-right: calc(100vw / 2 - 1080px / 2)!important;
	}
}

.margin-top-10{ margin-top:10px!important; }
.margin-top-25{ margin-top:25px!important; }
.margin-top-40{ margin-top:40px!important; }
.margin-top-50{ margin-top:50px!important; }
.margin-top-75{ margin-top:75px!important; }
.margin-top-100{ margin-top:100px!important; }
.margin-top-120{ margin-top:120px!important; }
.margin-top-150{ margin-top:150px!important; }
.no-margin-top{ margin-top:0!important; }
@media screen and (max-width: 479px) {
		.margin-top-100{ margin-top:75px!important; }
		.margin-top-120{ margin-top:75px!important; }
		.margin-top-150{ margin-top:75px!important; }
}

.margin-bottom-10{ margin-bottom:10px!important; }
.margin-bottom-25{ margin-bottom:25px!important; }
.margin-bottom-40{ margin-bottom:40px!important; }
.margin-bottom-50{ margin-bottom:50px!important; }
.margin-bottom-75{ margin-bottom:75px!important; }
.margin-bottom-100{ margin-bottom:100px!important; }
.margin-bottom-120{ margin-bottom:120px!important; }
.margin-bottom-150{ margin-bottom:150px!important; }
.no-margin-bottom{ margin-bottom:0!important; }
@media screen and (max-width: 479px) {
		.margin-bottom-100{ margin-bottom:75px!important; }
		.margin-bottom-120{ margin-bottom:75px!important; }
		.margin-bottom-150{ margin-bottom:75px!important; }
}
@media screen and (min-width: 992px) {
		.margin-right-md-10{ margin-right:10px!important; }
		.margin-right-md-25{ margin-right:25px!important; }
		.margin-right-md-50{ margin-right:50px!important; }
		.margin-right-md-75{ margin-right:75px!important; }
}
@media screen and (min-width: 992px) {
		.margin-left-md-10{ margin-left:10px!important; }
		.margin-left-md-25{ margin-left:25px!important; }
		.margin-left-md-50{ margin-left:50px!important; }
		.margin-left-md-75{ margin-left:75px!important; }
}

.no-margin{ margin:0!important; }

@media screen and (max-width: 479px) {
		.xs-no-margin{ margin:0!important; }
		.xs-no-margin-bottom{ margin-bottom:0!important; }
		.hidden-xs{ display:none; }
}

.no-padding{ padding:0!important; }

@media screen and (min-width: 640px) {
		.spacing-10 > .row > div{ padding-left:5px; padding-right:5px; }
		.spacing-10 > .row{ margin-left:-5px; margin-right:-5px; }
		.spacing-20 > .row > div{ padding-left:10px; padding-right:10px; }
		.spacing-20 > .row{ margin-left:-10px; margin-right:-10px; }
		.spacing-40 > .row > div{ padding-left:20px; padding-right:20px; }
		.spacing-40 > .row{ margin-left:-20px; margin-right:-20px; }
		.spacing-60 > .row > div{ padding-left:30px; padding-right:30px; }
		.spacing-60 > .row{ margin-left:-30px; margin-right:-30px; }
		.spacing-80 > .row > div{ padding-left:40px; padding-right:40px; }
		.spacing-80 > .row{ margin-left:-40px; margin-right:-40px; }
		.spacing-100 > .row > div{ padding-left:50px; padding-right:50px; }
		.spacing-100 > .row{ margin-left:-50px; margin-right:-50px; }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
		.md-width-smaller{ width:66%; }
}

.column-4,
.column-3,
.column-2{
  	column-gap: 40px;
}
.column-4{
  	columns: 4; }
.column-3{
  	columns: 3; }
.column-2{
  	columns: 2;
}
@media screen and (max-width: 991px) {
		.column-4{ columns: 3; }
}
@media screen and (max-width: 991px) {
		.column-4, .column-3{ columns: 2; }
}
@media screen and (max-width: 479px) {
		.column-4, .column-3, .column-2{ columns: 1; }
}


/*--------------------------------------------------------------
# Fixed
--------------------------------------------------------------*/

.is-static{
		position:static!important; }
.is-fixed{
		position:fixed!important; }
.is-absolute{
		position:absolute!important; }
.is-absolute-bottom{
		position:absolute!important;
		bottom:0!important;
		top:auto!important; }
@media screen and (max-width: 479px) { .xs-fixed{ position:fixed; } }
@media screen and (min-width: 480px) { .ms-fixed{ position:fixed; } }
@media screen and (min-width: 768px) { .sm-fixed{ position:fixed; } }
@media screen and (min-width: 992px) { .md-fixed{ position:fixed; } }
@media screen and (min-width: 1200px) { .lg-fixed{ position:fixed; } }


/*--------------------------------------------------------------
# Menue
--------------------------------------------------------------*/

/* General */
.navbar-toggle, .navbar-toggle:hover {
		position: relative;
		float: right;
		color: #FFF;
		font-family: 'MaisonNeueMono', 'Helvetica';
		font-weight: bold;
		letter-spacing: 1.5px;
	  margin: 0; padding: 0;
		height: 60px;
	  background-color: transparent;
	  outline: none;
		border: 0;
		box-shadow: none!important;
}
.navbar-toggle div{
		position: relative;
		overflow: hidden;
		white-space: nowrap;
		height: 21px;
		min-width: 200px;
}
.navbar-toggle .text-menu,
.navbar-toggle .text-close{
		position: absolute;
		right: 0;
}
.navbar-toggle .text-menu span,
.navbar-toggle .text-close span{
		float: left;
		clear: none;
	  -webkit-transition: transform .15s;
	  -moz-transition: transform .15s;
	  -ms-transition: transform .15s;
	  -o-transition: transform .15s;
	  transition: transform .15s;
}
.navbar-toggle .text-menu span{
		-webkit-transform: translateY(0); transform: translateY(0); }
.navbar-toggle .text-close span{
		-webkit-transform: translateY(30px); transform: translateY(30px);
}
.navbar-toggle.toggled .text-menu span{
		-webkit-transform: translateY(-30px); transform: translateY(-30px); }
.navbar-toggle.toggled .text-close span{
		-webkit-transform: translateY(0); transform: translateY(0);
}
.navbar-toggle.toggled .text-menu span:nth-of-type(1){ transition-delay: .05s; }
.navbar-toggle.toggled .text-menu span:nth-of-type(2){ transition-delay: .1s; }
.navbar-toggle.toggled .text-menu span:nth-of-type(3){ transition-delay: .15s; }
.navbar-toggle.toggled .text-menu span:nth-of-type(4){ transition-delay: .2s; }
.navbar-toggle.toggled .text-close span:nth-of-type(1){ transition-delay: .1s; }
.navbar-toggle.toggled .text-close span:nth-of-type(2){ transition-delay: .15s; }
.navbar-toggle.toggled .text-close span:nth-of-type(3){ transition-delay: .2s; }
.navbar-toggle.toggled .text-close span:nth-of-type(4){ transition-delay: .25s; }
.navbar-toggle.toggled .text-close span:nth-of-type(5){ transition-delay: .3s; }
.navbar-toggle.toggled .text-close span:nth-of-type(6){ transition-delay: .35s; }/*
.navbar-toggle.toggled .text-close span:nth-of-type(7){ transition-delay: .55s; }
.navbar-toggle.toggled .text-close span:nth-of-type(8){ transition-delay: .6s; }
.navbar-toggle.toggled .text-close span:nth-of-type(9){ transition-delay: .65s; }
.navbar-toggle.toggled .text-close span:nth-of-type(10){ transition-delay: .7s; }*/

.navbar-toggle .text-menu span:nth-of-type(1){ transition-delay: .25s; }
.navbar-toggle .text-menu span:nth-of-type(2){ transition-delay: .2s; }
.navbar-toggle .text-menu span:nth-of-type(3){ transition-delay: .15s; }
.navbar-toggle .text-menu span:nth-of-type(4){ transition-delay: .1s; }
.navbar-toggle .text-close span:nth-of-type(1){ transition-delay: .3s; }
.navbar-toggle .text-close span:nth-of-type(2){ transition-delay: .25s; }
.navbar-toggle .text-close span:nth-of-type(3){ transition-delay: .2s; }
.navbar-toggle .text-close span:nth-of-type(4){ transition-delay: .15s; }
.navbar-toggle .text-close span:nth-of-type(5){ transition-delay: .1s; }
.navbar-toggle .text-close span:nth-of-type(6){ transition-delay: .05s; }/*
.navbar-toggle .text-close span:nth-of-type(7){ transition-delay: .2s; }
.navbar-toggle .text-close span:nth-of-type(8){ transition-delay: .15s; }
.navbar-toggle .text-close span:nth-of-type(9){ transition-delay: .1s; }
.navbar-toggle .text-close span:nth-of-type(10){ transition-delay: .05s; }*/

.navbar-toggle:not(.toggled):hover .text-menu span,
.navbar-toggle.toggled:hover .text-close span{
		/*animation: bounce-text .5s;*/
}
@keyframes bounce-text {
		0%, 20%, 60%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
		40% { -webkit-transform: translateY(3px); transform: translateY(3px); }
		80% { -webkit-transform: translateY(1px); transform: translateY(1px); }
}

/*

.navbar-toggle .menu span:nth-of-type(1){ transition-delay: .05s; }
.navbar-toggle .menu span:nth-of-type(2){ transition-delay: .1s; }
.navbar-toggle .menu span:nth-of-type(3){ transition-delay: .15s; }
.navbar-toggle .menu span:nth-of-type(4){ transition-delay: .2s; }
.navbar-toggle .close span:nth-of-type(1){ transition-delay: .25s; }
.navbar-toggle .close span:nth-of-type(2){ transition-delay: .3s; }
.navbar-toggle .close span:nth-of-type(3){ transition-delay: .35s; }
.navbar-toggle .close span:nth-of-type(4){ transition-delay: .4s; }
.navbar-toggle .close span:nth-of-type(5){ transition-delay: .45s; }

.navbar-toggle.toggled .close span{
	/* animation: navbar-out .65s forwards; */
	/* animation: navbar-in .65s forwards;
}
.navbar-toggle .menu span:nth-of-type(1){ animation-delay: .05s; transition-delay: .05s; }
.navbar-toggle .menu span:nth-of-type(2){ animation-delay: .1s;  transition-delay: .1s; }
.navbar-toggle .menu span:nth-of-type(3){ animation-delay: .15s; transition-delay: .15s; }
.navbar-toggle .menu span:nth-of-type(4){ animation-delay: .2s;  transition-delay: .2s; }
.navbar-toggle .close span:nth-of-type(1){ animation-delay: .25s; transition-delay: .25s; }
.navbar-toggle .close span:nth-of-type(2){ animation-delay: .3s;  transition-delay: .3s; }
.navbar-toggle .close span:nth-of-type(3){ animation-delay: .35s; transition-delay: .35s; }
.navbar-toggle .close span:nth-of-type(4){ animation-delay: .4s;  transition-delay: .4s; }
.navbar-toggle .close span:nth-of-type(5){ animation-delay: .45s; transition-delay: .45s; }

@keyframes navbar-out {
	0% { -webkit-transform: translateY(0); transform: translateY(0); }
	100% { -webkit-transform: translateY(-30px); transform: translateY(-30px); }
}
@keyframes navbar-in {
	0% { -webkit-transform: translateY(30px); transform: translateY(30px); }
	100% { -webkit-transform: translateY(0); transform: translateY(0); }
}*/


.menu-container{
		display: none;
		position: fixed;
		top:0; bottom:0; left:0; right:0;
		width: 100vw; height: 100vh;
}
.menu-container.in{
		display: block;
}

.menu {
	  position: relative;
	  background-color: transparent;
	  list-style-type: none; }
.menu.menu-main{
		column-count: 2;
		column-gap: 60px;
}
.menu li{
	  -webkit-transition: color .25s;
	  -moz-transition: color .25s;
	  -ms-transition: color .25s;
	  -o-transition: color .25s;
	  transition: color .25s; }
.menu.menu-main li{
		display: inline-block;
		width: 100%;
		margin-bottom: 100px;
		white-space: nowrap;
}
.menu.menu-main li .like-h1,
.menu.menu-main li .like-h2{
		margin-top: 0;
		margin-bottom: 0;
		white-space: normal; }
.menu.menu-main li .like-h1{
		margin-bottom: 10px;
}
.menu li a,
.menu li a p{
	  /*-webkit-transition: none;
	  -moz-transition: none;
	  -ms-transition: none;
	  -o-transition: none;
	  transition: none;*/
}
/*---
	green,	#00BF6F,	rgba(0,191,111,.93)
	violet,	#7B3F92,	rgba(123,63,146,.93)
---*/

@media screen and (max-width: 639px) {
		.menu.menu-main {
				column-count: 1;
		}
		.menu.menu-main li{
				margin-bottom: 50px; }
		.menu.menu-main li .like-h1{
				margin-bottom: 5px;
		}
}


footer{
		position: relative;
		margin: 0;
		padding-top: 20px;
		padding-bottom: 20px;
		background-color: #FFF; }
footer *{
		color: #7B3F92!important; /* violet */
}
footer .menu,
footer .slogan,
footer .visual{
		position: relative;
		display: inline-block;
		line-height: 120px;
		margin: 0;
		padding: 0;
}
@media screen and (max-width: 767px) {
		footer .menu,
		footer .slogan,
		footer .visual{
				float: left;
				line-height: auto;
		}
		footer .visual{
				position: absolute;
				right: 20px; bottom: 0;
		}
}
@media screen and (min-width: 768) {
		footer .visual{
				margin: 45px 0;
		}
		footer div[class^="col"]{
				max-height: 120px;
		}
}

footer .menu li{
		display: table-cell;
		padding: 0 12px 5px 0;
		height: auto; }
footer .menu li a{
		font-size: 12px;
		font-weight: bold;
}



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

.scroll-left, .scroll-right, .scroll-down{
	position:absolute;
	opacity:1; border:0; }
.scroll-left, .scroll-right{
  top:0; bottom:0;
  width:20%; height:100%;
  background-image:none!important; }
.scroll-down{
  bottom:0; left:20%; right:20%;
  width:60%; height:50px;
	text-align:center; }

.scroll-left svg, .scroll-right svg{
  position:fixed;
	bottom:50%;
	margin:30px; }
.scroll-left svg{
  left:17px;
  -webkit-transform: rotate(90deg) translateX(35px);
  -moz-transform: rotate(90deg) translateX(35px);
  -ms-transform: rotate(90deg) translateX(35px);
  transform:rotate(90deg) translateX(35px); }
.scroll-right svg{
  right:17px;
  -webkit-transform: rotate(-90deg) translateX(-35px);
  -moz-transform: rotate(-90deg) translateX(-35px);
  -ms-transform: rotate(-90deg) translateX(-35px);
	transform:rotate(-90deg) translateX(-35px); }
.scroll-down svg{
  position:absolute;
  left:calc(50% - 7.5px);
 	bottom:15px;
  -webkit-transition: bottom .25s ease-in-out;
  -moz-transition: bottom .25s ease-in-out;
  -ms-transition: bottom .25s ease-in-out;
  -o-transition: bottom .25s ease-in-out;
  transition: bottom .25s ease-in-out; }
.scroll-down:hover svg{
	bottom:-0px;
}
.scroll-left svg .longerOnHover,
.scroll-right svg .longerOnHover,
.scroll-down svg .longerOnHover{
	-webkit-transform: scale(1, .1);
	-moz-transform: scale(1,.1);
	-ms-transform: scale(1,.1);
	transform: scale(1,.1);
  -webkit-transition: transform 0.25s ease-in-out;
  -moz-transition: transform 0.25s ease-in-out;
  -ms-transition: transform 0.25s ease-in-out;
  -o-transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transform-origin: bottom; }
.scroll-left:hover svg .longerOnHover,
.scroll-right:hover svg .longerOnHover{
	-webkit-transform: scale(1,3);
	-moz-transform: scale(1,3);
	-ms-transform: scale(1,3);
	transform: scale(1,3); }
.scroll-down:hover svg .longerOnHover{
	-webkit-transform: scale(1,1);
	-moz-transform: scale(1,1);
	-ms-transform: scale(1,1);
	transform: scale(1,1);
}
@-moz-document url-prefix() {
  .scroll-left:hover svg .longerOnHover,
  .scroll-right:hover svg .longerOnHover,
  .scroll-down:hover svg .longerOnHover{
    transform: none; }
}


/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

button, input, optgroup, select, textarea {
	  display: block;
		outline: 0!important;
}
button, .button{
		-webkit-transition: box-shadow .25s ease-in-out, transform .25s ease-in-out;
		-moz-transition: box-shadow .25s ease-in-out, transform .25s ease-in-out;
		-ms-transition: box-shadow .25s ease-in-out, transform .25s ease-in-out;
		-o-transition: box-shadow .25s ease-in-out, transform .25s ease-in-out;
		transition: box-shadow .25s ease-in-out, transform .25s ease-in-out;
}

button, .button{
		color: #FFF;
		font-family: 'MaisonNeueMono', monospace;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: 0; }
.bg-light button, .bg-light .button{
		color: #7B3F92;
}
button:not(.not-button-like),
.button:not(.not-button-like){
		float: right;
		font-size: 11.5px;
		/*background-color: #FFF; /*#7B3F92;*/
		margin-left: 5px;
		margin-bottom: 5px;
		padding: 13px 18px;
		border: 2px solid #FFF;
		/*box-shadow: 0 0 15px rgba(34,34,34,.1);*/ }
.bg-light button, .bg-light .button{
		border-color: #7B3F92;
}
button.filter, .button.filter{
		float: left;
		margin-left: 0;
		margin-right: 5px;
}
button:not(.not-button-like):hover,
.button:not(.not-button-like):hover{
		color: #FFF;
		border-color: #7B3F92;
		background-color: #7B3F92;
		box-shadow: none; }
button:not(.not-button-like):active,
.button:not(.not-button-like):active{
		color: #000;
}

button.show-more:not(.show) .text-less,
.button.show-more:not(.show) .text-less,
button.show-more.show .text-more,
.button.show-more.show .text-more{
		display: none;
}
h1 button.show-more, h1 .button.show-more,
h2 button.show-more, h2 .button.show-more,
h3 button.show-more, h3 .button.show-more,
h4 button.show-more, h4 .button.show-more{
		display: inline-block;
		margin: 0;
}

button.more, .button.more,
button.overview, .button.overview{
		float: right;
		position: relative;
		font-size: 11.5px;
		padding: 0;
		height: 30px;
		width: 75px;
		border: 0;
		-webkit-transition: width .25s ease-in-out;
		-moz-transition: width .25s ease-in-out;
		-ms-transition: width .25s ease-in-out;
		-o-transition: width .25s ease-in-out;
		transition: width .25s ease-in-out; }
button.more:hover, .button.more:hover,
button.overview:hover, .button.overview:hover{
		color: inherit;
		background-color: transparent;
		width: 105px;
}
button.more span, .button.more span,
button.overview span, .button.overview span{
		display: block;
		position: absolute;
		top: 13px; right: 0;
		height: 2px;
		width: 15px;
		background-color: #FFF;
		margin-right: 5px; }
.bg-light button.more span, .bg-light .button.more span,
.bg-light button.overview span, .bg-light .button.overview span{
		background-color: #7B3F92;
}
button.more span:nth-last-of-type(2),
.button.more span:nth-last-of-type(2){
		-webkit-transform: rotate(45deg) translateY(0) translateX(1px);
		-moz-transform: rotate(45deg) translateY(0) translateX(1px);
		transform: rotate(45deg) translateY(0) translateX(1px);
		transform-origin: right; }
button.more span:nth-last-of-type(3),
.button.more span:nth-last-of-type(3){
		-webkit-transform: rotate(-45deg) translateY(0) translateX(1px);
		-moz-transform: rotate(-45deg) translateY(0) translateX(1px);
		transform: rotate(-45deg) translateY(0) translateX(1px);
		transform-origin: right; }
button.more span:nth-last-of-type(1),
.button.more span:nth-last-of-type(1){
		width: 30px;
		-webkit-transition: width .25s ease-in-out;
		-moz-transition: width .25s ease-in-out;
		-ms-transition: width .25s ease-in-out;
		-o-transition: width .25s ease-in-out;
		transition: width .25s ease-in-out; }
button.more:hover span:nth-last-of-type(1),
.button.more:hover span:nth-last-of-type(1){
		width: 60px;
}
button.more::before, .button.more::before{
		content: 'Mehr';
		position: absolute;
		top: 5px;
}

button.overview, .button.overview{
		float: left; }
button.overview span, .button.overview span{
		left: 0;
}
button.overview span:nth-last-of-type(2),
.button.overview span:nth-last-of-type(2){
		-webkit-transform: rotate(45deg) translateY(0) translateX(1px);
		-moz-transform: rotate(45deg) translateY(0) translateX(1px);
		transform: rotate(45deg) translateY(0) translateX(1px);
		transform-origin: left; }
button.overview span:nth-last-of-type(3),
.button.overview span:nth-last-of-type(3){
		-webkit-transform: rotate(-45deg) translateY(0) translateX(1px);
		-moz-transform: rotate(-45deg) translateY(0) translateX(1px);
		transform: rotate(-45deg) translateY(0) translateX(1px);
		transform-origin: left; }
button.overview span:nth-last-of-type(1),
.button.overview span:nth-last-of-type(1){
		width: 30px;
		-webkit-transition: width .25s ease-in-out;
		-moz-transition: width .25s ease-in-out;
		-ms-transition: width .25s ease-in-out;
		-o-transition: width .25s ease-in-out;
		transition: width .25s ease-in-out; }
button.overview:hover span:nth-last-of-type(1),
.button.overview:hover span:nth-last-of-type(1){
		width: 60px;
}
button.overview::before, .button.overview::before{
		content: 'Übersicht';
		position: absolute;
		top: 5px; left: 40px;
		-webkit-transition: left .25s ease-in-out;
		-moz-transition: left .25s ease-in-out;
		-ms-transition: left .25s ease-in-out;
		-o-transition: left .25s ease-in-out;
		transition: left .25s ease-in-out; }
button.overview:hover::before, .button.overview:hover::before{
		left: 70px;
}



.btn-search, .btn-search.active, .btn-search:active{
		width:35px; height:35px;
	  background: url(../images/Icon_Search_dark.svg);
	  background-repeat: no-repeat;
	  background-position: center center;
	  background-size: 16px;
		background-color:transparent!important;
		box-shadow:none!important;
}
.btn-erase{
		padding: 0;
}
.btn-close{
		background-color: #f4e9dd;
}

label{
		font-size: 13px;
		line-height: 1.5;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(34,34,34,.2); }
input::-moz-placeholder, textarea::-moz-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(34,34,34,.2); }
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(34,34,34,.2); }
input::placeholder, textarea::placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(34,34,34,.2); }
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(255,255,255,.5); }
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(255,255,255,.5); }
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(255,255,255,.5); }
input:focus::placeholder, textarea:focus::placeholder {
		font-family: 'MaisonNeueMono'; font-size: 11px; font-weight: bold; letter-spacing: 0; color: rgba(255,255,255,.5);
}

[type=text], [type=password], [type=date], [type=datetime],
[type=datetime-local], [type=month], [type=week], [type=email],
[type=number], [type=search], [type=tel], [type=time],
[type=url], [type=color], textarea, select, input {
	  box-sizing: border-box;
	  box-shadow: none;
	  width: 100%;
	  padding: 6px 11px 7px;
		margin-bottom: 10px;
	  color: #FFF;
		border: 2px solid #FFF;
	  -webkit-border-radius: 0;
	  -moz-border-radius: 0;
	  border-radius: 0; }
.bg-light [type=text], .bg-light [type=password], .bg-light [type=date], .bg-light [type=datetime],
.bg-light [type=datetime-local], .bg-light [type=month], .bg-light [type=week], .bg-light [type=email],
.bg-light [type=number], .bg-light [type=search], .bg-light [type=tel], .bg-light [type=time],
.bg-light [type=url], [type=color], .bg-light textarea, .bg-light select, .bg-light input {
		color: #7B3F92; /* violett */
		border: 2px solid #7B3F92; /* violett */
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus,
[type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus,
[type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus,
[type=url]:focus, [type=color]:focus, textarea:focus, select:focus, input:focus {
		outline: 0;
}

textarea{
	  overflow: auto;
	  min-height: 75px;
	  max-width: 100%;
		padding: 7px 11px;
		margin-top: 10px; }
textarea[rows] {
		height: auto;
}

/* Search Form */
@media print, screen and (max-width: 991px) {
		.form{
			  width: 500px;
				margin: 0 auto;
		}
}
.form .input-search-wrapper{
		display: block;
		overflow: hidden;
		padding-right: 25px;
}
.form .input-search{
		width: 100%;
}
.form .btn-search{
  	float: right;
}

/* Filter */
/**********/
.row-filter{
		margin-bottom: 40px;
}

.row-filter .selected{
		color: #FFF;
		border-color: rgba(123,63,146,1);
		background-color: rgba(123,63,146,1);
		pointer-events: none; }
.bg-violet .row-filter .selected{
		color: #FFF;
		border-color: #FFF;
}
.row-filter .disabled{
		color: rgba(255,255,255,.4);
		border-color: rgba(255,255,255,.3);
		pointer-events: none;
		box-shadow: none;
}

.aktuell-filter p, .aktuell-filter a{
	  font-size: 13px;
	  font-weight: bold; }
.aktuell-filter p{
  	margin-bottom: 0;
}
.aktuell-filter a{
		margin-left: 5px; }
@media print, screen and (min-width: 640px) {
		.aktuell-filter a{
				line-height: 44px;
		}
}
@media print, screen and (min-width: 480px) and (max-width: 991px) {
		.aktuell-filter{
				text-align: right;
		}
}



/*--------------------------------------------------------------
# Bolt Forms
--------------------------------------------------------------*/

.boltform button{
		float: right;
}
.boltform .boltforms-btn-send-row{
		margin-top: 25px;
}
.boltforms-row{
		margin-bottom: 10px;
}
.boltforms-row.boltforms-one-line-row{
		display: table;
}
.boltforms-one-line-row .boltforms-label {
		display: table-cell;
		white-space: nowrap;
	  margin: 0;
}
.boltforms-one-line-row .boltforms-value{
		display: table-cell;
		width: 100%;
		padding-left: 10px;
}

@media print, screen and (min-width: 640px) {
	  .boltform{
		    /*max-width:500px;*/
		    margin:0 auto;
	  }
		/*.boltform .boltforms-row:nth-of-type(1),
		.boltform .boltforms-row:nth-of-type(2){
				float:left;
				width:calc(50% - 7.5px); }
		.boltform .boltforms-row:nth-of-type(2){
				margin-left:15px;
		}*/
}

.boltform label.required:after {
	  content: " *";
	  font-weight: bold;
}
p.boltform-error,
li.boltform-error,
p.boltform-message {
	  padding: 8px 35px 8px 14px;
	  margin-bottom: 20px;
		background-color:rgba(0,162,190,.04);
}
p.boltform-error {
  	color: #B94A48;
}
li.boltform-error {
  	color: #B94A48;
}
p.boltform-message {
  	color: #7B3F92;
}



/*--------------------------------------------------------------
# Animation
--------------------------------------------------------------*/

.animate-fade-in{
		opacity: 0;
}
.animate-fade-in.start{
		-webkit-animation: animate-fade-in 1s cubic-bezier(0,.48,.19,1) forwards;
		-moz-animation: animate-fade-in 1s cubic-bezier(0,.48,.19,1) forwards;
		-ms-animation: animate-fade-in 1s cubic-bezier(0,.48,.19,1) forwards;
		-o-animation: animate-fade-in 1s cubic-bezier(0,.48,.19,1) forwards;
		animation: animate-fade-in 1s cubic-bezier(0,.48,.19,1) forwards;
}
@-webkit-keyframes animate-fade-in {
		0% { opacity: 0; -webkit-transform: translateX(-15px); }
		100% { opacity: 1; -webkit-transform: translateX(0); } }
@-moz-keyframes animate-fade-in {
		0% { opacity: 0; -moz-transform: translateX(-15px); }
		100% { opacity: 1; -moz-transform: translateX(0); } }
@keyframes animate-fade-in {
		0% { opacity: 0; transform:  translateX(-15px); }
		100% { opacity: 1; transform: translateX(0); }
}


/*--------------------------------------------------------------
# SVG
--------------------------------------------------------------*/

p svg, a svg{
		display: inline-block;
}

.meta polygon{
		fill: #7B3F92;
		stroke: #7B3F92;
}

.line{
		stroke: #7B3F92;
	  stroke-width: 2px;
	  stroke-miterlimit: 0;
	  vector-effect: non-scaling-stroke;
		fill: transparent;
}
.line-white{
		stroke: #fff;
}

/* Tree of Law */
svg [id^=elem-nr-] line,
svg [id^=elem-nr-] polyline,
svg [id^=elem-nr-] rect,
svg [id^=elem-nr-] circle{
		-webkit-transition: stroke .15s;
		-moz-transition: stroke .15s;
		-ms-transition: stroke .15s;
		-o-transition: stroke .15s;
		transition: stroke .15s;
}
svg [id^=elem-nr-]:hover line,
svg [id^=elem-nr-].hover line,
svg [id^=elem-nr-].active line,
svg [id^=elem-nr-]:hover polyline,
svg [id^=elem-nr-].hover polyline,
svg [id^=elem-nr-].active polyline,
svg [id^=elem-nr-]:hover rect,
svg [id^=elem-nr-].hover rect,
svg [id^=elem-nr-].active rect,
svg [id^=elem-nr-]:hover circle,
svg [id^=elem-nr-].hover circle,
svg [id^=elem-nr-].active circle{
		/*stroke-width: 1.35px;*/
		stroke: #00BF6F;
}

svg [id^=nostyle], svg [class^=nostyle]{
		fill: transparent!important;
		stroke: transparent!important;
		stroke-width: 0!important;
}




/*--------------------------------------------------------------
# Bootstrap Extension
--------------------------------------------------------------*/

/* add functionality to bootstrap grid
   - col width 20% + 40% (5 elements per line)
	 - offset 20% + 40%
	 - offset 1.5 */
@media screen and (max-width: 479px) {
		.col-xs-20pct{ position:relative; float:left; width:20%; }
		.col-xs-40pct{ position:relative; float:left; width:40%; }
		.col-xs-offset-20pct{ margin-left:20%; }
		.col-xs-offset-40pct{ margin-left:40%; }
	  .col-xs-offset-1-5 { margin-left:12.5%; }
}
@media screen and (min-width: 480px) {
		.col-ms-20pct{ position:relative; float:left; width:20%; }
		.col-ms-40pct{ position:relative; float:left; width:40%; }
		.col-ms-offset-20pct{ margin-left:20%; }
		.col-ms-offset-40pct{ margin-left:40%; }
	  .col-ms-offset-1-5 { margin-left:12.5%; }
}
@media screen and (min-width: 768px) {
		.col-sm-20pct{ position:relative; float:left; width:20%; }
		.col-sm-40pct{ position:relative; float:left; width:40%; }
		.col-sm-offset-20pct{ margin-left:20%; }
		.col-sm-offset-40pct{ margin-left:40%; }
	  .col-sm-offset-1-5 { margin-left:12.5%; }
}
@media screen and (min-width: 992px) {
		.col-md-20pct{ position:relative; float:left; width:20%; }
		.col-md-40pct{ position:relative; float:left; width:40%; }
		.col-md-offset-20pct{ margin-left:20%; }
		.col-md-offset-40pct{ margin-left:40%; }
	  .col-md-offset-1-5 { margin-left:12.5%; }
}
@media screen and (min-width: 1200px) {
		.col-lg-20pct{ position:relative; float:left; width:20%; }
		.col-lg-40pct{ position:relative; float:left; width:40%; }
		.col-lg-offset-20pct{ margin-left:20%; }
		.col-lg-offset-40pct{ margin-left:40%; }
	  .col-lg-offset-1-5 { margin-left:12.5%; }
}

/* add col-ms to bootstrap grid (medium small: 480-767px) */
.col-ms-1, .col-ms-2, .col-ms-3, .col-ms-4, .col-ms-5, .col-ms-6,
.col-ms-7, .col-ms-8, .col-ms-9, .col-ms-10, .col-ms-11, .col-ms-12
		{ position:relative; padding-left:15px; padding-right:15px; }
@media (min-width: 480px) and (max-width: 767px) {
	  .container {max-width:748px;}
	  .col-ms-1, .col-ms-2, .col-ms-3, .col-ms-4,   .col-ms-5, .col-ms-6,
		.col-ms-7, .col-ms-8, .col-ms-9, .col-ms-10, .col-ms-11 { float:left; }
	  .col-ms-1 {width:8.33333333%;}
	  .col-ms-2 {width:16.66666667%;}
	  .col-ms-3 {width:25%;}
	  .col-ms-4 {width:33.33333333%;}
	  .col-ms-5 {width:41.66666667%;}
	  .col-ms-6 {width:50%;}
	  .col-ms-7 {width:58.33333333%;}
	  .col-ms-8 {width:66.66666667%;}
	  .col-ms-9 {width:75%;}
	  .col-ms-10 {width:83.33333333%;}
	  .col-ms-11 {width:91.66666667%;}
	  .col-ms-12 {width:100%;}
	  .col-ms-pull-0 {right:auto;}
	  .col-ms-pull-1 {right:8.33333333%;}
	  .col-ms-pull-2 {right:16.66666667%;}
	  .col-sm-pull-3 {right:25%;}
	  .col-sm-pull-4 {right:33.33333333%;}
	  .col-sm-pull-5 {right:41.66666667%;}
	  .col-sm-pull-6 {right:50%;}
	  .col-sm-pull-7 {right:58.33333333%;}
	  .col-ms-pull-8 {right:66.66666667%;}
	  .col-ms-pull-9 {right:75%;}
	  .col-ms-pull-10 {right:83.33333333%;}
	  .col-ms-pull-11 {right:91.66666667%;}
	  .col-ms-pull-12 {right:100%;}
	  .col-ms-push-0 {left:auto;}
	  .col-ms-push-1 {left:8.33333333%;}
	  .col-ms-push-2 {left:16.66666667%;}
	  .col-ms-push-3 {left:25%;}
	  .col-ms-push-4 {left:33.33333333%;}
	  .col-ms-push-5 {left:41.66666667%;}
	  .col-ms-push-6 {left:50%;}
	  .col-ms-push-7 {left:58.33333333%;}
	  .col-ms-push-8 {left:66.66666667%;}
	  .col-ms-push-9 {left:75%;}
	  .col-ms-push-10 {left:83.33333333%;}
	  .col-ms-push-11 {left:91.66666667%;}
	  .col-ms-push-12 {left:100%;}
	  .col-ms-offset-0 {margin-left:0;}
	  .col-ms-offset-1 {margin-left:8.33333333%;}
	  .col-ms-offset-2 {margin-left:16.66666667%;}
	  .col-ms-offset-3 {margin-left:25%;}
	  .col-ms-offset-4 {margin-left:33.33333333%;}
	  .col-ms-offset-5 {margin-left:41.66666667%;}
	  .col-ms-offset-6 {margin-left:50%;}
	  .col-ms-offset-7 {margin-left:58.33333333%;}
	  .col-ms-offset-8 {margin-left:66.66666667%;}
	  .col-ms-offset-9 {margin-left:75%;}
	  .col-ms-offset-10 {margin-left:83.33333333%;}
	  .col-ms-offset-11 {margin-left:91.66666667%;}
	  .col-ms-offset-12 {margin-left:100%;}
}

/* add col-xl to bootstrap grid (extra large: 1600px-*) */
.col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6,
.col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12
		{ position:relative; padding-left:15px; padding-right:15px; }
@media (min-width: 1600px) {
	  .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4,   .col-xl-5, .col-xl-6,
		.col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11 { float:left; }
	  .col-xl-1 {width:8.33333333%;}
	  .col-xl-2 {width:16.66666667%;}
	  .col-xl-3 {width:25%;}
	  .col-xl-4 {width:33.33333333%;}
	  .col-xl-5 {width:41.66666667%;}
	  .col-xl-6 {width:50%;}
	  .col-xl-7 {width:58.33333333%;}
	  .col-xl-8 {width:66.66666667%;}
	  .col-xl-9 {width:75%;}
	  .col-xl-10 {width:83.33333333%;}
	  .col-xl-11 {width:91.66666667%;}
	  .col-xl-12 {width:100%;}
	  .col-xl-pull-0 {right:auto;}
	  .col-xl-pull-1 {right:8.33333333%;}
	  .col-xl-pull-2 {right:16.66666667%;}
	  .col-xl-pull-3 {right:25%;}
	  .col-xl-pull-4 {right:33.33333333%;}
	  .col-xl-pull-5 {right:41.66666667%;}
	  .col-xl-pull-6 {right:50%;}
	  .col-xl-pull-7 {right:58.33333333%;}
	  .col-xl-pull-8 {right:66.66666667%;}
	  .col-xl-pull-9 {right:75%;}
	  .col-xl-pull-10 {right:83.33333333%;}
	  .col-xl-pull-11 {right:91.66666667%;}
	  .col-xl-pull-12 {right:100%;}
	  .col-xl-push-0 {left:auto;}
	  .col-xl-push-1 {left:8.33333333%;}
	  .col-xl-push-2 {left:16.66666667%;}
	  .col-sm-push-3 {left:25%;}
	  .col-sm-push-4 {left:33.33333333%;}
	  .col-sm-push-5 {left:41.66666667%;}
	  .col-sm-push-6 {left:50%;}
	  .col-sm-push-7 {left:58.33333333%;}
	  .col-xl-push-8 {left:66.66666667%;}
	  .col-xl-push-9 {left:75%;}
	  .col-xl-push-10 {left:83.33333333%;}
	  .col-xl-push-11 {left:91.66666667%;}
	  .col-xl-push-12 {left:100%;}
	  .col-xl-offset-0 {margin-left:0;}
	  .col-xl-offset-1 {margin-left:8.33333333%;}
	  .col-xl-offset-2 {margin-left:16.66666667%;}
	  .col-xl-offset-3 {margin-left:25%;}
	  .col-xl-offset-4 {margin-left:33.33333333%;}
	  .col-xl-offset-5 {margin-left:41.66666667%;}
	  .col-xl-offset-6 {margin-left:50%;}
	  .col-xl-offset-7 {margin-left:58.33333333%;}
	  .col-xl-offset-8 {margin-left:66.66666667%;}
	  .col-xl-offset-9 {margin-left:75%;}
	  .col-xl-offset-10 {margin-left:83.33333333%;}
	  .col-xl-offset-11 {margin-left:91.66666667%;}
	  .col-xl-offset-12 {margin-left:100%;}
}



/*--------------------------------------------------------------
# Google
--------------------------------------------------------------*/

#map {
		height: 450px;
}
#map img{
		background-color: transparent;
}



/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/

@media print, screen and (min-width: 640px) {
  	.no-js .title-bar,
}


@media screen and (min-width: 768px) {
		a.meta-tag-link{
				font-size: 16px;
				padding: 5px 8px;
		}
}

@media screen and (min-width: 1024px) {
	  .main-content,
		.main-content:last-child:not(:first-child) {
	    	float: none; clear: both;
	  }
}

@media screen and (min-width: 992px) {

}

@media screen and (max-width: 991px) {
		.bar-elem{
				padding: 40px 0; }
		.bar-elem.bar-elem-space-top{
				padding-top: 80px; }
		.bar-elem.bar-elem-space-bottom{
				padding-bottom: 90px;
		}

		.main-content,
		.menu-container > .container-fluid,
		.top-bar, footer{
				padding-left: 40px;
				padding-right: 40px;
		}

	  h1, .like-h1 {
				font-size: 28px;
				letter-spacing: -.5px;
				line-height: 1.05;
				margin-bottom: 30px;
		}
	  h2, .like-h2{
		    font-size: 20px;
		    line-height: 1.15;
	  }
}

@media screen and (max-width: 767px) {

}


@media screen and (max-width: 639px) {
		.branding svg{
				width: 85px;
		}
		.top-bar{
				height: 92px;
		}

	  .main-content,
		.menu-container {
				padding-top: 130px;
		}
		.main-content,
		.menu-container > .container-fluid,
		.top-bar, footer{
				padding-left: 20px;
				padding-right: 20px;
		}

		.bar-elem{
				padding: 30px 0; }
		.bar-elem.bar-elem-space-top{
				padding-top: 50px; }
		.bar-elem.bar-elem-space-bottom{
				padding-bottom: 55px;
		}

	  h1, .like-h1{
				font-size: 25px;
				letter-spacing: -.5px;
				line-height: 1.1;
				margin-bottom: 30px;
		}
	  h2, .like-h2{
				font-size: 17px;
		    line-height: 1.2;
				margin-top: 30px;
	  }

	  .form{
	    	width: 100%;
	  }

		blockquote, blockquote p{
				font-size: 23px;
				letter-spacing: -.25px; }
	  .type-news blockquote{
		    max-width: 90%;
		    margin: 60px auto;
	  }

		small, small p, .meta,
		.type-news .quellen{
		  	font-size: 12px; }
		.meta-large{
				font-size: 13px;
		}
}

@media screen and (max-width: 479px) {
		.branding svg{
				width: 75px;
		}
		.top-bar{
				height: 85px;
		}

		.main-content,
		.menu-container{
				padding-top: 100px;
		}

		.type-news .header .teaser,
		.type-angebote .header .teaser{
				font-size: 16px;
			  letter-spacing: 0;
		}

		.container-fluid.showcase-wrapper{
				margin-bottom: 50px;
		}

		.branding .client,
		.main-content:not(.search) .entry p.teaser{
				display: none;
		}

		.container-fluid > .row > div{
				padding-left: 10px;
				padding-right: 10px; }
		.container-fluid > .row{
				margin-left: -10px;
				margin-right: -10px;
		}
		/*.list-container > .row > div{ padding-left:10px; padding-right:10px; }
		.list-container > .row{ margin-left:-10px; margin-right:-10px; }*/
}
