/***
    Grid (Shaker)
*******************************************************************************/
/***
    Break-points
*******************************************************************************/
/***
    Color
*******************************************************************************/
/* Text Color  ********************************************/
/* Odd/Even Color ***********************************/
/* Form Input Felder ***********************************/
/***
    Font
*******************************************************************************/
/***
    Header
*******************************************************************************/
/***
    Menü
*******************************************************************************/
/***
    Components
*******************************************************************************/
/* Paragraphs *********************************************/
/* Paragraphs Timeline *********************************************/
/* Slider *************************************************/
/***
    Animation
*******************************************************************************/
/***
    Basic
****************************************************************************/
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
/***
    Layout
****************************************************************************/
.section {
  width: 100%;
}
.content {
  box-sizing: border-box;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
@media screen and (max-width: 1170px) {
  .content {
    padding-left: 3%;
    padding-right: 3%;
  }
}
@media screen and (max-width: 1170px) and screen and (max-width: 567px) {
  .content {
    padding-left: 17px;
    padding-right: 17px;
  }
}
/*Padding Abstand zwischen den Paragraphen (Aussen) in PIXEL!*/
.padding-abstand {
  padding-left: 3%;
  padding-right: 3%;
}
@media screen and (max-width: 567px) {
  .padding-abstand {
    padding-left: 17px;
    padding-right: 17px;
  }
}
/* Font Max Size*/
/***
    Components
****************************************************************************/
/* Link mit Pfeil 
 * --------------
 */
.link-mit-pfeil {
  text-decoration: none;
}
.link-mit-pfeil:hover {
  text-decoration: none;
}
.link-mit-pfeil:after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-size: 1.2em;
  padding: 0 0.3em;
  transition: padding 0.3s cubic-bezier(.65,.05,.36,1);
}
.link-mit-pfeil:hover:after {
  padding-left: 0.5em;
}
/* Buttons 
 * -------
 * dem a-Element hinzufügen
 */
/***
    States
****************************************************************************/
/* Button Animation 
 * ----------------
 * dem a-Element hinzuf端gen
 */
.button-animation:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
  transform: scale(1.01);
  -webkit-transform: scale(1.01);
}
.button-animation:active {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
  transform: scale(1);
  -webkit-transform: scale(1);
}
@media only screen and (max-width: 768px) {
  .button-animation:hover {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
    transform: none;
    -webkit-transform: none;
  }
  .button-animation:active {
    transform: none;
    -webkit-transform: none;
  }
}
/* Mixin f端r Image Zoom Effekt.
 * ----------------------------
 * Dem das Bild umgebenden Element hinzuf端gen.
 */
.image-zoom {
  overflow: hidden;
  display: block;
}
.image-zoom img {
  transform: scale(1);
  -webkit-transform: scale(1);
  transition: transform 0.4s cubic-bezier(.65,.05,.36,1);
}
.image-zoom img:hover {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
}
@media only screen and (max-width: 768px) {
  .image-zoom img {
    transform: none;
    -webkit-transform: none;
  }
  .image-zoom img:hover {
    transform: none;
    -webkit-transform: none;
  }
}
.noOpacity {
  opacity: 1;
}
@media only screen and (max-width: 992px) {
  .nomobile {
    display: none;
  }
}
/***
    Skins
****************************************************************************/
.box-bg {
  background-color: #ffffff;
}
/* Material Design Shadows 
 * -----------------------
 * Author: Florian Kutschera (@gefangenimnetz), Conceptboard GmbH (@conceptboardapp)
 * https://medium.com/@Florian/freebie-google-material-design-shadow-helper-2a0501295a2d#.qwk59xyp0
 */
/***
    Vendor Prefixes
****************************************************************************/
.notselection {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently */
}
.borderBox {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.animation_fadein {
  -webkit-animation: 1.2 ease 0s normal forwards 1 fadein;
  animation: 1.2s ease 0s normal forwards 1 fadein;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  33% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  33% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.animation_fade {
  -moz-transition: all 1s ease;
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}
/*
 * Aufbauend auf dem Less-File vom Modul "Responsive menu" (responsive_menu.less)
 */
.responsive-menu-block-wrapper {
  display: none;
}
html.mm-opened .mm-panel {
  position: fixed !important;
  width: 100%;
}
.mm-panel {
  background-color: #f5f5f5;
}
.mm-opening .toolbar-tray-open.toolbar-fixed.toolbar-vertical,
.mm-opened .toolbar-tray-open.toolbar-fixed.toolbar-vertical {
  margin-left: 0;
}
.mm-opening .toolbar-tray-open.toolbar-fixed.toolbar-vertical .mm-panel,
.mm-opened .toolbar-tray-open.toolbar-fixed.toolbar-vertical .mm-panel {
  padding-left: 240px;
  padding-left: 15rem;
}
/***
	Horizontal Menu
****************************************************************************/
.menu-border-radius {
  border-radius: 0 0 0 0;
}
.menu-border-radius_sub {
  border-radius: 0;
}
.horizontal-menu {
  position: relative;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  /* entkommentieren, wenn bei hover keine Hintergrundfarbe angezeigt wird */
  /*Indicator icon*/
}
.horizontal-menu a {
  color: #000000;
  text-decoration: none;
  display: block;
  padding: 0.2em 1em;
}
.horizontal-menu a:hover {
  color: #000000;
}
.horizontal-menu .menu-item {
  display: inline-block;
  position: relative;
  z-index: 19;
  border: 0 solid transparent;
}
.horizontal-menu .menu-item a {
  border-radius: 0 0 0 0;
  box-sizing: border-box;
  background-color: transparent;
}
.horizontal-menu .menu-item a:hover {
  background-color: rgba(123, 53, 115, 0.2);
}
.horizontal-menu .menu-item:hover {
  border: 0 solid #7b3573;
  border-radius: 0 0 0 0;
  box-sizing: border-box;
}
.horizontal-menu .menu-item:hover > .sub-nav,
.horizontal-menu .menu-item.sfHover > .sub-nav {
  display: block;
}
.horizontal-menu .menu-item .menu-item {
  width: 100%;
  border: 0;
  background-color: #f5f5f5;
}
.horizontal-menu .menu-item .menu-item a:hover {
  background-color: rgba(123, 53, 115, 0.2);
}
.horizontal-menu .menu-item--expanded {
  background: transparent url("../img/arrows_1.png") no-repeat bottom right 12px;
}
.horizontal-menu .menu-item--expanded .menu-item--expanded {
  background: #f5f5f5 url("../img/arrows_2.png") no-repeat top 12px right;
}
.horizontal-menu .menu-item--expanded .menu-item--expanded .menu-item--expanded {
  background: #f5f5f5 url("../img/arrows_2.png") no-repeat top 12px right;
}
.horizontal-menu .menu-item--expanded .menu-item--expanded .menu-item--expanded .menu-item--expanded {
  background: #f5f5f5 url("../img/arrows_2.png") no-repeat top 12px right;
}
.horizontal-menu .sub-nav {
  position: absolute;
  display: none;
  top: 100%;
  left: 0;
  margin-top: -1px;
  margin-left: -1px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  box-sizing: border-box;
  width: 13.75em;
  list-style: none;
  border: 0 solid #7b3573;
  border-radius: 0;
  z-index: -1;
}
.horizontal-menu .sub-nav .sub-nav {
  left: 13.75em;
  top: 0;
  margin-left: -2px;
}
.horizontal-menu .menu-item--active-trail > a {
  color: #7b3573;
}
.horizontal-menu .sub-nav .fly-left .sub-nav {
  left: -13.75em;
}
.off-canvas-wrapper {
  display: block;
}
.no-js .off-canvas-wrapper {
  display: none;
}
/***
	Responsive Menu Toggle
****************************************************************************/
.responsive-menu-toggle {
  float: right;
}
.responsive-menu-toggle-icon {
  box-sizing: border-box;
  display: block;
  width: 98px;
  height: 29px;
  z-index: 4;
  margin-top: 0;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .responsive-menu-toggle-icon {
    margin-top: -5x;
  }
}
.no-js .responsive-menu-toggle-icon {
  display: none;
}
.responsive-menu-toggle-icon span.label {
  display: block;
  position: absolute;
  font-size: 17px;
  text-transform: uppercase;
  top: 0;
  right: 0;
  color: #000000;
}
@media only screen and (max-width: 480px) {
  .responsive-menu-toggle-icon span.label {
    line-height: 1.7;
  }
}
.responsive-menu-toggle-icon:before,
.responsive-menu-toggle-icon:after,
.responsive-menu-toggle-icon span.icon {
  background: #000000;
  content: '';
  display: block;
  width: 20px;
  height: 3px;
  position: absolute;
  top: 0;
  right: 60px;
  border-radius: 2px;
}
.responsive-menu-toggle-icon:before {
  top: 8px;
}
.responsive-menu-toggle-icon span.icon {
  top: 14px;
}
.responsive-menu-toggle-icon:after {
  top: 20px;
}
.responsive-menu-toggle-icon:before,
.responsive-menu-toggle-icon:after,
.responsive-menu-toggle-icon span.icon {
  transition: none 0.4s ease-out 0.1s;
  transition-property: -webkit-transform, top, bottom, left, opacity;
  transition-property: transform, top, bottom, left, opacity;
}
/***
	XXX
****************************************************************************/
html.mm-opening .responsive-menu-toggle-icon:before,
html.mm-opening .responsive-menu-toggle-icon:after {
  top: 14px;
}
html.mm-opening .responsive-menu-toggle-icon span.icon {
  left: -25px;
  opacity: 0;
}
html.mm-opening .responsive-menu-toggle-icon:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
html.mm-opening .responsive-menu-toggle-icon:after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#mm-blocker {
  background: rgba(0, 0, 0, 0);
}
.mm-opening #mm-blocker {
  background: rgba(0, 0, 0, 0.2);
  transition: background 1s ease 0.3s;
}
.mm-opening #page {
  border-left: 1px solid #ccc;
}
.mm-panel a {
  border-bottom: none;
}
ul.menu.mm-listview a.is-active {
  color: inherit;
}
.mm-panel a:hover {
  border: none;
}
/***
	mmenu Library CSS 端berschreiben
****************************************************************************/
.mm-listview {
  font-size: 1rem;
}
.mm-navbar {
  height: 50px;
}
.mm-navbar > * {
  padding: 15px 0;
}
.mm-btn {
  height: 50px;
}
