/* Sanitize and default Values in case #val() Values from ZPp are empty or not plain numbers */
/* BEGIN ZP 12 Grid Style */

div.zpRow {
  margin-bottom: 15px;
}
div.zpRow:after {
  visibility: hidden;
  display: block;
  content: "";
  clear: both;
  height: 0;
}
div.zpRow div.zpColumn img.singleImage {
  max-width: 100% !important;
  height: auto !important;
  display: inline-block;
}
div.zpRow div.zpColumn .zpImageGallery img.singleImage {
  display: block;
}
div.zpRow div.zpColumn .zpImageGallery a.fancybox {
  max-width: 100%;
  /* Bugfix to keep image responsive in IE11 */

}
div.zpRow div.zpColumn div.zpColumnItem {
  display: block;
  float: left;
  padding: 0;
}
/* END ZP 12 Grid Style */

/* *** Global Rules applying to all Layouts ***/

/* Media Queries */

@media print {
  div.zpRow {
    margin-bottom: 0 !important;
  }
  /*
  	div.zpRow div.zpColumn {
  		float: none !important;
  		width: 100% !important;
  		margin-left: 0 !important;
  		margin-bottom: 10px !important;
  	}
  	*/
  
  html,
  body {
    height: auto;
    /* solves a problem with printing to pdf when height is 100% */
  
  }
  #top {
    page-break-before: always;
  }
  .zp13slider-control-nav zp13slider-control-paging,
  .zp13slider-direction-nav,
  .flex-control-nav,
  .flex-direction-nav {
    display: none !important;
  }
}
/* break long words in headlines by default, so they don't destroy the layout, in case a layout doesn't activate hyphenation */

h1,
h2,
h3,
h4,
h5,
h6,
.zphyphenate {
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.zphyphenate {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -o-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-limit-lines: 2;
  -moz-hyphenate-limit-lines: 2;
  -ms-hyphenate-limit-lines: 2;
  hyphenate-limit-lines: 2;
  -webkit-hyphenate-limit-chars: auto 3;
  -moz-hyphenate-limit-chars: auto 3;
  -ms-hyphenate-limit-chars: auto 3;
  hyphenate-limit-chars: auto 3;
}
/* flex-slider general overrides */

.flex-direction-nav .flex-disabled {
  opacity: 0 !important;
  filter: alpha(opacity=0);
  cursor: default;
  z-index: -1;
}
/* more responsive iFrames and iFrame Containers */

iframe,
object,
embed,
.zpwIFrame,
.zpwFacebook_Like-Button,
.zpwFacebook_Like-Box,
div.fb-like {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
/* Remove eventual borders from 1px images */

img[width="1px"],
img[width="1"],
.plain > img,
img.plain {
  border: none !important;
  box-shadow: none !important;
}
/* *** End Global Rules applying to all Layouts ***/

/* ADDED StS ZP 13 Grid */

div.zpRow .zpColumn {
  margin-bottom: 1em;
}
div.zpRow .zpColumn,
.zpColumnItem {
  box-sizing: border-box;
  /* IE Bugfix */
  max-width: 100%;
  /* IE Bugfix */

}
.zpColumnItem {
  width: 100%;
  /* fill enclosing zpColumn, so inline editing resizing refletcs the column and not the columnItem */

}
div.zpRow .zpColumn {
  padding: 0 15px;
}
/* ***** 12-column grid ***** */

.c1,
.c2,
.c4,
.c5,
.c6,
.c7,
.c8,
.c9,
.c10,
.c11,
.c12 {
  box-sizing: border-box;
}
div.zpRow .zpColumn.c12,
.zpColumnItem.c12 {
  float: left;
  width: 100%;
}
div.zpRow .zpColumn.c11,
.zpColumnItem.c11 {
  float: left;
  width: 91.666666667%;
}
div.zpRow .zpColumn.c10,
.zpColumnItem.c10 {
  float: left;
  width: 83.333333333%;
}
div.zpRow .zpColumn.c9,
.zpColumnItem.c9 {
  float: left;
  width: 75%;
}
div.zpRow .zpColumn.c8,
.zpColumnItem.c8 {
  float: left;
  width: 66.666666667%;
}
div.zpRow .zpColumn.c7,
.zpColumnItem.c7 {
  float: left;
  width: 58.333333333%;
}
div.zpRow .zpColumn.c6,
.zpColumnItem.c6 {
  float: left;
  width: 50%;
}
div.zpRow .zpColumn.c5,
.zpColumnItem.c5 {
  float: left;
  width: 41.666666667%;
}
div.zpRow .zpColumn.c4,
.zpColumnItem.c4 {
  float: left;
  width: 33.333333333%;
}
div.zpRow .zpColumn.c3,
.zpColumnItem.c3 {
  float: left;
  width: 25%;
}
div.zpRow .zpColumn.c2,
.zpColumnItem.c2 {
  float: left;
  width: 16.666666667%;
}
div.zpRow .zpColumn.c1,
.zpColumnItem.c1 {
  float: left;
  width: 8.333333333%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c1,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c1,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c1,
.zparea[data-numcolumns="8"] .zpColumnItem.c1,
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c2,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c2,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c2,
.zparea[data-numcolumns="8"] .zpColumnItem.c2 {
  float: left;
  width: 12.5%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c3,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c3,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c3,
.zparea[data-numcolumns="8"] .zpColumnItem.c3 {
  float: left;
  width: 25%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c4,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c4,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c4,
.zparea[data-numcolumns="8"] .zpColumnItem.c4,
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c5,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c5,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c5,
.zparea[data-numcolumns="8"] .zpColumnItem.c5 {
  float: left;
  width: 37.5%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c6,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c6,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c6,
.zparea[data-numcolumns="8"] .zpColumnItem.c6 {
  float: left;
  width: 50%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c7,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c7,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c7,
.zparea[data-numcolumns="8"] .zpColumnItem.c7,
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c8,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c8,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c8,
.zparea[data-numcolumns="8"] .zpColumnItem.c8 {
  float: left;
  width: 62.5%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c9,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c9,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c9,
.zparea[data-numcolumns="8"] .zpColumnItem.c9 {
  float: left;
  width: 75%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c10,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c10,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c10,
.zparea[data-numcolumns="8"] .zpColumnItem.c10,
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c11,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c11,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c11,
.zparea[data-numcolumns="8"] .zpColumnItem.c11 {
  float: left;
  width: 87.5%;
}
.zpgrid[data-numcolumns="8"] div.zpRow .zpColumn.c12,
.zparea[data-numcolumns="8"] div.zpRow .zpColumn.c12,
.zpgrid[data-numcolumns="8"] .zpColumnItem.c12,
.zparea[data-numcolumns="8"] .zpColumnItem.c12 {
  float: left;
  width: 100%;
}
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c1,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c1,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c1,
.zparea[data-numcolumns="6"] .zpColumnItem.c1,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c2,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c2,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c2,
.zparea[data-numcolumns="6"] .zpColumnItem.c2 {
  float: left;
  width: 16.666666667%;
}
.zpgrid[data-numcolumns="6"] 3 div.zpRow .zpColumn.c3,
.zparea[data-numcolumns="6"] 3 div.zpRow .zpColumn.c3,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c3,
.zparea[data-numcolumns="6"] .zpColumnItem.c3,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c4,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c4,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c4,
.zparea[data-numcolumns="6"] .zpColumnItem.c4 {
  float: left;
  width: 33.333333333%;
}
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c5,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c5,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c5,
.zparea[data-numcolumns="6"] .zpColumnItem.c5,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c6,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c6,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c6,
.zparea[data-numcolumns="6"] .zpColumnItem.c6 {
  float: left;
  width: 50%;
}
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c7,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c7,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c7,
.zparea[data-numcolumns="6"] .zpColumnItem.c7,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c8,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c8,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c8,
.zparea[data-numcolumns="6"] .zpColumnItem.c8 {
  float: left;
  width: 66.666666667%;
}
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c9,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c9,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c9,
.zparea[data-numcolumns="6"] .zpColumnItem.c9,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c10,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c10,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c10,
.zparea[data-numcolumns="6"] .zpColumnItem.c10 {
  float: left;
  width: 83.333333333%;
}
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c11,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c11,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c11,
.zparea[data-numcolumns="6"] .zpColumnItem.c11,
.zpgrid[data-numcolumns="6"] div.zpRow .zpColumn.c12,
.zparea[data-numcolumns="6"] div.zpRow .zpColumn.c12,
.zpgrid[data-numcolumns="6"] .zpColumnItem.c12,
.zparea[data-numcolumns="6"] .zpColumnItem.c12 {
  float: left;
  width: 100%;
}
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c1,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c1,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c1,
.zparea[data-numcolumns="4"] .zpColumnItem.c1,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c2,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c2,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c2,
.zparea[data-numcolumns="4"] .zpColumnItem.c2,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c3,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c3,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c3,
.zparea[data-numcolumns="4"] .zpColumnItem.c3 {
  float: left;
  width: 25%;
}
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c4,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c4,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c4,
.zparea[data-numcolumns="4"] .zpColumnItem.c4,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c5,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c5,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c5,
.zparea[data-numcolumns="4"] .zpColumnItem.c5,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c6,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c6,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c6,
.zparea[data-numcolumns="4"] .zpColumnItem.c6 {
  float: left;
  width: 50%;
}
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c7,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c7,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c7,
.zparea[data-numcolumns="4"] .zpColumnItem.c7,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c8,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c8,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c8,
.zparea[data-numcolumns="4"] .zpColumnItem.c8,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c9,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c9,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c9,
.zparea[data-numcolumns="4"] .zpColumnItem.c9 {
  float: left;
  width: 75%;
}
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c10,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c10,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c10,
.zparea[data-numcolumns="4"] .zpColumnItem.c10,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c11,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c11,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c11,
.zparea[data-numcolumns="4"] .zpColumnItem.c11,
.zpgrid[data-numcolumns="4"] div.zpRow .zpColumn.c12,
.zparea[data-numcolumns="4"] div.zpRow .zpColumn.c12,
.zpgrid[data-numcolumns="4"] .zpColumnItem.c12,
.zparea[data-numcolumns="4"] .zpColumnItem.c12 {
  float: left;
  width: 100%;
}
/* *** always scale columns in a .noresize Row (i.e. news columns) *** */

div.zpRow.noresize .zpColumn.c1,
div.zpRow.noresize .zpColumn.c2,
div.zpRow.noresize .zpColumn.c3,
div.zpRow.noresize .zpColumn.c4,
div.zpRow.noresize .zpColumn.c5,
div.zpRow.noresize .zpColumn.c6,
div.zpRow.noresize .zpColumn.c7,
div.zpRow.noresize .zpColumn.c8,
div.zpRow.noresize .zpColumn.c9,
div.zpRow.noresize .zpColumn.c10,
div.zpRow.noresize .zpColumn.c11,
div.zpRow.noresize .zpColumn.c12 {
  width: 100%;
}
div.zpRow.noresize .zpSpacer {
  clear: both;
}
/* *** 1-Column Breakpoint (iphone 6 landscape) *** */

@media (max-width: 667px) {
  .responsivelayout div.zpRow .zpColumn.c1,
  .responsivelayout .zpColumnItem.c1,
  .responsivelayout div.zpRow .zpColumn.c2,
  .responsivelayout .zpColumnItem.c2,
  .responsivelayout div.zpRow .zpColumn.c3,
  .responsivelayout .zpColumnItem.c3,
  .responsivelayout div.zpRow .zpColumn.c4,
  .responsivelayout .zpColumnItem.c4,
  .responsivelayout div.zpRow .zpColumn.c5,
  .responsivelayout .zpColumnItem.c5,
  .responsivelayout div.zpRow .zpColumn.c6,
  .responsivelayout .zpColumnItem.c6,
  .responsivelayout div.zpRow .zpColumn.c7,
  .responsivelayout .zpColumnItem.c7,
  .responsivelayout div.zpRow .zpColumn.c8,
  .responsivelayout .zpColumnItem.c8,
  .responsivelayout div.zpRow .zpColumn.c9,
  .responsivelayout .zpColumnItem.c9,
  .responsivelayout div.zpRow .zpColumn.c10,
  .responsivelayout .zpColumnItem.c10,
  .responsivelayout div.zpRow .zpColumn.c11,
  .responsivelayout .zpColumnItem.c11,
  .responsivelayout div.zpRow .zpColumn.c12,
  .responsivelayout .zpColumnItem.c12 {
    width: 100% !important;
  }
  .responsivelayout .zpSpacer {
    clear: both;
  }
  .responsivelayout .zpSpacer.hor {
    display: none;
  }
}
/* Breakout Styles for layouts which don't support them edge to edge */

body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) {
  padding-top: 15px;
  padding-bottom: 15px;
}
body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) + .zpContainer:not(.zpBreakout) {
  margin-top: 15px;
}
body:not(.withnews) .zpBreakout:not(.hasNews) .zpRow {
  width: 100%;
  margin: 0 auto;
  float: none;
}
/* Breakout Styles for responsive layouts which support them edge to edge */

.responsivelayout.supportsbreakout body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) {
  /* we don't use overflow hidden on body to avoid horizontal scrollbar because dropdown menues (e.g. on the far right) might need an overflow */
  width: calc(100vw - 9px);
  /* -9px compensates possible scrollbar Safari: -8, Chrome: -9 */
  margin-left: calc(-50vw + 50%);
  box-sizing: border-box;
  padding: 15px 0 15px 9px;
  /* padding-left is equal to amount to compensate scrollbar */

}
.responsivelayout.supportsbreakout body.touch:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) {
  width: 100vw;
  /* Do not compensate on transparent Scrollbars on touch devices like e.g. the ipad. */

}
.responsivelayout.supportsbreakout body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) + .zpContainer:not(.zpBreakout) {
  margin-top: 15px;
}
.responsivelayout.supportsbreakout body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) > .zpRow {
  max-width: 845px;
}
.responsivelayout.supportsbreakout body:not(.withnews) .zpContainer.zpBreakout:not(.hasNews) + .zpRow {
  margin-top: 15px;
}
.responsivelayout.supportsbreakout body:not(.withnews) .span8 .zpContainer.zpBreakout:not(.hasNews) {
  margin-left: calc(-50vw + 77%);
}
.supportsbreakout body:not(.withnews) .zpColumn .zpBreakout:not(.hasNews) {
  /* we don't use overflow hidden on body to avoid horizontal scrollbar because dropdown menues (e.g. on the far right) might need an overflow */
  width: calc(100vw - 9px);
  /* -9px compensates possible scrollbar Safari: -8, Chrome: -9 */
  margin-left: calc(-50vw + 50%);
  /* Todo: this might break if less compression is used! */
  box-sizing: border-box;
  padding: 0;
  /* padding-left is equal to amount to compensate scrollbar */
  overflow: hidden !important;
}
.zpVerticalCenter,
div.zpRow.zpVerticalCenter,
div.zpRow .zpVerticalCenter,
div.zpRow .zpColumn.zpVerticalCenter,
div.zpRow .zpColumn .zpVerticalCenter {
  position: absolute;
  top: 50%;
  bottom: auto;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.zpwSpacer {
  visibility: hidden;
  box-sizing: border-box;
  height: 30px;
  margin: 0 !important;
}
/*
.zpgrid,
.zpgrid #grid {
  max-width: @contentcopy-max-image-width + 30px;
}
*/

.zpgrid.copiedlayout {
  margin-left: -15px;
  margin-right: -15px;
}

/*
 * xFancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 * 
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 * 
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	margin-left: -20px;
	cursor: pointer;
	overflow: hidden;
	z-index: 7104;
	display: none;
}

#fancybox-loading div {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 480px;
	background-image: url('js/fancybox/fancybox.png');
}

#fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 7101;
	display: none;
}

#fancybox-tmp {
	padding: 0;
	margin: 0;
	border: 0;
	overflow: auto;
	display: none;
}

#fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	padding: 20px;
	z-index: 7101;
	outline: none;
	display: none;
	/* added by StS so we can use a general box-sizing rule with border-box in layouts. Otherwise, placing of element here would be based on wrong calculations */
	box-sizing: content-box;
}

#fancybox-outer {
	position: relative;
	width: 100%;
	height: 100%;
	/*background: #fff;*/
	border-radius: 5px;
}

#fancybox-content {
	width: 0;
	height: 0;
	padding: 0;
	outline: none;
	position: relative;
	overflow: hidden;
	z-index: 7102;
	border: 0px solid #fff;
	border-radius: 5px;
}

#fancybox-hide-sel-frame {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
	z-index: 6101;
}

#fancybox-close {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	background: transparent url('js/fancybox/fancybox.png') -40px 0px;
	cursor: pointer;
	z-index: 7103;
	display: none;
}

#fancybox-error {
	color: #444;
	font: normal 12px/20px Arial;
	padding: 14px;
	margin: 0;
}

#fancybox-img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	border: none;
	outline: none;
	line-height: 0;
	vertical-align: top;
}

#fancybox-frame {
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}

#fancybox-left, #fancybox-right {
	position: absolute;
	bottom: 0px;
	height: 100%;
	width: 35%;
	cursor: pointer;
	outline: none;
	background: transparent url('js/fancybox/blank.gif');
	z-index: 7102;
	display: none;
}

#fancybox-left {
	left: 0px;
}

#fancybox-right {
	right: 0px;
}

#fancybox-left-ico, #fancybox-right-ico {
	position: absolute;
	top: 50%;
	left: -9999px;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	cursor: pointer;
	z-index: 7102;
	display: block;
}

#fancybox-left-ico {
	background-image: url('js/fancybox/fancybox.png');
	background-position: -40px -30px;
}

#fancybox-right-ico {
	background-image: url('js/fancybox/fancybox.png');
	background-position: -40px -60px;
}

#fancybox-left:hover, #fancybox-right:hover {
	visibility: visible; /* IE6 */
}

#fancybox-left:hover span {
	left: 20px;
}

#fancybox-right:hover span {
	left: auto;
	right: 20px;
}

.fancybox-bg {
	position: absolute;
	padding: 0;
	margin: 0;
	border: 0;
	width: 20px;
	height: 20px;
	z-index: 7001;
}

#fancybox-bg-n {
	top: -20px;
	left: 0;
	width: 100%;
	/*background-image: url('js/fancybox/fancybox-x.png');*/
}

#fancybox-bg-ne {
	top: -20px;
	right: -20px;
	/*background-image: url('js/fancybox/fancybox.png');*/
	background-position: -40px -162px;
}

#fancybox-bg-e {
	top: 0;
	right: -20px;
	height: 100%;
	/*background-image: url('js/fancybox/fancybox-y.png');*/
	background-position: -20px 0px;
}

#fancybox-bg-se {
	bottom: -20px;
	right: -20px;
	/*background-image: url('js/fancybox/fancybox.png');*/
	background-position: -40px -182px; 
}

#fancybox-bg-s {
	bottom: -20px;
	left: 0;
	width: 100%;
	/*background-image: url('js/fancybox/fancybox-x.png');*/
	background-position: 0px -20px;
}

#fancybox-bg-sw {
	bottom: -20px;
	left: -20px;
	/*background-image: url('js/fancybox/fancybox.png');*/
	background-position: -40px -142px;
}

#fancybox-bg-w {
	top: 0;
	left: -20px;
	height: 100%;
	/*background-image: url('js/fancybox/fancybox-y.png');*/
}

#fancybox-bg-nw {
	top: -20px;
	left: -20px;
	/*background-image: url('js/fancybox/fancybox.png');*/
	background-position: -40px -122px;
}

#fancybox-title {
	/*font-family: Helvetica;
	font-size: 12px;*/
	z-index: 7102;
}

.fancybox-title-inside {
	/*text-align: center;*/
	color: #fff;
	/*background: #fff;*/
	position: relative;
}

.fancybox-title-outside {
	padding-top: 10px;
	color: #fff;
}

.fancybox-title-over {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #FFF;
	text-align: left;
}

#fancybox-title-over {
	padding: 10px;
	background-image: url('js/fancybox/fancy_title_over.png');
	display: block;
}
#fancybox-title-over:empty{
	display: none;
}
#fancybox-title-over p:last-child{
	margin-bottom: 0;
}

.fancybox-title-inside #fancybox-title-over,
.fancybox-title-outside #fancybox-title-over{
	background-image: none;
}

.fancybox-title-float {
	position: absolute;
	left: 0;
	bottom: -20px;
	height: 32px;
}

#fancybox-title-float-wrap {
	border: none;
	border-collapse: collapse;
	width: auto;
}

#fancybox-title-float-wrap td {
	border: none;
	white-space: nowrap;
}

#fancybox-title-float-left {
	padding: 0 0 0 15px;
	background: url('js/fancybox/fancybox.png') -40px -90px no-repeat;
}

#fancybox-title-float-main {
	color: #FFF;
	line-height: 29px;
	font-weight: bold;
	padding: 0 0 3px 0;
	background: url('js/fancybox/fancybox-x.png') 0px -40px;
}

#fancybox-title-float-right {
	padding: 0 0 0 15px;
	background: url('js/fancybox/fancybox.png') -55px -90px no-repeat;
}
/*
* Layout: Kommunal Responsive
* $Id: styles.less 37013 2016-02-19 14:52:35Z sseiz $
* Copyright Zeta Software GmbH
*/

/***** TAGS *****/

html {
  overflow-y: scroll;
}
body {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 0;
  font-size: 80%;
  color: #4c4c4c;
  background-color: white;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  padding: 0 0 30px 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -o-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-limit-lines: 2;
  -moz-hyphenate-limit-lines: 2;
  -ms-hyphenate-limit-lines: 2;
  hyphenate-limit-lines: 2;
  -webkit-hyphenate-limit-chars: auto 3;
  -moz-hyphenate-limit-chars: auto 3;
  -ms-hyphenate-limit-chars: auto 3;
  hyphenate-limit-chars: auto 3;
}
h1 {
  font-family: Verdana;
  margin: 0px 0 10px 0;
  padding: 0;
  font-size: 24px;
  font-weight: bold;
  line-height: normal;
  color: #3287cd;
  position: relative;
}
h2 {
  font-family: Verdana;
  margin: 10px 0 10px 0;
  padding: 0;
  font-size: 18px;
  font-weight: normal;
  line-height: normal;
  color: #3287cd;
}
h3,
h4,
h5,
h6 {
  font-family: Verdana;
  margin: 10px 0 10px 0;
  padding: 0;
  font-size: 1.38em;
  font-weight: normal;
  line-height: normal;
  color: #ad162d;
}
p {
  margin: 0 0 10px 0;
  padding: 0;
}
ul,
ol {
  margin: 0 0 10px 25px;
  padding: 0;
}
ul li {
  margin: 0;
  padding: 0;
  list-style: square;
}
ol li {
  margin: 0;
  padding: 0;
  list-style: decimal;
}
table {
  margin: 0 0 10px 0;
  padding: 0;
}
td {
  vertical-align: top;
}
img {
  margin: 0;
  padding: 0;
  border-style: none;
  max-width: 100%;
  height: auto;
}
/***** LINKS *****/

a {
  color: #3287cd;
  text-decoration: none;
}
a:hover {
  color: #3287cd;
  text-decoration: underline;
}
/***** TOP *****/

#top {
  margin: 0;
  padding: 0;
}
/***** WRAPPER *****/

#wrapper {
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  max-width: 1200px;
}
/***** FRAMEBOX *****/

#framebox {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background-color: white;
  border: 1px solid transparent;
  border-top: none;
  overflow: hidden;
  position: relative;
}
/***** TOPLINE *****/

#topline {
  margin: 0;
  padding: 10px;
  background-color: #ebebeb;
  overflow: hidden;
  min-height: 150px;
  border-right: 1px solid #f3f3f3;
  position: relative;
  z-index: 1;
}
/***** WEBDESCRIPTION *****/

#webdescription {
  margin: 0;
  padding: 0;
}
#logo {
  padding: 0px 0 10px 0;
  text-align: center;
}
#webtext {
  margin: 0;
  padding: 0px 0 0 0;
  text-align: center;
}
#webname {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  margin: 0 0 5px 0;
  padding: 0;
  font-size: 1.38em;
  font-weight: bold;
  font-style: normal;
  text-transform: none;
  text-align: center;
}
#webname a {
  color: #4c4c4c;
  text-decoration: none;
}
#slogan {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 0;
  font-size: 0.92em;
  font-weight: normal;
  font-style: normal;
  color: #4c4c4c;
  text-transform: none;
  text-align: center;
  white-space: nowrap;
}
/***** SEARCH *****/

#search {
  margin: -30px -20px 0 -30px;
}
#searchform {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 30px;
  position: relative;
}
#searchform input {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  background-color: white;
}
#searchfieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
#searchfield {
  box-sizing: border-box;
  width: 100%;
  height: 30px;
  margin: 0;
  padding: 0 33px 0 10px;
  line-height: 30px;
  border: 1px solid #ebebeb;
  border-radius: 2px;
  background-clip: padding-box;
  font-size: 14px;
  color: black;
  /* Todo: */
  text-shadow: inherit;
  background-color: white;
  position: absolute;
  top: 0;
  left: 0;
  outline: 0;
}
#searchbutton {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  width: 28px;
  height: 28px;
  border: 0;
  position: absolute;
  top: 1px;
  right: 1px;
  background: transparent;
}
/***** SUBMEN• *****/

a#mobilenavtoggle {
  color: #4c4c4c;
  background-color: white;
  border: 1px solid #4c4c4c;
  padding: 7px 10px;
  font-weight: bold;
  float: right;
  display: none;
  position: absolute;
  top: 10px;
  right: 15px;
  left: auto;
  bottom: auto;
  z-index: 300;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  border-radius: 2px;
  background-clip: padding-box;
}
a#mobilenavtoggle:hover {
  text-decoration: underline;
}
div#subnavbar {
  margin: 0;
  padding: 0;
}
#subnavbar ul.submenu {
  margin: 0;
  padding: 0;
}
#subnavbar ul.submenu li > ul {
  display: none;
}
#subnavbar ul.submenu li.active > ul {
  display: block;
}
#subnavbar li > a {
  position: relative;
}
#subnavbar li.open > a:before,
#subnavbar li.haschilds > a:before {
  content: '';
  box-sizing: content-box;
  position: absolute;
  top: 47%;
  margin-top: -0.25em;
  right: 1.5em;
  height: 0.5em;
  width: 0.5em;
  border-style: solid;
  border-width: 1px 1px 0 0;
  display: block;
  -webkit-transition: -webkit-transform 200ms ease;
  transition: transform 200ms ease;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
#subnavbar li.open > a:before {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  margin-top: -0.5em;
}
#subnavbar ul.submenu li {
  list-style-type: none;
  display: block;
}
#subnavbar ul.submenu li a {
  text-transform: none;
  color: black;
  font-size: 14px;
  display: block;
  padding: 6px 20px 6px 30px;
  width: 100%;
  margin: 0 0 0 -30px;
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  background-color: #ebebeb;
  text-overflow: ellipsis;
  overflow: hidden;
}
#subnavbar ul.submenu ul {
  margin-bottom: 0;
}
#subnavbar ul.submenu ul li a {
  padding: 6px 20px 6px 55px;
  width: 100%;
  margin: 0 0 0 -55px;
}
#subnavbar ul.submenu ul ul li a {
  padding: 6px 20px 6px 80px;
  width: 100%;
  margin: 0 0 0 -80px;
}
#subnavbar ul.submenu ul ul ul li a {
  padding: 6px 20px 6px 105px;
  width: 100%;
  margin: 0 0 0 -105px;
}
#subnavbar ul.submenu ul ul ul ul li a {
  padding: 6px 20px 6px 130px;
  width: 100%;
  margin: 0 0 0 -130px;
}
#subnavbar ul.submenu ul ul ul ul ul {
  margin: 0;
}
#subnavbar ul.submenu li a:hover {
  color: #3287cd;
  text-decoration: underline;
  background-color: #d2d2d2;
}
#subnavbar li a.active,
#subnavbar li a.subnav1active,
#subnavbar li a.subnav1active:hover,
#subnavbar li a.subnav2active,
#subnavbar li a.subnav2active:hover,
#subnavbar li a.subnav3active,
#subnavbar li a.subnav3active:hover {
  color: #3287cd !important;
  text-decoration: none !important;
}
/***** SLIDES *****/

#headerslider {
  overflow: hidden;
  margin: 0 0 30px 0;
  padding: 0;
  line-height: 0;
  background-color: white;
  position: relative;
  z-index: 98;
}
.flexslider {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.flexslider .slides > li {
  position: relative;
}
.flex-caption {
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 20px 30px;
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 1em;
  line-height: 1.38em;
  text-align: left;
  color: #4c4c4c;
  background-color: transparent;
  background-image: url(../assets/stock-images/caption.png);
  position: absolute;
  left: 0;
  bottom: 0;
  right: auto;
  top: auto;
}
.flex-caption > h1:last-child,
.flex-caption > h2:last-child,
.flex-caption > h3:last-child,
.flex-caption > p:last-child {
  margin-bottom: 0;
}
.flex-caption span,
.flex-caption h1,
.flex-caption h2,
.flex-caption h3 {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  display: block;
  margin: 0 0 10px 0;
  padding: 0;
  font-size: 1.5em;
  font-weight: bold;
  color: #666666;
  line-height: normal;
}
.flex-caption p {
  margin: 0 0 10px 0;
  padding: 0;
}
.flex-caption a {
  color: #2d7bbb;
  text-decoration: none;
}
.flex-caption a:hover {
  color: #2d7bbb;
  text-decoration: underline;
}
.flex-control-paging {
  box-sizing: border-box;
  margin: 0;
  padding: 10px 0 0 30px;
  height: 14px;
  text-align: left;
  position: absolute;
  top: 10px;
  z-index: 99;
}
.flex-control-paging li {
  margin: 0 6px 0 0;
}
.flex-control-paging li a {
  float: left;
  margin: 0;
  padding: 0;
  width: 13px;
  height: 13px;
  text-decoration: none;
  text-indent: -999999px;
  background: transparent;
  background-color: transparent;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  background-image: url(stock-images/bg_control_nav.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  overflow: hidden;
}
.flex-control-paging li a.flex-active {
  background: transparent;
  background-color: transparent;
  background-position: 0 -26px;
  background-image: url(stock-images/bg_control_nav.png);
  background-repeat: no-repeat;
}
.flex-control-paging li a:hover {
  background-position: 0 -13px;
}
.flex-direction-nav a {
  top: 50%;
}
.flex-direction-nav .flex-prev,
.flex-direction-nav .prev,
.flexslider:hover .flex-prev,
.flexslider:hover .prev {
  opacity: 1;
  left: 5px !important;
}
.flex-direction-nav .flex-next,
.flex-direction-nav .next,
.flexslider:hover .flex-next,
.flexslider:hover .next {
  opacity: 1;
  right: 5px !important;
}
/***** BREADCRUMB *****/

#breadcrumb {
  padding: 0 30px;
  font-size: 0.92em;
  color: #5a5a5a;
}
#breadcrumb a {
  padding: 0 5px;
  color: #2d7bbb;
  text-decoration: none;
}
#breadcrumb a:hover {
  color: #2d7bbb;
  text-decoration: underline;
}
#breadcrumb span {
  color: #5a5a5a;
}
/***** MAINBAR *****/

#mainbar {
  float: left;
  width: 73%;
}
/***** CONTENT *****/

#content,
#pageheader {
  margin: 0;
  line-height: 1.38em;
  background-color: white;
  padding: 0 0 30px 15px;
  color: #333333;
}
#content {
  float: left;
  width: 66%;
  box-sizing: border-box;
  font-size: 14px;
}
#pageheader {
  overflow: hidden;
  padding: 0;
  margin: 0 0 30px 0;
  box-sizing: border-box;
}
#content.fullwidth {
  padding: 0 15px 30px 15px;
  width: auto;
  box-sizing: border-box;
  float: none;
}
#content input,
#content textarea {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #333333;
}
#sidebarright {
  font-size: 1em;
  width: 33%;
  box-sizing: border-box;
  padding: 0 30px 0 15px;
  float: right;
}
/***** BUTTON *****/

#content a.button,
#sidebar a.button,
#sidebarright a.button,
input.button {
  display: inline-block;
  margin: 0 10px 15px 0;
  padding: 0;
  font-size: 0.92em;
  font-weight: normal;
  text-decoration: none;
  text-transform: uppercase;
  line-height: normal;
  color: white !important;
  background-color: #dadada;
  border: 1px solid silver;
  background: #dadada;
  text-align: center;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
#content .zp-form input.button {
  color: white !important;
}
#content a.button:hover,
#sidebar a.button:hover,
#sidebarright a.button:hover,
input.button:hover,
#content .zp-form input.button:hover {
  background: white;
  color: white !important;
}
#content a.button span,
#sidebar a.button span,
#sidebarright a.button span,
input.button {
  display: block;
  margin: 0;
  padding: 8px 15px;
}
/***** SIDEBAR *****/

#sidebar {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 16px;
  float: left;
  background-color: #f3f3f3;
  color: black;
  padding: 0;
  width: 27%;
  box-sizing: border-box;
  overflow: hidden;
}
#sidebar:before {
  content: "";
  position: absolute;
  width: 27%;
  left: 0;
  top: 0;
  bottom: 0;
  background-color: #f3f3f3;
}
#sidebarinner {
  padding: 0 20px 0 30px;
}
.sidebarmodule {
  margin: 0 -20px 0 -30px;
  padding: 30px 30px;
  max-width: 100%;
  border-top: 1px solid white;
  /* fallback for IE7, IE8 */
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  border-bottom: 1px solid #dadada;
  -webkit-box-shadow: 0 -1px 0 #dadada, 0 1px 0 rgba(255, 255, 255, 0.6);
  -moz-box-shadow: 0 -1px 0 #dadada, 0 1px 0 rgba(255, 255, 255, 0.6);
  box-shadow: 0 -1px 0 #dadada, 0 1px 0 rgba(255, 255, 255, 0.6);
  position: relative;
  z-index: 1;
}
.sidebargradient {
  background-color: #f3f3f3;
}
#styleswitcher {
  padding: 15px 30px !important;
  text-align: center;
  font-size: 18px;
}
#styleswitcher .button {
  font-family: Arial, sans-serif;
  width: 34px !important;
  height: 34px !important;
  line-height: 34px !important;
  padding: 0 !important;
  margin: 6px 0 0 0 !important;
  font-size: 24px !important;
}
/***** NEWS *****/

.newsbox {
  margin: 0;
  line-height: 1.38em;
}
.newsbox.submenu {
  margin-bottom: 30px;
}
.newsbox h2 {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 2em;
  margin: 10px 0 10px 0;
  color: #ad162d;
  font-weight: normal;
}
.newstext {
  margin: 0;
  padding: 0;
  line-height: 1.38em;
  color: #4c4c4c;
}
.newstext p {
  margin: 0 0 10px 0;
}
.newstext a {
  color: #2d7bbb;
  text-decoration: none;
}
.newstext a:hover {
  color: #2d7bbb;
  text-decoration: underline;
}
/***** ARTICLES *****/

.articlearea {
  margin: 0;
  padding: 0;
}
.articleimage {
  margin: 0;
  padding: 4px 0 0 0;
}
.articletext {
  margin: 0;
  padding: 0;
}
.twocolumnleft {
  float: left;
  margin: 0;
  padding: 0;
}
.twocolumnleft > div {
  margin: 0;
  padding: 0 12px 0 0;
}
.twocolumnright {
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.twocolumnright > div {
  margin: 0;
  padding: 0 0 0 12px;
}
.bildunterschrift {
  display: block;
  color: #333333;
}
.floatarticle {
  float: left;
  margin: 0 0 15px 0;
  padding: 0;
  overflow: hidden;
}
.floatarticle > div {
  margin: 0;
  padding: 0 30px 0 0;
}
/***** FORM *****/

.zp-form {
  display: inline-block;
  margin: 0;
  padding: 0 0 10px 0;
}
.zp-form p {
  margin: 0;
  padding: 0;
}
.zp-form table {
  margin: 0;
  padding: 0;
}
.zp-form td {
  margin: 0;
  padding: 0;
  white-space: nowrap;
  vertical-align: middle;
}
.zp-form input {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #333333 !important;
}
.zp-form textarea {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #333333;
}
.zp-form .label,
.zp-form .field {
  padding: 3px 10px 3px 0;
}
.zp-form .desc {
  padding: 10px 10px 10px 0;
}
.zp-form .multiline {
  padding: 4px 10px 0 0;
  vertical-align: top;
}
.zp-form .submit {
  padding: 0;
}
.zp-form .separator {
  margin: 10px 10px 10px 0;
  padding: 0;
  line-height: 1px;
  height: 1px;
  border-bottom: 1px solid #333333;
}
/***** TEASER *****/

#banner,
#afterlogo,
#aftermenu,
#afterfooter {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 1em;
  color: #4c4c4c;
  line-height: 1.38em;
}
#banner,
#afterfooter {
  clear: both;
  box-sizing: border-box;
  max-width: 100%;
  margin: 0;
  padding: 20px 30px;
  border: 1px solid transparent;
  background-color: white;
}
#afterlogo,
#aftermenu {
  padding: 20px 30px;
  color: black;
  text-shadow: none;
}
#afterfooter {
  border-top: 0;
}
#banner h2,
#afterfooter h2,
#banner span:not([style]),
#afterlogo span,
#aftermenu span,
#afterfooter span {
  font-family: Verdana;
  display: block;
  margin: 0 0 10px 0;
  padding: 0;
  font-size: 2em;
  font-weight: normal;
  color: #ad162d;
  line-height: normal;
}
#banner p,
#afterlogo p,
#aftermenu p,
#afterfooter p {
  margin: 0 0 10px 0;
  padding: 0;
}
#banner a,
#afterlogo a,
#aftermenu a,
#afterfooter a {
  color: #2d7bbb;
  text-decoration: none;
}
#banner a:hover,
#afterlogo a:hover,
#aftermenu a:hover,
#afterfooter a:hover {
  color: #2d7bbb;
  text-decoration: underline;
}
/***** FOOTER *****/

#footer {
  overflow: hidden;
  display: block;
  clear: both;
  box-sizing: border-box;
  max-width: 100%;
  margin: 0;
  padding: 20px 30px;
  font-size: 0.92em;
  color: black;
  border: 1px solid transparent;
  border-top: 1px solid white;
  background-color: #ebebeb;
}
#footerinfo {
  float: right;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#footerinfo .zp {
  color: black !important;
}
/***** EXTRAMENU *****/

#xmenu {
  float: left;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#xmenu a {
  margin: 0;
  padding: 0 10px 0 0;
  font-size: 1em;
  color: #2d7bbb;
  text-decoration: none;
}
#xmenu a:hover {
  color: #2d7bbb;
  text-decoration: underline;
}
/***** ARTICLE Styles *****/

.zpSO-Sitemap {
  clear: both;
}
/***** SITESEARCH *****/

.SO-SiteSearchList li span {
  font-size: inherit !important;
}
/***** ONLINESHOP *****/

.zpSO-OnlineShop-table {
  width: 100%;
}
.zpSO-OnlineShop-table th {
  margin: 0;
  padding: 8px 10px;
  font-weight: bold;
  text-align: left;
  color: #3287cd;
  background-color: ;
}
.zpSO-OnlineShop-table td {
  margin: 0;
  padding: 8px 10px;
  text-align: left;
}
.zpSO-OnlineShop-row1 td,
.zpSO-OnlineShop-row2 td {
  margin: 0;
  padding: 8px 10px;
  text-align: left;
}
.zpSO-OnlineShop-row2 td {
  background-image: url(stock-images/opacity.png);
}
/***** ZP *****/

.zp {
  color: black !important;
  text-decoration: none !important;
}
/***** CLEAR *****/

.clear {
  clear: both;
}
.clearx:after,
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
/***** FORM ANTI SPAM *****/

.asfield {
  display: none;
}
div.zpRow.news {
  margin-bottom: 30px;
}
/*** Responsive Breakpoints ***/

@media (min-width: 1200px) {
  #headerslider {
    min-height: 385px;
  }
}
@media (max-width: 767px) {
  .flex-caption {
    position: relative;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
}
@media (max-width: 1116px) {
  #content,
  #sidebarright {
    box-sizing: border-box;
    float: left;
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (max-width: 815px) {
  #banner,
  #mainbar,
  #pageheader,
  #sidebar,
  #sidebarinner,
  #content,
  #content.fullwidth,
  #sidebarright,
  #footer,
  #afterfooter {
    box-sizing: border-box;
    float: none;
    width: 100%;
  }
  #banner,
  #sidebarinner,
  #content,
  #content.fullwidth,
  #sidebarright,
  #footer,
  #afterfooter,
  .flex-caption,
  #breadcrumb {
    padding-left: 15px;
    padding-right: 15px;
  }
  a#mobilenavtoggle {
    display: block;
  }
  a#mobilenavtoggle.on {
    position: fixed;
  }
  #sidebar {
    position: static;
    height: auto !important;
  }
  #sidebar #topline {
    padding-top: 42px;
    height: auto;
  }
  #sidebar #webdescription {
    text-align: center;
  }
  #sidebar #logo,
  #sidebar #webtext {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    padding: 0;
  }
  #sidebar #webtext {
    margin: 0 10px;
    padding: 0;
  }
  #sidebar:before {
    content: none;
  }
  #sidebarinner {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    display: none;
    background-color: #ebebeb;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  }
  #sidebarinner.on {
    display: block;
  }
  div#subnavbar {
    padding-top: 52px;
  }
  div#subnavbar ul.submenu li a,
  div#subnavbar ul.submenu ul li a,
  div#subnavbar ul.submenu ul ul li a,
  div#subnavbar ul.submenu ul ul ul li a,
  div#subnavbar ul.submenu ul ul ul ul li a {
    width: auto;
    margin-right: -20px;
  }
  .newsbox.submenu {
    margin-bottom: 0;
  }
  .sidebarmodule {
    margin: 0 -30px;
    width: auto;
    border-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-top: 1px solid rgba(255, 255, 255, 0.6);
    padding: 10px 30px;
  }
  .sidebargradient {
    background: transparent;
  }
  #search {
    margin: 0 -30px;
  }
  #search #searchform {
    width: auto;
    height: auto;
  }
  #search #searchfield {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    font-size: 16px;
    padding: 4px 33px 4px 10px;
  }
  #search #searchbutton {
    box-sizing: content-box;
    padding: 4px 0 4px 4px;
  }
  #pageheader,
  #content,
  #sidebarright {
    margin-left: 0;
  }
}
/* ZP 13 additions */

.zpContainer.zpBreakout {
  margin-left: -15px;
  margin-right: -15px;
  padding-left: 15px;
  padding-right: 15px;
}
.zpColumn .zpBreakout {
  margin-left: -30px;
  margin-right: -30px;
  padding-left: 0;
  padding-right: 0;
}
#content:not(.fullwidth) .zpContainer.zpBreakout {
  margin-right: 0;
  padding-right: 0;
}
#content:not(.fullwidth) .zpColumn .zpBreakout {
  margin-right: -15px;
}
#banner .zpgrid,
#afterfooter .zpgrid {
  margin-left: -15px;
  margin-right: -15px;
}
#sidebarright .zpColumn {
  padding: 0;
}
body.plain .zpgrid,
body.plain .zpgrid #grid {
  max-width: none;
}
body.plain #mainbar {
  width: 100%;
}