/* =============================================================================
 * reset & various settings
 * ========================================================================== */

:root {
  color-scheme: only light;
}

* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background-repeat: no-repeat;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -ms-hyphens: none;
  -webkit-hyphens: none;
  hyphens: auto;
}

a {
  hyphens: none;
}

#wrapper .mejs-container * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

ol,
ul {
  list-style: none;
}

table {
  border-spacing: 0;
}

body {
  position: relative;
  text-size-adjust: 100%;
  background: rgba(24, 24, 24, 1);
}

#mbCenter img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.inside {
  position: relative;
  text-align: left;
}

.block {
  overflow: hidden;
}

.clear,
#clear {
  height: 0;
  font-size: 0;
  line-height: 0;
  clear: both;
}

.invisible {
  width: 0;
  height: 0;
  left: -1000px;
  top: -1000px;
  position: absolute;
  overflow: hidden;
  display: inline;
}

* + html #main {
  position: static;
}

header,
footer,
nav,
section,
aside,
article,
figure,
figcaption {
  display: block;
}

#container:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#chromeframe {
  background: red;
  padding: 10px;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 10000;
}

.animate {
  opacity: 0;
}

.animate.nowaypoint {
  opacity: 1;
}

p {
  margin-bottom: 15px;
  word-wrap: break-word;
}

#wrapper {
  position: relative;
  z-index: 10;
}

#container {
  position: relative;
  width: 100%;
  margin: 0;
  background: #fff;
}

i.ti {
  display: inline-block;
}

/* =============================================================================
 * outdated-browser message
 * ========================================================================== */

body.ie11 #outdated-browser,
body.ie #outdated-browser {
  display: block;
}

#outdated-browser {
  color: rgb(255, 255, 255);
  background: red;
  padding: 20px;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  z-index: 10000;
  display: none;
}
#outdated-browser.confirmed {
  display: none !important;
}

#outdated-browser span {
  text-decoration: underline;
  cursor: pointer;
}

/* =============================================================================
 * accent + second color
 * ========================================================================== */

:root {
  --accentColor: #e90069;
  --secondColor: #465665;
}

/* =============================================================================
 * margin + padding classes - vertical
 * ========================================================================== */

.mt-xxl {
  margin-top: 80px !important;
}
.mt-xl {
  margin-top: 70px !important;
}
.mt-l {
  margin-top: 60px !important;
}
.mt-m {
  margin-top: 50px !important;
}
.mt-s {
  margin-top: 40px !important;
}
.mt-xs {
  margin-top: 30px !important;
}
.mt-xxs {
  margin-top: 20px !important;
}
.mb-xxl {
  margin-bottom: 80px !important;
}
.mb-xl {
  margin-bottom: 70px !important;
}
.mb-l {
  margin-bottom: 60px !important;
}
.mb-m {
  margin-bottom: 50px !important;
}
.mb-s {
  margin-bottom: 40px !important;
}
.mb-xs {
  margin-bottom: 30px !important;
}
.mb-xxs {
  margin-bottom: 20px !important;
}
.pt-xxl {
  padding-top: 170px !important;
}
.pt-xl {
  padding-top: 150px !important;
}
.pt-l {
  padding-top: 120px !important;
}
.pt-m {
  padding-top: 100px !important;
}
.pt-s {
  padding-top: 90px !important;
}
.pt-xs {
  padding-top: 50px !important;
}
.pt-xxs {
  padding-top: 30px !important;
}
.pb-xxl {
  padding-bottom: 170px !important;
}
.pb-xl {
  padding-bottom: 150px !important;
}
.pb-l {
  padding-bottom: 120px !important;
}
.pb-m {
  padding-bottom: 100px !important;
}
.pb-s {
  padding-bottom: 90px !important;
}
.pb-xs {
  padding-bottom: 50px !important;
}
.pb-xxs {
  padding-bottom: 30px !important;
}
.mt-0 {
  margin-top: 0 !important;
}
.mt-5 {
  margin-top: 5px !important;
}
.mt-10 {
  margin-top: 10px !important;
}
.mt-20 {
  margin-top: 20px !important;
}
.mt-30 {
  margin-top: 30px !important;
}
.mt-40 {
  margin-top: 40px !important;
}
.mt-50 {
  margin-top: 50px !important;
}
.mt-60 {
  margin-top: 60px !important;
}
.mt-70 {
  margin-top: 70px !important;
}
.mt-80 {
  margin-top: 80px !important;
}
.mt-90 {
  margin-top: 90px !important;
}
.mt-100 {
  margin-top: 100px !important;
}
.mt-110 {
  margin-top: 110px !important;
}
.mt-120 {
  margin-top: 120px !important;
}
.mt-130 {
  margin-top: 130px !important;
}
.mt-140 {
  margin-top: 140px !important;
}
.mt-150 {
  margin-top: 150px !important;
}
.mt-160 {
  margin-top: 160px !important;
}
.mt-170 {
  margin-top: 170px !important;
}
.mt-180 {
  margin-top: 180px !important;
}
.mt-190 {
  margin-top: 190px !important;
}
.mt-200 {
  margin-top: 200px !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.mb-5 {
  margin-bottom: 5px !important;
}
.mb-10 {
  margin-bottom: 10px !important;
}
.mb-20 {
  margin-bottom: 20px !important;
}
.mb-30 {
  margin-bottom: 30px !important;
}
.mb-40 {
  margin-bottom: 40px !important;
}
.mb-50 {
  margin-bottom: 50px !important;
}
.mb-60 {
  margin-bottom: 60px !important;
}
.mb-70 {
  margin-bottom: 70px !important;
}
.mb-80 {
  margin-bottom: 80px !important;
}
.mb-90 {
  margin-bottom: 90px !important;
}
.mb-100 {
  margin-bottom: 100px !important;
}
.mb-110 {
  margin-bottom: 110px !important;
}
.mb-120 {
  margin-bottom: 120px !important;
}
.mb-130 {
  margin-bottom: 130px !important;
}
.mb-140 {
  margin-bottom: 140px !important;
}
.mb-150 {
  margin-bottom: 150px !important;
}
.mb-160 {
  margin-bottom: 160px !important;
}
.mb-170 {
  margin-bottom: 170px !important;
}
.mb-180 {
  margin-bottom: 180px !important;
}
.mb-190 {
  margin-bottom: 190px !important;
}
.mb-200 {
  margin-bottom: 200px !important;
}
.pt-0 {
  padding-top: 0 !important;
}
.pt-5 {
  padding-top: 5px !important;
}
.pt-10 {
  padding-top: 10px !important;
}
.pt-20 {
  padding-top: 20px !important;
}
.pt-30 {
  padding-top: 30px !important;
}
.pt-40 {
  padding-top: 40px !important;
}
.pt-50 {
  padding-top: 50px !important;
}
.pt-60 {
  padding-top: 60px !important;
}
.pt-70 {
  padding-top: 70px !important;
}
.pt-80 {
  padding-top: 80px !important;
}
.pt-90 {
  padding-top: 90px !important;
}
.pt-100 {
  padding-top: 100px !important;
}
.pt-110 {
  padding-top: 110px !important;
}
.pt-120 {
  padding-top: 120px !important;
}
.pt-130 {
  padding-top: 130px !important;
}
.pt-140 {
  padding-top: 140px !important;
}
.pt-150 {
  padding-top: 150px !important;
}
.pt-160 {
  padding-top: 160px !important;
}
.pt-170 {
  padding-top: 170px !important;
}
.pt-180 {
  padding-top: 180px !important;
}
.pt-190 {
  padding-top: 190px !important;
}
.pt-200 {
  padding-top: 200px !important;
}
.pb-0 {
  padding-bottom: 0 !important;
}
.pb-5 {
  padding-bottom: 5px !important;
}
.pb-10 {
  padding-bottom: 10px !important;
}
.pb-20 {
  padding-bottom: 20px !important;
}
.pb-30 {
  padding-bottom: 30px !important;
}
.pb-40 {
  padding-bottom: 40px !important;
}
.pb-50 {
  padding-bottom: 50px !important;
}
.pb-60 {
  padding-bottom: 60px !important;
}
.pb-70 {
  padding-bottom: 70px !important;
}
.pb-80 {
  padding-bottom: 80px !important;
}
.pb-90 {
  padding-bottom: 90px !important;
}
.pb-100 {
  padding-bottom: 100px !important;
}
.pb-110 {
  padding-bottom: 110px !important;
}
.pb-120 {
  padding-bottom: 120px !important;
}
.pb-130 {
  padding-bottom: 130px !important;
}
.pb-140 {
  padding-bottom: 140px !important;
}
.pb-150 {
  padding-bottom: 150px !important;
}
.pb-160 {
  padding-bottom: 160px !important;
}
.pb-170 {
  padding-bottom: 170px !important;
}
.pb-180 {
  padding-bottom: 180px !important;
}
.pb-190 {
  padding-bottom: 190px !important;
}
.pb-200 {
  padding-bottom: 200px !important;
}
.p-0 {
  padding: 0 !important;
}
.p-5 {
  padding: 5px !important;
}
.p-10 {
  padding: 10px !important;
}
.p-20 {
  padding: 20px !important;
}
.p-30 {
  padding: 30px !important;
}
.p-40 {
  padding: 40px !important;
}
.p-50 {
  padding: 50px !important;
}
.p-60 {
  padding: 60px !important;
}
.p-70 {
  padding: 70px !important;
}
.p-80 {
  padding: 80px !important;
}
.p-90 {
  padding: 90px !important;
}
.p-100 {
  padding: 100px !important;
}
.p-110 {
  padding: 110px !important;
}
.p-120 {
  padding: 120px !important;
}
.p-130 {
  padding: 130px !important;
}
.p-140 {
  padding: 140px !important;
}
.p-150 {
  padding: 150px !important;
}
.p-160 {
  padding: 160px !important;
}
.p-170 {
  padding: 170px !important;
}
.p-180 {
  padding: 180px !important;
}
.p-190 {
  padding: 190px !important;
}
.p-200 {
  padding: 200px !important;
}
.m-0 {
  margin: 0 !important;
}

/* negativ margin classes*/
.mt-xxl-neg {
  margin-top: -300px !important;
}
.mt-xl-neg {
  margin-top: -140px !important;
}
.mt-l-neg {
  margin-top: -110px !important;
}
.mt-m-neg {
  margin-top: -80px !important;
}
.mt-s-neg {
  margin-top: -50px !important;
}
.mb-xxl-neg {
  margin-bottom: -300px !important;
}
.mb-xl-neg {
  margin-bottom: -140px !important;
}
.mb-l-neg {
  margin-bottom: -110px !important;
}
.mb-m-neg {
  margin-bottom: -80px !important;
}
.mb-s-neg {
  margin-bottom: -50px !important;
}
.mt-10-neg {
  margin-top: -10px;
}
.mt-20-neg {
  margin-top: -20px;
}
.mt-30-neg {
  margin-top: -30px;
}
.mt-40-neg {
  margin-top: -40px;
}
.mt-50-neg {
  margin-top: -50px;
}
.mt-60-neg {
  margin-top: -60px;
}
.mt-70-neg {
  margin-top: -70px;
}
.mt-80-neg {
  margin-top: -80px;
}
.mt-90-neg {
  margin-top: -90px;
}
.mt-100-neg {
  margin-top: -100px;
}
.mt-110-neg {
  margin-top: -110px;
}
.mt-120-neg {
  margin-top: -120px;
}
.mt-130-neg {
  margin-top: -130px;
}
.mt-140-neg {
  margin-top: -140px;
}
.mt-150-neg {
  margin-top: -150px;
}
.mt-160-neg {
  margin-top: -160px;
}
.mt-170-neg {
  margin-top: -170px;
}
.mt-180-neg {
  margin-top: -180px;
}
.mt-190-neg {
  margin-top: -190px;
}
.mt-200-neg {
  margin-top: -200px;
}
.mb-10-neg {
  margin-bottom: -10px;
}
.mb-20-neg {
  margin-bottom: -20px;
}
.mb-30-neg {
  margin-bottom: -30px;
}
.mb-40-neg {
  margin-bottom: -40px;
}
.mb-50-neg {
  margin-bottom: -50px;
}
.mb-60-neg {
  margin-bottom: -60px;
}
.mb-70-neg {
  margin-bottom: -70px;
}
.mb-80-neg {
  margin-bottom: -80px;
}
.mb-90-neg {
  margin-bottom: -90px;
}
.mb-100-neg {
  margin-bottom: -100px;
}
.mb-110-neg {
  margin-bottom: -110px;
}
.mb-120-neg {
  margin-bottom: -120px;
}
.mb-130-neg {
  margin-bottom: -130px;
}
.mb-140-neg {
  margin-bottom: -140px;
}
.mb-150-neg {
  margin-bottom: -150px;
}
.mb-160-neg {
  margin-bottom: -160px;
}
.mb-170-neg {
  margin-bottom: -170px;
}
.mb-180-neg {
  margin-bottom: -180px;
}
.mb-190-neg {
  margin-bottom: -190px;
}
.mb-200-neg {
  margin-bottom: -200px;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1025px) {
  .mt-xxl {
    margin-top: 60px !important;
  }
  .mt-xl {
    margin-top: 50px !important;
  }
  .mt-l {
    margin-top: 40px !important;
  }
  .mt-m {
    margin-top: 30px !important;
  }
  .mt-s {
    margin-top: 25px !important;
  }
  .mt-xs {
    margin-top: 25px !important;
  }
  .mt-xxs {
    margin-top: 25px !important;
  }
  .mb-xxl {
    margin-bottom: 60px !important;
  }
  .mb-xl {
    margin-bottom: 50px !important;
  }
  .mb-l {
    margin-bottom: 40px !important;
  }
  .mb-m {
    margin-bottom: 30px !important;
  }
  .mb-s {
    margin-bottom: 25px !important;
  }
  .mb-xs {
    margin-bottom: 25px !important;
  }
  .mb-xxs {
    margin-bottom: 25px !important;
  }
  .pt-xxl {
    padding-top: 130px !important;
  }
  .pt-xl {
    padding-top: 110px !important;
  }
  .pt-l {
    padding-top: 100px !important;
  }
  .pt-m {
    padding-top: 80px !important;
  }
  .pt-s {
    padding-top: 70px !important;
  }
  .pt-xs {
    padding-top: 40px !important;
  }
  .pt-xxs {
    padding-top: 30px !important;
  }
  .pb-xxl {
    padding-bottom: 130px !important;
  }
  .pb-xl {
    padding-bottom: 110px !important;
  }
  .pb-l {
    padding-bottom: 100px !important;
  }
  .pb-m {
    padding-bottom: 80px !important;
  }
  .pb-s {
    padding-bottom: 70px !important;
  }
  .pb-xs {
    padding-bottom: 40px !important;
  }
  .pb-xxs {
    padding-bottom: 30px !important;
  }
  .mt-0-t {
    margin-top: 0 !important;
  }
  .mt-5-t {
    margin-top: 5px !important;
  }
  .mt-10-t {
    margin-top: 10px !important;
  }
  .mt-20-t {
    margin-top: 20px !important;
  }
  .mt-30-t {
    margin-top: 30px !important;
  }
  .mt-40-t {
    margin-top: 40px !important;
  }
  .mt-50-t {
    margin-top: 50px !important;
  }
  .mt-60-t {
    margin-top: 60px !important;
  }
  .mt-70-t {
    margin-top: 70px !important;
  }
  .mt-80-t {
    margin-top: 80px !important;
  }
  .mt-90-t {
    margin-top: 90px !important;
  }
  .mt-100-t {
    margin-top: 100px !important;
  }
  .mt-110-t {
    margin-top: 110px !important;
  }
  .mt-120-t {
    margin-top: 120px !important;
  }
  .mt-130-t {
    margin-top: 130px !important;
  }
  .mt-140-t {
    margin-top: 140px !important;
  }
  .mt-150-t {
    margin-top: 150px !important;
  }
  .mt-160-t {
    margin-top: 160px !important;
  }
  .mt-170-t {
    margin-top: 170px !important;
  }
  .mt-180-t {
    margin-top: 180px !important;
  }
  .mt-190-t {
    margin-top: 190px !important;
  }
  .mt-200-t {
    margin-top: 200px !important;
  }
  .mb-0-t {
    margin-bottom: 0 !important;
  }
  .mb-5-t {
    margin-bottom: 5px !important;
  }
  .mb-10-t {
    margin-bottom: 10px !important;
  }
  .mb-20-t {
    margin-bottom: 20px !important;
  }
  .mb-30-t {
    margin-bottom: 30px !important;
  }
  .mb-40-t {
    margin-bottom: 40px !important;
  }
  .mb-50-t {
    margin-bottom: 50px !important;
  }
  .mb-60-t {
    margin-bottom: 60px !important;
  }
  .mb-70-t {
    margin-bottom: 70px !important;
  }
  .mb-80-t {
    margin-bottom: 80px !important;
  }
  .mb-90-t {
    margin-bottom: 90px !important;
  }
  .mb-100-t {
    margin-bottom: 100px !important;
  }
  .mb-110-t {
    margin-bottom: 110px !important;
  }
  .mb-120-t {
    margin-bottom: 120px !important;
  }
  .mb-130-t {
    margin-bottom: 130px !important;
  }
  .mb-140-t {
    margin-bottom: 140px !important;
  }
  .mb-150-t {
    margin-bottom: 150px !important;
  }
  .mb-160-t {
    margin-bottom: 160px !important;
  }
  .mb-170-t {
    margin-bottom: 170px !important;
  }
  .mb-180-t {
    margin-bottom: 180px !important;
  }
  .mb-190-t {
    margin-bottom: 190px !important;
  }
  .mb-200-t {
    margin-bottom: 200px !important;
  }
  .pt-0-t {
    padding-top: 0 !important;
  }
  .pt-5-t {
    padding-top: 5px !important;
  }
  .pt-10-t {
    padding-top: 10px !important;
  }
  .pt-20-t {
    padding-top: 20px !important;
  }
  .pt-30-t {
    padding-top: 30px !important;
  }
  .pt-40-t {
    padding-top: 40px !important;
  }
  .pt-50-t {
    padding-top: 50px !important;
  }
  .pt-60-t {
    padding-top: 60px !important;
  }
  .pt-70-t {
    padding-top: 70px !important;
  }
  .pt-80-t {
    padding-top: 80px !important;
  }
  .pt-90-t {
    padding-top: 90px !important;
  }
  .pt-100-t {
    padding-top: 100px !important;
  }
  .pt-110-t {
    padding-top: 110px !important;
  }
  .pt-120-t {
    padding-top: 120px !important;
  }
  .pt-130-t {
    padding-top: 130px !important;
  }
  .pt-140-t {
    padding-top: 140px !important;
  }
  .pt-150-t {
    padding-top: 150px !important;
  }
  .pt-160-t {
    padding-top: 160px !important;
  }
  .pt-170-t {
    padding-top: 170px !important;
  }
  .pt-180-t {
    padding-top: 180px !important;
  }
  .pt-190-t {
    padding-top: 190px !important;
  }
  .pt-200-t {
    padding-top: 200px !important;
  }
  .pb-0-t {
    padding-bottom: 0 !important;
  }
  .pb-5-t {
    padding-bottom: 5px !important;
  }
  .pb-10-t {
    padding-bottom: 10px !important;
  }
  .pb-20-t {
    padding-bottom: 20px !important;
  }
  .pb-30-t {
    padding-bottom: 30px !important;
  }
  .pb-40-t {
    padding-bottom: 40px !important;
  }
  .pb-50-t {
    padding-bottom: 50px !important;
  }
  .pb-60-t {
    padding-bottom: 60px !important;
  }
  .pb-70-t {
    padding-bottom: 70px !important;
  }
  .pb-80-t {
    padding-bottom: 80px !important;
  }
  .pb-90-t {
    padding-bottom: 90px !important;
  }
  .pb-100-t {
    padding-bottom: 100px !important;
  }
  .pb-110-t {
    padding-bottom: 110px !important;
  }
  .pb-120-t {
    padding-bottom: 120px !important;
  }
  .pb-130-t {
    padding-bottom: 130px !important;
  }
  .pb-140-t {
    padding-bottom: 140px !important;
  }
  .pb-150-t {
    padding-bottom: 150px !important;
  }
  .pb-160-t {
    padding-bottom: 160px !important;
  }
  .pb-170-t {
    padding-bottom: 170px !important;
  }
  .pb-180-t {
    padding-bottom: 180px !important;
  }
  .pb-190-t {
    padding-bottom: 190px !important;
  }
  .pb-200-t {
    padding-bottom: 200px !important;
  }
  .p-0-t {
    padding: 0 !important;
  }
  .p-5-t {
    padding: 5px !important;
  }
  .p-10-t {
    padding: 10px !important;
  }
  .p-20-t {
    padding: 20px !important;
  }
  .p-30-t {
    padding: 30px !important;
  }
  .p-40-t {
    padding: 40px !important;
  }
  .p-50-t {
    padding: 50px !important;
  }
  .p-60-t {
    padding: 60px !important;
  }
  .p-70-t {
    padding: 70px !important;
  }
  .p-80-t {
    padding: 80px !important;
  }
  .p-90-t {
    padding: 90px !important;
  }
  .p-100-t {
    padding: 100px !important;
  }
  .p-110-t {
    padding: 110px !important;
  }
  .p-120-t {
    padding: 120px !important;
  }
  .p-130-t {
    padding: 130px !important;
  }
  .p-140-t {
    padding: 140px !important;
  }
  .p-150-t {
    padding: 150px !important;
  }
  .p-160-t {
    padding: 160px !important;
  }
  .p-170-t {
    padding: 170px !important;
  }
  .p-180-t {
    padding: 180px !important;
  }
  .p-190-t {
    padding: 190px !important;
  }
  .p-200-t {
    padding: 200px !important;
  }
}

@media only screen and (max-width: 767px) {
  .mt-xxl {
    margin-top: 50px !important;
  }
  .mt-xl {
    margin-top: 40px !important;
  }
  .mt-l {
    margin-top: 30px !important;
  }
  .mt-m {
    margin-top: 25px !important;
  }
  .mt-s {
    margin-top: 20px !important;
  }
  .mt-xs {
    margin-top: 25px !important;
  }
  .mt-xxs {
    margin-top: 25px !important;
  }
  .mb-xxl {
    margin-bottom: 50px !important;
  }
  .mb-xl {
    margin-bottom: 40px !important;
  }
  .mb-l {
    margin-bottom: 30px !important;
  }
  .mb-m {
    margin-bottom: 25px !important;
  }
  .mb-s {
    margin-bottom: 20px !important;
  }
  .mb-xs {
    margin-bottom: 25px !important;
  }
  .mb-xxs {
    margin-bottom: 25px !important;
  }
  .pt-xxl {
    padding-top: 80px !important;
  }
  .pt-xl {
    padding-top: 70px !important;
  }
  .pt-l {
    padding-top: 70px !important;
  }
  .pt-m {
    padding-top: 60px !important;
  }
  .pt-s {
    padding-top: 50px !important;
  }
  .pt-xs {
    padding-top: 40px !important;
  }
  .pt-xxs {
    padding-top: 30px !important;
  }
  .pb-xxl {
    padding-bottom: 80px !important;
  }
  .pb-xl {
    padding-bottom: 70px !important;
  }
  .pb-l {
    padding-bottom: 70px !important;
  }
  .pb-m {
    padding-bottom: 60px !important;
  }
  .pb-s {
    padding-bottom: 50px !important;
  }
  .pb-xs {
    padding-bottom: 40px !important;
  }
  .pb-xxs {
    padding-bottom: 30px !important;
  }
  .mt-xxl-m {
    margin-top: 80px !important;
  }
  .mt-xl-m {
    margin-top: 70px !important;
  }
  .mt-l-m {
    margin-top: 60px !important;
  }
  .mt-m-m {
    margin-top: 45px !important;
  }
  .mt-m-m {
    margin-top: 35px !important;
  }
  .mt-xs-m {
    margin-top: 25px !important;
  }
  .mt-xxs-m {
    margin-top: 20px !important;
  }
  .mt-no-m {
    margin-top: 0px !important;
  }
  .mb-xxl-m {
    margin-bottom: 80px !important;
  }
  .mb-xl-m {
    margin-bottom: 70px !important;
  }
  .mb-l-m {
    margin-bottom: 60px !important;
  }
  .mb-m-m {
    margin-bottom: 45px !important;
  }
  .mb-m-m {
    margin-bottom: 35px !important;
  }
  .mb-xs-m {
    margin-bottom: 25px !important;
  }
  .mb-xxs-m {
    margin-bottom: 20px !important;
  }
  .mb-no-m {
    margin-bottom: 0px !important;
  }
  .mt-0-m {
    margin-top: 0 !important;
  }
  .mt-5-m {
    margin-top: 5px !important;
  }
  .mt-10-m {
    margin-top: 10px !important;
  }
  .mt-20-m {
    margin-top: 20px !important;
  }
  .mt-30-m {
    margin-top: 30px !important;
  }
  .mt-40-m {
    margin-top: 40px !important;
  }
  .mt-50-m {
    margin-top: 50px !important;
  }
  .mt-60-m {
    margin-top: 60px !important;
  }
  .mt-70-m {
    margin-top: 70px !important;
  }
  .mt-80-m {
    margin-top: 80px !important;
  }
  .mt-90-m {
    margin-top: 90px !important;
  }
  .mt-100-m {
    margin-top: 100px !important;
  }
  .mt-110-m {
    margin-top: 110px !important;
  }
  .mt-120-m {
    margin-top: 120px !important;
  }
  .mt-130-m {
    margin-top: 130px !important;
  }
  .mt-140-m {
    margin-top: 140px !important;
  }
  .mt-150-m {
    margin-top: 150px !important;
  }
  .mt-160-m {
    margin-top: 160px !important;
  }
  .mt-170-m {
    margin-top: 170px !important;
  }
  .mt-180-m {
    margin-top: 180px !important;
  }
  .mt-190-m {
    margin-top: 190px !important;
  }
  .mt-200-m {
    margin-top: 200px !important;
  }
  .mb-0-m {
    margin-bottom: 0 !important;
  }
  .mb-5-m {
    margin-bottom: 5px !important;
  }
  .mb-10-m {
    margin-bottom: 10px !important;
  }
  .mb-20-m {
    margin-bottom: 20px !important;
  }
  .mb-30-m {
    margin-bottom: 30px !important;
  }
  .mb-40-m {
    margin-bottom: 40px !important;
  }
  .mb-50-m {
    margin-bottom: 50px !important;
  }
  .mb-60-m {
    margin-bottom: 60px !important;
  }
  .mb-70-m {
    margin-bottom: 70px !important;
  }
  .mb-80-m {
    margin-bottom: 80px !important;
  }
  .mb-90-m {
    margin-bottom: 90px !important;
  }
  .mb-100-m {
    margin-bottom: 100px !important;
  }
  .mb-110-m {
    margin-bottom: 110px !important;
  }
  .mb-120-m {
    margin-bottom: 120px !important;
  }
  .mb-130-m {
    margin-bottom: 130px !important;
  }
  .mb-140-m {
    margin-bottom: 140px !important;
  }
  .mb-150-m {
    margin-bottom: 150px !important;
  }
  .mb-160-m {
    margin-bottom: 160px !important;
  }
  .mb-170-m {
    margin-bottom: 170px !important;
  }
  .mb-180-m {
    margin-bottom: 180px !important;
  }
  .mb-190-m {
    margin-bottom: 190px !important;
  }
  .mb-200-m {
    margin-bottom: 200px !important;
  }
  .pt-0-m {
    padding-top: 0 !important;
  }
  .pt-5-m {
    padding-top: 5px !important;
  }
  .pt-10-m {
    padding-top: 10px !important;
  }
  .pt-20-m {
    padding-top: 20px !important;
  }
  .pt-30-m {
    padding-top: 30px !important;
  }
  .pt-40-m {
    padding-top: 40px !important;
  }
  .pt-50-m {
    padding-top: 50px !important;
  }
  .pt-60-m {
    padding-top: 60px !important;
  }
  .pt-70-m {
    padding-top: 70px !important;
  }
  .pt-80-m {
    padding-top: 80px !important;
  }
  .pt-90-m {
    padding-top: 90px !important;
  }
  .pt-100-m {
    padding-top: 100px !important;
  }
  .pt-110-m {
    padding-top: 110px !important;
  }
  .pt-120-m {
    padding-top: 120px !important;
  }
  .pt-130-m {
    padding-top: 130px !important;
  }
  .pt-140-m {
    padding-top: 140px !important;
  }
  .pt-150-m {
    padding-top: 150px !important;
  }
  .pt-160-m {
    padding-top: 160px !important;
  }
  .pt-170-m {
    padding-top: 170px !important;
  }
  .pt-180-m {
    padding-top: 180px !important;
  }
  .pt-190-m {
    padding-top: 190px !important;
  }
  .pt-200-m {
    padding-top: 200px !important;
  }
  .pb-0-m {
    padding-bottom: 0 !important;
  }
  .pb-5-m {
    padding-bottom: 5px !important;
  }
  .pb-10-m {
    padding-bottom: 10px !important;
  }
  .pb-20-m {
    padding-bottom: 20px !important;
  }
  .pb-30-m {
    padding-bottom: 30px !important;
  }
  .pb-40-m {
    padding-bottom: 40px !important;
  }
  .pb-50-m {
    padding-bottom: 50px !important;
  }
  .pb-60-m {
    padding-bottom: 60px !important;
  }
  .pb-70-m {
    padding-bottom: 70px !important;
  }
  .pb-80-m {
    padding-bottom: 80px !important;
  }
  .pb-90-m {
    padding-bottom: 90px !important;
  }
  .pb-100-m {
    padding-bottom: 100px !important;
  }
  .pb-110-m {
    padding-bottom: 110px !important;
  }
  .pb-120-m {
    padding-bottom: 120px !important;
  }
  .pb-130-m {
    padding-bottom: 130px !important;
  }
  .pb-140-m {
    padding-bottom: 140px !important;
  }
  .pb-150-m {
    padding-bottom: 150px !important;
  }
  .pb-160-m {
    padding-bottom: 160px !important;
  }
  .pb-170-m {
    padding-bottom: 170px !important;
  }
  .pb-180-m {
    padding-bottom: 180px !important;
  }
  .pb-190-m {
    padding-bottom: 190px !important;
  }
  .pb-200-m {
    padding-bottom: 200px !important;
  }
  .p-0-m {
    padding: 0 !important;
  }
  .p-5-m {
    padding: 5px !important;
  }
  .p-10-m {
    padding: 10px !important;
  }
  .p-20-m {
    padding: 20px !important;
  }
  .p-30-m {
    padding: 30px !important;
  }
  .p-40-m {
    padding: 40px !important;
  }
  .p-50-m {
    padding: 50px !important;
  }
  .p-60-m {
    padding: 60px !important;
  }
  .p-70-m {
    padding: 70px !important;
  }
  .p-80-m {
    padding: 80px !important;
  }
  .p-90-m {
    padding: 90px !important;
  }
  .p-100-m {
    padding: 100px !important;
  }
  .p-110-m {
    padding: 110px !important;
  }
  .p-120-m {
    padding: 120px !important;
  }
  .p-130-m {
    padding: 130px !important;
  }
  .p-140-m {
    padding: 140px !important;
  }
  .p-150-m {
    padding: 150px !important;
  }
  .p-160-m {
    padding: 160px !important;
  }
  .p-170-m {
    padding: 170px !important;
  }
  .p-180-m {
    padding: 180px !important;
  }
  .p-190-m {
    padding: 190px !important;
  }
  .p-200-m {
    padding: 200px !important;
  }
}

/* =============================================================================
 * margin + padding classes - horizontal
 * ========================================================================== */

/* margin-left */
.ml-xxl {
  margin-left: 240px !important;
}
.ml-xl {
  margin-left: 200px !important;
}
.ml-l {
  margin-left: 160px !important;
}
.ml-m {
  margin-left: 120px !important;
}
.ml-s {
  margin-left: 80px !important;
}
.ml-xs {
  margin-left: 40px !important;
}
.ml-xxs {
  margin-left: 20px !important;
}

.ml-100 {
  margin-left: 100% !important;
}
.ml-90 {
  margin-left: 90% !important;
}
.ml-80 {
  margin-left: 80% !important;
}
.ml-75 {
  margin-left: 75% !important;
}
.ml-70 {
  margin-left: 70% !important;
}
.ml-60 {
  margin-left: 60% !important;
}
.ml-50 {
  margin-left: 50% !important;
}
.ml-40 {
  margin-left: 40% !important;
}
.ml-30 {
  margin-left: 30% !important;
}
.ml-25 {
  margin-left: 25% !important;
}
.ml-20 {
  margin-left: 20% !important;
}
.ml-10 {
  margin-left: 10% !important;
}
.ml-5 {
  margin-left: 5% !important;
}
.ml-1 {
  margin-left: 1% !important;
}

/* margin-right */
.mr-xxl {
  margin-right: 240px !important;
}
.mr-xl {
  margin-right: 200px !important;
}
.mr-l {
  margin-right: 160px !important;
}
.mr-m {
  margin-right: 120px !important;
}
.mr-s {
  margin-right: 80px !important;
}
.mr-xs {
  margin-right: 40px !important;
}
.mr-xxs {
  margin-right: 20px !important;
}

.mr-100 {
  margin-right: 100% !important;
}
.mr-90 {
  margin-right: 90% !important;
}
.mr-80 {
  margin-right: 80% !important;
}
.mr-75 {
  margin-right: 75% !important;
}
.mr-70 {
  margin-right: 70% !important;
}
.mr-60 {
  margin-right: 60% !important;
}
.mr-50 {
  margin-right: 50% !important;
}
.mr-40 {
  margin-right: 40% !important;
}
.mr-30 {
  margin-right: 30% !important;
}
.mr-25 {
  margin-right: 25% !important;
}
.mr-20 {
  margin-right: 20% !important;
}
.mr-10 {
  margin-right: 10% !important;
}
.mr-5 {
  margin-right: 5% !important;
}
.mr-1 {
  margin-right: 1% !important;
}

/* padding-left */
.pl-xxl {
  padding-left: 240px !important;
}
.pl-xl {
  padding-left: 200px !important;
}
.pl-l {
  padding-left: 160px !important;
}
.pl-m {
  padding-left: 120px !important;
}
.pl-s {
  padding-left: 80px !important;
}
.pl-xs {
  padding-left: 40px !important;
}
.pl-xxs {
  padding-left: 20px !important;
}

.pl-100 {
  padding-left: 100% !important;
}
.pl-90 {
  padding-left: 90% !important;
}
.pl-80 {
  padding-left: 80% !important;
}
.pl-75 {
  padding-left: 75% !important;
}
.pl-70 {
  padding-left: 70% !important;
}
.pl-60 {
  padding-left: 60% !important;
}
.pl-50 {
  padding-left: 50% !important;
}
.pl-40 {
  padding-left: 40% !important;
}
.pl-30 {
  padding-left: 30% !important;
}
.pl-25 {
  padding-left: 25% !important;
}
.pl-20 {
  padding-left: 20% !important;
}
.pl-10 {
  padding-left: 10% !important;
}
.pl-5 {
  padding-left: 5% !important;
}
.pl-1 {
  padding-left: 1% !important;
}

/* padding-right */
.pr-xxl {
  padding-right: 240px !important;
}
.pr-xl {
  padding-right: 200px !important;
}
.pr-l {
  padding-right: 160px !important;
}
.pr-m {
  padding-right: 120px !important;
}
.pr-s {
  padding-right: 80px !important;
}
.pr-xs {
  padding-right: 40px !important;
}
.pr-xxs {
  padding-right: 20px !important;
}

.pr-100 {
  padding-right: 100% !important;
}
.pr-90 {
  padding-right: 90% !important;
}
.pr-80 {
  padding-right: 80% !important;
}
.pr-75 {
  padding-right: 75% !important;
}
.pr-70 {
  padding-right: 70% !important;
}
.pr-60 {
  padding-right: 60% !important;
}
.pr-50 {
  padding-right: 50% !important;
}
.pr-40 {
  padding-right: 40% !important;
}
.pr-30 {
  padding-right: 30% !important;
}
.pr-25 {
  padding-right: 25% !important;
}
.pr-20 {
  padding-right: 20% !important;
}
.pr-10 {
  padding-right: 10% !important;
}
.pr-5 {
  padding-right: 5% !important;
}
.pr-1 {
  padding-right: 1% !important;
}

@media only screen and (max-width: 767px) {
  .ml-xxl,
  .ml-xl,
  .ml-l,
  .ml-m,
  .ml-s,
  .ml-xs,
  .ml-xxs,
  .ml-100,
  .ml-90,
  .ml-80,
  .ml-75,
  .ml-70,
  .ml-60,
  .ml-50,
  .ml-40,
  .ml-30,
  .ml-20,
  .ml-10,
  .ml-5,
  .ml-1 {
    margin-left: 0 !important;
  }
  .mr-xxl,
  .mr-xl,
  .mr-l,
  .mr-m,
  .mr-s,
  .mr-xs,
  .mr-xxs,
  .mr-100,
  .mr-90,
  .mr-80,
  .mr-75,
  .mr-70,
  .mr-60,
  .mr-50,
  .mr-40,
  .mr-30,
  .mr-20,
  .mr-10,
  .mr-5,
  .mr-1 {
    margin-right: 0 !important;
  }
  .pl-xxl,
  .pl-xl,
  .pl-l,
  .pl-m,
  .pl-s,
  .pl-xs,
  .pl-xxs,
  .pl-100,
  .pl-90,
  .pl-80,
  .pl-75,
  .pl-70,
  .pl-60,
  .pl-50,
  .pl-40,
  .pl-30,
  .pl-20,
  .pl-10,
  .pl-5,
  .pl-1 {
    padding-left: 0 !important;
  }
  .pr-xxl,
  .pr-xl,
  .pr-l,
  .pr-m,
  .pr-s,
  .pr-xs,
  .pr-xxs,
  .pr-100,
  .pr-90,
  .pr-80,
  .pr-75,
  .pr-70,
  .pr-60,
  .pr-50,
  .pr-40,
  .pr-30,
  .pr-20,
  .pr-10,
  .pr-5,
  .pr-1 {
    padding-right: 0 !important;
  }
  .ml-0-m > .attributes {
    margin-left: 0 !important;
  }
  .mr-0-m > .attributes {
    margin-right: 0 !important;
  }
  .mt-0-m > .attributes {
    margin-top: 0 !important;
  }
  .mb-0-m > .attributes {
    margin-bottom: 0 !important;
  }
}

/* =============================================================================
 * visibility settings
 * ========================================================================== */

/** is desktop or higher **/
@media only screen and (min-width: 1025px) {
  .vis-tablet,
  .vis-mobile,
  .vis-mobile-tablet {
    display: none !important;
  }
}

/** is tablet **/
@media only screen and (min-device-width: 768px) and (max-device-width: 1025px) {
  .vis-desktop,
  .vis-mobile,
  .vis-desktop-mobile {
    display: none !important;
  }
}

/** is mobile **/
@media only screen and (max-width: 767px) {
  .vis-desktop,
  .vis-tablet,
  .vis-desktop-tablet {
    display: none !important;
  }
}

/* =============================================================================
 * font-size
 * ========================================================================== */

.font-size-xxxxxl,
.font-size-xxxxxl p {
  font-size: 6.667rem;
  line-height: 1.5;
}

.font-size-xxxxl,
.font-size-xxxxl p {
  font-size: 5.667rem;
  line-height: 1.5;
}

.font-size-xxxl,
.font-size-xxxl p {
  font-size: 5rem;
  line-height: 1.5;
}

.font-size-xxl,
.font-size-xxl p {
  font-size: 4.333rem;
  line-height: 1.5;
}

.font-size-xl,
.font-size-xl p {
  font-size: 3.667rem;
  line-height: 1.5;
}

.font-size-l,
.font-size-l p {
  font-size: 3rem;
  line-height: 1.5;
}

.font-size-m,
.font-size-m p {
  font-size: 2.333rem;
  line-height: 1.5;
}

.font-size-s,
.font-size-s p {
  font-size: 1.667rem;
  line-height: 1.5;
}

.font-size-xs,
.font-size-xs p {
  font-size: 1.467rem;
  line-height: 1.5;
}

.font-size-xxs,
.font-size-xxs p {
  font-size: 1.2rem;
  line-height: 1.8;
}

.font-size-xxxs,
.font-size-xxxs p {
  font-size: 0.9333rem;
  line-height: 1.5;
}

.font-size-xxxxs,
.font-size-xxxxs p {
  font-size: 0.8rem;
}

.font-size-xxxxxs,
.font-size-xxxxxs p {
  font-size: 0.6667rem;
}

/* =============================================================================
 * border classes
 * ========================================================================== */

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

.bt-dark {
  border-top: 1px solid rgb(229, 229, 229);
}

.bb-dark {
  border-bottom: 1px solid rgb(229, 229, 229);
}

.bt-light {
  border-top: 1px solid rgb(255, 255, 255);
}

.bb-light {
  border-bottom: 1px solid rgb(255, 255, 255);
}

.bt-dark-dashed {
  border-top: 1px dashed rgb(229, 229, 229);
}

.bb-dark-dashed {
  border-bottom: 1px dashed rgb(229, 229, 229);
}

.bt-light-dashed {
  border-top: 1px dashed rgb(255, 255, 255);
}

.bb-light-dashed {
  border-bottom: 1px dashed rgb(255, 255, 255);
}

.bt-dark-dotted {
  border-top: 1px dotted rgb(229, 229, 229);
}

.bb-dark-dotted {
  border-bottom: 1px dotted rgb(229, 229, 229);
}

.bt-light-dotted {
  border-top: 1px dotted rgb(255, 255, 255);
}

.bb-light-dotted {
  border-bottom: 1px dotted rgb(255, 255, 255);
}

/* =============================================================================
 * image border classes
 * ========================================================================== */

.ce_image.border-1 img {
  border: 1px solid rgb(220, 220, 220);
}

.ce_image.border-5 img {
  border: 5px solid rgb(220, 220, 220);
}

.ce_image.border-10 img {
  border: 10px solid rgb(220, 220, 220);
}

/* =============================================================================
 * background color classes
 * ========================================================================== */

.bg-accent {
  background-color: var(--accentColor);
}

.bg-second {
  background-color: var(--secondColor);
}

.bg-lightgray {
  background-color: rgb(247, 247, 247) !important;
}

.bg-darkgray {
  background-color: rgb(69, 69, 69) !important;
}

.bg-black {
  background-color: rgb(0, 0, 0) !important;
}

.bg-gray {
  background-color: rgb(248, 248, 248);
}

.bg-alert {
  background-color: rgb(206, 79, 75);
}

.bg-info {
  background-color: rgb(94, 187, 215);
}

.bg-warning {
  background-color: rgb(240, 173, 78);
}

.bg-success {
  background-color: rgb(82, 172, 82);
}

.bg-transparent-white {
  background-color: rgba(255, 255, 255, 0.7);
}

.bg-transparent-black {
  background-color: rgba(0, 0, 0, 0.7);
}

.bg-white {
  background-color: rgb(255, 255, 255);
}

/* =============================================================================
 * text color classes | important
 * ========================================================================== */

.color-white,
.color-white p,
.color-white i,
.color-white h1,
.color-white h2,
.color-white h3,
.color-white h4,
.color-white h5,
.color-white h6,
.color-white .h1,
.color-white .h2,
.color-white .h3,
.color-white .h4,
.color-white .h5,
.color-white .h6,
.color-white a:not(.link-white) {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}

.color-gray,
.color-gray p,
.color-gray i,
.color-gray h1,
.color-gray h2,
.color-gray h3,
.color-gray h4,
.color-gray h5,
.color-gray h6,
.color-gray .h1,
.color-gray .h2,
.color-gray .h3,
.color-gray .h4,
.color-gray .h5,
.color-gray .h6,
.color-gray a:not(.link-white) {
  color: rgb(127, 127, 127) !important;
}

.color-lightgray,
.color-lightgray p,
.color-lightgray i,
.color-lightgray h1,
.color-lightgray h2,
.color-lightgray h3,
.color-lightgray h4,
.color-lightgray h5,
.color-lightgray h6,
.color-lightgray .h1,
.color-lightgray .h2,
.color-lightgray .h3,
.color-lightgray .h4,
.color-lightgray .h5,
.color-lightgray .h6,
.color-lightgray a:not(.link-white) {
  color: rgb(180, 180, 180) !important;
}

.color-darkgray,
.color-darkgray p,
.color-darkgray i,
.color-darkgray h1,
.color-darkgray h2,
.color-darkgray h3,
.color-darkgray h4,
.color-darkgray h5,
.color-darkgray h6,
.color-darkgray .h1,
.color-darkgray .h2,
.color-darkgray .h3,
.color-darkgray .h4,
.color-darkgray .h5,
.color-darkgray .h6,
.color-darkgray a:not(.link-white) {
  color: rgb(76, 76, 76) !important;
}

.color-white-trnp-50,
.color-white-trnp-50 p,
.color-white-trnp-50 i,
.color-white-trnp-50 h1,
.color-white-trnp-50 h2,
.color-white-trnp-50 h3,
.color-white-trnp-50 h4,
.color-white-trnp-50 h5,
.color-white-trnp-50 h6,
.color-white-trnp-50 .h1,
.color-white-trnp-50 .h2,
.color-white-trnp-50 .h3,
.color-white-trnp-50 .h4,
.color-white-trnp-50 .h5,
.color-white-trnp-50 .h6,
.color-white-trnp-50 a:not(.link-white) {
  color: rgba(255, 255, 255, 0.8) !important;
}

.color-accent,
.color-accent p,
.color-accent i,
.color-accent h1,
.color-accent h2,
.color-accent h3,
.color-accent h4,
.color-accent h5,
.color-accent h6,
.color-accent .h1,
.color-accent .h2,
.color-accent .h3,
.color-accent .h4,
.color-accent .h5,
.color-accent .h6,
.color-accent a:not(.link-white) {
  color: var(--accentColor);
}

.color-second,
.color-second p,
.color-second i,
.color-second h1,
.color-second h2,
.color-second h3,
.color-second h4,
.color-second h5,
.color-second h6,
.color-second .h1,
.color-second.h2,
.color-second .h3,
.color-second .h4,
.color-second .h5,
.color-second .h6,
.color-second a:not(.link-white) {
  color: var(--secondColor);
}

.color-success,
.color-success p,
.color-success i,
.color-success h1,
.color-success h2,
.color-success h3,
.color-success h4,
.color-success h5,
.color-success h6,
.color-success .h1,
.color-success .h2,
.color-success .h3,
.color-success .h4,
.color-success .h5,
.color-success .h6,
.color-success a:not(.link-white) {
  color: rgb(157, 213, 93);
}

.color-alert,
.color-alert p,
.color-alert i,
.color-alert h1,
.color-alert h2,
.color-alert h3,
.color-alert h4,
.color-alert h5,
.color-alert h6,
.color-alert .h1,
.color-alert .h2,
.color-alert .h3,
.color-alert .h4,
.color-alert .h5,
.color-alert .h6,
.color-alert a:not(.link-white) {
  color: rgb(247, 80, 90);
}

.color-warning,
.color-warning p,
.color-warning i,
.color-warning h1,
.color-warning h2,
.color-warning h3,
.color-warning h4,
.color-warning h5,
.color-warning h6,
.color-warning .h1,
.color-warning .h2,
.color-warning .h3,
.color-warning .h4,
.color-warning .h5,
.color-warning .h6,
.color-warning a:not(.link-white) {
  color: rgb(240, 138, 36);
}

.color-info,
.color-info p,
.color-info i,
.color-info h1,
.color-info h2,
.color-info h3,
.color-info h4,
.color-info h5,
.color-info h6,
.color-info .h1,
.color-info .h2,
.color-info .h3,
.color-info .h4,
.color-info .h5,
.color-info .h6,
.color-info a:not(.link-white) {
  color: rgb(160, 211, 232);
}

/* =============================================================================
 * text color classes
 * ========================================================================== */

.txt-color-accent,
.txt-color-accent p,
.txt-color-accent i,
.txt-color-accent a,
.txt-color-accent h1,
.txt-color-accent h2,
.txt-color-accent h3,
.txt-color-accent h4,
.txt-color-accent h5,
.txt-color-accent h6,
.txt-color-accent .h1,
.txt-color-accent .h2,
.txt-color-accent .h3,
.txt-color-accent .h4,
.txt-color-accent .h5,
.txt-color-accent .h6,
.txt-color-accent .h1 p,
.txt-color-accent .h2 p,
.txt-color-accent .h3 p,
.txt-color-accent .h4 p,
.txt-color-accent .h5 p,
.txt-color-accent .h6 p,
.txt-color-accent.h1,
.txt-color-accent.h2,
.txt-color-accent.h3,
.txt-color-accent.h4,
.txt-color-accent.h5,
.txt-color-accent.h6,
.txt-color-accent.h1 p,
.txt-color-accent.h2 p,
.txt-color-accent.h3 p,
.txt-color-accent.h4 p,
.txt-color-accent.h5 p,
.txt-color-accent.h6 p {
  color: var(--accentColor);
}

.txt-color-second,
.txt-color-second p,
.txt-color-second i,
.txt-color-second a,
.txt-color-second h1,
.txt-color-second h2,
.txt-color-second h3,
.txt-color-second h4,
.txt-color-second h5,
.txt-color-second h6,
.txt-color-second .h1,
.txt-color-second .h2,
.txt-color-second .h3,
.txt-color-second .h4,
.txt-color-second .h5,
.txt-color-second .h6,
.txt-color-second .h1 p,
.txt-color-second .h2 p,
.txt-color-second .h3 p,
.txt-color-second .h4 p,
.txt-color-second .h5 p,
.txt-color-second .h6 p,
.txt-color-second.h1,
.txt-color-second.h2,
.txt-color-second.h3,
.txt-color-second.h4,
.txt-color-second.h5,
.txt-color-second.h6,
.txt-color-second.h1 p,
.txt-color-second.h2 p,
.txt-color-second.h3 p,
.txt-color-second.h4 p,
.txt-color-second.h5 p,
.txt-color-second.h6 p {
  color: var(--secondColor);
}

.txt-color-gray,
.txt-color-gray p,
.txt-color-gray i,
.txt-color-gray a,
.txt-color-gray h1,
.txt-color-gray h2,
.txt-color-gray h3,
.txt-color-gray h4,
.txt-color-gray h5,
.txt-color-gray h6,
.txt-color-gray .h1,
.txt-color-gray .h2,
.txt-color-gray .h3,
.txt-color-gray .h4,
.txt-color-gray .h5,
.txt-color-gray .h6,
.txt-color-gray .h1 p,
.txt-color-gray .h2 p,
.txt-color-gray .h3 p,
.txt-color-gray .h4 p,
.txt-color-gray .h5 p,
.txt-color-gray .h6 p,
.txt-color-gray.h1,
.txt-color-gray.h2,
.txt-color-gray.h3,
.txt-color-gray.h4,
.txt-color-gray.h5,
.txt-color-gray.h6,
.txt-color-gray.h1 p,
.txt-color-gray.h2 p,
.txt-color-gray.h3 p,
.txt-color-gray.h4 p,
.txt-color-gray.h5 p,
.txt-color-gray.h6 p {
  color: rgb(127, 127, 127);
}

.txt-color-white,
.txt-color-white p,
.txt-color-white i,
.txt-color-white a,
.txt-color-white h1,
.txt-color-white h2,
.txt-color-white h3,
.txt-color-white h4,
.txt-color-white h5,
.txt-color-white h6,
.txt-color-white .h1,
.txt-color-white .h2,
.txt-color-white .h3,
.txt-color-white .h4,
.txt-color-white .h5,
.txt-color-white .h6,
.txt-color-white .h1 p,
.txt-color-white .h2 p,
.txt-color-white .h3 p,
.txt-color-white .h4 p,
.txt-color-white .h5 p,
.txt-color-white .h6 p,
.txt-color-white.h1,
.txt-color-white.h2,
.txt-color-white.h3,
.txt-color-white.h4,
.txt-color-white.h5,
.txt-color-white.h6,
.txt-color-white.h1 p,
.txt-color-white.h2 p,
.txt-color-white.h3 p,
.txt-color-white.h4 p,
.txt-color-white.h5 p,
.txt-color-white.h6 p {
  color: rgb(255, 255, 255);
}

/* =============================================================================
 * align helper classes
 * ========================================================================== */

.align-center,
.align-center * {
  text-align: center !important;
}

.align-right,
.align-right * {
  text-align: right !important;
}

.align-left,
.align-left * {
  text-align: left !important;
}

.align-centered {
  margin-left: auto;
  margin-right: auto;
}

.align-centered.autogrid {
  float: none;
}

.h-align-left {
  text-align: left;
}

.h-align-center {
  text-align: center;
}

.h-align-right {
  text-align: right;
}

/* =============================================================================
 * device visibility classes
 * ========================================================================== */

.hidden {
  display: none;
}

.only_mobile,
.only-mobile {
  display: none !important;
}

@media only screen and (min-width: 768px) {
  .hide_desktop,
  .hide-desktop {
    display: none !important;
  }
}

/* =============================================================================
 * device visibility classes themesettings extension
 * ========================================================================== */

body.viewport_tablet .vis-desktop,
body.viewport_mobile .vis-desktop {
  display: none !important;
}

body.viewport_desktop .vis-mobile,
body.viewport_tablet .vis-mobile {
  display: none !important;
}

body.viewport_desktop .vis-tablet,
body.viewport_mobile .vis-tablet {
  display: none !important;
}

body.viewport_tablet .vis-desktop-mobile {
  display: none !important;
}

body.viewport_mobile .vis-desktop-tablet {
  display: none !important;
}

body.viewport_desktop .vis-mobile-tablet {
  display: none !important;
}

/* =============================================================================
 * labels
 * ========================================================================== */

[class*="label-"] {
  font-weight: bold;
  color: #fff;
  border-radius: 3px;
  font-size: 12px;
  padding: 0px 10px;
  display: inline-block;
}

.label-accent {
  background: var(--accentColor);
}

.label-secondary {
  background: rgb(231, 231, 231);
  color: rgb(51, 51, 51);
}

.label-success {
  background: rgb(157, 213, 93);
}

.label-alert {
  background: rgb(247, 80, 90);
}

.label-warning {
  background: rgb(240, 138, 36);
}

.label-info {
  background: rgb(160, 211, 232);
  color: rgb(51, 51, 51);
}

/* =============================================================================
 * letter spacing
 * ========================================================================== */

.letter-spacing-xxl {
  letter-spacing: 10px;
}

.letter-spacing-xl {
  letter-spacing: 5px;
}

.letter-spacing-l {
  letter-spacing: 3px;
}

.letter-spacing-m {
  letter-spacing: 2px;
}

.letter-spacing-s {
  letter-spacing: 1px;
}

/* =============================================================================
 * utility classes text
 * ========================================================================== */

.line-through {
  text-decoration: line-through;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.medium-width {
  max-width: 600px;
}

.medium-small {
  max-width: 400px;
}

.medium-width-center {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.small-width-center {
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

span.highlight {
  background: rgb(51, 51, 51);
  color: #fff;
  padding-left: 3px;
  padding-right: 3px;
}

span.serif {
  font-family: Georgia, Times, serif;
}

span.no-serif {
  font-family: Arial, Verdana, sans-serif;
}

.no-underline,
.no-underline a {
  text-decoration: none;
}

.stroke-accent {
  stroke: var(--accentColor);
}

.stroke-second {
  stroke: var(--secondColor);
}

.fill-accent {
  fill: var(--accentColor);
}

.fill-second {
  fill: var(--secondColor);
}

span.color-accent {
  color: var(--accentColor);
}

/* =============================================================================
 * sup
 * ========================================================================== */

sup {
  font-family: Verdana, Arial, sans-serif;
  font-size: 0.5em;
}

/* =============================================================================
 * misc utility classes
 * ========================================================================== */

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.inline-block {
  display: inline-block;
}

.hide {
  display: none;
}

.overflow-hidden,
.overflow_hidden {
  overflow: hidden !important;
}

.overflow-visible,
.overflow_visible {
  overflow: visible;
}

.fullwith-image img,
.fullwidth-image img {
  width: 100% !important;
}

.z_index1 {
  z-index: 1 !important;
}

.z_index5 {
  z-index: 5 !important;
}

.z_index10 {
  z-index: 10 !important;
}

.z_index20 {
  z-index: 20 !important;
}

.z_index30 {
  z-index: 30 !important;
}

.z_index40 {
  z-index: 40 !important;
}

.z_index50 {
  z-index: 50 !important;
}

.z_index60 {
  z-index: 60 !important;
}

.z_index70 {
  z-index: 70 !important;
}

.z_index80 {
  z-index: 80 !important;
}

.z_index90 {
  z-index: 90 !important;
}

.z_index100 {
  z-index: 100 !important;
}

body.hide-breadcrumb #breadcrumb {
  display: none;
}

/* =============================================================================
 * border-radius
 * ========================================================================== */

.border-radius-3 {
  border-radius: 3px;
}

.border-radius-5 {
  border-radius: 5px;
}

.border-radius-10 {
  border-radius: 10px;
}

.border-radius-50 {
  border-radius: 50px;
}

.border-radius-100 {
  border-radius: 100%;
}

/* =============================================================================
 * text-shadow
 * ========================================================================== */

.text-shadow-10 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.text-shadow-20 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.text-shadow-30 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.text-shadow-40 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}

.text-shadow-50 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.text-shadow-60 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6);
}

.text-shadow-70 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
}

.text-shadow-80 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}

.text-shadow-90 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.9);
}

.text-shadow-100 {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 1);
}

/* =============================================================================
 * shadow
 * ========================================================================== */

.shadow_style1 {
  box-shadow: 0px 22px 14px -7px rgba(0, 0, 0, 0.04);
}

.shadow_style2 {
  box-shadow: 9px 9px 42px #f0f0f0, -9px -9px 42px #ffffff;
  border-radius: 35px;
}

/* =============================================================================
 * body
 * ========================================================================== */

body {
  overflow-x: hidden;
  background-repeat: repeat;
}

/* =============================================================================
 * link colors
 * ========================================================================== */

a {
  text-decoration: none;
}

p a {
  color: var(--accentColor);
}

/* =============================================================================
 * sidebar
 * ========================================================================== */

body.sidebar #container {
  display: flex;
}

body.sidebar .inside .container {
  padding-left: 0;
  padding-right: 0;
}

body.sidebar #main {
  flex: 50%;
  overflow: visible;
}

body.sidebar #left {
  flex: 25%;
  position: relative;
  overflow: visible;
}

body.sidebar #right {
  flex: 25%;
  position: relative;
  overflow: visible;
}

/* =============================================================================
 * sidebar left
 * ========================================================================== */

body.sidebar.left #main {
  flex: 75%;
  border-left: 1px solid rgb(229, 229, 229);
  order: 2;
}

body.sidebar.left #left {
  flex: 25%;
  order: 1;
}

body.sidebar.left #main > .inside {
  padding-left: 40px;
}

body.sidebar.left #left > .inside {
  margin-right: 40px;
}

/* =============================================================================
 * sidebar right
 * ========================================================================== */

body.sidebar.right #main {
  flex: 0 0 75%;
  border-right: 1px solid rgb(229, 229, 229);
  order: 1;
}

body.sidebar.right #right {
  flex: 0 0 25%;
  order: 2;
}

body.sidebar.right #main > .inside {
  padding-right: 40px;
}

body.sidebar.right #right > .inside {
  margin-left: 40px;
}

/* =============================================================================
 * sidebar both
 * ========================================================================== */

body.sidebar.both #main {
  flex: 0 0 60%;
  border-left: 1px solid rgb(229, 229, 229);
  border-right: 1px solid rgb(229, 229, 229);
  order: 2;
}

body.sidebar.both #right {
  flex: 0 0 20%;
  order: 3;
}

body.sidebar.both #left {
  flex: 0 0 20%;
  order: 1;
}

body.sidebar.both #main > .inside {
  padding-right: 40px;
  padding-left: 40px;
}

body.sidebar.both #left > .inside {
  margin-right: 40px;
}

body.sidebar.both #right > .inside {
  margin-left: 40px;
}

/* =============================================================================
 * mainmenu
 * ========================================================================== */
.mainmenu ul ul {
  width: auto;
  display: none;
  white-space: nowrap;
  border-radius: 0;
  padding: 10px;
  position: absolute;
  top: 100%;
  margin-left: 0;
  background: #fff;
  box-shadow: 1px 8px 15px rgba(0, 0, 0, 0.1);
}

.mainmenu ul ul ul {
  border-top: 0;
  margin-top: 0;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
}

.mainmenu ul li:hover > ul {
  display: block;
}
.mainmenu ul ul li.open-left ul {
  left: auto;
  right: 100% !important;
}

.mainmenu ul ul li.last ul {
  right: inherit;
}

.mainmenu ul ul li {
  float: none;
  position: relative;
  min-height: 0;
  display: block;
}

.mainmenu ul ul li a.submenu:after {
  font-family: "FontAwesome";
  content: "\f105";
  position: absolute;
  right: 8px;
  background: none !important;
}

.mainmenu ul ul ul {
  position: absolute;
  left: 100%;
  top: 0;
}
/*

.mainmenu ul:after {
  content: "";
  clear: both;
  display: block;
}

.mainmenu ul li {
  position: relative;
}

.mainmenu ul li:last-of-type a {
  padding-right: 0;
}


.mainmenu ul li a {
  display: block;
  text-decoration: none;
  position: relative;
  min-height: inherit;
  text-align: center;
  font-size: 1rem;
  float: none;
  padding: 0 15px;
  line-height: inherit;
}

.mainmenu ul li a i {
  margin-right: 5px;
  display: none;
}

.mainmenu ul li a i {
  display: inline-block;
  width: 20px;
}



.header .mainmenu ul.level_1 li span.ribbon {
  position: absolute;
  line-height: 18px;
  font-size: 0.7rem;
  font-weight: bold;
  margin-left: 5px;
  color: #fff;
  border-radius: 2px;
  top: -4px;
  padding-left: 3px;
  padding-right: 3px;
  transform: translateX(-5px);
  background: var(--accentColor);
}

.header .mainmenu ul.level_2 li span.ribbon {
  position: relative;
  top: -4px;
  transform: translateX(0);
}

.header .mainmenu ul.level_1 li span.ribbon:before {
  display: none;
}

.header.original .mainmenu ul li a.trail,
.header.original .mainmenu ul li a.active,
.header.cloned .mainmenu ul li a.trail,
.header.cloned .mainmenu ul li a.active,
.mod_pct_megamenu .mod_navigation a.active {
  color: var(--accentColor);
}
*/

/* =============================================================================
 * mainmenu click_open
 * ========================================================================== */

.mainmenu ul li.click_open ul {
  display: none;
  animation: none;
}

.mainmenu ul li.click_open ul.active {
  display: block;
}

/* =============================================================================
 * hide error pages from menu
 * ========================================================================== */

.mod_navigation .error_401,
.mod_navigation .error_403,
.mod_navigation .error_404 {
  display: none;
}

/* =============================================================================
 * mod_pct_megamenu
 * ========================================================================== */

.mod_pct_megamenu {
  position: absolute;
  top: 100px;
  left: 0;
  right: 0;
  z-index: 10000;
  background: rgb(255, 255, 255);
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  overflow: visible;
}

body.fixed-header .mod_pct_megamenu {
  position: fixed;
}

.mod_pct_megamenu.active {
  display: block;
}

.mod_pct_megamenu:not(active) {
  display: none;
}

.mod_pct_megamenu .item {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  display: none;
}

.mod_pct_megamenu .item.active {
  box-shadow: 0 0 15px 10px rgba(0, 0, 0, 0.03);
  display: block;
}

nav.mainmenu .pct_megamenu ul {
  display: none !important;
}

/* =============================================================================
 * mod_pct_megamenu mod_navigation
 * ========================================================================== */

.mod_pct_megamenu .mod_navigation a {
  position: relative;
  font-size: 0.9rem;
}

.mod_pct_megamenu .mod_navigation a:before {
  position: absolute;
  content: "";
  height: 1px;
  background: rgb(0, 0, 0);
  bottom: 0;
  width: 100%;
  left: 0;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}

.mod_pct_megamenu .mod_navigation a:hover:before,
.mod_pct_megamenu .mod_navigation a.active:before {
  transform: scaleX(1);
}

.mod_pct_megamenu .mod_navigation a.active:before {
  background-color: var(--accentColor);
}

.mod_pct_megamenu .mod_navigation a.hasIcon i {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  text-align: center;
}

.mod_pct_megamenu .mod_navigation a.hasIcon {
  padding-left: 25px;
}

/* =============================================================================
 * mainmenu menuheader
 * ========================================================================== */

nav.mainmenu a.menuheader {
  font-weight: bold;
  font-size: 1.1rem;
}

/* =============================================================================
 * submenu sidebar
 * ========================================================================== */

.subnav {
  margin-top: 40px;
}

.subnav a {
  display: block;
  padding: 10px 10px 10px 40px;
  margin-bottom: 4px;
  color: var(--accentColor);
  border-radius: 3px;
  -webkit-transition: All 0.1s ease;
  transition: All 0.1s ease;
}

.subnav i {
  margin-right: 10px;
  display: none;
}

.subnav a.menuheader {
  background: none !important;
  border-bottom: 1px solid rgb(229, 229, 229);
  border-radius: 0;
}

.subnav i {
  display: inline-block;
  width: 20px;
  margin-left: -30px;
}

.subnav li ul li {
  border: 0;
}

.subnav ul ul li {
  padding: 0;
}

.subnav a:hover,
.subnav a.active {
  background: rgb(248, 248, 248);
}

.subnav ul li.active > ul,
.subnav ul li.trail > ul {
  display: block;
}

.subnav ul ul a {
  padding-left: 60px;
}

.subnav ul ul {
  display: none;
}

.subnav ul ul ul {
  display: none;
}

.subnav ul ul ul ul {
  display: none;
}

/* =============================================================================
 * mmenu-trigger
 * ========================================================================== */

.mmenu_trigger {
  display: none;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  align-items: center;
  color: var(--accentColor);
}

.mmenu_trigger .label {
  margin-right: 8px;
  cursor: pointer;
}

.mmenu_trigger .burger {
  height: 21px;
  width: 21px;
  position: relative;
  font-size: 7px;
  cursor: pointer;
  transition: 0.2s all;
}

.mmenu_trigger .burger .burger_lines:after {
  left: 0;
  top: -15px;
}

.mmenu_trigger .burger .burger_lines:before {
  left: 1em;
  top: 15px;
}

.mmenu_trigger .burger:after {
  content: "";
  display: block;
  position: absolute;
  height: 150%;
  width: 150%;
  top: -25%;
  left: -25%;
}

.mmenu_trigger .burger .burger_lines {
  top: 50%;
  margin-top: -1px;
}

.mmenu_trigger .burger .burger_lines,
.mmenu_trigger .burger .burger_lines:after,
.mmenu_trigger .burger .burger_lines:before {
  pointer-events: none;
  display: block;
  content: "";
  width: 100%;
  border-radius: 10px;
  background: var(--accentColor);
  height: 2px;
  position: absolute;
  transform: rotate(0);
}

.mmenu_trigger .burger .burger_lines:after {
  left: 0;
  top: -7px;
}

.mmenu_trigger .burger .burger_lines:before {
  left: 0;
  top: 7px;
}

.mmenu_trigger .burger.style2 .burger_lines:before,
.mmenu_trigger .burger.style2 .burger_lines:after {
  width: 2em;
}

/* open transform */
.mmenu_trigger .burger.transform .burger_lines,
.mmenu_trigger .burger.transform .burger_lines:after,
.mmenu_trigger .burger.transform .burger_lines:before {
  transition: 0.2s top 0.2s, 0.1s left, 0.2s transform,
    0.4s background-color 0.2s;
}

.mmenu_trigger .burger.transform.open .burger_lines,
.mmenu_trigger .burger.transform.open .burger_lines:after,
.mmenu_trigger .burger.transform.open .burger_lines:before {
  transition: 0.2s background-color, 0.2s top, 0.2s left, 0.2s transform 0.15s;
}

.mmenu_trigger .burger.transform.open .burger_lines {
  background-color: transparent;
}

.mmenu_trigger .burger.transform.open .burger_lines:before,
.mmenu_trigger .burger.transform.open .burger_lines:after {
  left: 0;
  top: 0px;
}

.mmenu_trigger .burger.transform.open .burger_lines:before {
  transform: rotate(-45deg);
}

.mmenu_trigger .burger.transform.open .burger_lines:after {
  transform: rotate(45deg);
}

/* open rotate */
.mmenu_trigger .burger.rotate .burger_lines,
.mmenu_trigger .burger.rotate .burger_lines:after,
.mmenu_trigger .burger.rotate .burger_lines:before {
  transition: all 0.2s;
}

.mmenu_trigger .burger.rotate.open {
  transform: rotate(180deg);
}

.mmenu_trigger .burger.rotate.open .burger_lines {
  background-color: transparent;
}

.mmenu_trigger .burger.rotate.open .burger_lines:before,
.mmenu_trigger .burger.rotate.open .burger_lines:after {
  left: 0;
  top: 0px;
}

.mmenu_trigger .burger.rotate.open .burger_lines:before {
  transform: rotate(135deg);
}

.mmenu_trigger .burger.rotate.open .burger_lines:after {
  transform: rotate(-135deg);
}

/* =============================================================================
 * mmenu
 * ========================================================================== */

@media only screen and (min-width: 768px) {
  #mmenu {
    display: none;
  }
}

#mmenu {
  left: 0px;
  right: 0px;
  height: calc(100% - 70px);
  position: fixed;
  top: 70px;
  z-index: 1000;
  min-width: 80%;
  transform: translateY(calc(-100% - 55px));
  transition: transform 0.3s ease;
  -webkit-transition: transform 0.3s ease;
  background: rgb(255, 255, 255);
}

body.mmenu_open #mmenu {
  transform: translate(0) !important;
}

#mmenu .scrollable {
  height: calc(100% - 50px);
  overflow-y: auto;
}

#mmenu #mmenu_top {
  padding: 20px;
  background: rgb(255, 255, 255);
  overflow: visible;
  position: relative;
}

#mmenu #mmenu_middle {
  padding: 0 20px 20px 20px;
  background: rgb(255, 255, 255);
}

#mmenu #mmenu_bottom {
  background: rgb(255, 255, 255);
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  padding: 5px 20px 10px 20px;
}

/* arrow */
#mmenu .mod_navigation li.submenu {
  position: relative;
}

#mmenu .mod_navigation li.submenu .opener {
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  height: 34px;
  z-index: 10;
}

#mmenu .mod_navigation li.submenu a {
  z-index: 5;
}

#mmenu .mod_navigation li a.submenu:after {
  content: "\f107";
  font-family: FontAwesome;
  position: absolute;
  right: 10px;
  top: 3px;
  margin-left: 15px;
  transition-duration: 0.3s;
  transition-property: transform;
}

#mmenu .mod_navigation.mobile_vertical li a.submenu.open:after {
  transform: rotate(180deg);
}

#mmenu .mod_navigation.mobile_horizontal li a.submenu.open:after {
  transform: rotate(180deg);
}

#mmenu .mod_navigation.mobile_horizontal li a.submenu:after {
  transform: rotate(-90deg);
}

#mmenu .mod_navigation.mobile_horizontal li a.submenu.open:after {
  transform: rotate(90deg);
  float: left;
  margin-left: 0;
}

#mmenu .mod_navigation.mobile_horizontal li a.submenu.open {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 10px;
  margin-bottom: 10px;
}

#mmenu .mod_navigation.mobile_horizontal .level_2 li a.submenu.open {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

#mmenu .mod_navigation.mobile_horizontal .level_2 li a.submenu.open:after {
  transform: rotate(90deg);
}

#mmenu li i {
  margin-right: 10px;
}

/* socials */

#mmenu .mod_socials {
  margin-right: 20px;
}

#mmenu .mod_socials a i {
  line-height: 17px;
  padding: 5px;
  margin-right: 1px;
  background: rgba(0, 0, 0, 0.05);
  font-size: 17px;
  display: inline-block;
  height: 27px;
  width: 27px;
  text-align: center;
  margin-bottom: 1px;
  border-radius: 100%;
}

/* langswitch */

#mmenu .mod_langswitcher {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
  margin: 0;
  text-align: right;
}

#mmenu .mod_langswitcher .mod_langswitcher_inside:before {
  border-color: rgb(51, 51, 51);
}

/* search */

#mmenu .mod_search {
  width: 75%;
}

#mmenu .mod_search input {
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.2);
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iRWJlbmVfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIzMy43MDZweCIgaGVpZ2h0PSIzMy43MDZweCIgdmlld0JveD0iMCAwIDMzLjcwNiAzMy43MDYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDMzLjcwNiAzMy43MDYiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxnIG9wYWNpdHk9IjAuOCI+PHBhdGggZmlsbD0iIzkzOTM5MyIgZD0iTTE3Ljc1NSwwLjk0NUMxNi4yMDksMC4zMTgsMTQuNTc2LDAsMTIuOSwwYy0xLjY3NSwwLTMuMzA4LDAuMzE4LTQuODU0LDAuOTQ1QzYuNDQ1LDEuNTk0LDUuMDEsMi41NDcsMy43NzgsMy43NzhDMi41NDcsNS4wMSwxLjU5NCw2LjQ0NSwwLjk0NCw4LjA0N0MwLjMxOCw5LjU5MywwLDExLjIyNiwwLDEyLjljMCwxLjY3NiwwLjMxOCwzLjMwOSwwLjk0NCw0Ljg1NGMwLjY0OSwxLjYwMSwxLjYwMywzLjAzNywyLjgzNCw0LjI2OWMxLjIzMSwxLjIzLDIuNjY3LDIuMTg2LDQuMjY5LDIuODM0YzEuNTQ2LDAuNjI3LDMuMTc5LDAuOTQ0LDQuODU0LDAuOTQ0YzEuNjc2LDAsMy4zMDktMC4zMTcsNC44NTQtMC45NDRjMS42MDItMC42NDgsMy4wMzctMS42MDQsNC4yNy0yLjgzNGMxLjIyOS0xLjIzLDIuMTg1LTIuNjY4LDIuODM0LTQuMjY5YzAuNjI1LTEuNTQ2LDAuOTQzLTMuMTc5LDAuOTQzLTQuODU0YzAtMS42NzUtMC4zMTgtMy4zMDgtMC45NDMtNC44NTRjLTAuNjQ5LTEuNjAyLTEuNjA0LTMuMDM3LTIuODM0LTQuMjY5QzIwLjc5MiwyLjU0NywxOS4zNTQsMS41OTQsMTcuNzU1LDAuOTQ1eiBNMjAuNjU4LDIwLjY1OGMtNC4yNzcsNC4yNzYtMTEuMjM3LDQuMjc2LTE1LjUxNSwwYy00LjI3OC00LjI3Ny00LjI3Ny0xMS4yMzcsMC0xNS41MTVzMTEuMjM3LTQuMjc3LDE1LjUxNSwwUzI0LjkzNywxNi4zODEsMjAuNjU4LDIwLjY1OHoiLz48cmVjdCB4PSIyNi45NTIiIHk9IjIwLjY5NyIgdHJhbnNmb3JtPSJtYXRyaXgoMC43MDcxIC0wLjcwNzEgMC43MDcxIDAuNzA3MSAtMTEuNTYzOCAyNy45MTc1KSIgZmlsbD0iIzkzOTM5MyIgd2lkdGg9IjEuOTMxIiBoZWlnaHQ9IjE0LjQ0MiIvPjwvZz48L3N2Zz4=);
  background-repeat: no-repeat;
  background-position: 93% center;
  background-size: 20px;
  padding: 5px 50px 5px 20px;
  height: 36px !important;
  margin-bottom: 0;
}

#mmenu .mod_search .widget {
  width: 100% !important;
  margin-bottom: 0;
  height: auto !important;
}

#mmenu .mod_search .submit {
  display: none;
}

#mmenu .mod_search .label,
#mmenu .mod_search .close-window {
  display: none;
}

/* mmenu mod_navigation */

#mmenu .mod_navigation li a {
  display: block;
  padding: 4px 40px 4px 0;
}

#mmenu .mod_navigation li a.open,
#mmenu .mod_navigation li a.active,
#mmenu .mod_navigation li a:focus {
  font-weight: bold;
}

/* mobile_horizontal */

#mmenu nav.mobile_horizontal {
  display: none;
}

#mmenu nav.mobile_horizontal li.hidden {
  display: none !important;
}

#mmenu nav.mobile_horizontal ul ul li {
  display: none;
}

#mmenu nav.mobile_horizontal li.open > ul > li {
  display: block;
}

#mmenu nav.mobile_horizontal li.open > a {
  font-weight: bold;
}

/* mobile_vertical */

#mmenu nav.mobile_vertical ul > li > ul {
  display: none;
}

#mmenu nav.mobile_vertical ul > li.open > ul {
  display: block;
}

#mmenu nav.mobile_vertical ul ul {
  padding-left: 15px;
}

/* .mod_mmenu_custom_nav */

#mmenu .mod_mmenu_custom_nav a {
  display: inline-block;
  margin-right: 8px;
}

/* mmenu_overlay */

.mmenu_overlay {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  display: none;
}

/* mmenu onepagenav */

@media only screen and (max-width: 767px) {
  .onepage_page .header .mod_navigation.onepagenav {
    display: none !important;
  }
}

/* =============================================================================
 * back hyperlink
 * ========================================================================== */

.back a:before {
  font-family: "FontAwesome";
  content: "\f100";
  margin-right: 5px;
}

/* =============================================================================
 * code + abbr
 * ========================================================================== */

code,
pre,
.txt-white pre {
  font-family: monospace;
  background: #ffffe0;
  color: rgb(76, 76, 76) !important;
  display: inline-block;
  padding: 10px;
  margin-bottom: 10px;
}

abbr {
  background: #efefef;
  border-bottom: 1px dashed;
  cursor: pointer;
}

/* =============================================================================
 * pagination
 * ========================================================================== */

.pagination {
  clear: both;
}

.pagination ul {
  padding: 0;
  float: left;
}

.pagination p {
  float: right;
}

.pagination li {
  background: none;
  padding: 0;
  margin: 0;
  float: left;
  list-style-type: none;
}

.pagination li:before,
.pagination li a:before {
  content: "";
}

.pagination li a,
.pagination li span {
  background: none;
  display: block;
  margin-right: 1px;
  color: inherit;
  text-decoration: none;
  padding: 3px 10px;
}

.pagination li span.current {
  background: var(--accentColor);
  color: white;
  border-radius: 2px;
}

.pagination li a:hover {
  color: var(--accentColor);
}

.pagination-white .pagination,
.pagination-white .pagination a {
  color: rgb(255, 255, 255);
}

/* =============================================================================
 * image_container
 * ========================================================================== */

.image_container {
  position: relative;
  padding: 0;
  line-height: 0;
}

.image_container a {
  line-height: 0;
}

.image_container .caption {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  padding: 8px 12px;
  font-size: 0.8667rem;
  border-radius: 3px;
  line-height: 1.3;
  display: inline-block;
  margin-top: 5px;
}

.image_container .caption h1,
.image_container .caption h2,
.image_container .caption h3,
.image_container .caption h4,
.image_container .caption h5,
.image_container .caption h6 {
  color: rgb(255, 255, 255);
  margin: 0;
}

.image_container.float_right,
.image_container.float_left {
  float: right;
  width: 45%;
  padding: 0;
  margin-bottom: 3%;
}

.image_container.float_right {
  margin-left: 5%;
}

.image_container.float_left {
  margin-right: 5%;
  float: left;
}

.image_container img {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.no-responsive .image_container img,
.no-responsive.image_container img {
  width: auto;
  max-width: none;
  display: inline-block;
}

.no-responsive .image_container.float_right,
.no-responsive .image_container.float_left {
  width: auto;
  margin: 0;
}

.border .image_container img {
  border: 1px solid rgb(229, 229, 229);
}

/* =============================================================================
 * ce_image
 * ========================================================================== */

.ce_image .image_container img {
  width: auto;
}

.ce_image.h-align-center img,
.ce_image.h-align-right img {
  display: inline-block;
}

.ce_image.border-gray-1px img {
  border: 1px solid rgb(220, 220, 220);
}

.ce_image.border-gray-5px img {
  border: 5px solid rgb(220, 220, 220);
}

.ce_image.border-gray-10px img {
  border: 10px solid rgb(220, 220, 220);
}

.ce_image.border-white-1px img {
  border: 1px solid rgb(255, 255, 255);
}

.ce_image.border-white-5px img {
  border: 5px solid rgb(255, 255, 255);
}

.ce_image.border-white-10px img {
  border: 10px solid rgb(255, 255, 255);
}

.ce_image.style-rounded img {
  border-radius: 100%;
}

.ce_image.img-border-style-2 img {
  border-radius: 65px 0 65px 0;
}

/* =============================================================================
 * blockquote
 * ========================================================================== */

blockquote {
  border-left: 5px solid var(--accentColor);
  padding-left: 25px;
}

blockquote p {
  font-family: Georgia, Times, serif;
  font-style: italic;
  text-align: justify;
  font-size: 1.1rem;
}

blockquote p:before {
  content: '"';
  text-indent: 0;
  display: inline-block;
  font-weight: bold;
  width: 20px;
  font-size: 2rem;
  line-height: 1.1rem;
}

blockquote em {
  font-size: 0.6em;
  font-style: normal;
  line-height: 1;
  font-weight: bold;
}

blockquote a {
  color: var(--accentColor);
}

/* =============================================================================
 * social colors
 * ========================================================================== */

.mod_socials i {
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

.mod_socials.color i.fa-facebook,
.mod_socials .social-FontAwesome.color i.fa-facebook,
.mod_socials i.fa-facebook:hover {
  background: rgb(67, 96, 152) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-twitter,
.mod_socials .social-FontAwesome.color i.fa-twitter,
.mod_socials i.fa-twitter:hover {
  background: #111418 !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-xing,
.mod_socials .social-FontAwesome.color i.fa-xing,
.mod_socials i.fa-xing:hover {
  background: rgb(0, 93, 94) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-tumblr,
.mod_socials .social-FontAwesome.color i.fa-tumblr,
.mod_socials i.fa-tumblr:hover {
  background: rgb(45, 73, 102) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-google-plus,
.mod_socials .social-FontAwesome.color i.fa-google-plus,
.mod_socials i.fa-google-plus:hover {
  background: rgb(217, 82, 50) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-flickr,
.mod_socials .social-FontAwesome.color i.fa-flickr,
.mod_socials i.fa-flickr:hover {
  background: rgb(250, 29, 132) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-linkedin,
.mod_socials .social-FontAwesome.color i.fa-linkedin,
.mod_socials i.fa-linkedin:hover {
  background: rgb(2, 116, 179) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-instagram,
.mod_socials .social-FontAwesome.color i.fa-instagram,
.mod_socials i.fa-instagram:hover {
  background: rgb(167, 124, 98) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-pinterest,
.mod_socials .social-FontAwesome.color i.fa-pinterest,
.mod_socials i.fa-pinterest:hover {
  background: rgb(205, 33, 40) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-vimeo-square,
.mod_socials .social-FontAwesome.color i.fa-vimeo-square,
.mod_socials i.fa-vimeo-square:hover {
  background: rgb(52, 192, 238) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i.fa-youtube,
.mod_socials .social-FontAwesome.color i.fa-youtube,
.mod_socials i.fa-youtube:hover {
  background: rgb(220, 33, 48) !important;
  color: rgb(255, 2552, 255) !important;
}

.mod_socials.color i:hover,
.mod_socials .social-FontAwesome.color i:hover {
  opacity: 0.7 !important;
}

/* =============================================================================
 * ce_table
 * ========================================================================== */

.ce_table {
  position: relative;
  overflow: visible;
}

.ce_table table {
  margin-bottom: 10px;
  width: 99.9%;
  text-align: center;
  position: relative;
}

.ce_table table td {
  border-top: solid 1px #e3e3e3;
  padding: 12px;
  text-align: left;
}

.ce_table table td p {
  margin: 0;
}

.ce_table table th {
  text-align: left;
  padding: 12px;
  color: rgb(255, 255, 255);
  font-weight: bold;
  background: var(--accentColor);
}

.ce_table table tfoot td {
  color: rgb(152, 152, 152);
  font-weight: bold;
}

.ce_table .table-striped td,
.ce_table.table-striped td {
  border: 0;
  background: rgba(200, 200, 200, 0.2);
}

.ce_table .table-striped tr:nth-child(2n) td,
.ce_table.table-striped tr:nth-child(2n) td {
  background: rgba(200, 200, 200, 0.3);
}

.ce_table .table-striped-dark td,
.ce_table.table-striped-dark td {
  border: 0;
  background: rgb(51, 51, 51);
}

.ce_table .table-striped-dark tr:nth-child(2n) td,
.ce_table.table-striped-dark tr:nth-child(2n) td {
  background: rgb(64, 64, 64);
}

.ce_table .table-striped-dark,
.ce_table.table-striped-dark {
  color: rgb(255, 255, 255);
}

.ce_table.overflow {
  overflow-x: auto;
}

body.ie .ce_table.overflow {
  box-shadow: none;
}

.ce_table .table-clean td,
.ce_table.table-clean td {
  padding: 25px;
  font-size: 0.9rem;
  vertical-align: top;
}

.ce_table .table-clean td.col_first,
.ce_table .table-clean th.col_first,
.ce_table.table-clean td.col_first,
.ce_table.table-clean th.col_first {
  padding-left: 0;
}

.ce_table .table-clean th,
.ce_table.table-clean th {
  background: none;
  color: inherit;
  border-bottom: 1px solid rgb(190, 190, 190);
  padding: 25px;
}

.ce_table table a {
  text-decoration: underline;
}

.ce_table.strict-responsive table {
  white-space: normal;
}

/* =============================================================================
 * dividers
 * ========================================================================== */

hr.divider_1 {
  padding: 0;
  border: none;
  border-top: 1px solid #ddd;
  color: #ccc;
  text-align: center;
  height: 1px;
  margin: 25px 0;
  clear: both;
  width: 100%;
  float: left;
}

hr.divider_2 {
  padding: 0;
  border: none;
  border-top: 3px double #ddd;
  color: #ccc;
  text-align: center;
  height: 1px;
  margin: 25px 0;
  clear: both;
  width: 100%;
  float: left;
}

hr.divider_3 {
  padding: 0;
  border: none;
  border-top: 1px solid #ddd;
  color: #ccc;
  text-align: center;
  height: 1px;
  margin: 25px 0;
  position: relative;
  clear: both;
  width: 100%;
  float: left;
}

hr.divider_3:before {
  width: 20%;
  height: 1px;
  bottom: 0;
  left: 50%;
  position: absolute;
  display: block;
  content: "";
  background: var(--accentColor);
  margin-left: -10%;
}

.divider_4 {
  display: block;
  text-align: center;
  clear: both;
}

.divider_4_first {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 3px;
  border: 3px solid rgb(152, 152, 152);
  -moz-border-radius: 7px;
  -webkit-border-radius: 7px;
  border-radius: 7px;
}

.divider_4_second {
  width: 4px;
  height: 4px;
  margin-top: 2px;
  margin-left: 2px;
  background-color: var(--accentColor);
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}

.divider_4::after,
.divider_4::before {
  background-color: var(--accentColor);
  display: inline-block !important;
  vertical-align: middle;
  content: "";
  width: 70px;
  height: 1px;
  margin-top: -6px;
}

.divider_5 {
  display: block;
  text-align: center;
  clear: both;
}

.divider_5 i {
  font-size: 1.333rem;
  padding-left: 10px;
  padding-right: 10px;
  color: var(--accentColor);
}

.divider_5:after,
.divider_5:before {
  background-color: rgb(152, 152, 152);
  display: inline-block !important;
  vertical-align: middle;
  content: "";
  width: 30%;
  height: 1px;
  margin-top: -6px;
}

/* =============================================================================
 * comment_default
 * ========================================================================== */

.comment_default {
  padding-bottom: 5px;
  border-bottom: 1px solid #ddd;
  margin-bottom: 25px;
}

/* =============================================================================
 * lists
 * ========================================================================== */

.ce_text ul,
.ce_list ul,
.ce_text ol,
.ce_list ol {
  margin-bottom: 15px;
}

.ce_text li,
.ce_list li,
.ce_text ol,
.ce_list ol {
  line-height: 1.5em;
}

.ce_text ul,
.ce_text ol,
.ce_list:not(.hasIcon) ul,
.ce_list:not(.hasIcon) ol {
  padding-left: 25px;
}

.ce_text ul li,
.ce_list ul li {
  list-style-type: disc;
  list-style-position: outside;
  position: relative;
  margin-bottom: 4px;
}

.ce_text ol,
.ce_list:not(.hasIcon) ol {
  list-style: decimal;
  padding-left: 26px;
}

.ce_text ol ol,
.ce_list ol ol {
  list-style: upper-alpha;
}

.ce_text ol ol ol,
.ce_list ol ol ol {
  list-style: lower-roman;
}

/* =============================================================================
 * lists w/font-icon
 * ========================================================================== */

.ce_list.hasIcon ol li,
.ce_list.hasIcon ul li {
  display: flex;
  margin-bottom: 20px;
  position: relative;
}

.ce_list.hasIcon ol li i,
.ce_list.hasIcon ul li i {
  margin-right: 1em;
  line-height: 1.5em;
}

.ce_list.hasIcon li i:after {
  content: "";
  width: 70px;
  height: 1px;
  background: rgba(0, 0, 0, 0.08);
  position: absolute;
  left: -26px;
  bottom: -11px;
}

.ce_list.hasIcon ol li > span,
.ce_list.hasIcon ul li > span {
  display: flex;
}

.color-white .ce_list.hasIcon li i:after {
  background: rgba(255, 255, 255, 0.5);
}

/* =============================================================================
 * lists_v2
 * ========================================================================== */

.ce_list.style2.hasIcon ol li,
.ce_list.style2.hasIcon ul li,
.ce_list.list-style2.hasIcon ol li,
.ce_list.list-style2.hasIcon ul li {
  margin-bottom: 5px;
  font-size: 1.3rem;
}

.ce_list.list-style2 li i:after,
.ce_list.style2 li i:after {
  display: none;
}

.ce_list.list-style2 li.fa:before {
  color: var(--accentColor);
}

/* =============================================================================
 * lists_v3
 * ========================================================================== */

.ce_list.style3.hasIcon ol li,
.ce_list.style3.hasIcon ul li,
.ce_list.list-style3.hasIcon ol li,
.ce_list.list-style3.hasIcon ul li {
  margin-bottom: 20px;
  font-size: 1.1rem;
}

.ce_list.list-style3 li i:after,
.ce_list.style3 li i:after {
  display: none;
}

.ce_list.list-style3 li.fa:before {
  color: var(--accentColor);
}

/* =============================================================================
 * ce_contao_content_slider
 * ========================================================================== */

.ce_sliderStart {
  position: relative;
}

.slider-control a.slider-next:after {
  content: "\f105";
  font-family: FontAwesome;
  right: 0px;
  position: relative;
  color: #fff;
  font-size: 50px;
  text-shadow: 0px 0px 1px rgb(102, 102, 102);
  opacity: 0;
  -webkit-transition: All 0.9s ease;
  transition: All 0.9s ease;
}

.slider-control a.slider-prev:before {
  content: "\f104";
  font-family: FontAwesome;
  color: #fff;
  left: 0px;
  position: relative;
  font-size: 50px;
  text-shadow: 0px 0px 1px rgb(102, 102, 102);
  opacity: 0;
  -webkit-transition: All 0.9s ease;
  transition: All 0.9s ease;
}

.slider-control a.slider-prev:active:before,
.slider-control a.slider-next:active:after {
  top: 1px;
}

.ce_sliderStart:hover .slider-control a.slider-next:after {
  opacity: 1;
  right: 10px;
}
.ce_sliderStart:hover .slider-control a.slider-prev:before {
  opacity: 1;
  left: 10px;
}

.ce_sliderStart .slider-control .slider-menu {
  bottom: 0;
  top: auto;
  font-size: 0;
  line-height: 40px;
}

.ce_sliderStart .slider-control a {
  top: 50%;
  color: transparent !important;
  line-height: 50px;
  margin-top: -51px;
}

.ce_sliderStart .slider-control {
  height: 50px;
  position: static;
}

.ce_sliderStart .slider-control .slider-menu b {
  width: 10px;
  background: #fff;
  display: inline-block;
  text-indent: -9999em;
  line-height: 6px;
  font-family: Arial, sans-serif;
  margin: 0 3px;
  height: 10px;
  border-radius: 100%;
  border: 2px solid #fff;
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}

.ce_sliderStart .slider-control .slider-menu b.active {
  background: rgba(0, 0, 0, 0.1);
  width: 12px;
  height: 12px;
  position: relative;
  top: -1px;
}

.ce_sliderStart .slider-wrapper {
  -webkit-transform: translate3d(0, 0, 0);
}

/* =============================================================================
 * ce_contao_content_slider (in #slider section)
 * ========================================================================== */

#slider .slider-wrapper,
#slider .ce_slidertext .table {
  max-height: 700px;
}

#slider .slider-control a.slider-next:after,
#slider .slider-control a.slider-prev:before {
  font-size: 90px;
}

#slider .slider-control {
  background: #fff;
}

#slider .ce_slidertext .contentwrap {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
}

#slider .ce_slidertext .table {
  display: table;
  width: 100%;
  height: 100%;
}

#slider .ce_slidertext .table-cell {
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
  text-align: center;
  padding: 20px;
}

#slider .ce_slidertext h1,
#slider .ce_slidertext .h1 {
  font-size: 65px;
}

#slider .ce_slidertext p {
  font-size: 20px;
}

#slider .ce_slidertext p a {
  margin-top: 20px;
}

/* =============================================================================
 * content-swiper
 * ========================================================================== */

.swiper-container.hide-arrows .swiper-button-next,
.swiper-container.hide-arrows .swiper-button-prev {
  display: none !important;
}

.content-swiper .swiper-button-next,
.content-swiper .swiper-button-prev {
  color: #333;
  background: none;
}

.content-swiper .swiper-pagination-bullet-active {
  background: #333;
}

/* =============================================================================
 * content-accordion
 * ========================================================================== */

.content-accordion .handorgel__header button.handorgel__header__button:hover {
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
  border-top: 1px solid #eee;
}

/* =============================================================================
 * content-description-list
 * ========================================================================== */

.content-description-list {
  padding: 20px;
  border: 1px solid #ccc;
  border-radius: 10px;
  background-color: #f9f9f9;
}

.content-description-list dl {
  margin: 0;
  padding: 0;
}

.content-description-list dt {
  font-weight: bold;
  margin-bottom: 5px;
}

.content-description-list dd {
  margin-left: 0;
  margin-bottom: 10px;
}

/* =============================================================================
 * ce_headline
 * ========================================================================== */

.ce_headline.width-l {
  max-width: 700px;
}

.ce_headline.width-m {
  max-width: 500px;
}

.ce_headline.width-s {
  max-width: 350px;
}

.ce_headline.h-align-center.width-l,
.ce_headline.h-align-center.width-m,
.ce_headline.h-align-center.width-s {
  margin-left: auto;
  margin-right: auto;
}

.ce_headline [class^="label"] {
  position: relative;
  top: -0.6em;
  font-size: 0.6em;
  padding: 1px 6px;
}

/* =============================================================================
 * ce_text
 * ========================================================================== */

.ce_text .image_container img {
  width: auto;
}

.ce_text .image_container.float_right,
.ce_text .image_container.float_left {
  width: auto;
}

.ce_text.width-l {
  max-width: 700px;
}

.ce_text.width-m {
  max-width: 500px;
}

.ce_text.width-s {
  max-width: 350px;
}

.ce_text.h-align-center.width-l,
.ce_text.h-align-center.width-m,
.ce_text.h-align-center.width-s {
  margin-left: auto;
  margin-right: auto;
}

.ce_text.format-p-large p {
  font-size: 1.3rem;
}

.ce_text.format-p-small p {
  font-size: 0.9rem;
}

.ce_text.mb-0 p:last-of-type {
  margin-bottom: 0;
}

/* =============================================================================
 * ce_downloads
 * ========================================================================== */

.ce_download img.mime_icon,
.ce_downloads img.mime_icon {
  vertical-align: middle;
}

.ce_download a,
.ce_downloads a {
  text-decoration: none;
}

.ce_downloads a span.size {
  font-size: 0.8rem;
  color: rgba(0, 0, 0, 0.4);
  text-decoration: none;
}

.ce_download a span.size {
  color: rgba(255, 255, 255, 0.5);
}

.ce_downloads li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  vertical-align: middle;
  border-bottom: 1px solid #eee;
}

/* =============================================================================
 * ce_downloads_box
 * ========================================================================== */

.ce_downloads_box .ce_downloads_box_inside {
  background: rgb(248, 248, 248);
  padding: 30px;
  font-size: 0.85rem;
}

.ce_downloads_box .ce_downloads_box_inside li {
  border: 0;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.ce_downloads_box .ce_downloads_box_inside li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.ce_downloads_box .ce_downloads_box_inside li img {
  margin-right: 4px;
}

.ce_downloads_box .ce_downloads_box_inside .size {
  display: none;
}

/* =============================================================================
 * ce_download
 * ========================================================================== */

.ce_download:not(.ce_download_small) {
  background: rgb(59, 60, 66);
  color: #fff;
  padding: 35px;
  border-radius: 3px;
  position: relative;
}

.ce_download h1,
.ce_download h2,
.ce_download h3,
.ce_download h4,
.ce_download h5,
.ce_download h6,
.ce_download a {
  color: #fff;
}

.ce_download:after {
  font-family: "FontAwesome";
  content: "\f0ed";
  position: absolute;
  right: 35px;
  top: 50%;
  margin-top: -35px;
  font-size: 70px;
  color: rgba(255, 255, 255, 0.1);
  line-height: 70px;
}

.ce_download_small {
  margin-bottom: 10px;
}

.ce_download_small:after {
  display: none;
}

.ce_download_small .ce_download_small_inside a {
  border: 1px solid var(--accentColor);
  padding: 10px 15px;
  position: relative;
  display: block;
  color: inherit;
}

.ce_download_small .ce_download_small_inside a:after {
  font-family: "FontAwesome";
  content: "\f0ed";
  position: absolute;
  right: 35px;
  top: 50%;
  margin-top: -35px;
  font-size: 35px;
  line-height: 70px;
  opacity: 0.4;
  color: var(--accentColor);
}

/* =============================================================================
 * ce_dropcap
 * ========================================================================== */

p.dropcap:first-letter,
.dropcap p:first-child:first-letter {
  font-size: 4rem;
  float: left;
  margin-right: 7px;
  line-height: 57px;
}

/* =============================================================================
 * ce_comments
 * ========================================================================== */

.ce_comments .widget {
  margin-bottom: 10px;
}

/* =============================================================================
 * ce_video_custom
 * ========================================================================== */

.ce_video_custom,
.ce_youtube .ce_youtube_inner,
.ce_vimeo .ce_vimeo_inner {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.ce_video_custom iframe,
.ce_video_custom object,
.ce_video_custom embed,
.ce_youtube iframe,
.ce_youtube object,
.ce_youtube embed,
.ce_vimeo iframe,
.ce_vimeo object,
.ce_vimeo embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ce_video_custom video,
.ce_youtube video,
.ce_vimeo video {
  max-width: 100%;
  height: auto;
  max-height: 100%;
  width: 100%;
}

/* =============================================================================
 * ce_player
 * ========================================================================== */

.ce_player video {
  max-width: 100%;
  height: auto;
  max-height: 100%;
  width: 100% !important;
}

/* =============================================================================
 * video in lightbox/colorbox
 * ========================================================================== */

#colorbox video {
  max-width: 100%;
  height: auto;
  max-height: 100%;
  width: 100%;
}

/* =============================================================================
 * lightbox/colorbox
 * ========================================================================== */

body #colorbox,
body #cboxOverlay,
body #cboxWrapper {
  z-index: 99999;
}

/* =============================================================================
 * ce_accordion
 * ========================================================================== */

.ce_accordionStart {
  position: relative;
}

.ce_accordion .accordion {
  padding: 20px;
  border: 0;
  background: none;
}

.ce_accordion .accordion > div {
  padding: 0;
}

.ce_accordion .toggler {
  text-align: left;
  width: 100%;
  color: inherit;
  font-size: 1rem;
  background: none;
  line-height: 30px;
  font-weight: bold;
  cursor: pointer;
  margin-bottom: 6px;
}

.ce_accordion .toggler:hover {
  border: 0;
}

.ce_accordion .toggler i.fa {
  background: var(--accentColor);
}

.ce_accordionStart:last-of-type .toggler {
  margin-bottom: 0;
}

.ce_accordion .toggler:hover {
  color: rgb(76, 76, 76);
}

.ce_accordion .toggler:before {
  width: 25px;
  height: 25px;
  float: right;
  clear: both;
  display: inline-block;
  margin-left: 15px;
  padding: 0;
  text-align: center;
  font: 1.3em/28px FontAwesome;
  font-weight: normal;
  color: var(--accentColor);
  content: "\f107";
}

.ce_accordion .toggler.ui-state-active:before {
  font-family: FontAwesome;
  content: "\f106";
}

.ce_accordionSingle {
  margin-bottom: 1px;
}

/* =============================================================================
 * ce_accordion_v2
 * ========================================================================== */

.ce_accordion_v2,
.ce_accordion.style2 {
  margin-bottom: 10px;
  overflow: visible;
  border: 0;
}

.ce_accordion_v2 .toggler,
.ce_accordion.style2 .toggler {
  padding: 1rem 1rem 1rem 4rem;
  box-shadow: 0px 2px 2px 2px rgba(0, 0, 0, 0.03);
  cursor: pointer;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  position: relative;
  font-weight: bold;
  border: 1px solid rgb(220, 220, 220);
  width: 100%;
  color: inherit;
  font-size: 1rem;
  background: none;
  text-align: left;
}

.ce_accordion_v2 .toggler:not(.ui-state-active):hover,
.ce_accordion.style2 .toggler:not(.ui-state-active):hover {
  color: var(--accentColor);
}

.ce_accordion_v2 .toggler:before,
.ce_accordion.style2 .toggler:before {
  margin: 0;
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  padding: 0;
  text-align: center;
  font: 1rem/1.6rem FontAwesome;
  font-weight: normal;
  content: "\f067";
  border-radius: 100%;
  border: 2px solid;
}

.firefox .ce_accordion_v2 .toggler:before,
.firefox .ce_accordion.style2 .toggler:before {
  line-height: 1.6rem;
}

.ce_accordion_v2 .toggler.ui-state-active:before,
.ce_accordion.style2 .toggler.ui-state-active:before {
  content: " \f068";
  color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
}

.ce_accordion_v2 .toggler.ui-state-active,
.ce_accordion.style2 .toggler.ui-state-active {
  color: rgb(255, 255, 255);
  background: var(--accentColor);
}

.ce_accordion_v2 .accordion,
.ce_accordion.style2 .accordion {
  padding: 25px 0;
}

/* ie11 render bug */
.ie11 .ce_accordion_v2 .toggler:before,
.ie11 .ce_accordion.style2 .toggler:before {
  border: 0;
  transform: none;
}

/* =============================================================================
 * ce_hyperlink
 * ========================================================================== */

/* color */
.ce_hyperlink.btn-accent a,
.ce_revolutionslider_hyperlink.btn-accent {
  background: var(--accentColor);
  border-color: var(--accentColor);
}

.ce_hyperlink.btn-second a,
.ce_revolutionslider_hyperlink.btn-second {
  background: var(--secondColor);
  border-color: var(--secondColor);
}

.ce_hyperlink.btn-accent-outline a,
.ce_revolutionslider_hyperlink.btn-accent-outline {
  border-color: rgb(152, 152, 152);
  color: rgb(152, 152, 152);
  background: transparent;
}

.ce_hyperlink.btn-accent-outline:not(.btn-white):not(.btn-black-outline):not(
    .btn-gray-outline
  )
  a,
.ce_revolutionslider_hyperlink.btn-accent-outline {
  border-color: var(--accentColor);
  color: var(--accentColor);
}

.ce_hyperlink.btn-second-outline
  a:not(.btn-white):not(.btn-black-outline):not(.btn-gray-outline),
.ce_revolutionslider_hyperlink.btn-second-outline {
  border-color: var(--secondColor);
  color: var(--secondColor);
}

.ce_hyperlink.btn-second-outline a,
.ce_hyperlink-extended a.link-sec-color-outline,
.ce_revolutionslider_hyperlink.btn-second-outline {
  border-color: rgb(152, 152, 152);
  color: rgb(152, 152, 152);
  background: transparent;
}

.ce_hyperlink.btn-white a,
.ce_revolutionslider_hyperlink.btn-white {
  background: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
}

.ce_hyperlink.btn-white a {
  color: var(--accentColor);
}

.ce_hyperlink.btn-white-outline a,
.ce_revolutionslider_hyperlink.btn-white-outline {
  border-color: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  background: transparent;
}

.ce_hyperlink.btn-gray a,
.ce_revolutionslider_hyperlink.btn-gray {
  background: rgb(248, 248, 248);
  border-color: rgb(248, 248, 248);
}

.ce_hyperlink.btn-gray-outline a,
.ce_revolutionslider_hyperlink.btn-gray-outline {
  border-color: rgb(248, 248, 248);
  color: rgb(248, 248, 248);
  background: transparent;
}

.ce_hyperlink.btn-black a,
.ce_revolutionslider_hyperlink.btn-black {
  background: rgb(0, 0, 0);
  border-color: rgb(0, 0, 0);
}

.ce_hyperlink.btn-black-outline a,
.ce_revolutionslider_hyperlink.btn-black-outline {
  border-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  background: transparent;
}

.ce_hyperlink.btn-gray a,
.ce_revolutionslider_hyperlink.btn-gray {
  background: rgb(59, 60, 66);
  border-color: rgb(59, 60, 66);
}

.ce_hyperlink.btn-gray-outline a,
.ce_revolutionslider_hyperlink.btn-gray-outline {
  border-color: rgb(59, 60, 66);
  color: rgb(59, 60, 66);
  background: transparent;
}

.ce_hyperlink.btn-trnsp a,
.ce_revolutionslider_hyperlink.btn-trnsp {
  background: transparent;
  border-color: transparent;
  color: inherit;
}

.ce_hyperlink.btn-trnsp-white a,
.ce_revolutionslider_hyperlink.btn-trnsp-white {
  background: transparent;
  border-color: transparent;
}

.ce_revolutionslider_hyperlink.btn-white:not(.text-link) {
  color: var(--accentColor);
}

/* size */
.ce_hyperlink.btn-size-small a,
.ce_revolutionslider_hyperlink.btn-size-small {
  padding: 5px 15px;
  border-width: 1px;
  font-size: 0.85rem;
}

.ce_hyperlink.btn-size-medium a,
.ce_revolutionslider_hyperlink.btn-size-medium {
  padding: 10px 20px;
  font-size: 1.2rem;
}

.ce_hyperlink.btn-size-large a,
.ce_revolutionslider_hyperlink.btn-size-large {
  padding: 17px 90px;
  font-size: 1.2em;
}

.ce_hyperlink.btn-size-full a {
  display: block;
}

.ce_hyperlink.btn-size-textlink a,
.ce_revolutionslider_hyperlink.btn-size-textlink {
  background: transparent !important;
  padding: 0;
  min-width: 0;
}

.ce_hyperlink.btn-animated i {
  opacity: 0;
  width: 0;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

/* icon */
.ce_hyperlink i {
  margin-right: 10px;
}

.ce_hyperlink.btn-animated a:hover i {
  opacity: 1;
  width: 16px;
}

/* border-radius */
.ce_hyperlink.btn-radius-3 a {
  border-radius: 3px;
}

.ce_hyperlink.btn-radius-5 a {
  border-radius: 5px;
}

.ce_hyperlink.btn-radius-10 a {
  border-radius: 10px;
}

.ce_hyperlink.btn-radius-20 a {
  border-radius: 20px;
}

/* inline */
.ce_hyperlink.h-align-inline {
  display: inline-block;
  margin-right: 5px;
}

.ce_hyperlink a,
a.btn {
  display: inline-block;
  padding: 15px 20px;
  margin-bottom: 15px;
  cursor: pointer;
  transition: all 0.2s ease-out 0s;
  width: auto;
  background: var(--accentColor);
  border: 2px solid var(--accentColor);
  font-weight: bold;
  min-width: 140px;
  text-align: center !important;
  position: relative;
  position: relative;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  font-size: 1rem;
}

.ce_hyperlink a,
a.btn {
  color: #fff;
}

.ce_hyperlink a.link-white,
a.btn.link-white {
  color: var(--accentColor);
  border: 2px solid rgb(255, 255, 255);
  background: rgb(255, 255, 255);
}

.ce_hyperlink a.link-white:hover,
a.btn.link-white:hover {
  background: var(--accentColor);
  color: rgb(255, 255, 255);
}

.ce_hyperlink a.link-white.outline,
a.btn.link-white.outline {
  color: rgb(255, 255, 255);
}

.ce_hyperlink a.link-white.outline:hover,
a.btn.link-white.outline:hover {
  background: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
  color: rgb(37, 37, 37);
}

.ce_hyperlink a.outline,
a.btn.outline {
  background: transparent;
  color: var(--accentColor);
}

.ce_hyperlink a.outline:hover,
a.btn.outline:hover {
  background: rgb(37, 37, 37);
  border-color: rgb(37, 37, 37);
  color: rgb(255, 255, 255);
}

.ce_hyperlink i {
  margin-right: 8px;
}

.ce_hyperlink.small a,
a.btn.small {
  padding: 9px 15px;
  font-size: 0.75rem;
}

.ce_hyperlink.large a,
a.btn.large {
  padding: 20px 30px;
}

.ce_hyperlink.wide a,
a.btn.large {
  padding: 15px 50px;
}

.ce_hyperlink.expand a,
a.btn.expand {
  width: 100%;
}

.ce_hyperlink a.success,
a.btn.success {
  background: rgb(157, 213, 93);
  border-color: rgb(157, 213, 93);
}

.ce_hyperlink a.secondary,
a.btn.secondary {
  background: rgb(231, 231, 231);
  border-color: rgb(231, 231, 231);
  color: rgb(51, 51, 51);
}

.ce_hyperlink a.alert,
a.btn.alert {
  background: rgb(247, 80, 90);
  border-color: rgb(247, 80, 90);
}

.ce_hyperlink a.warning,
a.btn.warning {
  background: rgb(240, 138, 36);
  border-color: rgb(240, 138, 36);
}

.ce_hyperlink a.info,
a.btn.info {
  background: rgb(160, 211, 232);
  border-color: rgb(160, 211, 232);
  color: rgb(51, 51, 51);
}

.ce_hyperlink a.success:hover,
a.btn.success:hover,
.ce_hyperlink a.secondary:hover,
a.btn.secondary:hover,
.ce_hyperlink a.alert:hover,
a.btn.alert:hover,
.ce_hyperlink a.warning:hover,
a.btn.warning:hover,
.ce_hyperlink a.info:hover,
a.btn.info:hover {
  opacity: 0.8;
}

.ce_hyperlink.border-radius-3 a,
a.btn.border-radius-3 {
  border-radius: 3px;
}

.ce_hyperlink.border-radius-5 a,
a.btn.border-radius-5 {
  border-radius: 5px;
}

.ce_hyperlink.border-radius-10 a,
a.btn.border-radius-10 {
  border-radius: 10px;
}

.ce_hyperlink.border-radius-20 a,
a.btn.border-radius-20 {
  border-radius: 20px;
}

.ce_text a.btn {
  margin-top: 15px;
}

.ce_hyperlink.btn-animated i {
  opacity: 0;
  width: 0;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

.ce_hyperlink.btn-animated a:hover i {
  opacity: 1;
  width: 16px;
}

.ce_hyperlink.mb-0 a {
  margin-bottom: 0;
}

/* =============================================================================
 * mod_article
 * ========================================================================== */

#main .mod_article {
  position: relative;
}

#main .mod_article.smallwidth {
  margin-left: auto;
  margin-right: auto;
}

#main .mod_article.smallwidth .contentwrap {
  padding-left: 17%;
  padding-right: 17%;
}

.mod_article.ol-bg-accent .article-overlay {
  background: var(--accentColor);
}

.mod_article.ol-bg-second .article-overlay {
  background: var(--secondColor);
}

/* =============================================================================
 * mod_subscribe
 * ========================================================================== */

.mod_subscribe table td,
.mod_subscribe table {
  border: 0;
}

.mod_subscribe input.submit[type="submit"],
.mod_subscribe button.submit[type="submit"] {
  border-width: 1px;
  padding: 10px;
  border-radius: 0;
  font-weight: normal;
  text-align: center !important;
}

.mod_subscribe input.text {
  max-width: 290px;
  margin-bottom: 10px;
  height: 48px;
  text-align: left !important;
}

.mod_subscribe .formbody {
  margin: 0;
  display: flex;
}

.mod_subscribe.align-center {
  max-width: 350px;
  margin-left: auto;
  margin-right: auto;
}

.mod_subscribe.align-center .formbody {
  justify-content: center;
}

.mod_subscribe.align-right .formbody {
  justify-content: flex-end;
}

.mod_subscribe .widget.widget-text {
  min-width: 280px;
}

/* =============================================================================
 * mod_subscribe in sidebar
 * ========================================================================== */

#right .mod_subscribe .formbody {
  display: block;
}

#right .mod_subscribe .formbody .widget-text {
  margin-bottom: 0;
  min-width: 0;
}

#left .mod_subscribe .formbody {
  display: block;
}

#left .mod_subscribe .formbody .widget-text {
  margin-bottom: 0;
  min-width: 0;
}

/* =============================================================================
 * mod_login
 * ========================================================================== */

.mod_login table td,
.mod_login table {
  border: 0;
}

.mod_login {
  padding: 5%;
  background: rgba(255, 255, 255, 0.95);
  margin: 10px auto;
  max-width: 450px;
}

.mod_login .checkbox_container label {
  margin-left: 5px;
}

.mod_login .submit_container,
.mod_login input.submit,
.mod_login button.submit {
  margin: 0;
}

.mod_login .formbody {
  margin: 0;
}

.mod_login .widget-submit {
  margin-bottom: 0;
  margin-top: 15px;
}

/* =============================================================================
 * mod_calendar
 * ========================================================================== */

.mod_calendar table {
  border: 0;
  width: 100%;
}

.mod_calendar .calendar td {
  width: 14%;
  height: 7em;
  padding: 0;
  border: 1px solid #ddd;
  vertical-align: top;
}

.mod_calendar td .event {
  display: inline-block;
  font-size: 0.7333rem;
}

.mod_calendar th.label {
  padding: 10px 0;
}

.mod_calendar th.head {
  padding: 0;
  background: var(--accentColor);
  border-top: 1px solid var(--accentColor);
  border-right: 1px solid var(--accentColor);
  border-left: 1px solid var(--accentColor);
  color: #fff;
}

.mod_calendar th.previous a,
.mod_calendar th.next a {
  display: inline-block;
  padding: 10px;
  background-color: var(--accentColor);
  text-decoration: none;
  color: #fff;
}

.mod_calendar th.previous a:hover,
.mod_calendar th.next a:hover {
  border-color: #84898d !important;
}

.mod_calendar th.current {
  text-align: center;
}

.mod_calendar th.next {
  text-align: right;
}

.mod_calendar th.previous {
  text-align: left;
}

.mod_calendar th.label {
  text-align: center;
  background-color: #2c2c2c;
  border-right: 1px solid #2c2c2c;
  border-left: 1px solid #2c2c2c;
  color: #fff;
}

.mod_calendar td div.header {
  padding: 3px 3px 3px 6px;
  background-color: #f8f8f8;
  font-size: 0.8667rem;
  line-height: normal;
}

.mod_calendar td.empty {
  background: #fff;
}

.mod_calendar td .event {
  width: 99%;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: normal;
  padding: 5px;
}

.mod_calendar td.today {
  background-color: #f8f8f8;
}

.mod_calendar th.current {
  padding: 10px;
}

.mod_calendar th.current:before {
  display: inline-block;
  margin-right: 8px;
  font-family: FontAwesome;
  content: "\f133";
}

/* =============================================================================
 * mod_faqpage
 * ========================================================================== */

.mod_faqpage h2,
.mod_faqpage .h2 {
  display: none;
}

.mod_faqpage .info {
  font-size: 0.8rem;
}

.mod_faqpage h3,
.mod_faqpage .h3 {
  font-size: 1.2rem;
}

.mod_faqpage .h3:before,
.mod_faqpage h3:before {
  font-family: "FontAwesome";
  content: "\f059";
  margin-right: 5px;
  color: var(--accentColor);
}

.mod_faqpage section {
  display: inline-block;
  width: 49.5%;
  padding: 40px;
  border: 0 !important;
  vertical-align: top;
}

.mod_faqpage .toplink {
  display: none;
}

/* =============================================================================
 * mod_search
 * ========================================================================== */

.mod_search input,
.mod_search .widget-text {
  width: 45%;
  float: left;
  height: 48px !important;
}

.mod_search input.submit,
.mod_search button.submit {
  border: 1px solid rgb(152, 152, 152);
  border-radius: 0;
}

.mod_search button.submit {
  border: 0 !important;
}

.mod_search p.header {
  margin-top: 15px;
  background: none !important;
  clear: both;
}

.mod_search input:not(.submit),
.mod_search button:not(.submit) {
  -webkit-appearance: textfield !important;
}

.mod_search .widget-submit {
  float: left;
}

.mod_search.align-center form {
  display: inline-block;
}

.mod_search.align-center .widget-text {
  min-width: 300px;
}

.mod_search .submit {
  border: 1px solid var(--accentColor);
}

#main .mod_search {
  text-align: center;
}

#main .mod_search .widget-text {
  min-width: 350px;
  margin-right: 10px;
}

#main .mod_search input {
  border-radius: 20px;
}

#main .mod_search form {
  display: inline-block;
}

#main .mod_search input.submit,
#main .mod_search button.submit {
  border-radius: 20px;
}

/* =============================================================================
 * mod_registration
 * ========================================================================== */

.mod_registration {
  padding: 35px;
  background: rgba(0, 0, 0, 0.4);
  max-width: 500px;
  border-radius: 20px;
}

.mod_registration .widget {
  margin-bottom: 10px;
  overflow: hidden;
}

.mod_registration .widget.widget-submit {
  margin-top: 25px;
  margin-bottom: 0;
}

.mod_registration label {
  color: rgb(255, 255, 255);
  display: block;
}

.mod_registration .submit_container {
  width: 100%;
  margin-top: 0;
}

.mod_registration .captcha_text {
  display: block;
  color: red;
  font-size: 0.9333rem;
  margin-top: 5px;
  margin-bottom: 15px;
  margin-left: 0;
  font-weight: bold;
}

.mod_registration h1,
.mod_registration h2,
.mod_registration h3,
.mod_registration h4,
.mod_registration h5,
.mod_registration h6 {
  color: #fff;
  margin-bottom: 15px;
}

/* =============================================================================
 * mod_sitemap
 * ========================================================================== */

.mod_sitemap ul {
  margin: 10px;
  background: rgba(0, 0, 0, 0.05);
  padding: 20px;
}

.mod_sitemap ul li {
  margin-bottom: 3px;
}

.mod_sitemap ul li i:before {
  content: "\f105";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  transform: translate(0, 0);
  margin-right: 5px;
}

/* =============================================================================
 * portfolio grid-sizer
 * ========================================================================== */

.portfolio-col2 .grid-sizer {
  width: calc(100% / 2);
}

.portfolio-col3 .grid-sizer {
  width: calc(100% / 3);
}

.portfolio-col4 .grid-sizer {
  width: calc(100% / 4);
}

/* =============================================================================
 * helper class hide-subline
 * ========================================================================== */
[class^="mod_portfoliolist"].hide-subline .subline {
  display: none !important;
}

/* =============================================================================
 * forms
 * ========================================================================== */

input,
textarea,
select {
  padding: 15px;
  background-color: rgb(255, 255, 255);
  width: 100%;
  font-family: inherit;
  font-size: 0.9rem;
}

label {
  margin-bottom: 3px;
}

form .widget input,
form .widget textarea,
form .widget select {
  width: 100%;
}

form div.widget {
  position: relative;
}

textarea {
  height: 400px;
}

form .checkbox_container {
  overflow: hidden;
  margin-bottom: 2px;
}

input.checkbox {
  margin-right: 8px;
  padding: 0;
}

input.checkbox,
input.captcha {
  width: auto !important;
}

form div.widget {
  margin-bottom: 20px;
}

form fieldset {
  padding: 10px 10px 5px 10px;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

form.no-border fieldset {
  padding: 0;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}

form.no-border fieldset legend {
  margin-bottom: 25px;
}

form.no-border fieldset.checkbox_container {
  border: 0;
}

form fieldset {
  margin-bottom: 20px;
}

form fieldset.hidden {
  display: none;
}

form fieldset legend {
  width: auto;
  padding-right: 15px;
  padding-left: 15px;
  background-color: var(--accentColor);
  color: #fff;
  border-radius: 20px;
}

form select {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAANCAYAAAC+ct6XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjBBRUQ1QTQ1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjBBRUQ1QTU1QzkxMTFFMDlDNDdEQzgyNUE1RjI4MTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGMEFFRDVBMjVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGMEFFRDVBMzVDOTExMUUwOUM0N0RDODI1QTVGMjgxMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pk5mU4QAAACUSURBVHjaYmRgYJD6////MwY6AyaGAQIspCieM2cOjKkIxCFA3A0TSElJoZ3FUCANxAeAWA6IOYG4iR5BjWwpCDQCcSnNgxoIVJCDFwnwA/FHWlp8EIpHSKoGgiggLkITewrEcbQO6mVAbAbE+VD+a3IsJTc7FQAxDxD7AbEzEF+jR1DDywtoCr9DbhwzDlRZDRBgACYqHJO9bkklAAAAAElFTkSuQmCC);
  background-position: center right;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  line-height: 1.3;
  height: 48px;
  padding: 5px 35px 5px 10px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0;
}

.firefox form select {
  height: 49px;
}

form select option {
  padding-right: 10px;
  padding-left: 10px;
}

form select.multiselect option {
  padding-right: 0;
  padding-left: 0;
}

form textarea {
  font-family: inherit;
}

form .checkbox_container span,
form .widget-radio span {
  overflow: hidden;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
}

form .checkbox_container label,
form .widget-radio label {
  margin: 0;
}

form .widget-radio input {
  margin-right: 8px;
  width: auto;
  padding: 0;
}

form .widget-radio label {
  width: auto;
}

form span.mandatory {
  color: #f00;
}

form .captcha_text {
  margin: 10px 0 15px 15px;
  color: red;
}

form p.error {
  color: red;
}

form input.datepicker,
form input.timepicker {
  -webkit-appearance: none;
  height: 52px;
}

/* =============================================================================
 * submit input
 * ========================================================================== */

input.submit,
button.submit {
  display: inline-block;
  padding: 15px 20px;
  height: 48px;
  cursor: pointer;
  transition: all 0.2s ease-out 0s;
  width: auto;
  background: var(--accentColor);
  color: #fff;
  border-radius: 40px;
  min-width: 140px;
  text-align: center;
  position: relative;
  -webkit-appearance: none;
}

input.submit[type="submit"]:hover,
button.submit[type="submit"]:hover {
  background: var(--accentColor);
  opacity: 0.9;
}

input.submit,
button.submit,
form div.widget {
  font-family: inherit;
}

input.submit i:before,
button.submit i:before {
  font-family: FontAwesome;
  margin-right: 5px;
}

/* =============================================================================
 * form_textfield_floatlabel template
 * ========================================================================== */

input.floatlabel {
  margin-top: 1rem;
}

form div.placeholderlabel {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 0 5px;
  background: rgb(255, 255, 255);
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  opacity: 0;
  font-size: 0.95rem;
}

form div.placeholderlabel.active {
  top: 0rem;
  opacity: 1;
}

/* =============================================================================
 * lightbox
 * ========================================================================== */

#cboxContent .back {
  display: none !important;
}

/* =============================================================================
 * fullscreen-helper
 * ========================================================================== */

.fullscreen-helper {
  height: 100vh;
}

/* =============================================================================
 * scroll-padding
 * ========================================================================== */

html {
  scroll-padding: 70px 0 0 0;
}

/* =============================================================================
 * swiper slider
 * ========================================================================== */

.swiper-container {
  position: relative;
  --swiper-theme-color: #333;
}

/* =============================================================================
 * mod_privacy_optin
 * ========================================================================== */

body .mod_privacy_optin .privacy_buttons input,
body .mod_privacy_optin_medium .privacy_buttons input {
  background: var(--accentColor);
}

.privacy_optin.info.error {
  position: fixed;
  padding: 40px;
  color: #fff;
  background: red;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10000000000000;
}

/* =============================================================================
 * analytics_templates
 * ========================================================================== */
.analytics_templates.error {
  position: fixed;
  padding: 40px;
  color: #fff;
  background: red;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10000000000000;
}

/* =============================================================================
 * ce_privacy_iframe
 * ========================================================================== */

.ce_privacy_iframe iframe {
  width: 100%;
}

/* =============================================================================
 * viewport pixel
 * ========================================================================== */

#viewport-pixel {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0px;
  z-index: -1000;
  visibility: hidden;
  opacity: 1;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1025px) {
  #viewport-pixel {
    opacity: 0.75;
  }
}

@media only screen and (max-width: 767px) {
  #viewport-pixel {
    opacity: 0.5;
  }
}

/* =============================================================================
 * styles
 * ========================================================================== */

html,
body {
  font-size: 15px;
}

body {
  color: #555;
  font-family: Verdana, sans-serif;
  line-height: 1.8rem;
  font-weight: normal;
}

/* =============================================================================
  * font classes
  * ========================================================================== */

.font_serif_2,
.font-serif-2 {
  font-family: Georgia, Times, serif;
}

/* =============================================================================
  * headlines
  * ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.font_headline {
  margin-bottom: 25px;
  line-height: 1.3;
  color: rgb(59, 60, 66);
  word-wrap: break-word;
  font-weight: bold;
}

h1,
.h1,
.h1 p,
body .headline_style_h1 h1,
body .headline_style_h1 h2,
body .headline_style_h1 h3,
body .headline_style_h1 h4,
body .headline_style_h1 h5,
body .headline_style_h1 h6,
body h1.headline_style_h1,
body h1.headline_style_h1,
body h2.headline_style_h1,
body h3.headline_style_h1,
body h4.headline_style_h1,
body h5.headline_style_h1,
body h6.headline_style_h1 {
  font-size: 3rem;
  padding-top: 0;
}

h2,
.h2,
.h2 p,
body .headline_style_h2 h1,
body .headline_style_h2 h2,
body .headline_style_h2 h3,
body .headline_style_h2 h4,
body .headline_style_h2 h5,
body .headline_style_h2 h6,
body h1.headline_style_h2,
body h1.headline_style_h2,
body h2.headline_style_h2,
body h3.headline_style_h2,
body h4.headline_style_h2,
body h5.headline_style_h2,
body h6.headline_style_h2 {
  font-size: 2.333rem;
}

h3,
.h3,
.h3 p,
body .headline_style_h3 h1,
body .headline_style_h3 h2,
body .headline_style_h3 h3,
body .headline_style_h3 h4,
body .headline_style_h3 h5,
body .headline_style_h3 h6,
body h1.headline_style_h3,
body h1.headline_style_h3,
body h2.headline_style_h3,
body h3.headline_style_h3,
body h4.headline_style_h3,
body h5.headline_style_h3,
body h6.headline_style_h3 {
  font-size: 1.867rem;
}

h4,
.h4,
.h4 p,
body .headline_style_h4 h1,
body .headline_style_h4 h2,
body .headline_style_h4 h3,
body .headline_style_h4 h4,
body .headline_style_h4 h5,
body .headline_style_h4 h6,
body h1.headline_style_h4,
body h1.headline_style_h4,
body h2.headline_style_h4,
body h3.headline_style_h4,
body h4.headline_style_h4,
body h5.headline_style_h4,
body h6.headline_style_h4 {
  font-size: 1.5rem;
}

h5,
.h5,
.h5 p,
body .headline_style_h5 h1,
body .headline_style_h5 h2,
body .headline_style_h5 h3,
body .headline_style_h5 h4,
body .headline_style_h5 h5,
body .headline_style_h5 h6,
body h1.headline_style_h5,
body h1.headline_style_h5,
body h2.headline_style_h5,
body h3.headline_style_h5,
body h4.headline_style_h5,
body h5.headline_style_h5,
body h6.headline_style_h5 {
  font-size: 1.333rem;
}

h6,
.h6,
.h6 p,
body .headline_style_h6 h1,
body .headline_style_h6 h2,
body .headline_style_h6 h3,
body .headline_style_h6 h4,
body .headline_style_h6 h5,
body .headline_style_h6 h6,
body h1.headline_style_h6,
body h1.headline_style_h6,
body h2.headline_style_h6,
body h3.headline_style_h6,
body h4.headline_style_h6,
body h5.headline_style_h6,
body h6.headline_style_h6 {
  font-size: 1.2rem;
}

.column[class*="mb-"]:not[class*="-m"] > h1,
.column[class*="mb-"]:not[class*="-m"] > h2,
.column[class*="mb-"]:not[class*="-m"] > h3,
.column[class*="mb-"]:not[class*="-m"] > h4,
.column[class*="mb-"]:not[class*="-m"] > h5,
.column[class*="mb-"]:not[class*="-m"] > h6,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h1,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h2,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h3,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h4,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h5,
.column[class*="mb-"]:not[class*="-m"] > .attributes > h6,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h1,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h2,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h3,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h4,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h5,
.column[class*="mb-"]:not[class*="-m"] > .attributes > .h6,
.column[class*="mb-"]:not[class*="-m"] > .h1,
.column[class*="mb-"]:not[class*="-m"] > .h2,
.column[class*="mb-"]:not[class*="-m"] > .h3,
.column[class*="mb-"]:not[class*="-m"] > .h4,
.column[class*="mb-"]:not[class*="-m"] > .h5,
.column[class*="mb-"]:not[class*="-m"] > .h6,
.ce_text.h1 > p,
.ce_text.h2 > p,
.ce_text.h3 > p,
.ce_text.h4 > p,
.ce_text.h5 > p,
.ce_text.h6 > p,
.ce_text.h7 > p {
  margin-bottom: 0;
}

/* =============================================================================
  * logo size
  * ========================================================================== */

.logo {
  width: 200px;
  height: 100px;
}

/* =============================================================================
  * logo size: sticky
  * ========================================================================== */

.stickyheader .logo {
  width: 170px;
  height: 70px;
}

/* =============================================================================
  * logo size: mobile
  * ========================================================================== */

@media only screen and (max-width: 767px) {
  .logo {
    width: 150px;
    height: 70px;
  }
}

/* =============================================================================
  * logo
  * ========================================================================== */

.logo {
  margin-top: auto;
  margin-bottom: auto;
  float: left;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

.logo a {
  background-image: url(../img/logo.svg);
  width: 100%;
  height: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left;
}

/* =============================================================================
  * stickyheader
  * ========================================================================== */

.stickyheader .header.cloned {
  line-height: 70px;
}

.stickyheader {
  position: fixed;
  z-index: 10000;
  left: 0;
  top: 0;
  width: 100%;
  top: -100%;
  transition: All 0.4s ease;
  -webkit-transition: All 0.4s ease;
}

body.fixed-header .stickyheader {
  top: 0;
}

.stickyheader .header.cloned .logo {
  transition: height 0.3s ease;
  -webkit-transition: height 0.3s ease;
}

/* =============================================================================
  * header
  * ========================================================================== */

.header {
  width: 100%;
  top: 0px;
  z-index: 1030;
  position: relative;
  background: rgb(255, 255, 255);
}

.header.cloned {
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  transition: line-height 0.3s ease;
  -webkit-transition: line-height 0.3s ease;
}

.header .inside {
  padding-left: 40px;
  padding-right: 40px;
}

/* =============================================================================
  * fix-wrapper
  * ========================================================================== */

#fix-wrapper {
  width: 100%;
  z-index: 10000;
}

/* =============================================================================
  * contentwrapper
  * ========================================================================== */

#contentwrapper {
  background: rgb(255, 255, 255);
}

/* =============================================================================
  * page-width
  * ========================================================================== */

.mod_article.boxed {
  max-width: calc(1240px - 80px);
  margin-left: auto;
  margin-right: auto;
}

/* width medium */
body #main .mod_article.smallwidth,
.mod_article.fullwidth-boxed-medium > .container {
  max-width: 800px;
  padding-left: 40px;
  padding-right: 40px;
}

/* width small */
body #main .mod_article.xsmallwidth,
.mod_article.fullwidth-boxed-small > .container {
  max-width: 650px;
  padding-left: 40px;
  padding-right: 40px;
}

/* =============================================================================
  * page paddings left/right
  * ========================================================================== */

#top .inside,
.header .inside,
#footer .inside,
#bottom .inside,
.mod_article:not(.fullwidth) > .container,
.mod_article.boxed > .container,
.fullwidth.boxed-content .contentwrap,
.smallwidth .contentwrap,
.boxed-content .contentwrap,
.autogrid_wrapper.article,
.ce_bgimage-inside,
.ce_headerimage .ce_headerimage_inside,
.ce_video_background .ce_video_background_inside,
#offcanvas-top .offcanvas-top-inside,
.ce_calltoaction .ce_calltoaction_inside,
.mod_breadcrumb .mod_breadcrumb_inside,
.mod_pageimage .container,
body.sidebar #container,
.ce_easy_slider .swiper-inside .swiper-inside-wrap {
  padding-left: 40px;
  padding-right: 40px;
}

/* =============================================================================
  * template mod_article_offset_top
  * ========================================================================== */

#main .mod_article.mod_article_offset_top {
  position: relative;
  top: -60px;
}

#main .mod_article.mod_article_offset_top > .container {
  padding-top: 0;
  padding-bottom: 0;
}

/* =============================================================================
  * mod_article
  * ========================================================================== */

.mod_article {
  overflow: visible;
  position: relative;
  overflow: visible;
  background-size: cover;
  background-position: center;
}

.mod_article:before,
.mod_article:after {
  content: "\0020";
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.mod_article:after {
  clear: both;
}

.mod_article > .container {
  position: relative;
}

/* =============================================================================
  * mod_article background-positions
  * ========================================================================== */

.mod_article.bg-left-top {
  background-position: left top;
}

.mod_article.bg-left-center {
  background-position: left center;
}

.mod_article.bg-left-bottom {
  background-position: left bottom;
}

.mod_article.bg-center-top {
  background-position: center top;
}

.mod_article.bg-center-center {
  background-position: center center;
}

.mod_article.bg-center-bottom {
  background-position: center bottom;
}

.mod_article.bg-right-top {
  background-position: right top;
}

.mod_article.bg-right-center {
  background-position: right center;
}

.mod_article.bg-right-bottom {
  background-position: right bottom;
}

/* =============================================================================
   * mod_article paddings top/bottom
   * ========================================================================== */

/* default padding (not for fullwidth) */
.mod_article:not(.fullwidth) > .container {
  padding-top: 100px;
  padding-bottom: 100px;
}

/* default paddings sidebar pages */
body.content_page.sidebar #main .mod_article > .container,
body.content_page.sidebar #left .mod_article > .container,
body.content_page.sidebar #right .mod_article > .container {
  padding-top: 40px;
  padding-bottom: 40px;
}

/* no-padding body_bottom */
.body_bottom .mod_article:not(.fullwidth) > .container {
  padding: 0;
}

/* padding classes */
.mod_article.article-pt-0 > .container {
  padding-top: 0 !important;
}

.mod_article.article-pb-0 > .container {
  padding-bottom: 0 !important;
}

.mod_article.article-pt-xxs > .container {
  padding-top: 30px;
}

.mod_article.article-pb-xxs > .container {
  padding-bottom: 30px;
}

.mod_article.article-pt-xs > .container {
  padding-top: 50px;
}

.mod_article.article-pb-xs > .container {
  padding-bottom: 50px;
}

.mod_article.article-pt-s > .container {
  padding-top: 90px;
}

.mod_article.article-pb-s > .container {
  padding-bottom: 90px;
}

.mod_article.article-pt-m > .container {
  padding-top: 100px;
}

.mod_article.article-pb-m > .container {
  padding-bottom: 100px;
}

.mod_article.article-pt-l > .container {
  padding-top: 120px;
}

.mod_article.article-pb-l > .container {
  padding-bottom: 120px;
}

.mod_article.article-pt-xl > .container {
  padding-top: 150px;
}

.mod_article.article-pb-xl > .container {
  padding-bottom: 150px;
}

.mod_article.article-pt-xxl > .container {
  padding-top: 170px;
}

.mod_article.article-pb-xxl > .container {
  padding-bottom: 170px;
}

/* =============================================================================
  * mod_article fullscreen
  * ========================================================================== */

.mod_article.fullscreen {
  height: 100vh;
}

.mod_article.fullscreen.oversize {
  height: auto !important;
}

.mod_article.fullscreen .container {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.mod_article.fullscreen.oversize .container {
  position: relative;
  top: 0;
  transform: translateY(0);
}

/* =============================================================================
  * mod_article overlay
  * ========================================================================== */

.mod_article .article-overlay {
  position: absolute;
}

/* overlay position */
.mod_article.ol-top .article-overlay {
  top: 0;
  left: 0;
}

.mod_article.ol-right .article-overlay {
  top: 0;
  right: 0;
}

.mod_article.ol-bottom .article-overlay {
  bottom: 0;
  left: 0;
}

.mod_article.ol-left .article-overlay {
  top: 0;
  left: 0;
}

/* overlay bg_color */
.mod_article.ol-bg-black .article-overlay {
  background: rgb(0, 0, 0);
}

.mod_article.ol-bg-white .article-overlay {
  background: rgb(255, 255, 255);
}

.mod_article.ol-bg-gray .article-overlay {
  background: rgb(248, 248, 248);
}

/* overlay width */
.mod_article.ol-w100 .article-overlay {
  width: 100%;
}

.mod_article.ol-w75 .article-overlay {
  width: 75%;
}

.mod_article.ol-w50 .article-overlay {
  width: 50%;
}

.mod_article.ol-w25 .article-overlay {
  width: 25%;
}

/* overlay opacity */
.mod_article.ol-opacity-90 .article-overlay {
  opacity: 0.9;
}

.mod_article.ol-opacity-80 .article-overlay {
  opacity: 0.8;
}

.mod_article.ol-opacity-70 .article-overlay {
  opacity: 0.7;
}

.mod_article.ol-opacity-60 .article-overlay {
  opacity: 0.6;
}

.mod_article.ol-opacity-50 .article-overlay {
  opacity: 0.5;
}

.mod_article.ol-opacity-40 .article-overlay {
  opacity: 0.4;
}

.mod_article.ol-opacity-30 .article-overlay {
  opacity: 0.3;
}

.mod_article.ol-opacity-20 .article-overlay {
  opacity: 0.2;
}

.mod_article.ol-opacity-10 .article-overlay {
  opacity: 0.1;
}

/* =============================================================================
  * mod_article parallax
  * ========================================================================== */

.mod_article.parallax {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

body.ios .mod_article.parallax,
body.android .mod_article.parallax {
  background-attachment: scroll;
  background-position: center center !important;
}

/* ios13 iPad workaround */
@media only screen and (min-device-width: 768px) and (max-device-width: 1025px) {
  .ce_bgimage-image,
  .article-pb.parallax {
    background-position: center center !important;
    background-attachment: scroll !important;
    background-size: cover !important;
  }
}

/* =============================================================================
  * top
  * ========================================================================== */

#top-wrapper {
  width: 100%;
}

#top-wrapper.fixed {
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  background: rgba(0, 0, 0, 0.8);
}

#top {
  position: relative;
  z-index: 1100;
  font-size: 0.93rem;
  line-height: 2.5rem;
  background: rgb(249, 249, 249);
  color: rgba(255, 255, 255, 0.7);
}

#top-wrapper.fixed #top {
  max-height: 0;
  overflow: hidden;
}

#top:hover {
  overflow: visible;
}

#top .inside {
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
}

#top,
#top a {
  color: rgb(127, 127, 127);
}

#top .top_divider {
  margin-left: auto;
}

/* =============================================================================
  * top: mod_top_mail
  * ========================================================================== */

#top .mod_top_mail a {
  padding: 0 8px;
  display: inline-block;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

#top .mod_top_mail i {
  margin: 0 6px 0 5px;
}

#top .mod_top_mail a:hover {
  opacity: 0.7;
}

/* =============================================================================
  * top: mod_top_phone
  * ========================================================================== */

#top .mod_top_phone {
  margin-right: 15px;
}

#top .mod_top_phone i {
  margin: 0 5px 0 10px;
}

/* =============================================================================
  * top: mod_socials
  * ========================================================================== */

#top .mod_socials {
  overflow: hidden;
  margin-left: 15px;
}

#top .mod_socials a {
  display: block;
  float: left;
  text-align: center;
  line-height: 35px;
}

#top .mod_socials a i {
  width: 35px;
  height: 35px;
  border-radius: 100%;
  font-size: 1.067rem;
  color: rgb(127, 127, 127);
  line-height: 35px;
}

/* =============================================================================
  * header: mod_socials
  * ========================================================================== */

.header .mod_socials {
  display: none;
  overflow: hidden;
  float: right;
  margin-left: 10px;
  padding-left: 10px;
  position: relative;
}

.header .mod_socials:before {
  content: "";
  border-left: 1px solid rgb(0, 0, 0);
  position: absolute;
  top: 30%;
  left: 0;
  bottom: 30%;
  opacity: 0.2;
}

.header .mod_socials a {
  display: block;
  float: left;
  text-align: center;
}

.header .mod_socials a i {
  width: 35px;
  line-height: 35px;
}

/* =============================================================================
  * container mod_socials
  * ========================================================================== */

#container .mod_socials i {
  padding: 7px;
  width: 2.4rem;
  font-size: 1.467rem;
  text-align: center;
}

/* =============================================================================
  * mod_socials in sidebar
  * ========================================================================== */

#right .mod_socials,
#left .mod_socials {
  text-align: center;
  border-top: 1px solid rgb(230, 230, 230);
  border-bottom: 1px solid rgb(230, 230, 230);
  padding: 10px 0;
  background: rgba(0, 0, 0, 0.03);
}

#right .mod_socials i,
#left .mod_socials i {
  background: rgba(0, 0, 0, 0.05);
  font-size: 0.8rem;
  line-height: 2.4rem;
  padding: 0 7px;
  display: inline-block;
}

/* =============================================================================
  * mod_langswitcher
  * ========================================================================== */

.mod_langswitcher {
  position: relative;
  float: right;
  margin-left: 20px;
  z-index: 100;
  transition: All 0.1s ease;
  -webkit-transition: All 0.1s ease;
}

.mod_langswitcher .mod_langswitcher_inside {
  padding: 10px;
  display: inline-block;
  cursor: pointer;
  line-height: 0;
  position: relative;
}

.mod_langswitcher .mod_langswitcher_inside:before {
  content: "";
  border-radius: 5px;
  border: 1px solid rgb(0, 0, 0);
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  max-width: 70px;
  height: 34px;
  width: 55px;
}

.mod_langswitcher .mod_langswitcher_inside:hover:before {
  background: #fff;
  z-index: -1;
}

.mod_langswitcher .mod_langswitcher_inside:after {
  font-family: "FontAwesome";
  content: "\f107";
  margin-left: 10px;
  display: inline-block;
  font-size: 10px;
  position: relative;
  top: 0;
}

.mod_langswitcher .mod_langswitcher_inside i {
  margin-right: 5px;
}

.mod_langswitcher img {
  width: 20px;
  height: 15px;
  margin-bottom: -3px;
}

.mod_langswitcher ul {
  display: none;
  position: absolute;
  border: 1px solid rgba(0, 0, 0, 0.2);
  left: 0;
  top: 100%;
  background: rgb(255, 255, 255);
  width: 57px;
  text-align: center;
  border-radius: 0 0 5px 5px;
}

.mod_langswitcher ul li a {
  padding: 10px;
  display: block;
  line-height: 15px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  transition: All 0.1s ease;
  -webkit-transition: All 0.1s ease;
  text-align: left;
}

.mod_langswitcher ul li a img {
  border: 1px solid rgb(200, 200, 200);
}

.mod_langswitcher ul li a:hover {
  background: rgba(0, 0, 0, 0.05);
}

.mod_langswitcher ul li:last-of-type a {
  border-bottom: 0;
}

.mod_langswitcher .mod_langswitcher_inside:hover ul {
  -webkit-animation: fadeInUp 0.1s;
  animation: fadeInUp 0.1s;
  display: block;
}

.mod_langswitcher span {
  display: none;
}

/* =============================================================================
* mod_langswitcher workaround touch devices
* ========================================================================== */

.viewport_tablet .mod_langswitcher ul,
.viewport_mobile .mod_langswitcher ul {
  display: none !important;
}

.viewport_tablet .mod_langswitcher.active ul,
.viewport_mobile .mod_langswitcher.active ul {
  display: block !important;
}

/* =============================================================================
  * top: mod_langswitcher
  * ========================================================================== */

#top .mod_langswitcher {
  display: none;
}

#top .mod_langswitcher .mod_langswitcher_inside {
  padding-left: 0;
  padding-right: 0;
  height: 36px;
}

#top .mod_langswitcher .mod_langswitcher_inside:before {
  display: none;
}

#top .mod_langswitcher ul {
  width: 45px;
}

#top .mod_langswitcher ul li a {
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  color: #333;
}

/* =============================================================================
  * header: mod_search
  * ========================================================================== */

.header .mod_search {
  position: relative;
  float: right;
  padding: 0 8px;
  display: inline-block;
  cursor: pointer;
  margin-left: 45px;
  z-index: 100;
  opacity: 0.7;
  transition: All 0.3s ease;
}

.header .mod_search .search-content {
  background: var(--accentColor);
}

.header .mod_search:hover {
  opacity: 1;
}

.header .mod_search span {
  display: none;
}

.header .ce_search_label i {
  font-size: 18px;
  margin-right: 5px;
  transition: all 0.5s ease;
}

.body_bottom .mod_search .search-overlay {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  height: 100%;
  z-index: 10;
  background: rgba(0, 0, 0, 0.5);
  display: none;
}

.body_bottom .mod_search .container {
  margin: 0 auto;
  position: relative;
  max-width: 650px;
}

.body_bottom .mod_search .inside {
  position: fixed;
  top: -300px;
  left: 0;
  width: 100%;
  background: rgb(255, 255, 255);
  z-index: 1000000;
  padding: 80px 0 60px 0;
  transform: translate3d(0, -25vh, 0);
  transition: all 0.2s;
  display: flex;
  align-items: center;
}

.body_bottom .mod_search.show-search .inside {
  transform: translate3d(0, 0, 0);
  top: 0;
  box-shadow: 0 0 20px 20px rgba(0, 0, 0, 0.1);
}

.body_bottom .mod_search .search-content {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  display: flex;
  flex: 0 1 100%;
}

.body_bottom .mod_search .close-window {
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  font-size: 18px;
  background: #f7f7f7;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 100%;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  box-shadow: 3px 3px 7px #e2e2e2, -3px -3px 7px #ffffff;
}

.body_bottom .mod_search .close-window:hover {
  opacity: 0.8;
}

.body_bottom .mod_search .close-window i {
  transform: rotate(0deg);
  transition: all 0.3s;
}

.body_bottom .mod_search .close-window:hover i {
  transform: rotate(180deg);
}

.body_bottom .mod_search input:not(.submit),
.body_bottom .mod_search button:not(.submit) {
  background: #f8f8f8;
  border: 0;
  font-size: 20px;
  line-height: 45px;
  width: 100%;
  min-width: 350px;
  float: none;
  padding: 25px;
  border-radius: 40px;
  height: 75px !important;
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

.body_bottom .mod_search input.text:active {
  transform: scale(0.95);
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.body_bottom .mod_search input.text:focus {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.body_bottom .mod_search .line {
  display: none;
  height: 3px;
  background: rgb(0, 0, 0);
  transform: scaleX(0);
  transition: all 0.8s;
  transform-origin: left;
}

.body_bottom .mod_search.show-search .line {
  transform: scaleX(1);
}

.body_bottom .mod_search input[type="search"]::-webkit-search-decoration,
.body_bottom .mod_search input[type="search"]::-webkit-search-cancel-button,
.body_bottom .mod_search input[type="search"]::-webkit-search-results-button,
.body_bottom
  .mod_search
  input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

.body_bottom .mod_search form {
  position: relative;
}

.body_bottom .mod_search p {
  margin-bottom: 0;
  text-align: center;
  font-size: 0.85rem;
  color: rgba(0, 0, 0, 0.6);
}

/* =============================================================================
  * header: header_metanavi
  * ========================================================================== */

.header .header_metanavi {
  display: none;
  overflow: visible;
}

.header .header_metanavi a {
  transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
  color: rgba(0, 0, 0, 0.5);
  font-size: 0.95rem;
}

.header .header_metanavi a:hover {
  opacity: 0.7;
}

.header .header_metanavi li {
  display: inline-block;
  position: relative;
  line-height: 50px;
}

.header .header_metanavi li:hover ul {
  white-space: nowrap;
}

.header .header_metanavi li i {
  display: inline-block;
  margin-right: 8px;
}

.header .header_metanavi li ul {
  display: none;
  position: absolute;
  left: 0;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.05);
  z-index: 10;
}

.header .header_metanavi li ul li {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  display: block;
  padding-left: 15px;
  padding-right: 15px;
  text-align: left;
  font-size: 0.9em;
  line-height: 35px;
}

.header .header_metanavi li ul li a {
  margin: 0;
  display: block;
  color: rgb(80, 80, 80) !important;
}

.header .header_metanavi li.submenu a:after {
  font-family: "FontAwesome";
  content: "\f107";
  margin-left: 4px;
}

.header .header_metanavi li.submenu li a:after {
  display: none;
}

.header .header_metanavi li:hover ul {
  display: block;
}

/* =============================================================================
  * top: mod_login_top
  * ========================================================================== */

#top .mod_login_top {
  padding: 0 8px;
  cursor: pointer;
  transition: background 0.3s ease;
  -webkit-transition: background 0.3s ease;
  margin-left: 25px;
}

#top .mod_login_top i {
  margin-right: 8px;
}

#top .mod_login {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  background: #f7f7f7;
  padding: 0;
  z-index: 100000;
  max-width: 100%;
  margin: 0;
  color: rgb(57, 57, 57);
  display: flex;
  align-items: center;
  transform: scale(0);
  opacity: 0;
  transition: all 0.1s;
}

#top .mod_login.show {
  transition: all 0.3s;
  transform: scale(1);
  opacity: 1;
}

#top .mod_login form {
  max-width: 380px;
  margin: 0 auto;
  border-radius: 20px;
  background: #f8f8f8;
  box-shadow: 6px 6px 12px #e2e2e2, -6px -6px 12px #ffffff;
  position: relative;
  z-index: 10;
}

#top .mod_login form .formbody {
  padding: 35px 50px;
}

#top .mod_login form h1,
#top .mod_login form h2,
#top .mod_login form h3,
#top .mod_login form h4,
#top .mod_login form h5,
#top .mod_login form h6 {
  padding: 30px 30px 0 30px;
  margin: 0;
  text-align: center;
}

#top .mod_login form input.text {
  border: 0;
  background: rgba(0, 0, 0, 0.04);
  border-radius: 20px;
}

#top .mod_login form input.text:active {
  transform: scale(0.95);
  border: 1px solid rgba(0, 0, 0, 0.1);
}

#top .mod_login form input.text:focus {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

#top .mod_login input.text {
  margin-bottom: 10px;
}

#top .mod_login .link_reset_pwd {
  text-align: center;
  font-size: 0.9rem;
}

#top .mod_login .link_reset_pwd a {
  color: inherit;
}

#top .mod_login .submit_button {
  text-align: center;
  margin-top: 20px;
}

#top .mod_login .submit_button input {
  width: auto !important;
  border-radius: 30px;
  min-width: 180px;
  display: inline-block;
}

#top .mod_login .submit_button input:hover {
  opacity: 0.8;
}

#top .mod_login form table {
  width: 100%;
}

#top .mod_login form table td {
  padding: 5px 0;
}

#top .mod_login .close {
  font-size: 17px;
  background: #f8f8f8;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 100%;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  transition: box-shadow 0.3;
  box-shadow: 3px 3px 7px #e2e2e2, -3px -3px 7px #ffffff;
  position: absolute;
  right: 10px;
  top: 10px;
}

#top .mod_login .close:hover {
  opacity: 0.8;
}

#top .mod_login .close i {
  transition: all 0.3s;
}

#top .mod_login .close:hover i {
  transform: rotate(180deg);
}

#top .mod_login form div {
  margin: 0;
}

#top .mod_login .overlay_close {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

#top .mod_login form .autologin_container input {
  display: inline-block;
}

#top .mod_login form .autologin_container label {
  display: inline-block;
}

#top .mod_login form .autologin_container {
  margin-bottom: 5px;
}

#top .mod_login form p.error {
  line-height: 1.5;
}

body.search_overlay div.body {
  filter: blur(10px);
  transform: scale(1.1);
}

/* =============================================================================
  * top: top_metanavi
  * ========================================================================== */

#top .top_metanavi {
  overflow: visible;
}

#top .top_metanavi a {
  transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
}

#top .top_metanavi a:hover {
  opacity: 0.7;
}

#top .top_metanavi li {
  display: inline-block;
  position: relative;
  padding: 0 4px;
}

#top .top_metanavi li.submenu a:after {
  font-family: "FontAwesome";
  content: "\f107";
  margin-left: 4px;
  line-height: 1;
}

#top .top_metanavi li.submenu li a:after {
  display: none;
}

#top .top_metanavi li:hover ul {
  white-space: nowrap;
}

#top .top_metanavi li i {
  display: inline-block;
  margin-right: 8px;
}

#top .top_metanavi li ul {
  display: none;
  min-width: 155px;
  padding: 15px;
  position: absolute;
  left: 0;
  background: rgba(255, 255, 255, 1);
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

#top .top_metanavi li ul:before {
  position: absolute;
  left: 10px;
  top: -22px;
  content: "";
  width: 0;
  height: 0;
  border: 11px solid;
  border-color: transparent transparent #fff transparent;
  filter: drop-shadow(0 -2px 2px rgba(0, 0, 0, 0.1));
}

#top .top_metanavi li ul li {
  display: block;
  padding-left: 20px;
  padding-right: 20px;
  text-align: left;
  line-height: 35px;
}

#top .top_metanavi li ul li.last {
  border-bottom: 0;
}

#top .top_metanavi li ul li a {
  margin: 0;
  color: rgb(85, 85, 85) !important;
  display: block;
}

#top .top_metanavi li:hover ul {
  display: block;
}

/* =============================================================================
  * footer
  * ========================================================================== */

#footer {
  background: rgb(37, 37, 37);
  font-size: 0.93rem;
  line-height: 1.6rem;
}

#footer,
#footer a {
  color: rgba(255, 255, 255, 0.6);
}

#footer a {
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

#footer a:hover {
  color: var(--accentColor);
}

#footer .inside {
  margin: 0 auto;
  padding: 65px 40px;
}

#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6 {
  color: rgba(255, 255, 255, 0.8);
}

#footer ul {
  padding: 0;
  margin: 0;
}

#footer li {
  margin-bottom: 10px;
  padding-left: 25px;
  padding-bottom: 10px;
  list-style-type: none;
  position: relative;
}

#footer li:last-of-type {
  margin-bottom: 0;
}

#footer li:after {
  border-bottom: 1px solid rgb(255, 255, 255);
  opacity: 0.2;
  content: "";
  display: block;
  left: 0;
  width: 100%;
  bottom: 0;
  position: absolute;
}

#footer li:before {
  content: "\f105";
  font-family: FontAwesome;
  text-align: center;
  position: absolute;
  left: 0px;
  display: block;
  height: 20px;
  width: 20px;
  margin-top: -1px;
}

#footer .totop {
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -20px;
}

#footer .totop:before {
  font-family: "FontAwesome";
  content: "\f102";
  background: rgba(255, 255, 255, 0.1);
  width: 40px;
  height: 40px;
  display: block;
  text-align: center;
  line-height: 40px;
  font-size: 21px;
  border-radius: 0 0 3px 3px;
}

/* =============================================================================
  * footer: mod_socials
  * ========================================================================== */

#footer .mod_socials {
  overflow: hidden;
  display: inline-block;
}

#footer .mod_socials a i {
  padding: 0.6667rem;
  margin-right: 1px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 1.333rem;
  display: inline-block;
  height: 2.667rem;
  width: 2.667rem;
  text-align: center;
  float: left;
  margin-bottom: 1px;
}

/* =============================================================================
  * bottom
  * ========================================================================== */

#bottom {
  background: rgb(15, 15, 15);
}

#bottom .inside {
  margin: 0 auto;
  padding: 20px 40px;
  overflow: hidden;
  font-size: 0.93em;
}

#bottom .inside .left {
  float: left;
}

#bottom .inside .right {
  float: right;
}

#bottom .inside,
#bottom .inside a {
  color: rgba(255, 255, 255, 0.4);
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

#bottom .inside a:hover {
  color: var(--accentColor);
  border-bottom: 1px solid;
}

#bottom .inside .left a {
  margin-right: 15px;
}

#bottom .inside .right a {
  margin-left: 15px;
}

#bottom .ce_text p {
  margin-bottom: 0;
}

/* =============================================================================
  * browser-mockup for images
  * ========================================================================== */

.ce_image.browser_mockup img {
  padding-top: 32px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iRWJlbmVfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIxMTY3cHgiIGhlaWdodD0iMzIuOTY4cHgiIHZpZXdCb3g9IjAgMCAxMTY3IDMyLjk2OCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTE2NyAzMi45NjgiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxyZWN0IHg9Ii0zNS42NjciIHk9Ii0xMi4xNTEiIGZpbGw9IiNEQkRCREIiIHN0cm9rZT0iI0FEQURBRCIgc3Ryb2tlLXdpZHRoPSIwLjUiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgd2lkdGg9IjEyMDIuNDE3IiBoZWlnaHQ9IjQ0Ljg2OSIvPjxwYXRoIGlkPSJYTUxJRF85OV8iIGZpbGw9IiNFOEU4RTgiIHN0cm9rZT0iI0I3QjdCNyIgc3Ryb2tlLXdpZHRoPSIwLjc1IiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIGQ9Ik04Mi4zMDYsMzQuNTY2YzAsMCwyLjgzNy0wLjgyMSwzLjc2MS0zLjM4NWMwLjkyNC0yLjU2NCw2LjMxMS0xOC44ODUsNi4zMTEtMTguODg1czEuMDU0LTMuNjI2LDQuODY3LTMuNjI2YzMuODEzLDAsMTE0LjU1MiwwLDExNC41NTIsMHMyLjQ1NS0wLjU0LDMuNjk3LDQuMTA4YzEuMjQyLDQuNjQ3LDUuNDg4LDE3LjkxOSw1LjQ4OCwxNy45MTlzMS4wMDUsMy4zNzEsNC40NzEsMy43NTZMODIuMzA2LDM0LjU2NnoiLz48ZyBpZD0iWE1MSURfOTZfIj48ZyBpZD0iWE1MSURfOTdfIj48ZWxsaXBzZSBpZD0iWE1MSURfOThfIiBmaWxsPSIjOTk5OTk5IiBjeD0iMTAwLjkwMyIgY3k9IjIwLjc4NSIgcng9IjQuNzE5IiByeT0iNC43ODEiLz48L2c+PC9nPjxwb2x5Z29uIGlkPSJYTUxJRF85NV8iIGZpbGw9IiM5OTk5OTkiIHN0cm9rZT0iI0U4RThFOCIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludHM9IjIxMi44NTgsMjUuMzA1IDIwOS4zMzQsMjEuNzM0IDIxMi44NTgsMTguMTYzIDIxMC43ODUsMTYuMDYyIDIwNy4yNjEsMTkuNjM1IDIwMy43MzYsMTYuMDYzIDIwMS42NjQsMTguMTY0IDIwNS4xODksMjEuNzM0IDIwMS42NjUsMjUuMzA3IDIwMy43MzgsMjcuNDA2IDIwNy4yNjIsMjMuODM1IDIxMC43ODYsMjcuNDA1ICIvPjxjaXJjbGUgaWQ9IlhNTElEXzIxXyIgZmlsbD0iI0Y1NTM1QyIgc3Ryb2tlPSIjQURBREFEIiBzdHJva2Utd2lkdGg9IjAuNSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBjeD0iMjEuMTA5IiBjeT0iMTcuMDYzIiByPSI1Ljk2NSIvPjxjaXJjbGUgaWQ9IlhNTElEXzI1XyIgZmlsbD0iI0Y3QkI0OCIgc3Ryb2tlPSIjQURBREFEIiBzdHJva2Utd2lkdGg9IjAuNSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBjeD0iMzkuNjY3IiBjeT0iMTcuMDYzIiByPSI1Ljk2NSIvPjxjaXJjbGUgaWQ9IlhNTElEXzI5XyIgZmlsbD0iIzE5OTU0MCIgc3Ryb2tlPSIjQURBREFEIiBzdHJva2Utd2lkdGg9IjAuNSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBjeD0iNTguMjI3IiBjeT0iMTcuMDYzIiByPSI1Ljk2NSIvPjwvc3ZnPg==);
  background-position: left top;
  background-repeat: no-repeat;
  box-shadow: 0 0 27px 5px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.3);
}

/* =============================================================================
  * top_link
  * ========================================================================== */

#top_link {
  position: fixed;
  opacity: 0;
  transition: All 0.2s ease;
  -webkit-transition: All 0.2s ease;
  width: 45px;
  height: 45px;
  line-height: 45px;
  right: 15px;
  z-index: 10005;
  bottom: -40px;
}

#top_link a {
  position: relative;
  display: block;
  transition: All 0.6s ease;
  -webkit-transition: All 0.6s ease;
  float: left;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.9);
  text-align: center;
  line-height: inherit;
  border-radius: 100%;
  box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.04);
  border: 1px solid rgb(235, 237, 235);
  font-size: 20px;
  line-height: 40px;
  cursor: pointer;
}

#top_link:hover a {
  margin-top: -7px;
}

body.fixed-header #top_link {
  opacity: 1;
  bottom: 45px;
}

/* =============================================================================
  * custom colors: background
  * ========================================================================== */

.bg-custom-1 {
  background: rgb(30, 136, 210);
}

.bg-custom-2 {
  background: rgb(30, 136, 210);
}

.bg-custom-3 {
  background: rgb(30, 136, 210);
}

.bg-custom-4 {
  background: rgb(30, 136, 210);
}

/* =============================================================================
  * colors: offset layer
  * ========================================================================== */

.ce_bgimage.offset.offset-bg-accent:before {
  background-color: var(--accentColor);
}

.ce_bgimage.offset.offset-bg-custom-1:before {
  background-color: rgb(30, 136, 210);
}

.ce_bgimage.offset.offset-bg-custom-2:before {
  background-color: rgb(30, 136, 210);
}

.ce_bgimage.offset.offset-bg-custom-3:before {
  background-color: rgb(30, 136, 210);
}

.ce_bgimage.offset.offset-bg-custom-4:before {
  background-color: rgb(30, 136, 210);
}

/* =============================================================================
  * mainmenu
  * ========================================================================== */
.fixed .mainmenu ul li ul li a:not(.active):not(.trail) {
  color: rgb(57, 57, 57);
}

.header .mainmenu ul ul li a {
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  color: inherit;
}

.header .mainmenu ul ul li span {
  position: relative;
}

.header .mainmenu ul ul li a span:before {
  position: absolute;
  content: "";
  height: 1px;
  background: rgb(0, 0, 0);
  bottom: 0;
  width: 100%;
  left: 0;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}

.header .mainmenu ul ul li a:hover span:before {
  transform: scaleX(1);
}

.header .mainmenu ul ul li a.active span:before,
.header .mainmenu ul ul li a.trail span:before {
  position: absolute;
  content: "";
  height: 1px;
  background-color: var(--accentColor);
  bottom: 0;
  width: 100%;
  left: 0;
  transform: scaleX(1) !important;
}
/*

.mainmenu {
  float: right;
}

.mainmenu ul li a.first {
  padding-left: 0;
}

.mainmenu ul li {
  margin-left: 15px;
  margin-right: 15px;
}

.mainmenu ul li.float_left:first-of-type {
  margin-left: 0;
}

.mainmenu ul li.last {
  margin-right: 0;
}

.mainmenu ul li ul li {
  margin-left: 0;
  margin-right: 0;
}

.mainmenu ul li a {
  text-transform: none;
  padding: 0;
  font-weight: normal;
  font-size: 1.067rem;
}



.mainmenu ul li a:hover {
  opacity: 0.8;
  transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
}

.mainmenu ul li:not(.click_open):hover > ul {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.mainmenu ul ul li:hover > ul {
  -webkit-animation-name: none;
  animation-name: none;
}

.mainmenu ul li a {
  text-align: center;
}

.mainmenu ul ul li a[target="_blank"] {
  padding-right: 30px !important;
}

.mainmenu ul ul li a[target="_blank"]:after {
  font-family: "FontAwesome";
  content: "\f08e";
  position: absolute;
  right: 5px;
}

.mainmenu ul li.floatbox {
  position: static;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mainmenu ul.level_1 li.open-left > ul {
  right: 0;
}

.mainmenu ul.level_3 li.open-left > ul {
  width: auto;
  right: 100%;
  left: auto;
}
*/
/* =============================================================================
  * mainmenu: FontAwesome
  * ========================================================================== */

.mainmenu ul li a.nav-icon span {
  transform: translateY(30%);
  -webkit-transform: translateY(30%);
  display: inline-block;
  line-height: 40px;
}

.mainmenu ul ul li a.nav-icon span {
  line-height: inherit;
  transform: translateY(0);
  -webkit-transform: translateY(0);
}

.mainmenu ul li a i {
  transform: translateY(-133%);
  -webkit-transform: translateY(-133%);
  position: absolute;
  top: 50%;
  width: 100%;
  left: 0;
  display: inline-block;
}

.mainmenu ul ul li a i {
  transform: translateY(0);
  -webkit-transform: translateY(0);
  position: static;
  width: 1.5em;
}

/* =============================================================================
  * class mainmenu: highlight one menu item
  * ========================================================================== */

body .header .mainmenu ul li a.highlight,
body .header .mainmenu ul li a.highlight_square_color_accent,
body .header .mainmenu ul li a.highlight-square-color-accent,
body .header .mainmenu ul li a.highlight_rounded_color_accent,
body .header .mainmenu ul li a.highlight-rounded-color-accent,
body .header .mainmenu ul li a.highlight_rounded50_color_accent,
body .header .mainmenu ul li a.highlight-rounded50-color-accent,
body #mmenu .mod_navigation ul li a.highlight,
body #mmenu .mod_navigation ul li a.highlight_square_color_accent,
body #mmenu .mod_navigation ul li a.highlight-square-color-accent,
body #mmenu .mod_navigation li a.highlight_rounded_color_accent,
body #mmenu .mod_navigation ul li a.highlight-rounded-color-accent,
body #mmenu .mod_navigation ul li a.highlight_rounded50_color_accent,
body #mmenu .mod_navigation ul li a.highlight-rounded50-color-accent {
  color: rgba(255, 255, 255, 0.9) !important;
}

.header .mainmenu ul li a.highlight span,
#mmenu .mod_navigation ul li a.highlight {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_color_second span,
.header .mainmenu ul li a.highlight-color-second span,
#mmenu .mod_navigation ul li a.highlight_color_second,
#mmenu .mod_navigation ul li a.highlight-color-second {
  padding: 10px;
  border-radius: 3px;
}

/* filled */

.header .mainmenu ul li a.highlight_square_color_accent span,
.header .mainmenu ul li a.highlight-square-color-accent span,
#mmenu .mod_navigation ul li a.highlight_square_color_accent,
#mmenu .mod_navigation ul li a.highlight-square-color-accent {
  padding: 10px;
}

.header .mainmenu ul li a.highlight_square_color_second span,
.header .mainmenu ul li a.highlight-square-color-second span,
#mmenu .mod_navigation ul li a.highlight_square_color_second,
#mmenu .mod_navigation ul li a.highlight-square-color-second {
  padding: 10px;
}

.header .mainmenu ul li a.highlight_rounded_color_accent span,
.header .mainmenu ul li a.highlight-rounded-color-accent span,
#mmenu .mod_navigation ul li a.highlight_rounded_color_accent,
#mmenu .mod_navigation ul li a.highlight-rounded-color-accent {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_rounded50_color_accent span,
.header .mainmenu ul li a.highlight-rounded50-color-accent span,
#mmenu .mod_navigation ul li a.highlight_rounded50_color_accent,
#mmenu .mod_navigation ul li a.highlight-rounded50-color-accent {
  padding: 10px 20px;
  border-radius: 50px;
}

.header .mainmenu ul li a.highlight_rounded_color_second span,
.header .mainmenu ul li a.highlight-rounded-color-second span,
#mmenu .mod_navigation ul li a.highlight_rounded_color_second,
#mmenu .mod_navigation ul li a.highlight-rounded-color-second {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_rounded50_color_second span,
.header .mainmenu ul li a.highlight-rounded50-color-second span,
#mmenu .mod_navigation ul li a.highlight_rounded50_color_second,
#mmenu .mod_navigation ul li a.highlight-rounded50-color-second {
  padding: 10px 20px;
  border-radius: 50px;
}

/* outline */

.header .mainmenu ul li a.highlight_outline_square_color_accent span,
.header .mainmenu ul li a.highlight-outline-square-color-accent span,
#mmenu .mod_navigation li a.highlight_outline_square_color_accent,
#mmenu .mod_navigation li a.highlight-outline-square-color-accent {
  padding: 10px;
}

.header .mainmenu ul li a.highlight_outline_square_color_second span,
.header .mainmenu ul li a.highlight-outline-square-color-second span,
#mmenu .mod_navigation ul li a.highlight_outline_square_color_second,
#mmenu .mod_navigation ul li a.highlight-outline-square-color-second {
  padding: 10px;
}

.header .mainmenu ul li a.highlight_outline_rounded_color_accent span,
.header .mainmenu ul li a.highlight-outline-rounded-color-accent span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded_color_accent,
#mmenu .mod_navigation ul li a.highlight-outline-rounded-color-accent {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_outline_rounded50_color_accent span,
.header .mainmenu ul li a.highlight-outline-rounded50-color-accent span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded50_color_accent,
#mmenu .mod_navigation ul li a.highlight-outline-rounded50-color-accent {
  padding: 10px 20px;
  border-radius: 50px;
}

.header .mainmenu ul li a.highlight_outline_rounded_color_second span,
.header .mainmenu ul li a.highlight-outline-rounded-color-second span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded_color_second,
#mmenu .mod_navigation ul li a.highlight-outline-rounded-color-second {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_outline_rounded50_color_second span,
.header .mainmenu ul li a.highlight-outline-rounded50-color-second span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded50_color_second,
#mmenu .mod_navigation ul li a.highlight-outline-rounded50-color-second {
  padding: 10px;
  border-radius: 3px;
}

.header .mainmenu ul li a.highlight_outline_square_color_white span,
.header .mainmenu ul li a.highlight-outline-square-color-white span,
#mmenu .mod_navigation ul li a.highlight_outline_square_color_white,
#mmenu .mod_navigation ul li a.highlight-outline-square-color-white {
  padding: 10px;
  box-shadow: 0 0px 0px 2px rgb(255, 255, 255);
}

.header .mainmenu ul li a.highlight_outline_rounded_color_white span,
.header .mainmenu ul li a.highlight-outline-rounded-color-white span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded_color_white,
#mmenu .mod_navigation ul li a.highlight-outline-rounded-color-white {
  padding: 10px;
  border-radius: 3px;
  box-shadow: 0 0px 0px 2px rgb(255, 255, 255);
}

.header .mainmenu ul li a.highlight_outline_rounded50_color_white span,
.header .mainmenu ul li a.highlight-outline-rounded50-color-white span,
#mmenu .mod_navigation ul li a.highlight_outline_rounded50_color_white,
#mmenu .mod_navigation ul li a.highlight-outline-rounded50-color-white {
  padding: 10px 20px;
  border-radius: 50px;
  box-shadow: 0 0px 0px 2px rgb(255, 255, 255);
}

/* accent color */

.header .mainmenu ul li a.highlight span,
.header .mainmenu ul li a.highlight_square_color_accent span,
.header .mainmenu ul li a.highlight-square-color-accent span,
.header .mainmenu ul li a.highlight_rounded_color_accent span,
.header .mainmenu ul li a.highlight-rounded-color-accent span,
.header .mainmenu ul li a.highlight_rounded50_color_accent span,
.header .mainmenu ul li a.highlight-rounded50-color-accent span,
#mmenu .mod_navigation ul li a.highlight,
#mmenu .mod_navigation ul li a.highlight_square_color_accent,
#mmenu .mod_navigation ul li a.highlight-square-color-accent,
#mmenu .mod_navigation ul li a.highlight_rounded_color_accent,
#mmenu .mod_navigation ul li a.highlight-rounded-color-accent,
#mmenu .mod_navigation ul li a.highlight_rounded50_color_accent,
#mmenu .mod_navigation ul li a.highlight-rounded50-color-accent {
  background-color: var(--accentColor);
}

.header .mainmenu ul li a.highlight_outline_square_color_accent span,
.header .mainmenu ul li a.highlight-outline-square-color-accent span,
.header .mainmenu ul li a.highlight_outline_rounded_color_accent span,
.header .mainmenu ul li a.highlight-outline-rounded-color-accent span,
.header .mainmenu ul li a.highlight_outline_rounded50_color_accent span,
.header .mainmenu ul li a.highlight-outline-rounded50-color-accent span,
#mmenu .mod_navigation ul li a.highlight_outline_square_color_accent,
#mmenu .mod_navigation ul li a.highlight-outline-square-color-accent,
#mmenu .mod_navigation ul li a.highlight_outline_rounded_color_accent,
#mmenu .mod_navigation ul li a.highlight-outline-rounded-color-accent,
#mmenu .mod_navigation ul li a.highlight_outline_rounded50_color_accent,
#mmenu .mod_navigation ul li a.highlight-outline-rounded50-color-accent {
  box-shadow: inset 0 0px 0px 2px var(--accentColor);
}

/* second color */

.header .mainmenu ul li a.highlight_color_second span,
.header .mainmenu ul li a.highlight-color-second span,
.header .mainmenu ul li a.highlight_square_color_second span,
.header .mainmenu ul li a.highlight-square-color-second span,
.header .mainmenu ul li a.highlight_rounded_color_second span,
.header .mainmenu ul li a.highlight-rounded-color-second span,
#mmenu .mod_navigation ul li a.highlight_color_second,
#mmenu .mod_navigation ul li a.highlight-color-second,
#mmenu .mod_navigation ul li a.highlight_square_color_second,
#mmenu .mod_navigation ul li a.highlight-square-color-second,
#mmenu .mod_navigation ul li a.highlight_rounded_color_second,
#mmenu .mod_navigation ul li a.highlight-rounded-color-second {
  background: var(--secondColor);
}

.header .mainmenu ul li a.highlight_outline_square_color_second span,
.header .mainmenu ul li a.highlight-outline-square-color-second span,
.header .mainmenu ul li a.highlight_outline_rounded_color_second span,
.header .mainmenu ul li a.highlight-outline-rounded-color-second span,
#mmenu .mod_navigation ul li a.highlight_outline_square_color_second,
#mmenu .mod_navigation ul li a.highlight-outline-square-color-second,
#mmenu .mod_navigation ul li a.highlight_outline_rounded_color_second,
#mmenu .mod_navigation ul li a.highlight-outline-rounded-color-second {
  box-shadow: inset 0 0px 0px 2px var(--secondColor);
}

/* =============================================================================
  * smartmenu - content
  * ========================================================================== */

.smartmenu-content {
  position: fixed;
  z-index: 100000000;
  right: 0;
  top: 0;
  right: -50%;
  width: 50vw;
  height: 100%;
  background: rgba(24, 24, 24, 1);
  visibility: hidden;
  opacity: 0;
  transition: all 0.8s cubic-bezier(0.15, 0.2, 0.1, 1);
}

.smartmenu-content.open {
  visibility: visible;
  opacity: 1;
  right: 0;
}

.smartmenu-content .smartmenu-scrollable {
  max-height: 100vh;
  overflow: auto;
}

.smartmenu-content .smartmenu-table {
  margin-top: 20vh;
}

.smartmenu-content .mod_navigation .level_1 ul {
  display: none;
}

.smartmenu-content .mod_navigation li:not(.floatbox) {
  font-size: 1.7rem;
  line-height: 2rem;
  font-weight: normal;
  padding: 0.5rem 0.5rem 0.5rem 0;
  position: relative;
  padding-right: 60px;
}

.smartmenu-content .mod_navigation .level_2 li {
  font-size: 1.2rem;
  line-height: 1.3rem;
  text-transform: none;
}

.smartmenu-content .mod_navigation ul.level_1 {
  padding: 40px;
}

.smartmenu-content .mod_navigation a {
  color: rgb(255, 255, 255);
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  position: relative;
}

.smartmenu-content .mod_navigation a.hasIcon {
  padding-left: 2.4em;
}

.smartmenu-content .mod_navigation a.hasIcon i {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2.4em;
  text-align: center;
}

.smartmenu-content .mod_navigation a.active,
.smartmenu-content .mod_navigation a.trail {
  border-bottom: 1px solid rgb(255, 255, 255);
}

.smartmenu-content .mod_navigation ul.level_2 {
  margin-top: 20px;
}

.smartmenu-content .mod_navigation ul.level_3 {
  margin-top: 20px;
  margin-left: 25px;
}

.smartmenu-content .mod_navigation a:hover {
  opacity: 0.8;
}

.smartmenu-content .subitems_trigger {
  display: inline-block;
  margin-left: auto;
  position: absolute;
  right: 0;
}

.smartmenu-content .subitems_trigger:before {
  content: "[+]";
  color: rgba(255, 255, 255, 0.8);
  margin-left: auto;
}

.smartmenu-content .mod_navigation li.open > .subitems_trigger:before {
  content: "[-]";
}

.smartmenu-content .smartmenu-close {
  position: absolute;
  right: 40px;
  top: 40px;
  width: 35px;
  height: 35px;
  cursor: pointer;
}

.smartmenu-content .smartmenu-close:before,
.smartmenu-content .smartmenu-close:after {
  display: inline-block;
  width: 35px;
  height: 1px;
  background: rgb(255, 255, 255);
  content: "";
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.smartmenu-content .smartmenu-close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-left: -35px;
}

body div.body {
  transition: all 0.8s cubic-bezier(0.15, 0.2, 0.1, 1);
  transform-origin: top;
  padding: 0;
}

body.smartmenu_open div.body {
  transform: translateX(-50vw) translateZ(0);
  transform-origin: top;
  transition: all 0.8s cubic-bezier(0.15, 0.2, 0.1, 1);
  padding-top: 55px;
}

body.smartmenu_open .stickyheader {
  transform: translateX(-50vw) translateZ(0);
  transform-origin: top;
  transition: transform 0.8s cubic-bezier(0.15, 0.2, 0.1, 1);
}

/* =============================================================================
  * smartmenu - trigger
  * ========================================================================== */

.smartmenu {
  float: right;
  margin-left: 20px;
  line-height: 40px;
  display: none;
}

.smartmenu .smartmenu-trigger {
  height: 100px;
  width: 35px;
  position: relative;
  z-index: 1000000000;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  cursor: pointer;
}

.header.cloned .smartmenu .smartmenu-trigger {
  height: 70px;
}

.smartmenu .smartmenu-trigger .line {
  height: 1px;
  background: #393939;
  width: 35px;
  position: absolute;
  display: block;
  top: 50%;
  margin-top: -1px;
}

.smartmenu .smartmenu-trigger .line:before,
.smartmenu .smartmenu-trigger .line:after {
  display: inline-block;
  width: 35px;
  height: 1px;
  background: #393939;
  position: absolute;
  left: 0;
  content: "";
  top: 50%;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

.smartmenu .smartmenu-trigger .line:before {
  margin-top: 11px;
}

.smartmenu .smartmenu-trigger .line:after {
  margin-top: -11px;
}

/* =============================================================================
  * header sidebar trigger for smallview
  * ========================================================================== */

.sidebar_trigger {
  display: none;
}

/* =============================================================================
  * overwrite framework defaults
  * ========================================================================== */

.color-white .ce_list li:after {
  background-color: rgba(255, 255, 255, 0.8);
}

textarea {
  height: inherit;
}

.mod_search input.submit,
.mod_search button.submit {
  width: auto;
}

.mod_login .submit_container {
  margin-top: 25px;
}

.font-size-m {
  line-height: 1.3;
}

#slider {
  position: relative;
  z-index: 5;
}

.header .mainmenu ul li span.pagetitle {
  line-height: 18px;
  font-size: 0.7rem;
  font-weight: bold;
  margin-left: 5px;
  background: red;
  color: #fff;
  border-radius: 2px;
  position: relative;
  top: -4px;
  padding-left: 3px;
  padding-right: 3px;
}

.pdf_link {
  margin-bottom: 10px;
}

.ce_accordion .toggler {
  padding: 10px 20px;
  margin-bottom: 0;
}

.ce_accordion .toggler.ui-state-active {
  border-bottom: 1px dotted rgb(220, 220, 220);
}

.ce_accordion {
  margin-bottom: 1px;
  border: 1px solid rgb(220, 220, 220);
}

.ce_table table td {
  border-top: 0;
  border-bottom: solid 1px rgb(227, 227, 227);
}

/* =============================================================================
  * form AG columns reset
  * ========================================================================== */

.ce_form .column[class*="col_"] {
  margin-bottom: 0;
}

/* =============================================================================
  * form style2
  * ========================================================================== */

form.style2 {
  padding: 27px;
  background: var(--accentColor);
}

form.style2 input,
form.style2 textarea,
form.style2 select {
  border-color: transparent;
  border-radius: 0;
}

form.style2 textarea {
  height: 95px;
}

form.style2 h1,
form.style2 h2,
form.style2 h3,
form.style2 h4,
form.style2 h5,
form.style2 h6 {
  color: rgb(255, 255, 255);
}

form.style2 input.submit:hover,
form.style2 button.submit:hover {
  opacity: 0.9;
}

form.style2 input.submit,
form.style2 input.submit[type="submit"]:hover,
form.style2 button.submit,
form.style2 button.submit[type="submit"]:hover {
  background-color: var(--secondColor);
}

/* =============================================================================
  * form style3
  * ========================================================================== */

form.style3 {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

/* =============================================================================
  * form style4
  * ========================================================================== */

form.style4 {
  border: 5px solid rgb(227, 227, 227);
  padding: 50px 40px 20px 40px;
  background: rgba(255, 255, 255, 0.3);
}

form.style4 input,
form.style4 select,
form.style4 textarea {
  background-color: rgb(248, 248, 248);
}

form.style4 fieldset {
  border: 0;
  padding: 0;
}

form.style4 input[type="submit"],
form.style4 button,
form.style4 input[type="time"],
form.style4 select {
  height: 50px;
}

form.style4 input[type="submit"],
form.style4 button {
  border-radius: 0;
}

/* =============================================================================
  * form style5
  * ========================================================================== */

form.style5 input,
form.style5 select,
form.style5 textarea {
  background-color: rgb(247, 247, 247);
  border-color: rgb(247, 247, 247);
  font-size: 0.9rem;
  padding: 20px;
  border-radius: 20px;
}

form.style5 input.submit,
form.style5 button.submit {
  height: auto;
  padding: 20px;
  font-size: 1rem;
}

form.style5 textarea:hover {
  border-color: rgb(153, 153, 153);
}

form.style5 select {
  height: 59px;
}

/* =============================================================================
  * form style6
  * ========================================================================== */

form.style6 {
  background: rgba(0, 0, 0, 0.4);
  padding: 25px;
  color: rgb(255, 255, 255);
}

form.style6 input,
form.style6 select,
form.style6 textarea {
  background-color: rgba(200, 200, 200, 0.3);
  color: rgb(255, 255, 255);
  border-color: rgba(200, 200, 200, 0.3);
}

form.style6 select option {
  color: rgb(50, 50, 50);
}

form.style6 .explanation {
  margin-top: 20px;
}

form.style6 h1,
form.style6 h2,
form.style6 h3,
form.style6 h4,
form.style6 h5,
form.style6 h6 {
  color: rgb(255, 255, 255);
}

form.style6 input::-webkit-input-placeholder,
form.style6 textarea::-webkit-input-placeholder {
  color: #fff !important;
}

form.style6 input:-moz-placeholder,
form.style6 textarea:-moz-placeholder {
  color: #fff !important;
}

form.style6 input::-moz-placeholder,
form.style6 textarea::-moz-placeholder {
  color: #fff !important;
}

form.style6 input:-ms-input-placeholder,
form.style6 textarea:-ms-input-placeholder {
  color: #fff !important;
}

/* =============================================================================
  * form style7
  * ========================================================================== */

form.style7 input,
form.style7 select,
form.style7 textarea {
  background-color: transparent;
  border: 0;
  border-bottom: 1px solid rgb(150, 150, 150);
  padding-left: 0;
  padding-right: 0;
  border-radius: 0;
}

form.style7 input:hover,
form.style7 select:hover,
form.style7 textarea:hover {
  border-top: 0;
  border-right: 0;
  border-left: 0;
}

form.style7 select {
  padding: 0;
  height: 50px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-radius: 0px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i0KHQu9C+0LlfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIxNC4wNXB4IiBoZWlnaHQ9IjcuNzM4cHgiIHZpZXdCb3g9IjUuOTkgMTAuOTg3IDE0LjA1IDcuNzM4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDUuOTkgMTAuOTg3IDE0LjA1IDcuNzM4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBpZD0iRXhwYW5kX01vcmUiIGZpbGw9IiM0NDQ0NDQiIGQ9Ik0xOC44MzEsMTEuMTk1bC01LjgxNSw1LjgxNmwtNS44MTUtNS44MTdjLTAuMjc3LTAuMjc3LTAuNzI2LTAuMjc3LTEuMDAyLDBjLTAuMjc3LDAuMjc3LTAuMjc3LDAuNzI2LDAsMS4wMDNsNi4zMTYsNi4zMThsMCwwbDAsMGMwLjI3NywwLjI3NywwLjcyNiwwLjI3NywxLjAwMiwwbDYuMzE2LTYuMzE4YzAuMjc2LTAuMjc3LDAuMjc2LTAuNzI3LDAtMS4wMDRDMTkuNTU3LDEwLjkxOCwxOS4xMDgsMTAuOTE4LDE4LjgzMSwxMS4xOTV6Ii8+PC9zdmc+);
  background-position: 100% 58%;
  background-repeat: no-repeat;
}

.firefox form.style7 select {
  height: 51px;
}

form.style7 textarea {
  height: 250px;
}

form.style7 .explanation {
  font-size: 0.8rem;
  margin: 10px 0;
}

form.style7 input.submit,
form.style7 button.submit {
  width: auto;
  border-radius: 0;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 1rem;
}

form.style7 div.widget.widget-text {
  margin-top: 3px;
}

.color-white form.style7 select,
.color-white form.style7 input.timepicker,
.color-white form.style7 input.datepicker,
.color-white form.style7 input::-webkit-input-placeholder,
.color-white form.style7 textarea::-webkit-input-placeholder {
  color: #fff !important;
}

.color-white form.style7 input.timepicker::-webkit-calendar-picker-indicator,
.color-white form.style7 input.datepicker::-webkit-calendar-picker-indicator {
  filter: invert(1);
}

/* =============================================================================
  * form style8
  * ========================================================================== */

form.style8 {
  border: 8px solid rgba(0, 0, 0, 0.1);
}

form.style8 .formbody {
  padding: 40px 30px;
  position: relative;
  background: #fff;
}

form.style8 input.submit[type="submit"],
form.style8 button.submit[type="submit"] {
  background: none;
  border: 3px solid var(--accentColor);
  color: var(--accentColor);
  border-radius: 0;
  height: auto;
  font-size: 1rem;
  padding: 15px;
}

/* =============================================================================
  * fieldset w/checkbox_selector
  * ========================================================================== */

form {
  transition: All 0.7s ease;
  -webkit-transition: All 0.7s ease;
}

fieldset {
  opacity: 1;
  transition: All 0.7s ease;
  -webkit-transition: All 0.7s ease;
}

/* =============================================================================
  * FontAwesome for ce_form input
  * ========================================================================== */

.formicon-wrapper {
  position: relative;
}

.formicon-wrapper .input-group-addon {
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}

.formicon-wrapper .text {
  padding-left: 35px;
}

/* =============================================================================
  * autogrid - extra classes
  * ========================================================================== */

.autogrid_wrapper.grid-l {
  margin-left: -3%;
  margin-right: -3%;
}

.autogrid_wrapper.grid-l .ce_autogridWrapperStart.autogrid {
  padding-left: 3%;
  padding-right: 3%;
}

.autogrid.no_gutter {
  padding-left: 0;
  padding-right: 0;
}

/* =============================================================================
  * revolution slider
  * ========================================================================== */

.ce_revolutionslider {
  position: relative;
}

.ce_revolutionslider .ce_text_extented a {
  text-decoration: none;
  color: inherit;
}

.ce_revolutionslider .banner.responsive {
  visibility: hidden;
}

.ce_revolutionslider .banner.responsive.revslider-initialised {
  visibility: visible;
}

.ce_revolutionslider .tp-dottedoverlay {
  z-index: 1;
}

.ce_revolutionslider_hyperlink {
  font-size: 13px;
  font-weight: bold;
}

.ce_revolutionslider_hyperlink.text-link {
  background: none;
  border: 0;
  min-width: 0;
  padding: 0;
  color: inherit;
}

.ce_revolutionslider_hyperlink.color-second {
  background: var(--secondColor);
  border-color: var(--secondColor);
  color: #fff;
}

.ce_revolutionslider_hyperlink.text-link:after {
  font-family: FontAwesome;
  content: "\f0da";
  margin-left: 5px;
  color: var(--accentColor);
}

.ce_revolutionslider_text {
  line-height: 1.5;
}

.ce_revolutionslider_text.italic {
  font-family: Georgia, Times, serif;
  font-style: italic;
}

.ce_revolutionslider_text[class*="bg-"] {
  padding-left: 0.3em;
  padding-right: 0.3em;
}

.ce_revolutionslider .ce_revolutionslider_image img.hidden {
  display: none;
}

.ce_revolutionslider .tp-bannertimer {
  top: auto;
  bottom: 0;
  height: 5px;
}

.ce_revolutionslider .hesperiden .tp-tab-date {
  line-height: 1.7;
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-90 {
  background: rgba(0, 0, 0, 0.9);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-80 {
  background: rgba(0, 0, 0, 0.8);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-70 {
  background: rgba(0, 0, 0, 0.7);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-60 {
  background: rgba(0, 0, 0, 0.6);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-50 {
  background: rgba(0, 0, 0, 0.5);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-40 {
  background: rgba(0, 0, 0, 0.4);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-30 {
  background: rgba(0, 0, 0, 0.3);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-20 {
  background: rgba(0, 0, 0, 0.2);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-d-10 {
  background: rgba(0, 0, 0, 0.1);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-90 {
  background: rgba(255, 255, 255, 0.9);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-80 {
  background: rgba(255, 255, 255, 0.8);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-70 {
  background: rgba(255, 255, 255, 0.7);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-60 {
  background: rgba(255, 255, 255, 0.6);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-50 {
  background: rgba(255, 255, 255, 0.5);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-40 {
  background: rgba(255, 255, 255, 0.4);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-30 {
  background: rgba(255, 255, 255, 0.3);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-20 {
  background: rgba(255, 255, 255, 0.2);
}

.ce_revolutionslider .tp-dottedoverlay.opacity-l-10 {
  background: rgba(255, 255, 255, 0.1);
}

.ce_revolutionslider .tp-dottedoverlay.accent-color-90,
.ce_revolutionslider .tp-dottedoverlay.accent-color-80,
.ce_revolutionslider .tp-dottedoverlay.accent-color-70,
.ce_revolutionslider .tp-dottedoverlay.accent-color-60,
.ce_revolutionslider .tp-dottedoverlay.accent-color-50,
.ce_revolutionslider .tp-dottedoverlay.accent-color-40,
.ce_revolutionslider .tp-dottedoverlay.accent-color-30,
.ce_revolutionslider .tp-dottedoverlay.accent-color-20,
.ce_revolutionslider .tp-dottedoverlay.accent-color-10 {
  background: var(--accentColor);
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link {
  background: none !important;
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link {
  background: none !important;
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-white,
.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-white:after {
  color: rgb(255, 255, 255);
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-black,
.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-black:after {
  color: rgb(0, 0, 0);
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-gray,
.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-gray:after {
  color: rgb(144, 144, 144);
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-second,
.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-second:after {
  color: var(--secondColor);
}

.ce_revolutionslider .gallery:not(.revslider-initialised) {
  opacity: 0;
}

.ce_revolutionslider_text.bold {
  font-weight: bold;
}

.ce_revolutionslider_text.invertcolor {
  color: rgb(255, 255, 255);
}

.ce_revolutionslider_hyperlink {
  background: var(--accentColor);
  border: 1px solid var(--accentColor);
  color: rgb(255, 255, 255);
  padding: 0 35px;
  line-height: 50px;
  transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
  min-width: 175px;
  text-align: center;
  border-width: 1px !important;
}

.ce_revolutionslider_hyperlink:hover {
  opacity: 0.9 !important;
}

.ce_revolutionslider_hyperlink.outline {
  border: 1px solid rgb(255, 255, 255);
  background: none;
  text-align: center;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
}

.ce_revolutionslider_hyperlink.outline:hover {
  background: rgba(255, 255, 255, 0.1);
}

.ce_revolutionslider_hyperlink.outline-dark {
  border: 1px solid rgb(59, 60, 66);
  background: none;
  text-align: center;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  color: rgb(59, 60, 66);
}

.ce_revolutionslider_hyperlink.outline-dark:hover {
  background: rgb(59, 60, 66);
  color: rgb(255, 255, 255);
}

.ce_revolutionslider_hyperlink.dark {
  border: 1px solid rgb(59, 60, 66);
  background: rgb(59, 60, 66);
  text-align: center;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  color: rgb(255, 255, 255);
}

.ce_revolutionslider_hyperlink.dark:hover {
  background: rgba(59, 60, 66, 0.9);
  color: rgb(255, 255, 255);
}

.ce_revolutionslider_hyperlink.light {
  border: 1px solid rgb(255, 255, 255);
  background: rgb(255, 255, 255);
  text-align: center;
  transition: All 0.3s ease;
  -webkit-transition: All 0.3s ease;
  color: var(--accentColor);
}

.ce_revolutionslider_hyperlink.light:hover {
  background: rgba(255, 255, 255, 0.9);
}

.ce_revolutionslider_text.bg-white {
  background: rgba(255, 255, 255, 0.7);
}

.ce_revolutionslider_hyperlink.btn-size-small {
  padding: 9px 15px;
  font-size: 0.75rem;
  line-height: 1.8rem;
}

.ce_revolutionslider_hyperlink.btn-size-medium {
  padding: 9px 20px;
  font-size: 1rem;
  line-height: 1.8rem;
}

.ce_revolutionslider_hyperlink.btn-size-large {
  padding: 10px 90px;
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-accent,
.ce_revolutionslider .ce_revolutionslider_hyperlink.text-link.btn-accent:after {
  color: var(--accentColor);
}

/* =============================================================================
  * revolutions slider module // template revoslider_fullscreen_arrowdown.html5
  * ========================================================================== */

.ce_revolutionslider #linkToContent {
  position: relative;
  width: 32px;
  height: 46px;
  border: 2px solid #fff;
  border-radius: 15px;
  position: absolute;
  bottom: 30px;
  margin: 0 auto;
  left: 0;
  right: 0;
  z-index: 100;
}

.ce_revolutionslider #linkToContent .wheel {
  display: block;
  width: 6px;
  height: 6px;
  background-color: #fff;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 6px;
  left: 0;
  right: 0;
  -webkit-animation: mousewheel 1.7s infinite ease;
  animation: mousewheel 1.7s infinite ease;
}

.ce_revolutionslider #linkToContent.dark-wheel {
  border-color: rgba(0, 0, 0, 0.7);
}

.ce_revolutionslider #linkToContent.dark-wheel .wheel {
  background: rgba(0, 0, 0, 0.7);
}

@keyframes mousewheel {
  0% {
    margin-top: 6px;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    margin-top: 18px;
    opacity: 0;
  }
}
@-webkit-keyframes mousewheel {
  0% {
    margin-top: 6px;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    margin-top: 18px;
    opacity: 0;
  }
}

/* =============================================================================
  * #privacy_optout_link
  * ========================================================================== */

#privacy_optout_link {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

.fixed-header #privacy_optout_link {
  bottom: 45px;
}

/* =============================================================================
 * smart phones  (s / small screens)
 * ========================================================================== */
@media only screen and (max-width: 767px) {
  .ce_revolutionslider_hyperlink.outline {
    background: rgba(255, 255, 255, 0.4);
  }
}

/* =============================================================================
  * onepage horizontal scrolling
  * ========================================================================== */

@media only screen and (min-width: 768px) {
  .onepage_page.horizontal_scrolling {
    overflow-x: visible;
  }

  .onepage_page.horizontal_scrolling #fix-wrapper {
    position: fixed;
  }

  .onepage_page.horizontal_scrolling #slider .inside {
    overflow: hidden;
  }

  .onepage_page.horizontal_scrolling #slider .inside .mod_article {
    float: left;
    width: 100vw;
    vertical-align: top;
  }

  .onepage_page.horizontal_scrolling #bottom {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 10;
  }

  .onepage_page.horizontal_scrolling.onepage_items_2 #slider > div.inside {
    width: calc(100vw * 2);
  }

  .onepage_page.horizontal_scrolling.onepage_items_3 #slider > div.inside {
    width: calc(100vw * 3);
  }

  .onepage_page.horizontal_scrolling.onepage_items_4 #slider > div.inside {
    width: calc(100vw * 4);
  }

  .onepage_page.horizontal_scrolling.onepage_items_5 #slider > div.inside {
    width: calc(100vw * 5);
  }

  .onepage_page.horizontal_scrolling.onepage_items_6 #slider > div.inside {
    width: calc(100vw * 6);
  }

  .onepage_page.horizontal_scrolling.onepage_items_7 #slider > div.inside {
    width: calc(100vw * 7);
  }

  .onepage_page.horizontal_scrolling.onepage_items_8 #slider > div.inside {
    width: calc(100vw * 8);
  }

  .onepage_page.horizontal_scrolling.onepage_items_9 #slider > div.inside {
    width: calc(100vw * 9);
  }

  .onepage_page.horizontal_scrolling.onepage_items_10 #slider > div.inside {
    width: calc(100vw * 10);
  }
}

/* =============================================================================
  * breakpoint show smartmenu / hide mainmenu
  * ========================================================================== */

@media only screen and (min-width: 768px) and (max-width: 1025px) {
  .smartmenu {
    display: block;
  }

  .mainmenu {
    display: none;
  }
}

/* =============================================================================
  * breakpoint for topbar // hide mod_top_phone
  * ========================================================================== */

@media only screen and (min-width: 768px) and (max-width: 1035px) {
  #top .mod_top_phone {
    display: none;
  }

  #top .mod_top_mail a {
    padding-left: 0;
  }
}

/* =============================================================================
 * mobile
 * ========================================================================== */

@media only screen and (max-width: 767px) {
  .font-size-xxxxxl,
  .font-size-xxxxxl p {
    font-size: 3.5rem;
  }

  .font-size-xxxxl,
  .font-size-xxxxl p {
    font-size: 3rem;
  }

  .font-size-xxxl,
  .font-size-xxxl p {
    font-size: 2.333rem;
  }

  .font-size-xxl,
  .font-size-xxl p {
    font-size: 2rem;
  }

  .font-size-xl,
  .font-size-xl p {
    font-size: 1.533rem;
  }

  .font-size-l,
  .font-size-l p {
    font-size: 1.467rem;
  }

  .font-size-m,
  .font-size-m p {
    font-size: 1.2rem;
  }

  .font-size-s,
  font-size-s p {
    font-size: 1.133rem;
  }

  .font-size-xs,
  .font-size-xs p {
    font-size: 1.067rem;
  }

  .font-size-xxs,
  .font-size-xxs p {
    font-size: 0.9333rem;
  }

  .font-size-xxxs,
  .font-size-xxxs p {
    font-size: 0.8rem;
  }

  .font-size-xxxxs,
  .font-size-xxxxs p {
    font-size: 0.7333rem;
  }

  .font-size-xxxxxs,
  .font-size-xxxxxs p {
    font-size: 0.6667rem;
  }

  .hide-s {
    display: none !important;
  }

  .hide-mobile,
  .hide_mobile,
  .only-desktop,
  .only_desktop {
    display: none !important;
  }

  .mob_no_up > .attributes {
    margin-top: 0 !important;
  }

  .bg-none-mobile .attributes {
    background: none !important;
  }

  #slider {
    padding-top: 0 !important;
  }

  .mainmenu {
    display: none;
  }

  #nav-open-btn {
    display: block;
  }

  body {
    padding: 0;
  }

  #wrapper {
    width: 100%;
  }

  #nav-open-btn {
    right: 20px;
  }

  .image_container {
    padding: 0;
    float: none;
  }

  html {
    -webkit-text-size-adjust: none;
  }

  table {
    font-size: 0.7333rem;
  }

  body.sidebar #container {
    display: block;
    padding-left: 0;
    padding-right: 0;
  }

  body.sidebar #main .mod_article > .container {
    padding-bottom: 0 !important;
  }

  body.sidebar #main > .inside {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.sidebar #main {
    border-left: 0;
    border-right: 0;
  }

  body.sidebar #left > .inside {
    margin-right: 0;
  }

  body.sidebar.right #right > .inside {
    margin-left: 0;
  }

  body.sidebar.both #right > .inside {
    margin-left: 0;
  }

  body.sidebar #right .inside,
  body.sidebar #left .inside {
    padding-top: 0;
    padding-bottom: 0;
  }

  .subnav {
    display: none;
  }

  .mod_calendar table {
    font-size: 0.4667rem;
  }

  .mod_subscribe input {
    width: 100%;
    margin-bottom: 10px;
  }

  .mod_registration label,
  .mod_registration input,
  .mod_registration .submit_container input,
  .mod_registration .submit_container button,
  .mod_registration .captcha_text {
    width: 100%;
    margin: 0;
  }

  .mod_registration .captcha_text {
    margin: 10px 0 15px 0;
  }

  .mod_registration p.error {
    margin-left: 0;
  }

  form .captcha_text {
    line-height: 1em;
  }

  .mod_search input,
  .mod_search button,
  .mod_search .widget-text,
  .mod_search .widget-submit {
    width: 100% !important;
    float: none;
    margin-bottom: 5px;
    margin-left: 0 !important;
  }

  .more a {
    padding: 2px 5px;
    font-size: 80%;
  }

  .mod_faqpage section {
    width: 100%;
    padding: 20px;
  }

  #slider .slider-control a.slider-next:after,
  #slider .slider-control a.slider-prev:before {
    font-size: 55px;
  }

  .image_container .caption {
    font-size: 0.8rem;
    position: static;
    display: inline-block;
  }

  .autogrid {
    flex: 0 0 100% !important;
    width: 100% !important;
  }

  #footer div.autogrid {
    flex: 0 0 100% !important;
    width: 100% !important;
  }

  #wrapper .autogrid_wrapper.article .inner {
    margin-left: 0;
    margin-right: 0;
  }

  .autogrid_displacer {
    margin-left: 0 !important;
  }

  .pagination ul,
  .pagination p {
    float: none;
    display: block;
    width: 100%;
  }

  .only_mobile,
  .only-mobile {
    display: block !important;
  }

  .mod_calendar td .event {
    text-overflow: ellipsis;
    overflow: hidden;
    width: 38px;
    white-space: normal;
    font-size: 0.5rem;
  }

  .zoomContainer {
    display: none;
  }

  .ce_text .image_container {
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none;
  }

  .newslist-col2 .newslist-v3 {
    flex: 0 0 100%;
  }

  .align-left-m,
  .align-left-m * {
    text-align: left !important;
  }

  .align-center-m,
  .align-center-m * {
    text-align: center !important;
  }

  .align-right-m,
  .align-right-m * {
    text-align: right !important;
  }

  .mmenu_trigger {
    display: flex;
  }

  .mod_subscribe .formbody {
    display: block;
  }

  .mod_subscribe .formbody .widget-text {
    margin: 0;
  }

  .ce_hyperlink.mb-0-m a {
    margin-bottom: 0;
  }

  .ce_hyperlink a,
  a.btn {
    display: block;
  }

  #main .mod_article:not(.fullwidth) > .container,
  #left .mod_article > .container,
  #right .mod_article > .container,
  #main .mod_article.fullwidth.boxed-content .contentwrap,
  #main .autogrid_wrapper.article,
  #main .mod_article .ce_parallax .contentwrap,
  #main .mod_article .ce_bgimage .ce_bgimage-inside,
  #main .mod_article .ce_youtube_background .contentwrap,
  .ce_headerimage .ce_headerimage_inside,
  .ce_bgimage-inside,
  .header .inside,
  .ce_iconbox_header .contentwrap,
  .mod_pageimage .container,
  .ce_easy_slider .swiper-inside .swiper-inside-wrap {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  #main .autogrid_wrapper.article .mod_article,
  #main .mod_article.fullwidth {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .mod_article:not(.fullwidth) > .container {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .mod_article.article-pt-0 > .container {
    padding-top: 0;
  }

  .mod_article.article-pb-0 > .container {
    padding-bottom: 0;
  }

  .mod_article.article-pt-xxs > .container,
  .mod_article.article-pt-xs > .container,
  .mod_article.article-pt-s > .container,
  .mod_article.article-pt-m > .container,
  .mod_article.article-pt-l > .container,
  .mod_article.article-pt-xl > .container,
  .mod_article.article-pt-xxl > .container {
    padding-top: 50px;
  }
  .mod_article.article-pb-xxs > .container,
  .mod_article.article-pb-xs > .container,
  .mod_article.article-pb-s > .container,
  .mod_article.article-pb-m > .container,
  .mod_article.article-pb-l > .container,
  .mod_article.article-pb-xl > .container,
  .mod_article.article-pb-xxl > .container {
    padding-bottom: 50px;
  }

  .header {
    padding-bottom: 0;
    padding-top: 0;
  }

  #fix-wrapper {
    top: 0;
    left: 0;
    width: 100%;
  }

  #bottom .inside .left,
  #bottom .inside .right {
    float: none;
  }

  #bottom .inside .right a {
    margin-left: 0;
    margin-right: 15px;
  }

  #footer .inside {
    padding: 40px 20px;
  }

  body.content_page #slider .pagetitle {
    font-size: 1.467rem;
  }

  #bottom .inside {
    padding-left: 20px;
    padding-right: 20px;
  }

  #footer .totop:before {
    display: none;
  }

  .ce_hyperlink.small a,
  a.btn.small,
  .ce_hyperlink a,
  a.btn {
    font-size: 0.9rem;
  }

  h1,
  .h1,
  .h1 p,
  body .headline_style_h1 h1,
  body .headline_style_h1 h2,
  body .headline_style_h1 h3,
  body .headline_style_h1 h4,
  body .headline_style_h1 h5,
  body .headline_style_h1 h6,
  body h1.headline_style_h1,
  body h2.headline_style_h1,
  body h3.headline_style_h1,
  body h4.headline_style_h1,
  body h5.headline_style_h1,
  body h6.headline_style_h1 {
    font-size: 1.733rem;
    margin-bottom: 15px;
  }

  h2,
  .h2,
  .h2 p,
  body .headline_style_h2 h1,
  body .headline_style_h2 h2,
  body .headline_style_h2 h3,
  body .headline_style_h2 h4,
  body .headline_style_h2 h5,
  body .headline_style_h2 h6,
  body h1.headline_style_h2,
  body h2.headline_style_h2,
  body h3.headline_style_h2,
  body h4.headline_style_h2,
  body h5.headline_style_h2,
  body h6.headline_style_h2 {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }

  h3,
  .h3,
  .h3 p,
  body .headline_style_h3 h1,
  body .headline_style_h3 h2,
  body .headline_style_h3 h3,
  body .headline_style_h3 h4,
  body .headline_style_h3 h5,
  body .headline_style_h3 h6,
  body h1.headline_style_h3,
  body h2.headline_style_h3,
  body h3.headline_style_h3,
  body h4.headline_style_h3,
  body h5.headline_style_h3,
  body h6.headline_style_h3 {
    font-size: 1.467rem;
    margin-bottom: 10px;
  }

  h4,
  .h4,
  .h4 p,
  body .headline_style_h4 h1,
  body .headline_style_h4 h2,
  body .headline_style_h4 h3,
  body .headline_style_h4 h4,
  body .headline_style_h4 h5,
  body .headline_style_h4 h6,
  body h1.headline_style_h4,
  body h2.headline_style_h4,
  body h3.headline_style_h4,
  body h4.headline_style_h4,
  body h5.headline_style_h4,
  body h6.headline_style_h4 {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }

  h5,
  .h5,
  .h5 p,
  body .headline_style_h5 h1,
  body .headline_style_h5 h2,
  body .headline_style_h5 h3,
  body .headline_style_h5 h4,
  body .headline_style_h5 h5,
  body .headline_style_h5 h6,
  body h1.headline_style_h5,
  body h2.headline_style_h5,
  body h3.headline_style_h5,
  body h4.headline_style_h5,
  body h5.headline_style_h5,
  body h6.headline_style_h5 {
    font-size: 1.067rem;
    margin-bottom: 10px;
  }

  h6,
  .h6,
  .h6 p,
  body .headline_style_h6 h1,
  body .headline_style_h6 h2,
  body .headline_style_h6 h3,
  body .headline_style_h6 h4,
  body .headline_style_h6 h5,
  body .headline_style_h6 h6,
  body h1.headline_style_h6,
  body h2.headline_style_h6,
  body h3.headline_style_h6,
  body h4.headline_style_h6,
  body h5.headline_style_h6,
  body h6.headline_style_h6 {
    font-size: 1.067rem;
    margin-bottom: 10px;
  }

  .header .mod_langswitcher {
    position: absolute;
    right: 70px;
    top: 50%;
    margin-top: -19px;
    line-height: 40px;
    margin-left: 0 !important;
  }

  /*remove this line for showing the langswitch in mobile header */
  .header .mod_langswitcher {
    display: none;
  }

  .header .mod_search {
    display: none;
  }

  .ce_imagemap .hotspot {
    display: none;
  }

  .header.cloned {
    box-shadow: none;
  }

  body.fixed-header .header.cloned {
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  }

  #top {
    display: none;
  }

  .autogrid:not(.ce_autogridwrapper):not(.no_gutter) {
    margin-bottom: 25px;
  }

  body #contentwrapper .ce_form form .autogrid {
    margin-bottom: 0;
  }

  body .ce_form .autogrid {
    margin-bottom: 0;
  }

  .autogrid.autogrid-last {
    margin-bottom: 0;
  }

  #main .mod_article.autogrid {
    padding-top: 0;
    padding-bottom: 25px;
    margin-bottom: 0;
  }

  #main .mod_article.autogrid.autogrid-first {
    padding-top: 25px;
  }

  .ce_hyperlink.align-right {
    text-align: left !important;
  }

  .ce_revolutionslider #linkToContent {
    bottom: 10px;
  }

  .ce_revolutionslider .rs-container.fullscreen,
  .ce_revolutionslider .tp-fullwidth-forcer {
    height: calc(100vh - 70px) !important;
  }

  form.style4 {
    padding: 20px;
  }

  form.style4 .submit_container {
    margin-bottom: 10px;
  }

  .mod_langswitcher .mod_langswitcher_inside:before {
    top: -1px;
  }

  #mmenu_container {
    display: block;
  }

  #cboxPrevious {
    transform: scale(0.7);
    transform-origin: left;
  }

  #cboxNext {
    transform: scale(0.7);
    transform-origin: right;
  }

  #top .top_metanavi {
    display: none;
  }

  #top .mod_top_phone span {
    display: none;
  }

  #top .mod_socials {
    display: none;
  }

  #top .mod_login_top {
    display: none;
  }

  #top .inside {
    padding-left: 20px;
    padding-right: 20px;
  }

  #top .mod_top_mail a {
    padding-left: 0;
    padding-right: 0;
  }

  .grid-sizer {
    width: 100% !important;
  }

  .content-swiper .swiper-button-next,
  .content-swiper .swiper-button-prev {
    display: none;
  }

  .header {
    line-height: unset;
  }

  #mmenu #mmenu_top {
    z-index: 1000;
  }

  #mmenu #mmenu_middle {
    position: relative;
    z-index: 10;
  }
}

/* =============================================================================
  * browser bugfixes
  * ========================================================================== */

body.ie9 #fix-wrapper,
body.ie10 #fix-wrapper {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1MkVFOENGOTk2OUYxMUU1QjU3MTkyN0Q5MjBFRUJENSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1MkVFOENGQTk2OUYxMUU1QjU3MTkyN0Q5MjBFRUJENSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjUyRUU4Q0Y3OTY5RjExRTVCNTcxOTI3RDkyMEVFQkQ1IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjUyRUU4Q0Y4OTY5RjExRTVCNTcxOTI3RDkyMEVFQkQ1Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+ndvI8gAAABBJREFUeNpi+P//PwNAgAEACPwC/tuiTRYAAAAASUVORK5CYII=");
}
