/*! otm, Compiled at 2026-03-13 09:39:14 */
/**
 * Oldenburg
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2016 infomax websolutions GmbH
 * @link       http://www.infomax-it.de
 * @package    css
 * @author     Matthias Kracke <kracke@infomax-it.de>
 * @since      2016-11-15
 * @version    $$Id$$
 **/
/**
 * OTM - Hauptportal 2016
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2015 infomax websolutions GmbH
 * @link       http://www.infomax-it.de
 * @package    css
 * @subpackage contentForm
 * @author     gueldner
 * @since      29.09.2016
 * @version    $Id$
 **/
/*  =========================================================
imports
========================================================== */
/*  =========================================================
imports
========================================================= */
/**
 * oldenburg
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2020 infomax websolutions GmbH
 * @link       https://www.infomax-online.de
 * @author     Florian Sauer <sauer@infomax-it.de>
 * @since      2020-12-04
 */
/**
 * OTM - Hauptportal 2016
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2015 infomax websolutions GmbH
 * @link       http://www.infomax-it.de
 * @package    css
 * @subpackage contentForm
 * @author     gueldner
 * @since      29.09.2016
 * @version    $Id$
 **/
/*  =========================================================
basic config
general structure
fieldset
inputgroup
inputset
text inputs
selectbox
textarea
checkbox
========================================================== */
/*  =========================================================
basic config
========================================================= */
/* dimensions */
/* ultra tiny introduced for iPhone 5s */
/* corporate design */
/* @see src/portal/assets/styles/_brand for css variables */
/* other colors */
/* percentage dimensions */
/* percentage margins */
/* percentage paddings */
/* default font settings */
/* vertical aligns */
.verticalAlignHelper {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 0;
  height: 100%;
  margin: 0;
}
/*  =========================================================
general structure
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg > .sectionBackground {
    margin-bottom: 25px;
  }
  .contentForm.contentForm--greyElemBg .contentArticle h3,
  .contentForm.contentForm--greyElemBg .contentArticle p {
    color: rgb(var(--color-black));
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentArticle h3,
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentArticle p {
    color: rgb(var(--color-white));
  }
  .contentForm.contentForm--greyElemBg .contentArticle h3:not(.alreadySubscribed) {
    font-size: 3rem;
  }
  .contentForm.contentForm--greyElemBg .contentArticle h3.alreadySubscribed {
    font-size: 2rem;
  }
  /* microsite specific */
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg > .sectionBackground {
    padding: 50px 0;
    background: rgb(var(--color-white)) url('../images/_branding/background_microsite1.a4cf9239.jpg') 0 0 repeat;
  }
}
@media all and (min-width: 1001px) {
  .contentForm.contentForm--greyElemBg > .sectionBackground--collumned::after {
    content: '';
    position: absolute;
    top: 0;
    left: 54.16666667%;
    bottom: 0;
    width: 1px;
    background: rgb(var(--color-white));
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__info {
    font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    text-align: right;
  }
  /* microsite specific */
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__info {
    color: rgb(var(--color-black));
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__info {
    color: rgb(var(--color-white));
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__buttons {
    padding-top: 20px;
    text-align: right;
  }
}
@media all and (max-width: 700px) {
  .contentForm.contentForm--greyElemBg .contentForm__buttons {
    margin: 0 auto;
    position: relative;
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__hiddenSet {
    padding-left: 50px;
  }
  .contentForm.contentForm--greyElemBg .contentForm__hiddenSet:not(.contentForm__hiddenSet--visible) {
    display: none;
  }
}
/*  =========================================================
fieldset
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__fieldset {
    padding: 0;
    border: none;
  }
}
@media all and (min-width: 1001px) {
  .contentForm.contentForm--greyElemBg .contentForm__fieldset {
    margin: 0;
  }
}
@media all and (max-width: 1000px) {
  .contentForm.contentForm--greyElemBg .contentForm__fieldset {
    margin: 0 0 25px 0;
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__fieldset > legend {
    margin: 0 0 15px 0;
    padding: 0;
    font: 700 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-black));
  }
  .contentForm.contentForm--greyElemBg #contentForm--eventInquiry .contentForm.contentForm--greyElemBg .contentForm__fieldset > legend {
    padding-top: 25px;
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__fieldset > legend {
    color: rgb(var(--color-white));
  }
}
/*  =========================================================
inputgroup
========================================================= */
@media all and (min-width: 701px) {
  .contentForm.contentForm--greyElemBg .contentForm__inputGroup {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 10px;
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputGroup--spare::after {
    content: '';
    display: inline-block;
    -webkit-flex: 1 1;
        -ms-flex: 1 1;
            flex: 1 1;
  }
}
/*  =========================================================
inputset
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet {
    position: relative;
    overflow: hidden;
  }
}
@media all and (min-width: 701px) {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet {
    display: inline-block;
    vertical-align: top;
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputSet:not(.contentForm__inputSet--double):not(.contentForm__inputSet--grid) {
    -webkit-flex: 1 1;
        -ms-flex: 1 1;
            flex: 1 1;
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputSet.contentForm__inputSet--double {
    -webkit-flex: 2 1;
        -ms-flex: 2 1;
            flex: 2 1;
  }
}
@media all and (max-width: 700px) {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet {
    display: block;
    margin-bottom: 10px;
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet[class*='icon-']::before {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    height: 100%;
    padding-right: 5px;
    font-size: 25px;
    line-height: 40px;
    color: rgb(var(--color-black));
  }
}
@media all and (min-width: 701px) {
  .contentForm.contentForm--greyElemBg .contentForm__inputGroup > .contentForm__inputSet:not(:last-child) {
    margin: 0 10px 0 0;
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputGroup > .contentForm__inputSet.contentForm__inputSet--salutation {
    margin: 0 0 0 0;
  }
}
/*  =========================================================
text inputs
========================================================= */
/* input */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel],
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url],
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email],
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number],
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text] {
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    padding: 0 15px;
    border: none;
    background: #E5E5E6;
    outline-offset: -2px;
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-black));
  }
}
/* label */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel] + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url] + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email] + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number] + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text] + label {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    padding: 0 10px;
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-white));
    transition: -webkit-transform 0.25s ease;
    transition: transform 0.25s ease;
    transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  }
  /* microsite specific */
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email] + label {
    background: rgb(var(--color-cdOrange4));
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel] + label,
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url] + label,
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text] + label,
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number] + label,
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email] + label {
    background: #006b37;
  }
  /* use 1% and 101% instead of 0% and 100% because of crappy browser rendering (blitzer) */
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel]:focus + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url]:focus + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text]:focus + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number]:focus + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email]:focus + label {
    -webkit-transform: translateX(1%);
        -ms-transform: translateX(1%);
            transform: translateX(1%);
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=tel]:not(:focus) + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=url]:not(:focus) + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=text]:not(:focus) + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=number]:not(:focus) + label,
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > input[type=email]:not(:focus) + label {
    -webkit-transform: translateX(101%);
        -ms-transform: translateX(101%);
            transform: translateX(101%);
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputSet > label.simpleLabel {
    margin: 0 0 15px 0;
    padding: 0;
    font: 700 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-white));
  }
}
/*  =========================================================
selectbox
========================================================= */
/* sourounding helper box */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__select {
    position: relative;
    overflow: hidden;
    background: #E5E5E6;
  }
}
/* selectbox itself */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__select > select {
    -webkit-appearance: none;
            appearance: none;
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    padding: 0 0 0 15px;
    border: none;
    background: #E5E5E6;
    outline-offset: -2px;
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-black));
  }
}
/* label */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__select > label {
    display: block;
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0 10px;
    font-size: 12px;
    color: rgb(var(--color-black));
    line-height: 48px;
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg .contentForm__select > label {
    color: rgb(var(--color-white));
  }
}
/*  =========================================================
textarea
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__textarea {
    width: 100%;
    height: 250px;
    resize: none;
    box-sizing: border-box;
    padding: 0 15px;
    margin-bottom: 10px;
    border: none;
    background: #E5E5E6;
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-black));
  }
  .contentForm.contentForm--greyElemBg .contentForm__textareaLabel {
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: #E5E5E6;
  }
}
/*  =========================================================
checkbox
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__checkbox {
    -webkit-appearance: none;
            appearance: none;
    display: block;
    position: relative;
    top: 13px;
    width: 30px;
    height: 30px;
    margin: 0 0 -30px 0;
    outline-offset: -3px;
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__checkbox + label {
    display: block;
    padding: 13px 0 0 45px;
    font: 400 normal 14px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 22px;
    color: rgb(var(--color-black));
  }
  .contentForm.contentForm--greyElemBg fieldset .contentForm__checkbox + label {
    color: rgb(var(--color-button-default));
  }
  html.-css-microsite-gruenkohl .contentForm.contentForm--greyElemBg fieldset .contentForm__checkbox + label {
    color: rgb(var(--color-white));
  }
  .contentForm.contentForm--greyElemBg .contentForm__checkbox + label::before {
    content: '\e911';
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 15px 0 -45px;
    border: 3px rgb(var(--color-button-default)) solid;
    box-sizing: border-box;
    background: rgb(var(--color-button-default));
    font: 400 normal 18px/27px 'icomoon';
    text-align: center;
  }
  .contentForm.contentForm--greyElemBg .contentForm__checkbox:not(:checked) + label::before {
    color: rgb(var(--color-button-default));
  }
  .contentForm.contentForm--greyElemBg .contentForm__checkbox:checked + label::before {
    background: rgb(var(--color-button-default));
    color: rgb(var(--color-white));
  }
  .contentForm.contentForm--greyElemBg .mobilityCheckBox {
    padding-bottom: 1%;
  }
  .contentForm.contentForm--greyElemBg .contentForm__inputAnnotation .contentForm__inputSet {
    width: 100%;
  }
  .contentForm.contentForm--greyElemBg .mobilityCheckBox .contentForm__inputAnnotation {
    display: none;
  }
  .contentForm.contentForm--greyElemBg .mobilityCheckBox input[type=checkbox]:checked ~ .contentForm__inputAnnotation {
    display: block;
  }
  .contentForm.contentForm--greyElemBg .result__headline h3 {
    left: 10.5%;
    position: relative;
    font-size: 25px;
  }
}
/*  =========================================================
radio
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__radio {
    position: relative;
    opacity: 0;
    display: none;
  }
}
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__radio + label {
    display: inline-block;
    padding: 5px 0 5px 45px;
    margin-right: 20px;
    font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-black));
  }
  .contentForm.contentForm--greyElemBg fieldset .contentForm__radio + label {
    color: rgb(var(--color-white));
    opacity: 1;
  }
  .contentForm.contentForm--greyElemBg .contentForm__radio + label::before {
    content: '\e911';
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 15px 0 -45px;
    border: 3px rgb(var(--color-button-default)) solid;
    border-radius: 50%;
    box-sizing: border-box;
    background: #E5E5E6;
    font: 400 normal 18px/27px 'icomoon';
    text-align: center;
  }
  .contentForm.contentForm--greyElemBg .contentForm__radio:not(:checked) + label::before {
    color: rgb(var(--color-white));
  }
  .contentForm.contentForm--greyElemBg .contentForm__radio:checked + label::before {
    color: rgb(var(--color-button-default));
  }
}
/*  =========================================================
captcha
========================================================= */
.contentForm.contentForm--greyElemBg .captchaWrapper .g-recaptcha.formerror iframe {
  border: 1px solid #ff1d00;
}
.contentForm.contentForm--greyElemBg .captchaWrapper .formerror {
  display: block;
  padding: 0 0 0 45px;
  font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 22px;
  color: #ff1d00;
}
/*  =========================================================
offerRequest
========================================================= */
.contentForm.contentForm--greyElemBg #offerError {
  width: 50%;
  padding-top: 5%;
}
/*  =========================================================
spacer
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__spacer {
    width: 100%;
    height: 40px;
  }
}
/*  =========================================================
spacer line
========================================================= */
@media all {
  .contentForm.contentForm--greyElemBg .contentForm__spacerLine {
    width: 100%;
    height: 40px;
    position: relative;
  }
  .contentForm.contentForm--greyElemBg .contentForm__spacerLine::after {
    content: '';
    display: block;
    position: absolute;
    top: 19px;
    height: 2px;
    width: 100%;
    background: rgb(var(--color-text-default));
  }
}
/*  =========================================================
file upload
========================================================= */
.contentForm.contentForm--greyElemBg .contentForm__inputSet > .contentForm__upload {
  display: inline-block;
  height: 40px;
  padding: 0 15px;
  border-radius: 3px;
  border: none;
  background: rgb(var(--color-button-default));
  color: rgb(var(--color-white));
  width: calc(100% - 30px);
}
.contentForm.contentForm--greyElemBg .contentForm__inputSet > .contentForm__upload input[type=file] {
  font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  line-height: 40px;
  position: relative;
  width: 100%;
}
.contentForm.contentForm--greyElemBg .contentForm__inputSet > .contentForm__upload input[type=file]::file-selector-button {
  background: transparent;
  color: rgb(var(--color-white));
  border: 0;
}
.contentForm.contentForm--greyElemBg .contentForm__inputSet > .contentForm__upload input[type=file][required]::after {
  background: rgb(var(--color-button-default));
  height: 100%;
  position: absolute;
  right: 0;
  padding: 0 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  content: '*';
}
/**
 * oldenburg
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2020 infomax websolutions GmbH
 * @link       https://www.infomax-online.de
 * @author     Florian Sauer <sauer@infomax-it.de>
 * @since      2020-12-04
 */
/*  =========================================================
basic config
general structure
fieldset
inputgroup
inputset
text inputs
selectbox
textarea
checkbox
========================================================== */
/*  =========================================================
basic config
========================================================= */
/*  =========================================================
general structure
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) > .sectionBackground {
    margin-bottom: 25px;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentArticle h3,
  .contentForm:not(.contentForm--greyElemBg) .contentArticle p {
    color: rgb(var(--color-white));
  }
  .contentForm:not(.contentForm--greyElemBg) .contentArticle h3:not(.alreadySubscribed) {
    font-size: 3rem;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentArticle h3.alreadySubscribed {
    font-size: 2rem;
  }
  /* microsite specific */
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) > .sectionBackground {
    padding: 50px 0;
    background: rgb(var(--color-white)) url('../images/_branding/background_microsite1.a4cf9239.jpg') 0 0 repeat;
  }
}
@media all and (min-width: 1001px) {
  .contentForm:not(.contentForm--greyElemBg) > .sectionBackground--collumned::after {
    content: '';
    position: absolute;
    top: 0;
    left: 54.16666667%;
    bottom: 0;
    width: 1px;
    background: rgb(var(--color-white));
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__info {
    font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    text-align: right;
  }
  /* microsite specific */
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__info {
    color: rgb(var(--color-black));
  }
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__info {
    color: rgb(var(--color-white));
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__buttons {
    padding-top: 20px;
    text-align: right;
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__hiddenSet {
    padding-left: 50px;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__hiddenSet:not(.contentForm__hiddenSet--visible) {
    display: none;
  }
}
/*  =========================================================
fieldset
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__fieldset {
    padding: 0;
    border: none;
  }
}
@media all and (min-width: 1001px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__fieldset {
    margin: 0;
  }
}
@media all and (max-width: 1000px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__fieldset {
    margin: 0 0 25px 0;
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__fieldset > legend {
    margin: 0 0 15px 0;
    padding: 0;
    font: 600 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-white));
  }
  #contentForm--eventInquiry .contentForm:not(.contentForm--greyElemBg) .contentForm__fieldset > legend {
    padding-top: 25px;
  }
}
/*  =========================================================
inputgroup
========================================================= */
@media all and (min-width: 701px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputGroup {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 10px;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputGroup--spare::after {
    content: '';
    display: inline-block;
    -webkit-flex: 1 1;
        -ms-flex: 1 1;
            flex: 1 1;
  }
}
/*  =========================================================
inputset
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet {
    position: relative;
    overflow: hidden;
  }
}
@media all and (min-width: 701px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet {
    display: inline-block;
    vertical-align: top;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet:not(.contentForm__inputSet--double) {
    -webkit-flex: 1 1;
        -ms-flex: 1 1;
            flex: 1 1;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet.contentForm__inputSet--double {
    -webkit-flex: 2 1;
        -ms-flex: 2 1;
            flex: 2 1;
  }
}
@media all and (max-width: 700px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet {
    display: block;
    margin-bottom: 10px;
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet[class*='icon-']::before {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    height: 100%;
    padding-right: 5px;
    font-size: 25px;
    line-height: 40px;
    color: rgb(var(--color-text-default));
  }
}
@media all and (min-width: 701px) {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputGroup > .contentForm__inputSet:not(:last-child) {
    margin: 0 10px 0 0;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputGroup > .contentForm__inputSet.contentForm__inputSet--salutation {
    margin: 0 0 0 0;
  }
}
/*  =========================================================
text inputs
========================================================= */
/* input */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel],
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email],
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number],
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text] {
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    padding: 0 15px;
    border: none;
    background: rgb(var(--color-white));
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-text-default));
  }
}
/* label */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel] + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=url] + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email] + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number] + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text] + label {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    padding: 0 10px;
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-white));
    transition: -webkit-transform 0.25s ease;
    transition: transform 0.25s ease;
    transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  }
  /* microsite specific */
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=url] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number] + label,
  html:not(.-css-microsite-gruenkohl) .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email] + label {
    background: rgb(var(--color-cdOrange4));
  }
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel] + label,
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=url] + label,
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text] + label,
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number] + label,
  html.-css-microsite-gruenkohl .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email] + label {
    background: #006b37;
  }
  /* use 1% and 101% instead of 0% and 100% because of crappy browser rendering (blitzer) */
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel]:focus + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=url]:focus + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text]:focus + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number]:focus + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email]:focus + label {
    -webkit-transform: translateX(1%);
        -ms-transform: translateX(1%);
            transform: translateX(1%);
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=tel]:not(:focus) + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=url]:not(:focus) + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=text]:not(:focus) + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=number]:not(:focus) + label,
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > input[type=email]:not(:focus) + label {
    -webkit-transform: translateX(101%);
        -ms-transform: translateX(101%);
            transform: translateX(101%);
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputSet > label.simpleLabel {
    margin: 0 0 15px 0;
    padding: 0;
    font: 600 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-white));
  }
}
/*  =========================================================
selectbox
========================================================= */
/* sourounding helper box */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__select {
    position: relative;
    overflow: hidden;
    background: rgb(var(--color-white));
  }
}
/* selectbox itself */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__select > select {
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    padding: 0 0 0 15px;
    border: none;
    background: rgb(var(--color-white));
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-text-default));
  }
}
/* label */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__select > label {
    display: block;
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0 10px;
    background: rgb(var(--color-white));
    font-size: 12px;
    color: rgb(var(--color-text-default));
    line-height: 48px;
  }
}
/*  =========================================================
textarea
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__textarea {
    width: 100%;
    height: 300px;
    resize: none;
    box-sizing: border-box;
    padding: 0 15px;
    margin-bottom: 10px;
    border: none;
    background: rgb(var(--color-white));
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-text-default));
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__textareaLabel {
    font: 700 normal 18px/40px 'Open Sans', Arial, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 40px;
    color: rgb(var(--color-white));
  }
}
/*  =========================================================
checkbox
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__checkbox {
    -webkit-appearance: none;
            appearance: none;
    display: block;
    position: relative;
    top: 13px;
    width: 30px;
    height: 30px;
    margin: 0 0 -30px 0;
    outline-offset: -3px;
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__checkbox + label {
    display: block;
    padding: 13px 0 0 45px;
    font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-black));
  }
  .contentForm:not(.contentForm--greyElemBg) fieldset .contentForm__checkbox + label {
    color: rgb(var(--color-white));
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__checkbox + label::before {
    content: '\e911';
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 15px 0 -45px;
    border: 3px rgb(var(--color-button-default)) solid;
    box-sizing: border-box;
    background: rgb(var(--color-white));
    font: 400 normal 18px/27px 'icomoon';
    text-align: center;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__checkbox:not(:checked) + label::before {
    color: rgb(var(--color-white));
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__checkbox:checked + label::before {
    color: rgb(var(--color-button-default));
  }
  .contentForm:not(.contentForm--greyElemBg) .mobilityCheckBox {
    padding-bottom: 1%;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__inputAnnotation .contentForm__inputSet {
    width: 100%;
  }
  .contentForm:not(.contentForm--greyElemBg) .mobilityCheckBox .contentForm__inputAnnotation {
    display: none;
  }
  .contentForm:not(.contentForm--greyElemBg) .mobilityCheckBox input[type=checkbox]:checked ~ .contentForm__inputAnnotation {
    display: block;
  }
  .contentForm:not(.contentForm--greyElemBg) .result__headline h3 {
    left: 10.5%;
    position: relative;
    font-size: 25px;
  }
}
/*  =========================================================
radio
========================================================= */
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__radio {
    position: relative;
    opacity: 0;
    display: none;
  }
}
@media all {
  .contentForm:not(.contentForm--greyElemBg) .contentForm__radio + label {
    display: inline-block;
    padding: 5px 0 5px 45px;
    margin-right: 20px;
    font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: rgb(var(--color-black));
  }
  .contentForm:not(.contentForm--greyElemBg) fieldset .contentForm__radio + label {
    color: rgb(var(--color-white));
    opacity: 1;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__radio + label::before {
    content: '\e911';
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 15px 0 -45px;
    border: 3px rgb(var(--color-button-default)) solid;
    border-radius: 50%;
    box-sizing: border-box;
    background: rgb(var(--color-white));
    font: 400 normal 18px/27px 'icomoon';
    text-align: center;
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__radio:not(:checked) + label::before {
    color: rgb(var(--color-white));
  }
  .contentForm:not(.contentForm--greyElemBg) .contentForm__radio:checked + label::before {
    color: rgb(var(--color-button-default));
  }
}
/*  =========================================================
captcha
========================================================= */
.contentForm:not(.contentForm--greyElemBg) .captchaWrapper .g-recaptcha.formerror iframe {
  border: 1px solid #ff1d00;
}
.contentForm:not(.contentForm--greyElemBg) .captchaWrapper .formerror {
  display: block;
  padding: 0 0 0 45px;
  font: 400 normal 18px/22px 'Open Sans', Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 22px;
  color: #ff1d00;
}
/*  =========================================================
offerRequest
========================================================= */
.contentForm:not(.contentForm--greyElemBg) #offerError {
  width: 50%;
  padding-top: 5%;
}
/**
 * oldenburg
 *
 * LICENSE
 *
 * This software and its source code is protected by copyright law (Sec. 69a ff. UrhG).
 * It is not allowed to make any kinds of modifications, nor must it be copied,
 * or published without explicit permission. Misuse will lead to persecution.
 *
 * @copyright  2020 infomax websolutions GmbH
 * @link       https://www.infomax-online.de
 * @author     Florian Sauer <sauer@infomax-it.de>
 * @since      2020-12-04
 */
/*  =========================================================
basic config
general structure
fieldset
inputgroup
inputset
text inputs
selectbox
textarea
checkbox
========================================================== */
/*  =========================================================
basic config
========================================================= */
/*  =========================================================
general structure
========================================================= */
.contentForm__fieldset .contentForm__inputGroup--gridbased {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 400px) {
  .contentForm--simpleGrid .captchaWrapper {
    margin: 0 0 0 -45px;
  }
}
.contentForm.contentForm--simpleGrid .contentForm__inputSet--grid {
  position: relative;
}
.contentForm.contentForm--simpleGrid .contentForm__inputSet--grid .contentForm__checkbox {
  position: absolute;
  top: 0;
}
.contentForm.contentForm--simpleGrid .contentForm__inputSet--grid .contentForm__textarea {
  margin-bottom: 0;
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup .contentArticle h3,
.contentForm.contentForm--simpleGrid .contentForm__inputGroup .contentArticle h4,
.contentForm.contentForm--simpleGrid .contentForm__inputGroup .contentArticle p {
  color: rgb(var(--color-text-default));
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup > .contentForm__inputSet.contentForm__inputSet--grid:not(:last-child) {
  margin: 0 0 10px 0;
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup--gridbased .contentForm__radio {
  display: block;
  position: absolute;
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup--gridbased .contentForm__radio + label {
  color: rgb(var(--color-text-default));
  display: block;
}
.contentForm.contentForm--simpleGrid .contentForm__inputGroup--gridbased .contentForm__radio:not(:checked) + label::before {
  color: transparent;
}
.contentForm__inputSet--grid p {
  font: 400 normal 2.2rem/1.36363636em 'Open Sans', Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.2rem;
  line-height: 1.36363636em;
  font-size: 18px;
  margin: 15px 0 0 0;
}
.contentForm__inputSet--grid-full {
  width: 100%;
}
.contentForm__inputSet--grid-half {
  width: calc(50% - 10px);
}
@media (max-width: 700px) {
  .contentForm__inputSet--grid-half {
    width: 100%;
  }
  .contentForm__inputSet--grid-half .contentForm__spacer {
    display: none;
  }
}
.contentForm__inputSet--grid-oneThird {
  width: calc(33.33% - 10px);
}
@media (max-width: 1000px) {
  .contentForm__inputSet--grid-oneThird {
    width: 100%;
  }
  .contentForm__inputSet--grid-oneThird .contentForm__spacer {
    display: none;
  }
}
.contentForm__inputSet--grid-twoThirds {
  width: calc(66.66% - 10px);
}
@media (max-width: 700px) {
  .contentForm__inputSet--grid-twoThirds {
    width: 100%;
  }
  .contentForm__inputSet--grid-twoThirds .contentForm__spacer {
    display: none;
  }
}
