/* Flackern der Topbar verhindern */
.top-bar {
  display: none;
}

@media screen and (min-width: 40em) {
   .top-bar {
    display: block;
  }

   .title-bar {
    display: none;
  }
}
/**********************************/


.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

img {
	width: 100%;
}

.teaser-news {
	margin-bottom: 50px;
}


/* Masonry */

.grid:after {
  content: '';
  display: block;
  clear: both;
}

.grid-sizer {
	width: 33.3333%;
}

.grid-item {
  width: calc(33.3333% - 50px);
  float: left;
  overflow: hidden;
  margin-bottom: 50px;
}

.grid-item--width2 {
	width: calc(66.6666% - 50px);
}

.boxes {
	margin: 0 -25px;
}

.grid-item {
	margin: 0 25px 50px 25px;
}


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


	.grid-sizer {
		width: 50%;
	}

	.grid-item {
	  width: calc(50% - 50px);
	}

	.grid-item--width2 {
	  width: calc(100% - 50px);
	}
}

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

	.grid-sizer {
		width: 100%;
	}

	.grid-item {
	  	width: calc(100% - 50px);
	}
}

.frame-space-before-medium {
	margin-top: 1.875rem;
}


.ce-gallery .ce-row {
	margin-top: 50px;
}

.ce-gallery .ce-row:first-child {
	margin-top: 0;
}

.grid-container > .ganzebreite {
	margin-top: 50px;
}

.title-bar .menu-icon {
    margin-left: 18px;
}

/* Spaltenanpassung an 50px Breite */

#inhalt .grid-x {
	margin-bottom: 50px;
}

.grid-container {
    padding-right: 25px;
    padding-left: 25px;
}

#inhalt .grid-margin-x.grid-x  {
    margin-left: -25px;
    margin-right: -25px;
}




@media print, screen and (min-width: 1200px) {

	.ganzebreite .left > div > header, .ganzebreite .left p {
		padding-left: 50px;
	}

	.ganzebreite .right > div > header, .ganzebreite .right p {
		padding-right: 35px;
	}

	.ganzebreite .right > div > hr {
		margin:0 50px 20px 0;
 		border: 0;
    		height: 0;
    		border-top: 1px solid #fff;
    		border-bottom: none;
	}
	.ganzebreite .left > div > hr {
		margin:0 50px 0 50px;
 		border: 0;
    		height: 0;
    		border-top: 1px solid #fff;
    		border-bottom: none;
	}



	/* ueberbreites Bild in der rechten Spalte */
	.frame-layout-1 {
		width: calc(50vw - 25px);
	}

	/* ueberbreites Bild in der linken Spalte */
	.frame-layout-2 {
		width: calc(50vw - 25px);
		position: relative;
		left: calc((100vw - 1150px) / -2);
	}
}

@media print, screen and (max-width: 640px) {

	.grid-margin-x > .cell {
	    width: calc(100% - 50px);
	    margin: auto;
	}

	.ge .ce-image {
		margin-bottom: 50px;
	}

	.ganzebreite .ge .ce-image {
		margin-bottom: 0;
	}

	.ganzebreite hr {
		margin:0 20px;
 		border: 0;
    		height: 0;
    		border-top: 1px solid #fff;
    		border-bottom: none;
	}
	/*.ganzebreite, .swiper-container {
		margin-bottom: 50px;
	}*/

	.grid-x {
		margin-bottom: 0;
	}

	.detailansicht h1 {
		margin: 0;
	}

	.detailansicht p {
		padding: 10px 10px 20px 20px;
	}
}


@media print, screen and (min-width: 641px) {

	.detailansicht img {
		margin-bottom: 50px;

		}
	.detailansicht-text.cell {
		margin-bottom: 50px;
		margin-left: 25px;
		box-sizing: border-box;
		width: calc(66.6666% - 50px) !important;
	}

	.detailansicht-text.cell {
		margin-bottom: 50px;
		margin-left: 25px;
		box-sizing: border-box;
		width: calc(66.6666% - 50px) !important;
	}


	/*
	.detailansicht-img.cell {
		margin-right: 25px;
		box-sizing: border-box;
		width: calc(33.33333% - 50px) !important;
	}
	*/

	.ganzebreite hr {
		margin:0 20px;
 		border: 0;
    		height: 0;
    		border-top: 1px solid #fff;
    		border-bottom: none;
	}

}



@media print, screen and (min-width: 640px) {


	#inhalt .grid-margin-x > .cell {
	    margin-left: 25px;
	    margin-right: 25px;
	}

	#inhalt .grid-margin-x > .large-4 {
	    width: calc(33.33333% - 50px);
	}

	#inhalt .grid-margin-x > .large-6 {
	    width: calc(50% - 50px);
	}

}

@media print, screen and (min-width: 640px) and (max-width: 1023px) {

	.ge .medium-6:first-child .ce-image {
		margin-bottom: 50px;
	}

	#inhalt .grid-margin-x > .medium-6 {
	    width: calc(50% - 50px);
	}
}






/* Filter */

.is-animated {
  animation: .6s zoom-in;
}

.filter {
	/*display:flex;
 	justify-content: space-between;*/

}

.filter a {
	font-family: solex, sans-serif;
    font-size: 1.3em;
	font-weight:400;
	color:#000;
	background:#e6e6e8;
	padding:3px 15px 6px 15px;
	-moz-border-radius: 3px;
     border-radius: 3px;
	margin:0 10px 10px 0;
	display:inline-block;
}

.filter a.active, .filter a:hover {
	background:#f9f9f9;
	color:#808080;
}

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

	.filter {
		width: 100%;
		display: block;
		height: auto;
	}

	.filter a {
		display: inline-block;
		margin: 10px 10px 3px 0;
	}
}