:root{
  --color-primary:#333333;
  --color-primary-alpha-1:rgba(51, 51, 51, 0.05);
  --color-primary-alpha-2:rgba(51, 51, 51, 0.2);
  --color-primary-alpha-3:rgba(51, 51, 51, 0.3);
  --color-primary-alpha-4:rgba(51, 51, 51, 0.4);
  --color-primary-alpha-5:rgba(51, 51, 51, 0.5);
  --color-primary-alpha-6:rgba(51, 51, 51, 0.6);
  --color-primary-alpha-7:rgba(51, 51, 51, 0.7);
  --color-primary-alpha-8:rgba(51, 51, 51, 0.8);
  --color-primary-alpha-9:rgba(51, 51, 51, 0.95);
  --color-primary-lighter-1:#474747;
  --color-primary-lighter-2:#5c5c5c;
  --color-primary-lighter-3:#707070;
  --color-primary-lighter-4:#858585;
  --color-primary-lighter-5:#999999;
  --color-primary-lighter-6:#adadad;
  --color-primary-lighter-7:#c2c2c2;
  --color-primary-lighter-8:#d6d6d6;
  --color-primary-lighter-9:#ebebeb;
  --color-primary-darker-1:#2e2e2e;
  --color-primary-darker-2:#2a2a2a;
  --color-primary-darker-3:#252525;
  --color-primary-darker-4:#212121;
  --color-primary-darker-5:#1c1c1c;
  --color-primary-darker-6:#171717;
  --color-primary-darker-7:#131313;
  --color-primary-darker-8:#0e0e0e;
  --color-primary-darker-9:#0a0a0a;
  --color-secondary:#d21319;
  --color-secondary-alpha-1:rgba(210, 19, 25, 0.1);
  --color-secondary-alpha-2:rgba(210, 19, 25, 0.2);
  --color-secondary-alpha-3:rgba(210, 19, 25, 0.3);
  --color-secondary-alpha-4:rgba(210, 19, 25, 0.4);
  --color-secondary-alpha-5:rgba(210, 19, 25, 0.5);
  --color-secondary-alpha-6:rgba(210, 19, 25, 0.6);
  --color-secondary-alpha-7:rgba(210, 19, 25, 0.7);
  --color-secondary-alpha-8:rgba(210, 19, 25, 0.8);
  --color-secondary-alpha-9:rgba(210, 19, 25, 0.95);
  --color-secondary-darker-1:#301D1E;
  --color-secondary-darker-2:#431C1C;
  --color-secondary-darker-3:#551A1C;
  --color-secondary-darker-4:#67191A;
  --color-secondary-darker-5:#791819;
  --color-secondary-darker-6:#8C1516;
  --color-secondary-darker-7:#9E1315;
  --color-secondary-darker-8:#B01111;
  --color-secondary-darker-9:#CB0F0C;
  --color-secondary-lighter-1:#FF3137;
  --color-white:#fff;
  --color-white-alpha-1:rgba(255, 255, 255, 0.1);
  --color-white-alpha-2:rgba(255, 255, 255, 0.2);
  --color-white-alpha-3:rgba(255, 255, 255, 0.3);
  --color-white-alpha-4:rgba(255, 255, 255, 0.4);
  --color-white-alpha-5:rgba(255, 255, 255, 0.5);
  --color-white-alpha-6:rgba(255, 255, 255, 0.6);
  --color-white-alpha-7:rgba(255, 255, 255, 0.7);
  --color-white-alpha-8:rgba(255, 255, 255, 0.8);
  --color-white-alpha-9:rgba(255, 255, 255, 0.95);
  --color-black:rgb(33, 33, 33);
  --color-black-alpha-05:rgba(33, 33, 33, 0.05);
  --color-black-alpha-1:rgba(33, 33, 33, 0.1);
  --color-black-alpha-2:rgba(33, 33, 33, 0.2);
  --color-black-alpha-3:rgba(33, 33, 33, 0.3);
  --color-black-alpha-4:rgba(33, 33, 33, 0.4);
  --color-black-alpha-5:rgba(33, 33, 33, 0.5);
  --color-black-alpha-6:rgba(33, 33, 33, 0.6);
  --color-black-alpha-7:rgba(33, 33, 33, 0.7);
  --color-black-alpha-8:rgba(33, 33, 33, 0.8);
  --color-black-alpha-9:rgba(33, 33, 33, 0.9);
  --color-grey-1:#e6e6e6;
  --color-grey-2:#cdcdcd;
  --color-grey-3:#b4b4b4;
  --color-grey-4:#9b9b9b;
  --color-grey-5:#828282;
  --color-grey-6:dimgray;
  --color-grey-7:#505050;
  --color-grey-8:#373737;
  --color-grey-9:#1e1e1e;
  --color-info:#3ca8ff; 

  --color-success:#26A65B;
  --color-success-faded:#D6F6E3;

  --color-warning:#ffc103;

  --color-error:#C0392B;
  --color-error-faded:	#FBF1F0;

  --spacing-xxs: 0.118rem;
  --spacing-xs: 0.191rem;
  --spacing-s: 0.45rem;
  --spacing-m: 0.7rem;
  --spacing-l: 1rem;
  --spacing-xl: 1.309rem;

  --font-weight-light:300;
  --font-weight-regular:400;
  --font-weight-semi-bold:600;
  --font-weight-bold:700;
  --font-family-display:"Titillium Web",sans-serif;
  --font-family-copy:"Open Sans","Helvetica","Arial",sans-serif;
  --font-family-ui:var(--font-family-copy);
  --line-height-factor-display: 1;
  --line-height-factor-copy:    1;
  --line-height-factor-ui:      1;

/* New */

  /* 1.33 */
  --font-size-xs: clamp(0.64rem, -0.01vw + 0.64rem, 0.63rem);
  --font-size-s: clamp(0.8rem, 0.09vw + 0.78rem, 0.84rem);
  --font-size-r: clamp(0.95rem, 0.15vw + 0.85rem, 0.98rem);
  --font-size-m:clamp(1rem, 0.25vw + 0.94rem, 1.13rem);
  --font-size-l: clamp(1.25rem, 0.5vw + 1.13rem, 1.5rem);
  --font-size-xl: clamp(1.56rem, 0.87vw + 1.34rem, 2rem);
  --font-size-xxl: clamp(1.95rem, 1.42vw + 1.6rem, 2.66rem);
  --font-size-xxxl: clamp(2.44rem, 2.22vw + 1.89rem, 3.55rem);

  --c-button--font-size-l: clamp(1.25rem, 0.25vw + 0.94rem, 1.4rem);
  --c-button--font-l: var(--c-button--font-size-l)/calc(var(--line-height-l) * var(--line-height-factor-display)) var(--font-family-display);
  
  --line-height-factor: 1.2;

  --line-height-xs: calc(var(--font-size-xs) + (10px * var(--line-height-factor)));
  --line-height-s: calc(var(--font-size-s) + (10px * var(--line-height-factor)));
  --line-height-m: calc(var(--font-size-m) + (10px * var(--line-height-factor)));
  --line-height-l: calc(var(--font-size-l) + (10px * var(--line-height-factor)));
  --line-height-xl: calc(var(--font-size-xl) + (10px * var(--line-height-factor)));
  --line-height-xxl: calc(var(--font-size-xxl) + (10px * var(--line-height-factor)));
  --line-height-xxxl: calc(var(--font-size-xxxl) + (10px * var(--line-height-factor)));

  /* Debug */

  --font-display-xs:var(--font-size-xs)/calc(var(--line-height-xs) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-s:var(--font-size-s)/calc(var(--line-height-s) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-l:var(--font-size-l)/calc(var(--line-height-l) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-m:var(--font-size-m)/calc(var(--line-height-m) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-xl:var(--font-size-xl)/calc(var(--line-height-xl) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-xxl:var(--font-size-xxl)/calc(var(--line-height-xxl) * var(--line-height-factor-display)) var(--font-family-display);
  --font-display-xxxl:var(--font-size-xxxl)/calc(var(--line-height-xxxl) * var(--line-height-factor-display)) var(--font-family-display);

  --font-copy-xs:var(--font-size-xs)/calc(var(--line-height-xs) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-s:var(--font-size-s)/calc(var(--line-height-s) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-l:var(--font-size-l)/calc(var(--line-height-l) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-m:var(--font-size-m)/calc(var(--line-height-m) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-xl:var(--font-size-xl)/calc(var(--line-height-xl) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-xxl:var(--font-size-xxl)/calc(var(--line-height-xxl) * var(--line-height-factor-copy)) var(--font-family-copy);
  --font-copy-xxxl:var(--font-size-xxxl)/calc(var(--line-height-xxxl) * var(--line-height-factor-copy)) var(--font-family-copy);

  --font-ui-xs:var(--font-size-xs)/calc(var(--line-height-xs) * var(--line-height-factor-ui)) var(--font-family-ui);
  --font-ui-s:var(--font-size-s)/calc(var(--line-height-s) * var(--line-height-factor-ui)) var(--font-family-ui);
  --font-ui-l:var(--font-size-l)/calc(var(--line-height-l) * var(--line-height-factor-ui)) var(--font-family-ui);
  --font-ui-m:var(--font-size-m)/calc(var(--line-height-m) * var(--line-height-factor-ui)) var(--font-family-ui);
  --font-ui-xl:var(--font-size-xl)/calc(var(--line-height-xl) * var(--line-height-factor-ui)) var(--font-family-ui);
  --font-ui-xxl:var(--font-size-xxl)/calc(var(--line-height-xxl) * var(--line-height-factor-ui)) var(--font-family-ui);

  --g-headline--font-weight: var(--font-weight-regular); 
  --g-header-height: 5rem;
  --g-content-padding: var(--spacing-l);
  --g-content-width-default: 62rem;
  --g-content-width-narrow: 46.5rem;

  --g-link--text-decoration: underline;
  --g-link--text-decoration-hover: none;
  --g-link--color: var(--color-primary);
  --g-link--color-hover: var(--color-secondary);
  --g-link--background: transparent;
  --g-link--background-hover: none;

  --g-link--underline-offset: 5px;
  --g-link--decoration-thickness: 1px;


  --l-section--background-accent: #fafafa;
  --l-section--border-accent: 1px solid var(--color-primary-alpha-1);

  --g-table-header--background: var(--l-section--background-accent);
  --g-table-border--color:      #CECECF;
  --g-table-border--width:      1px;
  --g-table-border:             var(--g-table-border--width) solid var(--g-table-border--color);
  --g-table--background-odd:    #F0F0F0;
  
  --c-button--border-color: transparent;
  --c-button--border-color-hover: transparent;

  --g-border-radius-default: 4px;

  --g-shadow-teaser:   0 2px 10px -4px rgb(0 0 0 / 20%);
  --g-border-radius-teaser: 0.5em;
  --g-border-teaser: 1px solid var(--color-primary-alpha-1);

  --g-footer--background: #212121;

  --color-text-light: var(--color-primary-lighter-3);

  /* Component: Contact-Person */
  --g-contact-image-size: 250px;
}

/* Fallback variables for browsers that don't support clamp */
@supports not (font-size: clamp(1rem, 1vw, 1rem)) {
  :root {
    --font-size-xs: 0.64rem;
		--font-size-s: 0.8rem;
		--font-size-r: 0.95rem;
		--font-size-m: 1rem;
		--font-size-l: 1.25rem;
		--font-size-xl: 1.56rem;
		--font-size-xxl: 1.95rem;
		--font-size-xxxl: 2.44rem;
  }
  /* --g-content-width-wide */
  @media screen and (min-width: 75rem) { 
    :root {
      --font-size-xs: 0.72rem;
			--font-size-s: 0.9rem;
			--font-size-r: 1.0rem;
			--font-size-m: 1.13rem;
			--font-size-l: 1.41rem;
			--font-size-xl: 1.76rem;
			--font-size-xxl: 2.2rem;
			--font-size-xxxl: 2.75rem;
    }
  }
}


@media (min-width:40em){
  :root{
    --spacing-xxs: 0.1669rem;
    --spacing-xs: 0.2701rem;
    --spacing-s: 0.437rem;
    --spacing-m: 0.8rem;
    --spacing-l: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-xxl: 2.9947rem;

    /* --font-size-s: 0.875rem;
    --font-size-m: 1rem;
    --font-size-l: 1.3rem;
    --font-size-xl: 2rem;
    --font-size-xxl: 2.75rem;

    --line-height-s: 1.3rem;
    --line-height-m: 1.75rem;
    --line-height-l: 2.3rem;
    --line-height-xxl: 2.8rem; */
  }
}

@media (min-width:62.5em){
  :root{
    --spacing-xxs: 0.236rem;
    --spacing-xs: 0.3819rem;
    --spacing-s: 0.6179rem;
    --spacing-m: 0.9997rem;
    --spacing-l: 1.8175rem;
    --spacing-xl: 2.6171rem;
    --spacing-xxl: 4.2345rem;

    /* --font-size-s:0.9rem;
    --font-size-m:1rem;
    --font-size-xl:2.7rem;
    --font-size-xxl:3.45rem;

    --line-height-s: 1.7rem;
    --line-height-m: 1.75rem;
    --line-height-xl:3rem;
    --line-height-xxl:4rem; */
  }
}

@media (min-width:75em){
  :root{
    --spacing-xxs: 0.3337rem;
    --spacing-xs: 0.54rem;
    --spacing-s: 0.8737rem;
    --spacing-m: 1.4136rem;
    --spacing-l: 2.2872rem;
    --spacing-xl: 3.7006rem;
    --spacing-xxl: 5.9876rem;
/* 
    --font-size-s:0.9375rem;
    --font-size-m:1.125rem;
    --font-size-xl:2.75rem;
    --font-size-xxl:3.5rem;

    --line-height-xl:3.5rem;
    --line-height-xxl:4rem; */
  }
}

/* Font Integration */
/* /* titillium-web-300 - latin */ */
/* @font-face { */
/*   font-family: 'Titillium Web'; */
/*   font-style: normal; */
/*   font-weight: 300; */
/*   font-display: swap; */
/*   src: local('Titillium Web Light'), local('Titillium-Web-Light'), */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-300.woff2') format('woff2'), Chrome 26+, Opera 23+, Firefox 39+ */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-300.woff') format('woff'); Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/*   } */
/*   titillium-web-regular - latin */
/*   @font-face { */
/*   font-family: 'Titillium Web'; */
/*   font-style: normal; */
/*   font-weight: 400; */
/*   font-display: swap; */
/*   src: local('Titillium Web Regular'), local('Titillium-Web-Regular'), */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-regular.woff2') format('woff2'), Chrome 26+, Opera 23+, Firefox 39+ */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-regular.woff') format('woff'); Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/*   } */
/*   titillium-web-600 - latin */
/*   @font-face { */
/*   font-family: 'Titillium Web'; */
/*   font-style: normal; */
/*   font-weight: 600; */
/*   font-display: swap; */
/*   src: local('Titillium Web SemiBold'), local('Titillium-Web-SemiBold'), */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-600.woff2') format('woff2'), Chrome 26+, Opera 23+, Firefox 39+ */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-600.woff') format('woff'); Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/*   } */
/*   titillium-web-700 - latin */
/*   @font-face { */
/*   font-family: 'Titillium Web'; */
/*   font-style: normal; */
/*   font-weight: 700; */
/*   font-display: swap; */
/*   src: local('Titillium Web Bold'), local('Titillium-Web-Bold'), */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-600.woff2') format('woff2'), Chrome 26+, Opera 23+, Firefox 39+ */
/*       url('../fonts/TitilliumWeb/titillium-web-v8-latin-600.woff') format('woff'); Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/*   } */

/* /* open-sans-regular - latin */ */
/* @font-face { */
/*   font-family: 'Open Sans'; */
/*   font-style: normal; */
/*   font-weight: 400; */
/*   font-display: swap; */
/*   src: local('Open Sans Regular'), local('OpenSans-Regular'), */
/*        url('../fonts/OpenSans/open-sans-v17-latin-regular.woff2') format('woff2'), Chrome 26+, Opera 23+, Firefox 39+ */
/*        url('../fonts/OpenSans/open-sans-v17-latin-regular.woff') format('woff'); Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/* } */
/* /* open-sans-700 - latin */ */
/* @font-face { */
/*   font-family: "Open Sans"; */
/*   font-style: normal; */
/*   font-weight: 700; */
/*   font-display: swap; */
/*   src: local("Open Sans Bold"), local("OpenSans-Bold"), url("../fonts/OpenSans/open-sans-v20-latin-700.woff2") format("woff2"), url("../fonts/OpenSans/open-sans-v20-latin-700.woff") format("woff"); */
/*   Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/* } */
/* /* open-sans-800 - latin */ */
/* @font-face { */
/*   font-family: "Open Sans"; */
/*   font-style: normal; */
/*   font-weight: 600; */
/*   font-display: swap; */
/*   src: local(""), url("../fonts/OpenSans/open-sans-v17-latin-600.woff2") format("woff2"), url("../fonts/OpenSans/open-sans-v17-latin-600.woff") format("woff"); */
/*   Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
/* } */

/* Component: Button */
.c-button,
.hs-button {
  --c-button--border-radius: 0;
  --c-button--padding: .26666667em 1.6em;

  transition-duration: 100ms;
}

.c-button--solid {
  --c-button--background-color-hover: var(--color-secondary);
}

.c-button--solid-inverted {
  --c-button--color-hover: var(--color-white);
  --c-button--background-color-hover: var(--color-secondary);
}

.c-button--outline {
  --c-button--color-hover: var(--color-secondary);
  --c-button--border-color-hover: var(--color-secondary);
  --c-button--background-color-hover: transparent;
}

.c-button--outline-inverted {
  --c-button--color-hover: var(--color-secondary-lighter-1);
  --c-button--border-color-hover: var(--color-secondary-lighter-1);
  --c-button--background-color-hover: transparent;
}

.c-button--clear {
  --c-button--color-hover: var(--color-white);
  --c-button--background-color-hover: var(--color-secondary);
}

/* * { */
/*   --font-family-display:"Titillium Web",sans-serif; */
/*   --font-family-ui:"Titillium Web",sans-serif; */
/* } */

/* Component: Content Box */
.c-content-box__topic {
  --c-content-box_topic--font-weight: var(--font-weight-semi-bold);
}

.c-content-box__body[min-width~="200px"] {
  --c-content-box_topic--font: var(--font-display-l);
}

/* Component: count-up */
.c-count-up__topic {
  --c-count-up_topic--margin: 1rem 0 0;
}

/* Headlines */
.c-headline__subheadline {
  --c-headline_subheadline--color: var(--color-primary-lighter-3);
  --c-headline_subheadline--font: var(--font-copy-l);
}

h5 {
  --g-headline--font: var(--font-display-l);
    font-weight: var(--font-weight-semi-bold);
}

@media (min-width: 60em) {
  .c-headline {
    --c-headline--margin-bottom: 3rem;
  }

  h1 {
    --g-headline--font: var(--font-display-xxxl);
  }

  h2 {
    --g-headline--font: var(--font-display-xxl);
  }

  h3 {
    --g-headline--font: var(--font-display-xl);
  }

  h4 {
    --g-headline--font: var(--font-display-l);
  }

  h1 + .c-headline__subheadline {
    /* --c-headline_subheadline--font: 1.5em/calc(var(--line-height-m) * var(--line-height-factor-copy)) var(--font-family-copy); */
    --c-headline_subheadline--font: var(--font-size-l) var(--font-family-copy);

    line-height: var(--line-height-l);;
  }

  h3 {
     --font-size-l: 2rem; 
    /* --g-headline--font: var(--font-size-l)/calc(var(--line-height-l) * var(--line-height-factor-display)) var(--font-family-display); */
  }

  h4 {
    /* --font-size-m: 1.563rem; */
    /* --g-headline--font: var(--font-size-m)/calc(var(--line-height-m) * var(--line-height-factor-display)) var(--font-family-display); */
  }
}
/* Component: Tag Label */
.c-tag-label {
  --c-tag-label--background-color: var(--color-white);
  --tag-label--border: 1px solid var(--color-primary-alpha-3);
}

/* Component: Teaser */
.c-teaser {
  --c-teaser--shadow: var(--g-shadow-teaser);
  --c-teaser--border-radius: var(--g-border-radius-teaser);
  --c-teaser--border: var(--g-border-teaser);
}

@media (min-width: 40em) {
  .c-teaser-row .c-teaser__body {
    padding: 1rem 2rem;
  }

  .c-teaser-box .c-teaser__body {
    padding-bottom: 2rem;
  }
}
/* Component: Section */
.mc-section-facts .l-section__container {
  --l-section_col--min-width: 15rem;
}

.l-section--dark {
  --l-section--background: linear-gradient(135deg, #23354b 0%, #3b597e 100%);
  /* --l-section--background: linear-gradient(135deg, #313E8D 0%, #306AB2 100%); */
}

.l-section--accent {
  border: 1px solid var(--color-primary-alpha-1);
  --l-section--background: #FAFAFA;
}

@media (max-width: 40em) {
  .mc-section-facts .l-section__container {
    --l-section_col--min-width: 10rem;
  }
}
@media (min-width: 40em) {
  .l-section__container--gutter-large {
    --l-section_col--min-width: 20rem;
    --l-section_container--gutter: 2rem 5.5rem /* critical:end; */;
  }
}
/* Component: Zitat */
.c-quote__content::before {
  color: var(--c-quote_icon--color, var(--color-secondary));
}

.c-quote {
  --c-quote--color: var(--color-primary);
  --c-quote_image--max-width:25%;
}

/* Component: Visual */
.c-visual {
  --g-headline--font-weight: var(--font-weight-bold);
}

@media (min-width: 40em) {
  .c-visual {
    --c-visual_box--border-radius: 1em;
    --g-content-padding: var(--spacing-l);
  }
}
.c-visual__box--light {
  --c-visual_box--background: var(--color-white-alpha-9);
}

.c-visual__box--dark {
  --c-visual_box--background: var(--color-primary-alpha-9);
}

/* Component: Slider */
.c-slider {
  --c-slider_arrow--color: var(--color-secondary);
  --c-slider_arrow--background-hover: transparent;
  --c-slider_bullet--outline-color-active: var(--color-secondary);
  --c-slider_bullet--background-active: var(--color-secondary);
}

.c-storytelling {
  --c-storytelling--vertical-padding: var(--spacing-m);
}
