/* ==========================================================================
   Author's custom styles :: riversite
   ========================================================================== */
/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html {
  color: #333333;
  font-size: 1em;
  line-height: 1.4;
}
/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}
::selection {
  background: #b3d4fc;
  text-shadow: none;
}
/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  /*resize: vertical;*/
  resize: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  select,
  textarea,
  input {
    font-size: 16px;
  }
}
select,
textarea,
input {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #545454;
}
* {
  -webkit-tap-highlight-color: transparent;
}
img,
embed,
object,
video {
  max-width: 100%;
  height: auto;
  width: auto;
}
iframe {
  max-width: 100%;
  /*height: auto;*/
  width: 100%;
  border: 0;
}
nav ul,
nav ul ul,
nav ul ul ul {
  margin: 0;
  padding: 0;
}
nav ul li {
  margin: 0;
  padding: 0;
  list-style: none outside;
}
nav a:hover {
  text-decoration: none;
}
/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}
/* applies to GIF and PNG images; avoids blurry edges */
html {
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /*overflow-y:scroll !important;*/
  /*margin-right:0 !important;*/
}
html,
body {
  margin: 0;
}
body {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  line-height: 24px;
  color: #3e3e3e;
  font-weight: 400;
}
@media only screen and (min-width: 640px) {
  body {
    font-size: 17px;
    line-height: 27px;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 18px;
  font-weight: 600;
  line-height: normal;
  color: #329600;
  text-transform: uppercase;
}
h1 {
  font-size: 24px;
  line-height: normal;
}
h2 {
  font-size: 21px;
}
h3 {
  font-size: 18px;
  color: #329600;
  font-weight: 500;
  line-height: normal;
}
h4,
h5,
h6 {
  font-size: 17px;
}
h1,
h2,
h3 {
  overflow-wrap: normal;
  word-wrap: normal;
  /* -webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto; */
}
@media only screen and (min-width: 640px) {
  h1 {
    font-size: 32px;
    line-height: 35px;
  }
  h2 {
    font-size: 28px;
  }
  h3 {
    font-size: 24px;
    line-height: 32px;
  }
  h4,
  h5,
  h6 {
    font-size: 17px;
  }
}
/* h1 a, h2 a, h3 a, h4 a{text-decoration:none !important;} */
p {
  margin: 0 0 18px;
}
a {
  color: #329600;
  text-decoration: none;
}
a:focus {
  color: #329600;
  text-decoration: none;
}
a:hover {
  color: #329600;
  text-decoration: none;
}
*:focus {
  outline: 0;
}
a > strong > i,
a > i {
  margin-right: 5px;
}
b,
strong {
  font-weight: 700;
}
ul,
ol {
  margin: 0 0 18px;
  padding-left: 19px;
}
ul ul,
ol ol {
  margin: 6px 0;
}
li {
  line-height: 27px;
  padding-left: 10px;
}
img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}
hr {
  clear: both;
  height: 1px;
  line-height: 1px;
  border: 0;
  border-top: 1px solid #329600;
  margin: 22px 0 22px;
  /*margin:40px 140px 50px 140px;*/
}
table {
  margin: 0 0 18px;
  border: 0;
  width: 100%;
  padding: 0;
  border-collapse: collapse;
}
th,
td {
  vertical-align: top;
}
th {
  font-weight: 700;
}
/* *** Custom *** */
.regular {
  font-weight: 400 !important;
}
.semibold {
  font-weight: 600;
}
.bold {
  font-weight: 700;
}
.thin {
  font-weight: 100 !important;
}
.extralight {
  font-weight: 200 !important;
}
.light {
  font-weight: 300 !important;
}
.abstand-nach-unten-0 {
  margin-bottom: 0;
}
.abstand-nach-unten-klein {
  margin-bottom: 6px;
}
.abstand-nach-unten-mittel {
  margin-bottom: 17px;
}
.abstand-nach-unten-gross {
  margin-bottom: 56px;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-underline {
  text-decoration: underline;
}
.zeilenabstand-1 {
  letter-spacing: 1px;
}
.position-left {
  float: left;
}
.position-right {
  float: right;
}
.table {
  display: table;
  width: 100%;
}
.table_row {
  display: table-row;
}
.table_cell {
  display: table-cell;
}
.align-center {
  text-align: center;
}
.align-left {
  text-align: left;
}
.align-right {
  text-align: right;
}
.align-justify {
  text-align: justify;
}
a.no-td {
  text-decoration: none;
}
a.text-uppercase > strong {
  font-weight: 600;
}
.no-pd {
  padding-left: 0;
  padding-right: 0;
}
.no-ls {
  letter-spacing: normal;
}
.pd-top-small {
  padding-top: 30px;
}
.pd-top-medium {
  padding-top: 75px;
}
.pd-top-large {
  padding-top: 150px;
}
.pd-bottom-small {
  padding-bottom: 30px;
}
.pd-bottom-medium {
  padding-bottom: 75px;
}
.pd-bottom-large {
  padding-bottom: 150px;
}
.pd-top-bottom-small {
  padding-top: 30px;
  padding-bottom: 30px;
}
.pd-top-bottom-medium {
  padding-top: 75px;
  padding-bottom: 75px;
}
.pd-top-bottom-large {
  padding-top: 150px;
  padding-bottom: 150px;
}
.ce-image.ce-center,
.ce-center .ce-gallery {
  text-align: center;
}
.ce-image.ce-left,
.ce-left .ce-gallery {
  text-align: left;
}
.ce-image.ce-right,
.ce-right .ce-gallery {
  text-align: right;
}
.space-after-extra-small {
  margin-bottom: 15px;
}
.space-after-small {
  margin-bottom: 30px;
}
.space-after-medium {
  margin-bottom: 60px;
}
.space-after-large {
  margin-bottom: 90px;
}
.space-after-extra-large {
  margin-bottom: 120px;
}
.space-before-extra-small {
  margin-top: 15px;
}
.space-before-small {
  margin-top: 30px;
}
.space-before-medium {
  margin-top: 60px;
}
.space-before-large {
  margin-top: 90px;
}
.space-before-extra-large {
  margin-top: 120px;
}
a[class*="btn-"],
a.btn-mehr {
  color: #fff;
  background: #e57700;
  display: inline-block;
  padding: 15px;
  max-width: 320px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
a[class*="btn-primary"] {
  background: #329600;
}
/* a[class*="btn-"]:after{content:"\f105";  display:inline-block; margin-left:7px; font-family:'Font Awesome 5 Free'; font-weight:400; font-size:14px; position:relative;} */
a[class*="btn-"]:hover {
  background: #329600;
}
a[class*="btn-primary"]:hover {
  background: #3e3e3e;
}
/* css effect for anker */
.mainmenu a,
.breadcrumb a,
a[class*="btn-"],
.footer a,
a {
  -webkit-transition: all 0.33s;
  transition: all 0.33s;
}
.hauptfarbe {
  color: #329600;
}
/*
 * Let's target IE to respect aspect ratios and sizes for img tags containing SVG files
 *
 * [1] IE9
 * [2] IE10+
 */
/* 1 */
.ie9 img[src$=".svg"] {
  width: 100%;
}
/* 2 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  img[src$=".svg"] {
    width: 100%;
  }
}
/* ******************** Page */
/* ******************* Structur */
.page {
  position: relative;
  padding: 100px 0 0;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
}
.page_1 .page {
  padding: 100px 0 0;
}
.header {
  position: fixed;
  height: 100px;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99;
  background: #fff;
  box-shadow: 0 1px 10px rgba(151, 151, 151, 0.25);
}
.header .container {
  height: 100%;
}
.header .container .row {
  height: 100%;
}
.footer {
  padding: 50px 0;
  background: #329600;
  color: #fff;
}
.footer a {
  color: #fff;
}
.footer ul {
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.footer li {
  display: block;
}
/* ******************* Elements */
.bg-grau {
  background: #f3f3f3;
}
.bg-gradient-v1,
.bg-gruen {
  background: #226700;
  background: linear-gradient(45deg, #226700 0%, #329600 79%);
}
[class*="bg-gradient"],
[class*="bg-gruen"] {
  color: #fff;
}
[class*="bg-gradient"] h1,
[class*="bg-gruen"] h1,
[class*="bg-gradient"] h2,
[class*="bg-gruen"] h2,
[class*="bg-gradient"] h3,
[class*="bg-gruen"] h3,
[class*="bg-gradient"] h4,
[class*="bg-gruen"] h4,
[class*="bg-gradient"] h5,
[class*="bg-gruen"] h5,
[class*="bg-gradient"] h6,
[class*="bg-gruen"] h6,
[class*="bg-gradient"] p,
[class*="bg-gruen"] p,
[class*="bg-gradient"] a,
[class*="bg-gruen"] a,
[class*="bg-gradient"] li td,
[class*="bg-gruen"] li td {
  color: #fff;
}
.logo {
  display: inline-block;
  max-width: 240px;
  padding: 12px 0;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .logo {
    max-width: 340px;
    min-width: 340px;
  }
}
.nav-top {
  display: none;
  position: absolute;
  right: 15px;
  top: 10px;
}
.nav-top li {
  display: inline-block;
  font-size: 14px;
}
.nav-top a {
  color: #3e3e3e;
  padding: 0 5px;
}
@media only screen and (min-width: 640px) {
  .nav-top {
    display: block;
  }
}
/* Nav Main */
nav.main {
  display: none;
  text-align: right;
  height: 30px;
  position: absolute;
  right: 10px;
  bottom: 12px;
}
@media only screen and (min-width: 1025px) {
  nav.main {
    display: block;
  }
}
nav.main ul {
  list-style: none;
}
nav.main li {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
}
nav.main a {
  color: #329600;
  padding: 5px 10px;
}
nav.main ul.second {
  text-align: left;
}
nav.main ul.second li {
  display: block;
  line-height: 17px;
}
nav.main ul.second li a {
  display: block;
  padding: 10px 0;
  font-size: 14px;
}
nav.main li ul.second {
  /*display:none;*/
  opacity: 0;
  visibility: hidden;
  position: absolute;
  height: auto;
  background: #fff;
  border-top: 2px solid #329600;
  padding: 15px;
  box-shadow: 0 1px 10px rgba(151, 151, 151, 0.25);
  transform: translate(0, 30px);
  -ms-transform: translate(0, 30px);
  -webkit-transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out, background 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out, background 0.5s ease-in-out;
}
nav.main li:hover ul.second {
  /*display:block;*/
  opacity: 1;
  height: auto;
  visibility: visible;
  z-index: 13;
  transform: translate(0, 5px);
  -ms-transform: translate(0, 5px);
}
nav.main li ul.third li {
  text-transform: none;
}
nav.main li ul.third li a {
  padding: 5px 0 5px 10px;
}
nav.main li.active > a {
  font-weight: 600;
}
.fullslider {
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}
.page_1 .fullslider {
  height: auto;
}
@media only screen and (min-width: 1025px) {
  .page_1 .fullslider {
    height: calc(100vh - 100px);
  }
}
.page_1 .fullslider .scrollInfo {
  display: none;
}
@media only screen and (min-width: 1025px) {
  .page_1 .fullslider .scrollInfo {
    display: inline-block;
  }
}
.page_1 .fullslider .slide {
  height: auto;
}
@media only screen and (min-width: 1025px) {
  .page_1 .fullslider .slide {
    height: calc(100vh - 100px);
  }
}
.page_1 .fullslider .slide .slide-caption {
  transform: translateX(0%) translateY(0%);
}
@media only screen and (min-width: 640px) {
  .page_1 .fullslider .slide .slide-caption {
    transform: translateX(-50%) translateY(-50%);
  }
}
@media only screen and (min-width: 1025px) {
  .page_1 .fullslider .slide .slide-caption {
    transform: translateX(-50%) translateY(-50%);
  }
}
.fullslider .scrollInfo {
  display: none;
  width: 32px;
  height: 32px;
  background: rgba(255, 255, 255, 0.75);
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50% 50%;
  cursor: pointer;
  transition: all 0.25s linear;
  text-align: center;
  vertical-align: middle;
  line-height: 42px;
  border: 1px solid #ddd;
  box-shadow: 0 0 30px rgba(111, 111, 111, 0.5);
}
.fullslider .scrollInfo:hover {
  background: #329600;
}
.fullslider .scrollInfo:hover:after {
  color: #fff;
}
.fullslider .scrollInfo:after {
  content: '\203A';
  font-size: 2rem;
  display: inline-block;
  transform: rotate(90deg);
  transform-origin: 100% 50%;
  color: #333;
}
.fullslider .slide {
  position: relative;
}
.fullslider .slide .slide-image {
  position: relative;
  z-index: 1;
  text-align: center;
}
.fullslider .slide .slide-image picture {
  display: inline-block;
  text-align: center;
  width: 100%;
}
.fullslider .slide .slide-image img {
  width: 100%;
  display: inline-block;
}
.fullslider .slide .slide-caption {
  position: relative;
  z-index: 3;
  top: auto;
  left: auto;
  transform: translateX(0) translateY(0);
  width: 100%;
  max-width: 1200px;
  text-align: center;
  background: #329600;
  padding: 15px;
}
@media only screen and (min-width: 640px) {
  .fullslider .slide .slide-caption {
    background: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
  }
}
.fullslider .slide .slide-caption h2 {
  color: #fff;
  font-size: 1.6rem;
  line-height: 2rem;
  text-shadow: 0 0 30px rgba(111, 111, 111, 0.5);
  margin-bottom: 2rem;
}
.fullslider .slide .slide-caption h3 {
  color: #fff;
  font-size: 1rem;
  line-height: 1rem;
  text-shadow: 0 0 30px rgba(111, 111, 111, 0.5);
}
@media only screen and (min-width: 640px) {
  .fullslider .slide .slide-caption h2 {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .fullslider .slide .slide-caption h2 {
    font-size: 4rem;
    line-height: 5rem;
  }
  .fullslider .slide .slide-caption h3 {
    font-size: 2rem;
    line-height: 2rem;
  }
}
.fullslider .animated {
  -moz-opacity: 0;
  -khtml-opacity: 0;
  -webkit-opacity: 0;
  opacity: 0;
  /* -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100); */
  /* filter: alpha(opacity=0 * 100); */
}
.no-js .fullslider .animated,
.fullslider .animated.activate {
  -moz-opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  opacity: 1;
  /* -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100); */
  /* filter: alpha(opacity=1 * 100); */
}
/* Slick */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 50px;
  height: 40px;
  /* margin-top: -15px; */
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  transform: translateY(-50%);
}
.slick-arrow {
  /* position: absolute; top:50%;  */
  z-index: 12;
}
.slick-prev {
  left: 15px;
  background-image: url(../Images/svg/pfeil_links.svg);
  background-repeat: no-repeat;
  background-position: center;
}
.slick-next {
  right: 15px;
  background-image: url(../Images/svg/pfeil_rechts.svg);
  background-repeat: no-repeat;
  background-position: center;
}
.arrowHolder .slick-prev {
  left: 10px;
  background-image: url(../Images/svg/pfeil_links.svg);
  background-repeat: no-repeat;
  background-position: center;
  width: 16px;
}
@media only screen and (min-width: 640px) {
  .arrowHolder .slick-prev {
    left: 35px;
  }
}
.arrowHolder .slick-next {
  right: 10px;
  background-image: url(../Images/svg/pfeil_rechts.svg);
  background-repeat: no-repeat;
  background-position: center;
  width: 16px;
}
@media only screen and (min-width: 640px) {
  .arrowHolder .slick-next {
    right: 35px;
  }
}
.inhaltsslider.layout-0,
.inhaltsslider.layout-1 {
  position: relative;
}
.inhaltsslider.layout-0 .arrowHolder .slick-prev {
  left: -15px;
}
.inhaltsslider.layout-0 .arrowHolder .slick-next {
  right: -15px;
}
.inhaltsslider.layout-1 .arrowHolder .slick-prev {
  left: -15px;
}
.inhaltsslider.layout-1 .arrowHolder .slick-next {
  right: -15px;
}
.inhaltsslider.layout-101 .arrowHolder .slick-prev {
  left: 0;
}
.inhaltsslider.layout-101 .arrowHolder .slick-next {
  right: 0;
}
.slick-dots {
  position: absolute;
  bottom: -10px;
  display: block;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  /* display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent; */
  border: 0;
  outline: none;
  background: transparent;
}
.slick-dots li {
  display: inline-block;
  margin: 0px 15px;
  padding: 0;
  /*  margin:0 15px; */
  height: 16px;
  width: 16px;
  border: 2px solid #329600;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  overflow: hidden;
}
.slick-dots li button {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 16px;
  width: 16px;
}
.slick-dots li.slick-active,
.slick-dots li.slick-active button {
  background: #329600;
  /*  border: 2px solid #7EDEBA !important; */
}
#c239 .slick-slide img {
  filter: grayscale(1);
}
ul.nav-footer li,
.footer li {
  padding: 0;
  margin-bottom: 5px;
}
.container-fluid.no-gutters {
  padding-right: 0;
  padding-left: 0;
}
.container-fluid.no-gutters .row {
  margin-right: 0;
  margin-left: 0;
}
.container-fluid.no-gutters > .row > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}
.gradient-overlay-half-dark-v1::before {
  background-image: linear-gradient(180deg, #fff 50%, transparent 100%);
  background-repeat: repeat-x;
}
[class*="gradient-overlay-half"]::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
}
.bg-cover-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
/* ******************* content */
/* Subpages */
.frame-type-menu_subpages ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 100%;
}
.frame-type-menu_subpages ul li {
  display: inline-block;
  margin: 0 15px;
  padding: 0;
  width: 100%;
  max-width: 33%;
}
.frame-type-menu_subpages ul li a {
  display: inline-block;
  margin: 0;
  background: #e6e6e6;
  color: #6e6e6e;
  padding: 30px;
  width: 100%;
  text-align: center;
  font-weight: 600;
  text-transform: uppercase;
}
.frame-type-menu_subpages ul li a:hover,
.frame-type-menu_subpages ul li.active a {
  background: #e57700;
  color: #fff;
}
/* .frame:not(.frame-type-div) :last-child{margin-bottom: 0;} */
.ce-gallery figure {
  margin-bottom: 15px;
}
label {
  min-width: 150px;
}
/* *** Kontakt: Form */
input[type="text"],
input[type="email"],
input[type="phone"],
input[type="password"],
textarea {
  position: relative;
  width: 100%;
  border: 0;
  background: #fff;
  padding: 5px 0;
  margin-bottom: 16px;
  color: #000;
  /* border-radius: 5px; */
  border-bottom: 5px solid #e6e6e6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
textarea {
  height: 150px;
}
input[type="submit"] {
  width: auto;
  text-align: center;
  border: 0;
  background: #e57700;
  padding: 10px 30px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  letter-spacing: 0.1em;
  /* border-radius: 5px; */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
input[type="submit"] i {
  margin-right: 5px;
}
input[type="submit"]:hover {
  background: #329600;
  color: #fff;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="phone"]:focus,
textarea:focus {
  border-bottom: 5px solid #329600;
}
/* .powermail_fieldwrap_type_check label{position:relative;}
.powermail_fieldwrap_type_check input{margin-right:10px;}
.powermail_fieldwrap_type_check label:after{display:block; position:absolute; top:0; left:0; background:rgba(255,255,255,0.5); width:20px; height:20px; content:'';}
 */
/* input:focus, */
/*.powermail_form select:focus,*/
/* textarea:focus{border-bottom:1px solid #ee7203;} */
/*.powermail_form textarea:focus{height:100px;}*/
input::-webkit-input-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
input:-moz-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
input::-moz-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
input:-ms-input-placeholder {
  color: #3e3e3e;
}
textarea::-webkit-input-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
textarea:-moz-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
textarea::-moz-placeholder {
  color: #3e3e3e;
  opacity: 1;
}
textarea:-ms-input-placeholder {
  color: #3e3e3e;
}
.layout-links {
  display: inline-block;
  width: 50%;
  padding-right: 15px;
}
.layout-links-kurz {
  display: inline-block;
  width: 30%;
}
.layout-links-lang {
  display: inline-block;
  width: 65%;
}
.layout-rechts {
  display: inline-block;
  width: 50%;
  float: right;
  padding-left: 15px;
}
.layout-rechts-kurz {
  display: inline-block;
  width: 30%;
  float: right;
}
.layout-rechts-lang {
  display: inline-block;
  width: 65%;
  float: right;
}
.tx-powermail .container-fluid {
  padding: 0;
}
.tx-powermail h3,
.tx-powermail legend,
.tx-powermail .powermail_label {
  display: none;
}
.tx-powermail .show_label .powermail_label {
  display: block;
}
.tx-powermail legend {
  color: #bebebe;
  margin-bottom: 30px;
  font-size: 15px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.powermail_fieldwrap {
  margin-bottom: 30px;
}
.powermail_fieldwrap a {
  text-decoration: underline;
}
.tx-powermail label,
.powermail_label {
  font-size: 16px;
}
.powermail_fieldset {
  clear: both;
  position: relative;
}
.powermail_fieldset.layout1 {
  clear: none;
  float: left;
  width: 50%;
  padding-right: 30px;
  box-sizing: border-box;
}
.powermail_fieldset.layout2 {
  clear: none;
  float: right;
  width: 50%;
  padding-left: 30px;
  box-sizing: border-box;
}
.powermail_fieldset.layout1 .powermail_fieldwrap {
  width: 50%;
  float: left;
}
.powermail_fieldset.layout1 .powermail_fieldwrap:first-child {
  padding-right: 10px;
}
.powermail_fieldset.layout1 .powermail_fieldwrap:last-child {
  padding-left: 10px;
}
.powermail_fieldset.layout1:after {
  clear: both;
  display: table;
  content: '';
}
/* .powermail_fieldwrap{padding-left:30px;}*/
.powermail_fieldwrap {
  position: relative;
}
/* .powermail_fieldset.layout1, 
.powermail_fieldset.layout2, 
.powermail_fieldwrap_telefon, 
.powermail_fieldwrap_erreichbarkeit, 
.powermail_fieldwrap_ihrenachricht{padding-left:49px;}

.powermail_fieldwrap_telefon:before{content:''; display:inline-block; width:34px; height:34px; background:url(../img/icon-telefon.png) top left no-repeat; background-size: cover; position: absolute; top:7px; left:0; z-index:3;}

.powermail_fieldwrap_erreichbarkeit:before{content:''; display:inline-block; width:34px; height:34px; background:url(../img/icon-uhr.png) top left no-repeat; background-size: cover; position: absolute; top:7px; left:0; z-index:3;}

.powermail_fieldwrap_ihrenachricht:before{content:''; display:inline-block; width:34px; height:34px; background:url(../img/icon-nachricht.png) top left no-repeat; background-size: cover; position: absolute; top:7px; left:0; z-index:3;} */
/* radio */
.powermail_fieldwrap_type_radio {
  width: 50%;
}
.powermail_fieldwrap_type_radio .radio {
  display: inline-block;
  width: 33%;
}
.powermail_fieldwrap_type_radio .radio label {
  display: block;
  padding-left: 45px;
  cursor: pointer;
  position: relative;
}
.powermail_fieldwrap_type_radio .radio label .cstmark:after {
  content: '';
  display: inline-block;
  width: 32px;
  height: 32px;
  border: 5px solid #e6e6e6;
  border-radius: 50%;
  position: absolute;
  top: -3px;
  left: 0;
  z-index: 3;
  background: #fff;
}
.powermail_fieldwrap_type_radio .radio label input[type="radio"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.powermail_fieldwrap_type_radio .radio label input:checked ~ .cstmark:after {
  background-color: #329600;
}
/* checkbox */
.powermail_fieldwrap_type_check .checkbox {
  position: relative;
  float: left;
  width: 33.3333334%;
  margin-bottom: 15px;
}
.powermail_fieldwrap_type_check .checkbox label {
  display: block;
  padding-left: 45px;
  cursor: pointer;
  position: relative;
}
.powermail_fieldwrap_type_check .checkbox label .cstmark:after {
  content: '';
  display: inline-block;
  width: 32px;
  height: 32px;
  border: 5px solid #e6e6e6;
  /* border-radius: 50%; */
  position: absolute;
  top: -3px;
  left: 0;
  z-index: 3;
  background: #fff;
}
.powermail_fieldwrap_type_check .checkbox label input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.powermail_fieldwrap_type_check .checkbox label input:checked ~ .cstmark:after {
  background-color: #329600;
  content: '\2713';
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  color: #fff;
  border: 0px solid #e6e6e6;
}
.checkboxtext {
  /* float: right; */
  /* margin-left: 10px; */
  margin-top: 0px;
}
.checkboxtext a {
  color: #3e3e3e;
}
.powermail_fieldwrap_datenschutz .checkbox {
  width: 100%;
}
.powermail_fieldwrap_type_check:after {
  clear: both;
  display: table;
  content: '';
}
/* Custom Icons */
#iconsstyle::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_firma::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_firma::before {
  content: "\f1ad";
}
.powermail_fieldwrap_name::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_name::before {
  content: "\f007";
}
.powermail_fieldwrap_e_mail::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_e_mail::before {
  content: "\f0e0";
}
.powermail_fieldwrap_telefonnummer::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_telefonnummer::before {
  content: "\f095";
  transform: rotate(90deg);
  transform-origin: 50% 50%;
}
.powermail_fieldwrap_nachricht::before {
  position: absolute;
  top: 3px;
  left: -40px;
  width: 30px;
  height: 30px;
  content: '';
  /* background:red; */
  font-family: 'Font Awesome 5 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  color: #329600;
  text-align: center;
  line-height: 30px;
  /* font-size:1.33333em;line-height:.75em;vertical-align:-.0667em */
}
.powermail_fieldwrap_nachricht::before {
  content: "\f075";
}
.powermail_fieldwrap.powermail_fieldwrap_type_textarea,
.powermail_fieldwrap.powermail_fieldwrap_type_captcha,
.powermail_fieldwrap.powermail_fieldwrap_type_file {
  margin-bottom: 45px;
}
/*  Upload */
.btn-label {
  display: inline-block;
  padding: 7px 15px;
  border: 3px solid #329600;
  text-transform: uppercase;
  color: #329600;
  font-weight: bold;
  margin-right: 15px;
  cursor: pointer;
}
.fileinfo {
  display: inline-block;
  color: #8c8c8c;
}
input#powermail_field_upload {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
.powermail_select,
#powermail_field_land {
  width: 100%;
  border: 0;
  background: #f3f3f3;
  border-bottom: 1px solid #b4b4b4;
  padding-left: 0;
  /* -webkit-appearance: none; */
  border-radius: 0;
  -webkit-border-radius: 0;
  -webkit-box-shadow: none;
}
.tx-powermail option {
  padding-left: 0;
}
.powermail_fieldwrap_captcha label {
  margin-bottom: 15px;
}
.powermail_fieldwrap_type_captcha input {
  width: 100%;
  max-width: 170px;
  margin-right: 15px;
  padding: 9px 0;
}
.powermail_form ul.parsley-errors-list {
  margin-left: 0;
  padding-left: 0;
  list-style: none outside;
}
.powermail_form ul.parsley-errors-list li {
  padding-left: 0;
  font-size: 14px;
  color: #329600;
  line-height: normal;
}
.powermail_form ul.parsley-errors-list li:before {
  display: none;
}
input.parsley-error,
textarea.parsley-error {
  /* border-bottom:1px solid #b4b4b4; */
}
.partnerlogo {
  display: inline-block;
  max-width: 260px;
  text-align: center;
}
/* flexelement */
.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.flexelement {
  position: relative;
  width: 100%;
  height: 100%;
  /* min-height:300px; */
}
.flexelement > .container {
  height: 100%;
}
.flexelement .flexinnerwrap {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.flexelement .row {
  height: 100%;
}
.flexelement .flexinnerwrap > a {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.pos-flex-align-start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.pos-flex-align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.pos-flex-align-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.pos-flex-justify-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.pos-flex-justify-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}
.pos-flex-justify-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
li.break {
  position: relative;
  width: 100%;
  height: 0;
}
/* *** Content: table */
.contenttable th,
.contenttable td {
  vertical-align: top;
}
.contenttable th,
.contenttable td {
  padding: 30px 0;
  border-top: 5px solid #e6e6e6;
}
.contenttable td:first-child {
  padding-right: 15px;
}
.contenttable td:last-child {
  padding-left: 15px;
}
.contenttable tbody tr.tbl-kopfzeile {
  background: none;
}
.contenttable tbody tr.tbl-kopfzeile {
  padding-bottom: 5px;
  /* border-bottom:1px solid #4084c5; */
}
.contenttable tbody tr.tbl-fusszeile {
  background: none;
}
.contenttable tbody tr.tbl-fusszeile {
  padding-top: 5px;
  /* border-top:1px solid rgba(64,132,197,1); */
}
.contenttable tbody tr.tbl-weissezeile {
  background: #fff;
}
.contenttable tbody tr.tbl-doppellinienzeile {
  background: #fff;
  padding-bottom: 5px;
  /* border-bottom:4px double #4084c5; */
}
caption {
  border-top: 1px solid #329600;
  color: #fff;
  padding: 0 0 25px;
  margin-bottom: 10px;
  text-align: left;
  caption-side: top;
  font-weight: 700;
  text-transform: uppercase;
}
/* *** scrollTopIcon *** */
.scrollTopIcon {
  display: none;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.scrollTopIcon a {
  position: relative;
  display: inline-block;
  text-align: center;
  width: 90px;
  height: 90px;
  color: #fff;
  /*border:1px solid #fff;*/
  font-size: 36px;
  line-height: 42px;
  /*-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
    border-radius: 50%;*/
  background: #ececec;
  padding: 20px 25px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.scrollTopIcon a:hover {
  -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
.box_schnelleinstieg {
  text-align: center;
  margin-bottom: 30px;
  padding: 15px;
  min-height: 260px;
}
.box_schnelleinstieg h2 {
  font-size: 24px;
}
.icon-style {
  margin-bottom: 36px;
  color: #329600;
}
.white-popup {
  position: relative;
  background: #FFF;
  padding: 20px;
  width: auto;
  max-width: 640px;
  margin: 20px auto;
}
.mfp-ajax-holder .csc-content {
  position: relative;
  background: #FFF;
  padding: 20px;
  width: auto;
  max-width: 640px;
  margin: 20px auto;
}
.mfp-ajax-holder .csc-content .col-md-12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}
.mfp-container {
  padding-left: 15px;
  padding-right: 15px;
}
.mfp-bg {
  background: rgba(0, 0, 0, 0.5);
  opacity: 1;
}
.mfp-ajax-holder .mfp-content {
  max-width: 1170px;
}
.mfp-ajax-holder .mfp-content section.content {
  padding-top: 60px;
  padding-bottom: 60px;
}
/* Tabs */
.nav-tabs {
  width: 100%;
}
.nav-tabs li {
  display: block;
  width: 100%;
  max-width: 90%;
}
.nav-tabs li a {
  display: block;
  padding: 15px 30px 15px 0px;
  border-bottom: 1px solid #329600;
  position: relative;
}
.nav-tabs li a:after {
  /* font-family: "Font Awesome 5 Free"; */
  content: "\203A";
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 0px;
  font-size: 21px;
  line-height: normal;
  font-weight: 400;
}
.nav-tabs li:first-child a {
  padding-top: 0;
}
.nav-tabs li:first-child a:after {
  top: 0px;
}
.nav-tabs li:last-child a {
  border-bottom: 0;
}
.nav-tabs li a:hover,
.nav-tabs li a:hover h3,
.nav-tabs li a:hover h6 {
  color: #329600;
}
.nav-tabs li a.active,
.nav-tabs li a.active h3,
.nav-tabs li a.active h6 {
  color: #329600;
  font-weight: 600;
}
.tabheader {
  font-size: 16px;
  margin-bottom: 0px;
}
.tab-pane-header {
  display: none;
  margin-bottom: 15px;
}
.tab-pane-header .withSubHead {
  margin-bottom: 5px;
}
.tabsubheader {
  margin-bottom: 0;
  font-size: 14px;
  color: #3e3e3e;
}
.tab-pane-header a:hover,
.tab-pane-header a:hover h2,
.tab-pane-header a:hover h3,
.tab-pane-header a:hover h6 {
  color: #329600;
}
.active .tab-pane-header a,
.active .tab-pane-header a h2,
.active .tab-pane-header a h3,
.active .tab-pane-header a h6 {
  color: #329600;
}
.tabmenu {
  display: none;
}
@media only screen and (min-width: 768px) {
  .tabmenu {
    display: flex;
  }
}
.tab-pane .tab-pane-header {
  display: block;
}
.tab-pane .tab-pane-header h3 {
  font-size: 18px;
  line-height: 23px;
  margin-bottom: 0;
}
.tab-pane .tab-pane-header a {
  display: block;
  padding: 5px 15px 5px 0;
  border-bottom: 1px solid #329600;
  position: relative;
  cursor: pointer;
}
.tab-pane .tab-pane-header a:after {
  content: "\203A";
  display: inline-block;
  position: absolute;
  top: 6px;
  right: 0px;
  font-size: 21px;
  font-weight: 400;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
  width: 21px;
  height: 21px;
  text-align: center;
  line-height: 16px;
  /* font-family: "Font Awesome 5 Free"; */
}
@media only screen and (min-width: 768px) {
  .tab-pane .tab-pane-header {
    display: none;
  }
  .tab-pane .tab-pane-header a {
    display: block;
    padding: 15px;
    border-bottom: 2px solid #fff;
    position: relative;
    cursor: pointer;
  }
  .tab-pane .tab-pane-header a:after {
    content: "\203A";
    display: inline-block;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 21px;
    font-weight: 400;
  }
}
.tab-pane.active {
  border-bottom: 1px solid primaryColor;
  margin-bottom: 15px;
}
.tab-pane.active .tab-pane-header a h3 {
  font-weight: 600;
}
.tab-pane.active .tab-pane-header a:after {
  transform: rotate(90deg);
}
/* Smartmenu */
.mnopen .pos-top {
  -webkit-transform: translateY(8px) rotateZ(-45deg);
  transform: translateY(8px) rotateZ(-45deg);
}
.mnopen .pos-middle {
  opacity: 0;
}
.mnopen .pos-bottom {
  -webkit-transform: translateY(-8px) rotateZ(45deg);
  transform: translateY(-8px) rotateZ(45deg);
}
.smartmenu-switcher {
  display: inline-block;
  transition: all 0.25s linear;
  cursor: pointer;
  position: absolute;
  z-index: 33;
  top: 15px;
  bottom: auto;
  right: 10px;
  width: auto;
  height: auto;
  margin-top: 0;
  box-sizing: border-box;
  z-index: 331;
  padding: 10px;
  text-align: center;
  transition: all 0.25s ease-in-out;
}
@media only screen and (min-width: 640px) {
  .smartmenu-switcher {
    top: auto;
    bottom: 15px;
  }
}
@media only screen and (min-width: 1025px) {
  .smartmenu-switcher {
    display: none;
  }
}
.smartmenu-switcher span {
  position: relative;
  display: block;
  width: 26px;
  height: 3px;
  border-radius: 0px;
  background-color: #329600;
  margin: 0 auto 5px;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}
.smartmenu-switcher span:last-child {
  margin-bottom: 0;
}
.mnopen #menu-mobil .smartmenu-switcher {
  visibility: visible;
  opacity: 1;
  bottom: auto;
  top: 15px;
  right: 0;
  padding: 10px 15px;
}
html.mnopen {
  /* height:calc(~"var(--vh) * 100"); overflow: hidden; */
  overflow: hidden !important;
}
html.mnopen body {
  height: 100%;
  overflow: visible;
}
html.mnopen .page {
  height: 100%;
  overflow: visible;
}
.mnopen #menu-mobil {
  z-index: 101;
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
#menu-mobil {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100%;
  max-width: 260px;
  z-index: 9999;
  -webkit-transform: translateX(370px);
  transform: translateX(370px);
  visibility: hidden;
  opacity: 0;
  height: 100vh;
  color: #3e3e3e;
  background: #ffffff;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#menu-mobil .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  /* The main point: */
  overflow-y: auto;
  /* Optional but highly reccomended: enables momentum scrolling on iOS */
  -webkit-overflow-scrolling: touch;
  padding: 80px 15px 30px;
}
#menu-mobil ul {
  padding: 0 0 30px;
}
#menu-mobil ul li {
  position: relative;
  text-transform: uppercase;
  color: #3e3e3e;
  padding: 0 30px 15px 0;
}
@media only screen and (min-width: 1025px) {
  #menu-mobil ul li {
    padding: 0;
  }
}
#menu-mobil ul li a {
  display: block;
  font-size: 16px;
  line-height: normal;
  text-decoration: none;
  color: #3e3e3e;
}
#menu-mobil ul li a:hover {
  color: #329600;
}
#menu-mobil ul li:last-child {
  padding: 0;
}
#menu-mobil ul li ul {
  padding: 15px 0 15px 15px;
}
#menu-mobil ul li ul li {
  text-transform: none;
  padding: 0 0 10px;
  font-size: 14px;
}
#menu-mobil .nav-top {
  display: block;
  position: relative;
  top: auto;
  right: auto;
}
#menu-mobil .nav-top li {
  display: block;
}
#menu-mobil .nav-top li a {
  padding: 0;
}
.overlay {
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.mnopen .overlay {
  visibility: visible;
  opacity: 1;
  background: rgba(0, 0, 0, 0.35);
  z-index: 100;
}
.mnopen {
  overflow: hidden;
}
.mnopen .smartmenu {
  visibility: hidden;
  opacity: 0;
}
#menu-mobil .subopener {
  cursor: pointer;
  display: inline-block;
  width: 24px;
  height: 24px;
  background: #f5f5f5;
  position: absolute;
  right: 0;
  top: 0;
  text-align: center;
  line-height: 24px;
}
#menu-mobil .subopener:before {
  display: inline;
  content: '+';
  color: #000;
  font-weight: 400;
  font-size: 16px;
}
#menu-mobil .subopener.active:before {
  content: '-';
  position: relative;
  top: -2px;
}
/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers
 */
.hidden {
  display: none !important;
}
/*
* Hide only visually, but have it available for screen readers:
* http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*/
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/*
* Extends the .visuallyhidden class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
/*
* Hide visually and from screen readers, but maintain layout
*/
.invisible {
  visibility: hidden;
}
/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.clearfix:after {
  clear: both;
}
@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}
/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after,
  *:first-letter,
  *:first-line {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  /*a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }*/
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
