* {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-font-smoothing: antialiased;
}
*:focus,
*:active {
  outline: none;
}
*::after,
*::before,
*:after,
*:before {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  -webkit-scroll-behavior: smooth;
}
body,
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: var(--fontFamily);
}
container,
.pageBlock .dropZone {
  position: relative;
  display: block;
  max-width: var(--containerWidth);
  margin: 0 auto;
}
.pageBlock.fullWidth .dropZone {
  max-width: 100%;
}
layout {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
}
.full-width {
  width: 100%;
}
.to-center {
  text-align: center;
}
img {
  max-width: 100%;
  height: auto;
  border: 0;
}
footer {
  position: relative;
  display: block;
  background-color: var(--footerBG);
  color: var(--footerColor);
  font-family: var(--footerFontFamily);
  padding-bottom: var(--footerpaddingBottom);
  padding-top: var(--footerpaddingTop);
}
footer .widget {
  position: relative;
  display: block;
  padding: var(--footerWidgetPadding);
}
footer .widget .heading {
  font-family: var(--footerHeadingfontFamily);
  font-size: var(--footerHeadingfontSize);
  font-weight: var(--footerHeadingfontWeight);
  padding: var(--footerHeadingPadding);
  margin: var(--footerHeadingMargin);
}
footer .widget p,
footer .widget ul,
footer .widget ol {
  font-size: var(--footerFontSize);
  line-height: var(--footerlineHeight);
}
footer .widget p.bigger,
footer .widget ul.bigger,
footer .widget ol.bigger {
  font-size: var(--footerBiggerFontSize);
}
footer .widget p a,
footer .widget ul a,
footer .widget ol a {
  position: relative;
  text-decoration: none;
  cursor: pointer;
  color: var(--footerLinkColor);
}
footer .widget p a:hover,
footer .widget ul a:hover,
footer .widget ol a:hover {
  color: var(--footerLinkColorHover);
}
footer .widget ul {
  position: relative;
  display: block;
  padding: var(--footerNavPadding);
  margin: var(--footerNavMargin);
}
footer .widget ul li {
  list-style: none;
  position: relative;
  display: block;
}
footer .widget ul li a {
  position: relative;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: var(--footerFontSize);
  line-height: var(--footerlineHeight);
  color: var(--footerLinkColor);
  cursor: pointer;
  text-decoration: none;
  font-weight: var(--footerLinkFontWeight);
}
footer .widget ul li a:hover {
  color: var(--footerLinkColorHover);
}
footer .widget ul li > ul {
  display: none;
}
footer .footer-copy {
  position: relative;
  display: block;
  margin-top: 20px;
}
footer .footer-copy p {
  text-align: center;
  margin-bottom: 0;
  font-size: var(--footerCopyfontSize);
  color: var(--footerCopyColor);
  line-height: var(--footerlineHeight);
  max-width: var(--footerCopyMaxWidth);
  margin: 0 auto;
}
@media only screen and (max-width: 767.98px) {
  footer .footer-copy p {
    text-align: left;
    margin: 0;
    padding-left: 40px;
    padding-right: 40px;
  }
}
grid,
.row {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
grid column,
.row column,
grid .col,
.row .col {
  position: relative;
  display: block;
  width: 100%;
}
@media only screen and (max-width: 767.98px) {
  grid column[mobile="1"],
  .row column[mobile="1"],
  grid .col[mobile="1"],
  .row .col[mobile="1"] {
    min-width: calc(100% / 12 * 1);
    max-width: calc(100% / 12 * 1);
  }
  grid column[mobile="2"],
  .row column[mobile="2"],
  grid .col[mobile="2"],
  .row .col[mobile="2"] {
    min-width: calc(100% / 12 * 2);
    max-width: calc(100% / 12 * 2);
  }
  grid column[mobile="3"],
  .row column[mobile="3"],
  grid .col[mobile="3"],
  .row .col[mobile="3"] {
    min-width: calc(100% / 12 * 3);
    max-width: calc(100% / 12 * 3);
  }
  grid column[mobile="4"],
  .row column[mobile="4"],
  grid .col[mobile="4"],
  .row .col[mobile="4"] {
    min-width: calc(100% / 12 * 4);
    max-width: calc(100% / 12 * 4);
  }
  grid column[mobile="5"],
  .row column[mobile="5"],
  grid .col[mobile="5"],
  .row .col[mobile="5"] {
    min-width: calc(100% / 12 * 5);
    max-width: calc(100% / 12 * 5);
  }
  grid column[mobile="6"],
  .row column[mobile="6"],
  grid .col[mobile="6"],
  .row .col[mobile="6"] {
    min-width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }
  grid column[mobile="7"],
  .row column[mobile="7"],
  grid .col[mobile="7"],
  .row .col[mobile="7"] {
    min-width: calc(100% / 12 * 7);
    max-width: calc(100% / 12 * 7);
  }
  grid column[mobile="8"],
  .row column[mobile="8"],
  grid .col[mobile="8"],
  .row .col[mobile="8"] {
    min-width: calc(100% / 12 * 8);
    max-width: calc(100% / 12 * 8);
  }
  grid column[mobile="9"],
  .row column[mobile="9"],
  grid .col[mobile="9"],
  .row .col[mobile="9"] {
    min-width: calc(100% / 12 * 9);
    max-width: calc(100% / 12 * 9);
  }
  grid column[mobile="10"],
  .row column[mobile="10"],
  grid .col[mobile="10"],
  .row .col[mobile="10"] {
    min-width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }
  grid column[mobile="11"],
  .row column[mobile="11"],
  grid .col[mobile="11"],
  .row .col[mobile="11"] {
    min-width: calc(100% / 12 * 11);
    max-width: calc(100% / 12 * 11);
  }
  grid column[mobile="12"],
  .row column[mobile="12"],
  grid .col[mobile="12"],
  .row .col[mobile="12"] {
    min-width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1279.98px) {
  grid column[tablet="1"],
  .row column[tablet="1"],
  grid .col[tablet="1"],
  .row .col[tablet="1"] {
    min-width: calc(100% / 12 * 1);
    max-width: calc(100% / 12 * 1);
  }
  grid column[tablet="2"],
  .row column[tablet="2"],
  grid .col[tablet="2"],
  .row .col[tablet="2"] {
    min-width: calc(100% / 12 * 2);
    max-width: calc(100% / 12 * 2);
  }
  grid column[tablet="3"],
  .row column[tablet="3"],
  grid .col[tablet="3"],
  .row .col[tablet="3"] {
    min-width: calc(100% / 12 * 3);
    max-width: calc(100% / 12 * 3);
  }
  grid column[tablet="4"],
  .row column[tablet="4"],
  grid .col[tablet="4"],
  .row .col[tablet="4"] {
    min-width: calc(100% / 12 * 4);
    max-width: calc(100% / 12 * 4);
  }
  grid column[tablet="5"],
  .row column[tablet="5"],
  grid .col[tablet="5"],
  .row .col[tablet="5"] {
    min-width: calc(100% / 12 * 5);
    max-width: calc(100% / 12 * 5);
  }
  grid column[tablet="6"],
  .row column[tablet="6"],
  grid .col[tablet="6"],
  .row .col[tablet="6"] {
    min-width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }
  grid column[tablet="7"],
  .row column[tablet="7"],
  grid .col[tablet="7"],
  .row .col[tablet="7"] {
    min-width: calc(100% / 12 * 7);
    max-width: calc(100% / 12 * 7);
  }
  grid column[tablet="8"],
  .row column[tablet="8"],
  grid .col[tablet="8"],
  .row .col[tablet="8"] {
    min-width: calc(100% / 12 * 8);
    max-width: calc(100% / 12 * 8);
  }
  grid column[tablet="9"],
  .row column[tablet="9"],
  grid .col[tablet="9"],
  .row .col[tablet="9"] {
    min-width: calc(100% / 12 * 9);
    max-width: calc(100% / 12 * 9);
  }
  grid column[tablet="10"],
  .row column[tablet="10"],
  grid .col[tablet="10"],
  .row .col[tablet="10"] {
    min-width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }
  grid column[tablet="11"],
  .row column[tablet="11"],
  grid .col[tablet="11"],
  .row .col[tablet="11"] {
    min-width: calc(100% / 12 * 11);
    max-width: calc(100% / 12 * 11);
  }
  grid column[tablet="12"],
  .row column[tablet="12"],
  grid .col[tablet="12"],
  .row .col[tablet="12"] {
    min-width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }
}
@media only screen and (min-width: 1280px) {
  grid column[pc="1"],
  .row column[pc="1"],
  grid .col[pc="1"],
  .row .col[pc="1"] {
    min-width: calc(100% / 12 * 1);
    max-width: calc(100% / 12 * 1);
  }
  grid column[pc="2"],
  .row column[pc="2"],
  grid .col[pc="2"],
  .row .col[pc="2"] {
    min-width: calc(100% / 12 * 2);
    max-width: calc(100% / 12 * 2);
  }
  grid column[pc="3"],
  .row column[pc="3"],
  grid .col[pc="3"],
  .row .col[pc="3"] {
    min-width: calc(100% / 12 * 3);
    max-width: calc(100% / 12 * 3);
  }
  grid column[pc="4"],
  .row column[pc="4"],
  grid .col[pc="4"],
  .row .col[pc="4"] {
    min-width: calc(100% / 12 * 4);
    max-width: calc(100% / 12 * 4);
  }
  grid column[pc="5"],
  .row column[pc="5"],
  grid .col[pc="5"],
  .row .col[pc="5"] {
    min-width: calc(100% / 12 * 5);
    max-width: calc(100% / 12 * 5);
  }
  grid column[pc="6"],
  .row column[pc="6"],
  grid .col[pc="6"],
  .row .col[pc="6"] {
    min-width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }
  grid column[pc="7"],
  .row column[pc="7"],
  grid .col[pc="7"],
  .row .col[pc="7"] {
    min-width: calc(100% / 12 * 7);
    max-width: calc(100% / 12 * 7);
  }
  grid column[pc="8"],
  .row column[pc="8"],
  grid .col[pc="8"],
  .row .col[pc="8"] {
    min-width: calc(100% / 12 * 8);
    max-width: calc(100% / 12 * 8);
  }
  grid column[pc="9"],
  .row column[pc="9"],
  grid .col[pc="9"],
  .row .col[pc="9"] {
    min-width: calc(100% / 12 * 9);
    max-width: calc(100% / 12 * 9);
  }
  grid column[pc="10"],
  .row column[pc="10"],
  grid .col[pc="10"],
  .row .col[pc="10"] {
    min-width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }
  grid column[pc="11"],
  .row column[pc="11"],
  grid .col[pc="11"],
  .row .col[pc="11"] {
    min-width: calc(100% / 12 * 11);
    max-width: calc(100% / 12 * 11);
  }
  grid column[pc="12"],
  .row column[pc="12"],
  grid .col[pc="12"],
  .row .col[pc="12"] {
    min-width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }
}
header {
  position: relative;
  display: block;
  background-color: var(--headerBG);
  height: var(--headerHeight);
  z-index: 9;
}
header.is--sticky {
  position: sticky;
  top: 0;
}
header.with-shadow {
  box-shadow: 0 2px 8px var(--headerShadowColor);
  -o-box-shadow: 0 2px 8px var(--headerShadowColor);
  -moz-box-shadow: 0 2px 8px var(--headerShadowColor);
  -ms-box-shadow: 0 2px 8px var(--headerShadowColor);
  -webkit-box-shadow: 0 2px 8px var(--headerShadowColor);
}
header flex {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: nowrap;
  height: var(--headerHeight);
}
header flex item {
  position: relative;
  display: block;
  width: 100%;
  color: var(--headerColor);
}
header flex item.btn--mobile {
  display: none;
  height: var(--headerHeight);
  min-width: var(--headerHeight);
  max-width: var(--headerHeight);
  cursor: pointer;
}
@media only screen and (max-width: 767.98px) {
  header flex item.btn--mobile {
    display: block;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1279.98px) {
  header flex item.btn--mobile {
    display: block;
  }
}
header flex item.btn--mobile span {
  position: absolute;
  display: block;
  left: 18px;
  right: 18px;
  height: 2px;
  top: 50%;
  margin-top: -1px;
  background-color: currentColor;
  box-shadow: 0 -7px 0, 0 7px 0;
  -o-box-shadow: 0 -7px 0, 0 7px 0;
  -moz-box-shadow: 0 -7px 0, 0 7px 0;
  -ms-box-shadow: 0 -7px 0, 0 7px 0;
  -webkit-box-shadow: 0 -7px 0, 0 7px 0;
}
header flex item.main--navigation {
  padding-right: 10px;
  display: none;
}
@media only screen and (min-width: 1280px) {
  header flex item.main--navigation {
    display: block;
  }
}
header flex item.main--navigation ul {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 0 !important;
}
header flex item.main--navigation ul li {
  list-style: none;
  position: relative;
  display: block;
  width: auto;
}
header flex item.main--navigation ul li a {
  position: relative;
  display: block;
  padding: 0 15px;
  text-decoration: none;
  cursor: pointer;
  font-size: var(--headerMenuFontSize);
  font-weight: var(--headerMenuFontWeight);
  text-transform: var(--headerMenuFontTransform);
  letter-spacing: var(--headerMenuFontLetterSpacing);
  height: var(--headerHeight);
  line-height: calc(var(--headerHeight) + 2px);
  color: currentColor;
}
header flex item.main--navigation ul li a.has--sub-menu {
  padding-right: 30px;
}
header flex item.main--navigation ul li a.has--sub-menu:after {
  position: absolute;
  display: block;
  content: "";
  width: 6px;
  height: 6px;
  border-left: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  top: 50%;
  margin-top: -3px;
  opacity: 0.5;
  right: 13px;
}
header flex item.main--navigation ul li > ul {
  display: none;
  position: absolute;
  line-height: normal;
  box-shadow: 0 10px 40px var(--headerSubShadowColor);
  -o-box-shadow: 0 10px 40px var(--headerSubShadowColor);
  -moz-box-shadow: 0 10px 40px var(--headerSubShadowColor);
  -ms-box-shadow: 0 10px 40px var(--headerSubShadowColor);
  -webkit-box-shadow: 0 10px 40px var(--headerSubShadowColor);
  background-color: var(--headerSubBG);
  min-width: 180px;
  padding: 20px 10px;
  border-radius: 5px;
  -o-border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  height: auto;
  left: 50%;
  transform: translate(-50%,0);
  -o-transform: translate(-50%,0);
  -moz-transform: translate(-50%,0);
  -ms-transform: translate(-50%,0);
  -webkit-transform: translate(-50%,0);
}
header flex item.main--navigation ul li > ul:before {
  position: absolute;
  display: block;
  content: "";
  left: 50%;
  margin-left: -10px;
  top: -12px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 12px 10px;
  border-color: transparent transparent var(--headerSubBG) transparent;
}
header flex item.main--navigation ul li > ul li {
  position: relative;
  display: block;
  line-height: normal;
}
header flex item.main--navigation ul li > ul li a {
  font-size: var(--headerMenuSubFontSize);
  font-weight: var(--headerMenuSubFontWeight);
  text-transform: var(--headerMenuSubFontTransform);
  letter-spacing: var(--headerMenuSubFontLetterSpacing);
  color: var(--headerSubColor) !important;
  line-height: 28px !important;
  height: auto;
}
header flex item.main--navigation ul li > ul li a.has--sub-menu:after {
  transform: rotate(225deg);
  -o-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
}
header flex item.main--navigation ul li > ul li > ul {
  left: calc(100% - 0.02px);
  transform: none;
  -o-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -webkit-transform: none;
  top: -20px;
  min-width: 160px;
  padding-right: 10px;
}
header flex item.main--navigation ul li > ul li > ul:before {
  position: absolute;
  display: block;
  content: "";
  left: -12px;
  margin-left: 0px;
  top: 22px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 12px 10px 0;
  border-color: transparent var(--headerSubBG) transparent transparent;
}
header flex item.main--navigation ul li:hover a {
  color: var(--headerlinkFontColor);
}
header flex item.main--navigation ul li:hover > ul {
  display: block;
}
header flex item.main--navigation ul li:hover > ul a {
  color: var(--headerMenuSubFontColor) !important;
  white-space: nowrap;
}
header flex item.main--navigation ul li:hover > ul a:hover {
  color: var(--headerlinkFontColor) !important;
}
header flex item.right-actions {
  height: var(--headerHeight);
  min-width: 118px;
  max-width: 118px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  padding-right: 10px;
}
@media only screen and (min-width: 1280px) {
  header flex item.right-actions {
    min-width: 260px;
    max-width: 260px;
  }
}
header flex item.right-actions a.h-btn {
  position: relative;
  display: flex;
  min-width: calc(var(--headerHeight) - 10px);
  max-width: calc(var(--headerHeight) - 10px);
  height: var(--headerHeight);
  cursor: pointer;
  justify-content: center;
  align-items: center;
  text-decoration: none;
}
header flex item.right-actions a.h-btn svg,
header flex item.right-actions a.h-btn img {
  max-width: 22px;
  width: 22px;
  height: 22px;
  height: auto;
  fill: currentColor;
}
header flex item.right-actions a.h-btn:hover svg {
  fill: var(--headerlinkFontColor);
}
header flex item.is--logo {
  height: var(--headerHeight);
  min-width: 260px;
  max-width: 260px;
  padding-left: 18px;
}
@media only screen and (max-width: 767.98px) {
  header flex item.is--logo {
    min-width: 0;
    max-width: calc(100% - 183px);
    padding-left: 0px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1279.98px) {
  header flex item.is--logo {
    min-width: 0;
    max-width: calc(100% - 183px);
    padding-left: 0px;
  }
}
header flex item.is--logo a {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: flex-start;
  align-items: center;
}
header flex item.is--logo a img,
header flex item.is--logo a svg {
  max-height: 95%;
  width: auto;
  display: block;
  position: relative;
  border: 0;
}
@media only screen and (max-width: 767.98px) {
  header flex item.is--logo a img,
  header flex item.is--logo a svg {
    max-height: 64%;
  }
}
.btn {
  position: relative;
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  background-color: var(--defaultBtnBG);
  line-height: var(--defaultBtnHeight);
  border-radius: var(--buttonBorderRadius);
  -o-border-radius: var(--buttonBorderRadius);
  -moz-border-radius: var(--buttonBorderRadius);
  -webkit-border-radius: var(--buttonBorderRadius);
  -ms-border-radius: var(--buttonBorderRadius);
  transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  font-size: var(--defaultBtnSize);
  font-weight: var(--defaultBtnFontWeight);
  padding: 0 20px;
}
.btn:hover {
  background-color: var(--defaultBtnBGHover);
}
.btn:active {
  box-shadow: 0 0 0 5px rgba(0,0,0,0.06);
  -o-box-shadow: 0 0 0 5px rgba(0,0,0,0.06);
  -moz-box-shadow: 0 0 0 5px rgba(0,0,0,0.06);
  -ms-box-shadow: 0 0 0 5px rgba(0,0,0,0.06);
  -webkit-box-shadow: 0 0 0 5px rgba(0,0,0,0.06);
}
.btn.btn-primary {
  background-color: var(--primaryBtnBG);
  color: var(--primaryBtnColor);
}
.btn.btn-primary:hover {
  background-color: var(--primaryBtnBGHover);
}
.btn.btn-primary:active {
  box-shadow: 0 0 0 5px rgba(87,99,133,0.2);
  -o-box-shadow: 0 0 0 5px rgba(87,99,133,0.2);
  -moz-box-shadow: 0 0 0 5px rgba(87,99,133,0.2);
  -ms-box-shadow: 0 0 0 5px rgba(87,99,133,0.2);
  -webkit-box-shadow: 0 0 0 5px rgba(87,99,133,0.2);
}
.btn.is--half {
  width: calc(50% - 5px);
  text-align: center;
}
.btn.is--half:first-child {
  margin-right: 5px;
}
.btn.is--half:last-child {
  margin-left: 5px;
}
@media only screen and (max-width: 767.98px) {
  .btn.is--half {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
img.rounded {
  border-radius: 100%;
  -o-border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -ms-border-radius: 100%;
}
img.hasBorder {
  border: 5px solid var(--imageBorderColor);
}
img.hasShadow {
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  -o-box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  -moz-box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  -ms-box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  -webkit-box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
img.w10 {
  width: 10%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w20 {
  width: 20%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w30 {
  width: 30%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w40 {
  width: 40%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w50 {
  width: 50%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w60 {
  width: 60%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w70 {
  width: 70%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w80 {
  width: 80%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w90 {
  width: 90%;
  height: auto;
  margin: 0 auto;
  position: relative;
  display: block;
}
img.w100 {
  width: 100%;
  height: auto;
}
cookieInfo,
cookieSettings {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: center;
  align-items: center;
  background-color: rgba(40, 46, 62, 0);
  z-index: 999;
  opacity: 0;
  transform: scale(0);
  -o-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -webkit-transform: scale(0);
  transition: all 0.28s ease-in-out;
  -o-transition: all 0.28s ease-in-out;
  -moz-transition: all 0.28s ease-in-out;
  -ms-transition: all 0.28s ease-in-out;
  -webkit-transition: all 0.28s ease-in-out;
}
cookieInfo.see,
cookieSettings.see {
  display: flex;
}
cookieInfo.see.show,
cookieSettings.see.show {
  opacity: 1;
  transform: scale(1);
  -o-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
}
cookieInfo infoWindow,
cookieSettings infoWindow {
  position: relative;
  display: block;
  background-color: #fff;
  width: 450px;
  max-width: 90vw;
  max-height: 80vh;
  border-radius: 7px;
  -o-border-radius: 7px;
  -moz-border-radius: 7px;
  -webkit-border-radius: 7px;
  -ms-border-radius: 7px;
  border-top: 10px solid var(--linkFontColor);
  box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  -o-box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  -ms-box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  padding: 20px;
  padding-top: 25px;
  overflow-y: auto;
}
cookieInfo infoWindow .title,
cookieSettings infoWindow .title {
  font-family: var(--footerHeadingfontFamily);
  font-size: var(--footerHeadingfontSize);
  font-weight: var(--footerHeadingfontWeight);
  padding: var(--footerHeadingPadding);
  margin-bottom: 10px;
}
cookieInfo infoWindow p,
cookieSettings infoWindow p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.46em;
}
cookieInfo infoWindow p a,
cookieSettings infoWindow p a {
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  cursor: pointer;
  color: var(--linkFontColor);
  padding: 0 10px;
}
cookieInfo infoWindow p a:hover,
cookieSettings infoWindow p a:hover {
  color: #000;
}
cookieInfo infoWindow p a[rel="back"],
cookieSettings infoWindow p a[rel="back"] {
  position: relative;
  margin-left: 8px;
}
cookieInfo infoWindow p a[rel="back"]:before,
cookieSettings infoWindow p a[rel="back"]:before {
  position: absolute;
  display: block;
  content: "";
  width: 6px;
  height: 6px;
  border-left: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: 50%;
  margin-top: -3px;
  left: 0px;
}
cookieInfo infoWindow .actions,
cookieSettings infoWindow .actions {
  padding: 10px 20px;
}
cookieInfo infoWindow .actions a,
cookieSettings infoWindow .actions a {
  margin-bottom: 10px;
}
cookieInfo infoWindow .more,
cookieSettings infoWindow .more {
  position: relative;
  display: block;
  text-align: center;
  padding-bottom: 15px;
  padding-top: 5px;
}
cookieInfo infoWindow .more a,
cookieSettings infoWindow .more a {
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  cursor: pointer;
  color: var(--linkFontColor);
  padding: 0 10px;
}
cookieInfo infoWindow .more a:hover,
cookieSettings infoWindow .more a:hover {
  color: #000;
}
@media only screen and (max-width: 767.98px) {
  cookieInfo infoWindow .more a,
  cookieSettings infoWindow .more a {
    font-size: 12px;
  }
}
cookieSettings infoWindow {
  width: 520px;
}
cookieSettings infoWindow item {
  position: relative;
  display: block;
  padding: 10px 20px;
  padding-top: 0;
}
cookieSettings infoWindow item input {
  display: none;
}
cookieSettings infoWindow item input + label {
  position: relative;
  display: block;
  padding: 8px 0;
  padding-top: 0;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
}
cookieSettings infoWindow item input + label span {
  font-size: 11px;
  color: #aaa;
  font-weight: 400;
  position: relative;
  display: block;
}
cookieSettings infoWindow item input + label:before {
  position: absolute;
  display: block;
  content: "";
  right: 0;
  background-color: #eee;
  height: 20px;
  width: 40px;
  top: 50%;
  margin-top: -10px;
  border-radius: 10px;
  -o-border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -ms-border-radius: 10px;
  z-index: 1;
  transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
}
cookieSettings infoWindow item input + label:after {
  position: absolute;
  display: block;
  content: "";
  background-color: #fff;
  width: 20px;
  height: 20px;
  right: 0;
  top: 50%;
  margin-top: -10px;
  border-radius: 10px;
  -o-border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -ms-border-radius: 10px;
  z-index: 2;
  transform: translate(-20px,0);
  -o-transform: translate(-20px,0);
  -moz-transform: translate(-20px,0);
  -ms-transform: translate(-20px,0);
  -webkit-transform: translate(-20px,0);
  box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.1);
  -o-box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.1);
  -moz-box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.1);
  -ms-box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.1);
  -webkit-box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.1);
  transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
}
cookieSettings infoWindow item input:checked + label:before {
  background-color: var(--primaryBtnBG);
}
cookieSettings infoWindow item input:checked + label:after {
  transform: translate(0,0);
  -o-transform: translate(0,0);
  -moz-transform: translate(0,0);
  -ms-transform: translate(0,0);
  -webkit-transform: translate(0,0);
}
cookieSettings infoWindow item .info {
  font-size: 14px;
  font-weight: 300;
  line-height: 1.46em;
}
.form-label {
  position: relative;
  display: block;
  padding: 0 5px;
  line-height: 32px;
  font-size: 12px;
  font-weight: 400;
  opacity: 0.5;
}
.form-control {
  position: relative;
  width: calc(100% - 10px);
  margin: 0 5px;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid var(--inputBorderColor);
  margin-bottom: 4px;
  height: var(--formControlHeight);
  padding: var(--inputSelectPadding);
  font-family: var(--fontFamily);
  font-size: var(--fontSize);
  font-weight: 300;
  transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
}
.form-control:hover {
  border: 1px solid var(--inputBorderColorHover);
}
.form-control:focus {
  border-color: var(--inputFocusBorderColor);
  box-shadow: var(--inputFocusBoxShadow);
  -o-box-shadow: var(--inputFocusBoxShadow);
  -moz-box-shadow: var(--inputFocusBoxShadow);
  -ms-box-shadow: var(--inputFocusBoxShadow);
  -webkit-box-shadow: var(--inputFocusBoxShadow);
}
input.form-control {
  border-radius: var(--inputBorderRadius);
  -o-border-radius: var(--inputBorderRadius);
  -moz-border-radius: var(--inputBorderRadius);
  -webkit-border-radius: var(--inputBorderRadius);
  -ms-border-radius: var(--inputBorderRadius);
}
textarea.form-control {
  border-radius: var(--textareaBorderRadius);
  -o-border-radius: var(--textareaBorderRadius);
  -moz-border-radius: var(--textareaBorderRadius);
  -webkit-border-radius: var(--textareaBorderRadius);
  -ms-border-radius: var(--textareaBorderRadius);
  padding: var(--textareaPadding);
  height: auto;
}
select.form-control {
  border-radius: var(--selectBorderRadius);
  -o-border-radius: var(--selectBorderRadius);
  -moz-border-radius: var(--selectBorderRadius);
  -webkit-border-radius: var(--selectBorderRadius);
  -ms-border-radius: var(--selectBorderRadius);
  cursor: pointer;
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"] + label {
  position: relative;
  display: block;
  font-family: var(--fontFamily);
  font-size: var(--fontSize);
  font-weight: 300;
  max-width: 750px;
  padding: 10px 0;
  padding-left: 40px;
  cursor: pointer;
  margin-bottom: 12px;
}
input[type="checkbox"] + label:before {
  position: absolute;
  display: block;
  content: "";
  border: 1px solid var(--inputBorderColor);
  width: 18px;
  height: 18px;
  top: 12px;
  left: 5px;
  border-radius: var(--inputBorderRadius);
  -o-border-radius: var(--inputBorderRadius);
  -moz-border-radius: var(--inputBorderRadius);
  -webkit-border-radius: var(--inputBorderRadius);
  -ms-border-radius: var(--inputBorderRadius);
}
.hasSelect:after {
  position: absolute;
  display: block;
  content: "";
  width: 8px;
  height: 8px;
  border-left: 3px solid;
  border-bottom: 3px solid;
  transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  bottom: calc(var(--formControlHeight) / 2);
  right: 20px;
  opacity: 0.75;
  margin-top: -1px;
}
.vorlage {
  padding: 0 5px!important;
}
.vorlage h2 {
  font-size: 0;
  letter-spacing: 0;
  background-color: #e5e5e5;
  display: inline-block;
  width: 65%;
  max-width: 65%;
  height: 18px;
  margin: 0;
  margin-left: 5px;
  margin-top: 10px;
  vertical-align: top;
  padding: 0 !important;
}
.vorlage h2.to--center {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
}
.vorlage h4 {
  font-size: 0;
  letter-spacing: 0;
  background-color: #e5e5e5;
  display: inline-block;
  width: 45%;
  height: 8px;
  margin: 0 !important;
  margin-left: 5px !important;
  margin-top: 2px !important;
  vertical-align: top;
  padding: 0 !important;
}
.vorlage .abs {
  position: relative;
  display: block;
  height: 1px;
}
.vorlage img {
  width: 0;
  height: 0;
  border: 0;
}
.vorlage .image {
  position: relative;
  display: block;
  margin: 10px 5px;
  height: calc(100% - 20px);
  background-color: #ccc;
}
.vorlage p {
  font-size: 0;
  letter-spacing: 0;
  height: 48px;
  overflow: hidden;
  margin-bottom: 0 !important;
  padding: 10px 5px!important;
}
.vorlage p + p {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  height: 38px !important;
}
.vorlage p:before {
  position: relative;
  display: block;
  content: "";
  height: 8px;
  background-color: #eee;
  box-shadow: 0 10px 0 #eee,0 20px 0 #eee;
  -o-box-shadow: 0 10px 0 #eee,0 20px 0 #eee;
  -moz-box-shadow: 0 10px 0 #eee,0 20px 0 #eee;
  -ms-box-shadow: 0 10px 0 #eee,0 20px 0 #eee;
  -webkit-box-shadow: 0 10px 0 #eee,0 20px 0 #eee;
}
.vorlage hr.isTeaser {
  position: relative;
  display: block;
  width: 25%;
  height: 4px;
  background-color: #eee;
  border-radius: 4px;
  -o-border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  margin: 8px auto;
  margin-bottom: 0;
  border: 0;
}
p,
ul,
ol {
  font-size: var(--fontSize);
  line-height: var(--lineHeight);
  font-weight: var(--fontWeight);
}
p {
  padding: var(--fontPadding);
  margin: var(--margin-text);
}
ul,
ol {
  padding: var(--padding-list);
  margin: var(--margin-list);
}
h1 {
  font-size: var(--H1FontSize);
  font-family: var(--H1FontFamily);
  font-weight: var(--fontWeightH1);
  line-height: var(--lineHeight-h1);
  padding: var(--H1Padding);
  margin: var(--margin-h1);
  color: var(--H1fontColor);
}
h2 {
  font-size: var(--H2FontSize);
  font-family: var(--H2FontFamily);
  font-weight: var(--fontWeightH2);
  line-height: var(--lineHeight-h2);
  padding: var(--H2Padding);
  margin: var(--margin-h2);
  color: var(--H2fontColor);
}
h3 {
  font-size: var(--H3FontSize);
  font-family: var(--H3FontFamily);
  font-weight: var(--fontWeightH3);
  line-height: var(--lineHeight-h3);
  padding: var(--H3Padding);
  margin: var(--margin-h3);
  color: var(--H3fontColor);
}
h4 {
  font-size: var(--H4FontSize);
  font-family: var(--H4FontFamily);
  font-weight: var(--fontWeightH4);
  line-height: var(--lineHeight-h4);
  padding: var(--H4Padding);
  margin: var(--margin-h4);
  color: var(--H4fontColor);
}
h5 {
  font-size: var(--H5FontSize);
  font-family: var(--H5FontFamily);
  font-weight: var(--fontWeightH5);
  line-height: var(--lineHeight-h5);
  padding: var(--H5Padding);
  margin: var(--margin-h5);
  color: var(--H5fontColor);
}
h6 {
  font-size: var(--H6FontSize);
  font-family: var(--H6FontFamily);
  font-weight: var(--fontWeightH6);
  line-height: var(--lineHeight-h6);
  padding: var(--H6Padding);
  margin: var(--margin-h6);
  color: var(--H6fontColor);
}
img {
  max-width: 100%;
  height: auto;
}
.set--smaller {
  max-width: 700px;
}
.to--center {
  text-align: center;
  position: relative;
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
}
hr.isTeaser {
  position: relative;
  display: block;
  width: 25%;
  height: 4px;
  background-color: #eee;
  border-radius: 4px;
  -o-border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  margin: 20px 0;
  border: 0;
}
.image {
  position: relative;
  display: block;
  padding: 10px 20px;
}
.image.streched {
  padding: 0;
}
.image.streched.is--left {
  padding-right: 20px;
}
.image.streched.is--right {
  padding-left: 20px;
}
.image.streched img {
  object-fit: cover;
  -webkit-object-fit: cover;
}
