@font-face {
  font-family: 'icomoon';
  src: url(..//fonts/21e18006fffc74942ec3.eot?aq6cq);
  src: url(..//fonts/21e18006fffc74942ec3.eot?aq6cq#iefix) format('embedded-opentype'), url(..//fonts/e3f073b5dca094c94df8.ttf?aq6cq) format('truetype'), url(..//fonts/0debe7c0b0841a9c1998.woff?aq6cq) format('woff'), url(..//fonts/29d05f578fbee2016c4d.svg?aq6cq#icomoon) format('svg');
  font-weight: normal;
  font-style: normal;
  }
  .icon {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 2.5rem;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .icon-up02 {
    transform: translateY(40%);
  }
  .icon-up02:before {
    content: "\e902";
  }
  .icon-down02:before {
    content: "\e903";
  }
  .icon-options:before {
    content: "\e900";
  }
  .icon-search:before {
    content: "\e901";
  }
  .icon-arrow_down {
    padding-bottom: 2rem;
  }
  .icon-arrow_down:before {
    content: "\e904";
    color: #EE0000;
    font-size: 6rem;
  }
  .icon-up:before {
    content: "\e906";
  }
  .icon-cog:before {
    content: "\e905";
  }
  .icon-download:before {
    content: "\e908";
  }
  .icon-download02 .path1:before {
    content: "\e909";
  }
  .icon-download02 .path2:before {
    content: "\e90a";
    margin-left: -0.99609375em;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/4ec2cd5c9ef36fff38ec.eot);
    src: url(..//fonts/4ec2cd5c9ef36fff38ec.eot?#iefix) format('embedded-opentype'), url(..//fonts/40e8b3d963f10af9c670.woff) format("woff"), url(..//fonts/03d63c5abd0e6189b853.otf) format("opentype"), url(..//fonts/bba3d5f6c75027628ee1.svg) format('svg');
    font-weight: 300;
    font-style: normal;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/6ff036bffa6fd3a38256.eot);
    src: url(..//fonts/6ff036bffa6fd3a38256.eot?#iefix) format('embedded-opentype'), url(..//fonts/0c4efbc829e23bbcf5ad.woff) format("woff"), url(..//fonts/12eee6d853bd836d25fe.otf) format("opentype"), url(..//fonts/4f7f839e83da75c86ded.svg) format('svg');
    font-weight: 400;
    font-style: normal;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/e555ad5336aa7cafce18.eot);
    src: url(..//fonts/e555ad5336aa7cafce18.eot?#iefix) format('embedded-opentype'), url(..//fonts/9c435794938e4c5dc522.woff) format("woff"), url(..//fonts/0d37118350ba10ef3f36.otf) format("opentype"), url(..//fonts/346a943c045c524d9a04.svg) format('svg');
    font-weight: 400;
    font-style: italic;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/fc47e41b28bca46f1048.eot);
    src: url(..//fonts/fc47e41b28bca46f1048.eot?#iefix) format('embedded-opentype'), url(..//fonts/f14dbe32530c5c47256c.woff) format("woff"), url(..//fonts/b6cb5f52f5f97a11ee19.otf) format("opentype"), url(..//fonts/a141a1766c5a142ec3d5.svg) format('svg');
    font-weight: 500;
    font-style: normal;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/a2949a401b269eb438f5.eot);
    src: url(..//fonts/a2949a401b269eb438f5.eot?#iefix) format('embedded-opentype'), url(..//fonts/6c80429e41fce8f39c0d.woff) format("woff"), url(..//fonts/6da482d8a47e31cf9717.otf) format("opentype"), url(..//fonts/697a651035a1a633c421.svg) format('svg');
    font-weight: bold;
    font-style: normal;
  }
  @font-face {
    font-family: "Sparkasse";
    src: url(..//fonts/8c3ea82ea732893ce553.eot);
    src: url(..//fonts/8c3ea82ea732893ce553.eot?#iefix) format('embedded-opentype'), url(..//fonts/0b7decbbdf4ff8af3219.woff) format("woff"), url(..//fonts/c023984e98b31120c3b5.otf) format("opentype"), url(..//fonts/f36ca0904bdaa1a66105.svg) format('svg');
    font-weight: bold;
    font-style: italic;
  }
  @font-face {
    font-family: "Sparkasse Head";
    src: url(..//fonts/517907c0d162203eb93c.eot);
    src: url(..//fonts/517907c0d162203eb93c.eot?#iefix) format('embedded-opentype'), url(..//fonts/498393e2b21e60e2e072.woff) format("woff"), url(..//fonts/332bd8d655a384b311cf.otf) format("opentype"), url(..//fonts/3ae798db3699cb88884c.svg) format('svg');
    font-weight: normal;
    font-style: normal;
  }
  @font-face {
    font-family: "Sparkasse Serif";
    src: url(..//fonts/6033d4ce1e653ef29b05.eot);
    src: url(..//fonts/6033d4ce1e653ef29b05.eot?#iefix) format('embedded-opentype'), url(..//fonts/2f0db7fe9a26d312d63f.woff) format("woff"), url(..//fonts/9418b401799d36f040f8.otf) format("opentype"), url(..//fonts/1a2abb3596e1e58db75f.svg) format('svg');
    font-weight: normal;
    font-style: normal;
  }
  .headline {
    font-family: 'Sparkasse Head', sans-serif;
    hyphens: none;
  }
  /*.headline.bold {
    font-weight: unset;
  }*/
  .headline.h1 {
    font-size: 2rem;
    margin-bottom: 1.2rem;
  }
  .headline.h2 {
    font-size: 1.6rem;
    margin-bottom: 1rem;
    margin-top: 1.5rem;
  }
  .headline.h3 {
    font-family: 'Sparkasse', sans-serif;
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
    margin-top: 1rem;
  }
  .headline + .headline {
    margin-top: 0;
  }
  .headline.h1:first-child,
  .headline.h2:first-child,
  .headline.h3:first-child {
    margin-top: 0;
  }
  @media all and (min-width: 768px) {
    .headline {
      margin-top: unset;
    }
    .headline.h1 {
      font-size: 3rem;
      margin-bottom: 2rem;
    }
    .headline.h2 {
      font-size: 2.25rem;
      margin-bottom: 1.25rem;
      margin-top: 2rem;
    }
    .headline.h3 {
      font-size: 1.5rem;
      margin-bottom: 0.75rem;
      margin-top: 1.5rem;
    }
  }
  strong,
  .bold {
    font-weight: bold !important;
  }
  .red {
    color: #EE0000 !important;
  }
  a {
    font-size: 1rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    color: black;
    transition: color ease-in-out 250ms;
  }
  a > .icon-arrow_down {
    display: inline-block;
    transform: rotate(-90deg);
    padding: 0;
    margin-left: 0.5rem;
    transition: color ease-in-out 250ms;
  }
  a > .icon-arrow_down::before {
    color: black;
    font-size: 2rem;
  }
  a:hover {
    color: #EE0000;
    transition: color ease-in-out 250ms;
    text-decoration: none;
  }
  a:hover > .icon-arrow_down::before {
    color: #EE0000;
    transition: color ease-in-out 250ms;
  }
  a:hover > .icon-chevron-right {
    filter: invert(21%) sepia(98%) saturate(6943%) hue-rotate(8deg) brightness(100%) contrast(114%);
    transition: ease-in-out 250ms;
  }
  @media all and (min-width: 768px) {
    a {
      margin-top: unset;
      font-size: 1.1rem;
    }
  }
  p {
    font-size: 1rem;
    font-weight: normal;
  }
  p.small {
    font-size: 0.9rem;
  }
  @media all and (min-width: 768px) {
    p {
      font-size: 1.1rem;
    }
  }
  .grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-row-gap: 2rem;
    margin-bottom: 4rem;
  }
  .grid .col-6 {
    grid-column-end: span 12;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .grid .col-6 img {
    width: 100%;
    max-height: 22rem;
    object-fit: cover;
  }
  .grid .col-6 img.person {
    aspect-ratio: 1/1;
    max-height: unset;
  }
  .grid .col-3 {
    grid-column-end: span 12;
  }
  .grid .col-4 {
    grid-column-end: span 12;
  }
  .grid .col-8 {
    grid-column-end: span 12;
  }
/* grid 12 test */
  .grid .col-12 {
    grid-column-end: span 12;
  }
  .grid.blockquote {
    margin-bottom: 1rem;
  }
  .grid.blockquote blockquote {
    width: 100%;
  }
  .grid.blockquote blockquote::before {
    margin-top: 0;
  }
  @media all and (min-width: 768px) {
    .grid {
      margin-bottom: 6rem;
      grid-column-gap: 2rem;
      grid-row-gap: 4rem;
    }
/* grid 12 test */
    .grid .col-12 {
      grid-column-end: span 12;
    }
    .grid .col-6 {
      grid-column-end: span 6;
    }
    .grid .col-6 img {
      max-height: 30rem;
    }
    .grid .col-4 {
      grid-column-end: span 4;
    }
    .grid .col-8 {
      grid-column-end: span 8;
    }
    .grid .col-3 {
      grid-column-end: span 3;
    }
    .grid.blockquote {
      margin-bottom: 2rem;
    }
    .grid.blockquote > .col-6:last-child {
      grid-column-start: 8;
    }
  }
  @media all and (min-width: 1094px) {
    .grid .offset {
      position: relative;
      width: calc(100% + (100vw - 1092px) / 2 + 1rem);
    }
    .grid .offset + div {
      grid-column-start: 8;
      grid-column-end: span 5;
    }
    .grid .offset-left {
      right: calc((100vw - 1092px) / 2 + 1rem);
    }
    .grid .offset-right {
      right: 0;
      grid-column-start: 8;
    }
  }
  @media all and (min-width: 1920px) {
    .grid .offset-left {
      position: relative;
      left: calc((1920px - 1092px + 2 * 1rem)/-2);
      width: calc(100% + (1920px - 1092px + 2 * 1rem)/2);
    }
    .grid .offset-left + div {
      grid-column-start: 8;
      grid-column-end: span 5;
    }
    .grid .offset-right {
      right: unset;
      width: calc(100% + (1920px - 1092px + 2 * 1rem)/2);
    }
  }
  .highlight {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #EE0000;
    text-align: center;
    margin-bottom: 3rem;
    position: relative;
    hyphens: none;
  }
  .highlight img {
    height: 8rem;
  }
  .highlight .h3 {
    font-family: 'Sparkasse Head', sans-serif;
    font-size: 2rem;
    margin-bottom: 0.5rem;
  }
  .highlight p {
    font-size: 1rem;
    width: 70%;
  }
  .highlight:after {
    content: '';
    width: 70%;
    height: 1px;
    background-color: #EE0000;
    position: absolute;
    top: -2.5rem;
  }
  .highlight:first-child:after {
    display: none;
  }
  @media all and (min-width: 768px) {
    .highlight {
      margin-bottom: 0;
    }
    .highlight:after {
      width: 1px;
      height: 120%;
      left: calc(100% + 1rem);
    }
    .highlight:last-child:after {
      display: none;
    }
    .highlight:first-child:after {
      display: block;
    }
  }
  .downloads .grid {
    gap: 1rem;
  }
  .downloads .download {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    background-color: #F0F0F0;
    padding: 2rem;
    align-items: center;
    transition: background-color ease-in-out 250ms;
  }
  .downloads .download > img {
    width: 3.5rem;
    margin-right: 2rem;
  }
  .downloads .download .download-caption .h3 {
    font-size: 1.2rem;
    font-weight: normal;
    margin-bottom: 0.75rem;
    margin-top: 0;
  }
  .downloads .download .download-caption p {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    font-size: 1rem;
  }
  .downloads .download .download-caption .icon {
    font-size: unset;
    padding: 0;
    margin-right: 0.5rem;
  }
  .downloads .download .download-caption .icon::before {
    font-size: 1.5rem;
    color: black;
  }
  .downloads .download:hover,
  .downloads .download:focus {
    background-color: #e2e2e2;
    transition: background-color ease-in-out 250ms;
    text-decoration: none;
  }
  .downloads .download:hover .headline,
  .downloads .download:focus .headline,
  .downloads .download:hover span,
  .downloads .download:focus span,
  .downloads .download:hover .icon::before,
  .downloads .download:focus .icon::before,
  .downloads .download:hover p,
  .downloads .download:focus p {
    color: black;
    transition: color ease-in-out 250ms;
  }
  @media all and (min-width: 768px) {
    .downloads .grid {
      gap: 1.5rem;
    }
  }
  @media all and (min-width: 1920px) {
    .downloads .grid {
      width: 75%;
      margin-right: auto;
    }
  }
  .story > .headline {
    font-size: 1.4rem;
    margin-top: 0;
    margin-bottom: 1.1rem;
  }
  .story.col-6 img {
    display: block;
    height: 12rem;
    object-fit: cover;
    margin-bottom: 2rem;
    object-position: top;
  }
  .story.col-6 {
    justify-content: flex-start;
  }
  .story a {
    margin-top: 1rem;
  }
  .story p {
    margin-bottom: 0;
  }
  .story-large div:first-child {
    order: 1;
  }
  .story-large .h3 {
    margin-top: 0;
    margin-bottom: 1.5rem;
  }
  @media all and (min-width: 768px) {
    .story > .headline {
      font-size: 2.2rem;
    }
    .story-large div:first-child {
      order: unset;
    }
    .story img {
      margin-bottom: 2rem;
    }
    .story p {
      margin-bottom: 1.5rem;
    }
    .story.col-6 img {
      height: 18rem;
    }
    .story a {
      margin-top: auto;
    }
  }
  header a {
    display: flex;
    align-items: center;
    color: white;
    transition: color ease-in-out 250ms;
  }
  header a:hover {
    color: #d9d9d9;
    transition: color ease-in-out 250ms;
  }
  header section {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  header .menu {
    position: relative;
    top: 0;
    left: 0;
    background-color: #EE0000;
    width: 100%;
  }
  header .menu nav {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    margin: 1rem auto 1rem auto;
  }
  header .menu nav > a {
    display: flex;
    justify-content: center;
    width: 50%;
    margin: 0.5rem 0;
    font-weight: bold;
    font-size: 1.15rem;
  }
  header .menu nav > a.languageswitch {
    font-size: 1.4rem;
    font-weight: lighter;
    text-transform: uppercase;
    width: 100%;
  }
  header .menu nav > a:last-child {
    padding-right: unset;
  }
  header .menu .menu-inner {
    display: flex;
    flex-direction: column;
    max-width: 1092px;
    width: 100%;
    margin: 0 auto;
    padding: 0 1rem;
  }
  header .menu .logo {
    min-width: 16rem;
    max-width: 20rem;
    width: 100%;
    margin: 1rem auto 0 auto;
  }
  header .menu .logo > img {
    width: 100%;
    position: relative;
  }
  header .stage {
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url(69d5f24f6a4fc6bd9dcb.jpg); /* Ausgetauscht */
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 200px;
    position: relative;
  }
  header .stage > .headline {
    text-align: left;
  }
  header .stage:after {
    content: '';
    background-color: black;
    opacity: 0.35;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  @media all and (min-width: 768px) {
    header .stage {
      min-height: 600px;
    }
  }
  header .container {
    display: flex;
  }
  header .h2 {
    font-weight: bold;
  }
  header .h3 {
    font-size: 1.5rem;
  }
  @media all and (min-width: 480px) {
    header .menu nav {
      width: 70%;
    }
  }
  @media all and (min-width: 768px) {
    header .menu .logo {
      width: 35%;
      margin: unset;
    }
    header .menu .logo > img {
      width: 100%;
    }
    header .menu nav {
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: flex-end;
      margin: 1.5rem 0 1.5rem auto;
      height: 3rem;
      max-height: 3rem;
    }
    header .menu nav > a {
      width: unset;
      padding-right: 1.5rem;
    }
    header .menu .menu-inner {
      flex-direction: row;
    }
    header .menu nav a.languageswitch {
      order: 2;
      width: auto;
      padding-right: 0;
      padding-left: 4rem;
    }
  }
  @media all and (min-width: 1138px) {
    header .menu .logo {
      width: 25%;
    }
    header .menu .logo > img {
      width: 100%;
      position: relative;
      left: -23px;
    }
    header .menu nav a {
      padding-right: 3rem;
    }
    header .menu nav a.languageswitch {
      padding-left: 6rem;
    }
    header .cite-offset {
      align-items: flex-start;
    }
    header .cite-offset .headline:first-child {
      margin-top: 4rem;
    }
  }
  footer {
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-size: 15px;
    min-height: 6rem;
    color: white;
    background-color: #444444;
  }
  footer .topscroll {
    cursor: pointer;
  }
  footer a,
  footer:link,
  footer a:hover,
  footer a:visited {
    color: white;
    text-decoration: none;
  }
  footer a {
    color: white;
    margin: 0.5rem 0;
    font-weight: 300;
    transition: color ease-in-out 250ms;
  }
  footer a:first-child {
    margin-top: 1rem;
  }
  footer a:hover {
    color: #bfbfbf;
    transition: color ease-in-out 250ms;
  }
  footer .inner {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
  }
  footer .inner > *,
  footer .inner .icon {
    margin-right: 1.5rem;
    margin-left: 1.5rem;
  }
  footer .topscroll {
    margin-bottom: 1rem;
    margin-top: 1rem;
    transition: color ease-in-out 250ms;
  }
  footer .topscroll:hover {
    color: #bfbfbf;
    transition: color ease-in-out 250ms;
  }
  @media all and (min-width: 768px) {
    footer .inner {
      flex-direction: row;
    }
    footer .topscroll {
      margin-left: auto;
    }
    footer a:first-child {
      margin-top: 0.5rem;
    }
  }
  .article p {
    font-weight: lighter;
    text-align: left;
    margin-bottom: 1rem;
  }
  .article p.bold {
    font-weight: normal;
    margin-bottom: 0;
  }
  .article section.intro {
    background-color: transparent;
  }
  .article section.intro .h2 {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1rem;
  }
  .article section.intro .h3 {
    font-size: 1.2rem;
    font-weight: lighter;
    margin-bottom: 1.5rem;
    margin-top: 0;
  }
  .article section.intro p {
    font-size: 1.2rem;
    font-weight: lighter;
  }
  .article header section:last-child {
    margin-bottom: 4rem;
  }
  .article header .h3 {
    font-weight: lighter;
  }
  .article .back {
    width: min(1092px, 100%);
  }
  .article .back a {
    font-weight: lighter;
    font-size: 1rem;
    color: black;
    margin-top: 1rem;
    margin-bottom: 3rem;
  }
  .article .back a > .icon-chevron-right {
    display: inline-block;
    transform: rotate(180deg);
    padding: 0;
    margin-right: 1rem;
  }
  .article .back a:hover {
    color: #EE0000;
    transition: color ease-in-out 250ms;
  }
  .article .back a:hover > .icon-arrow_down::before {
    color: #EE0000;
    transition: color ease-in-out 250ms;
  }
  .article .interview .bold {
    margin-bottom: 0;
    margin-top: 1.5rem;
  }
  .article .interview .bold:first-child {
    margin-top: 0;
  }
  .article section > p:last-child {
    margin-bottom: 0;
  }
  @media all and (min-width: 768px) {
    .article section.intro .h2 {
      font-size: 2.65rem;
    }
    .article section.intro .h3 {
      font-size: 1.75rem;
      margin-bottom: 3rem;
    }
    .article section.intro p {
      font-size: 1.6rem;
    }
    .article p.bold {
      margin-bottom: 0;
    }
    .article .interview .bold {
      margin-bottom: 0;
      margin-top: 2rem;
    }
  }
  .stripe {
    display: block;
    content: '';
    height: 1px;
    width: 50%;
    background-color: red;
    margin: 2rem 0 1rem 0;
    max-width: 15rem;
  }
  blockquote {
    color: #EE0000;
    border: none;
    padding: 0;
    margin-bottom: 2rem;
  }
  blockquote::before {
    display: block;
    content: '';
    height: 1px;
    width: 50%;
    background-color: red;
    margin: 2rem 0 1rem 0;
    max-width: 15rem;
  }
  blockquote + figcaption {
    color: #EE0000;
    font-size: 1rem;
    margin-top: 1rem;
  }
  blockquote strong {
    margin: 0;
  }
  @media all and (min-width: 768px) {
    blockquote {
      font-size: 2.25rem;
      width: 75%;
      margin-bottom: 2rem;
    }
    blockquote figcaption {
      font-size: 1.2rem;
      margin-top: 2.5rem;
    }
    blockquote::before {
      margin: 3rem 0 1rem 0;
    }
  }
  figure blockquote {
    margin-bottom: 1rem;
  }
  .grid blockquote::before {
    margin-top: 0;
  }
  .time {
    margin-bottom: 2rem;
  }
  .time p {
    color: #EE0000;
  }
  .time::before {
    display: block;
    content: '';
    height: 1px;
    width: 50%;
    background-color: red;
    margin: 2rem 0 1rem 0;
    max-width: 15rem;
  }
  .time:first-child::before {
    margin-top: 0;
  }
  @media all and (min-width: 768px) {
    .time::before {
      margin: 2rem 0 0 0;
    }
  }
  .order-form {
    font-size: 1.25rem;
    max-width: 1092px;
    padding: 3rem 1rem;
    min-height: 70vh;
  }
  .order-form form button {
    background: #EE0000;
    transition: background-color ease-in-out 250ms;
    color: white;
    border: none;
    padding: 0.5rem 1.5rem;
  }
  .order-form form button:hover {
    background: #ca0000;
    transition: background-color ease-in-out 250ms;
  }
  .order-form form input {
    width: 100%;
  }
  .order-form form span {
    padding: 0;
  }
  .order-form form .container {
    padding: 0;
    width: unset;
  }
  .order-form form .container > .row {
    margin-bottom: 1rem;
  }
  .order-form form .captcha .capbox {
    background-color: #BBBBBB;
    background-image: linear-gradient(#BBBBBB, #9E9E9E);
    border: #ff0000 0px solid;
    border-width: 2px 2px 2px 20px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    padding: 5px 8px 5px 8px;
    border-radius: 4px 4px 4px 4px;
  }
  .order-form form .captcha .capbox-inner {
    font: bold 12px arial, sans-serif;
    color: #000000;
    background-color: #E3E3E3;
    margin: 0px auto 0px auto;
    padding: 3px 10px 5px 10px;
    border-radius: 4px;
    display: inline-block;
    vertical-align: middle;
  }
  .order-form form .captcha #CaptchaDiv {
    color: #000000;
    font: normal 25px Impact, Charcoal, arial, sans-serif;
    font-style: italic;
    text-align: center;
    vertical-align: middle;
    background-color: #FFFFFF;
    user-select: none;
    display: inline-block;
    padding: 3px 14px 3px 8px;
    margin-right: 4px;
    border-radius: 4px;
  }
  .order-form form .captcha #CaptchaInput {
    border: #ff0000 2px solid;
    margin: 3px 0px 1px 0px;
    width: 105px;
    border-radius: 7px;
  }
  .order-form form .dsgv-contact {
    font-size: 1.25rem;
    font-weight: lighter;
  }
  .order-form form .dsgv-contact p {
    font-weight: lighter;
  }
  .order-form form .text input {
    width: unset;
    cursor: pointer;
  }
  .order-form form .text > a {
    display: inline-block;
    font-size: 1.25rem;
  }
  .order-form form > section {
    padding: 0;
    margin-bottom: 2rem;
  }
  .order-form .row > div {
    margin-bottom: 4rem;
  }
  .order-form.intro {
    margin-bottom: 0;
  }
  @media all and (min-width: 768px) {
    .order-form {
      min-height: calc(100vh - 12rem);
    }
    .order-form form input {
      width: 70%;
    }
    .order-form form button {
      float: right;
    }
  }
  html {
    font-size: 16px;
  }
  body {
    font-family: "Sparkasse", sans-serif;
    font-weight: 300;
    overflow-x: hidden;
    font-size: 1rem;
    hyphens: auto;
  }
  body .handwriting {
    max-width: 25rem;
    margin-bottom: 1rem;
  }
  body .handwriting:last-child {
    margin-top: 2rem;
    margin-bottom: 0;
    max-width: 18rem;
  }
  @media all and (min-width: 768px) {
    body {
      margin-top: unset;
    }
    body .handwriting {
      width: 45%;
    }
    body.article p {
      width: 85%;
    }
    body > .container {
      padding: 6rem 1rem;
    }
  }
  article {
    width: 100%;
  }
  @media all and (min-width: 1920px) {
    article section:first-child {
      padding-top: 2rem;
    }
  }
  section {
    display: flex;
    flex-direction: column;
    padding: 0 1rem;
    margin: 0 auto 3rem auto;
    width: 100%;
    max-width: 1092px;
  }
  section p + .grid {
    margin-top: 2rem;
  }
  section:first-child {
    padding-top: 1.5rem;
  }
  section:last-child {
    margin-bottom: 6rem;
  }
  section.fullwidth {
    background-color: #f0f0f0;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: unset;
    padding: 2rem 0;
  }
  section.fullwidth .fullwidth-inner {
    padding: 0 1rem;
    margin: 0 auto 4rem auto;
    width: 100%;
    max-width: 1092px;
  }
  section.interview p {
    margin-bottom: 1rem;
  }
  section p:first-child {
    margin-top: 0;
  }
  section p:last-child,
  section .grid:last-child {
    margin-bottom: 0;
  }
  @media all and (min-width: 1092px) {
    section {
      margin: 0 auto 4rem auto;
    }
    section.fullwidth {
      padding: 4rem 0;
    }
    section p + .grid {
      margin-top: 4rem;
    }
  }
  .preamble h2 {
    font-size: 1.6rem;
  }
  .preamble a {
    margin-top: 1rem;
  }
  @media all and (min-width: 768px) {
    .preamble h2 {
      font-size: 2.4rem;
    }
  }
  img + figcaption {
    font-size: 0.9rem;
    padding: 0.5rem 0;
  }
  @media all and (min-width: 768px) {
    img + figcaption {
      padding: 0.5rem 0;
    }
  }
  @media all and (min-width: 768px) {
    .offset img + figcaption {
      padding: 0.5rem 2rem;
    }
  }
  .icon-chevron-right {
    content: url(https://finanzbericht.dsgv.de/assets/1f0e8a7097bc6853006f.png);
    height: 1.75rem;
    margin-left: 0.5rem;
    filter: none;
    transition: ease-in-out 250ms;
  }
  .intro > .headline.h1 {
    margin-top: 4rem;
  }
  .stage .h1.headline {
    color: white;
    z-index: 10;
    width: 50%;
    margin-top: 1rem;
  }

  /*******************   T I M E L I N E   *******************/

.timeline-main {
  padding-left: 25px;
  position: relative;
}

.timeline-main:before {
  position: absolute;
  content: "";
  height: 100%;
  border-right: 3px solid #EE0000;
  left: 5px;
}

.timeline-item-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.timeline-item-left {
  width: 100%;
}

.timeline-item-right {
  width: 100%;
}

.timeline-item .title {
  margin: 0 0 10px;
  font-weight: 700;
  position: relative;
  font-size: 26px;
}

.timeline-item .title:not(:first-child) {
  margin-top: 40px;
}

.timeline-item .timeline-item-left .title:before {
  position: absolute;
  content: "";
  height: 15px;
  width: 15px;
  background: #ffffff;
  left: -26px;
  transform: translateY(-50%);
  top: 50%;
  border-radius: 100%;
  border: 3px solid #EE0000;
}

.timeline-item h4 {
  margin: 25px 0 15px;
  font-weight: 700;
  position: relative;
}

.timeline-item .timeline-item-right h4 {
 margin-top:0;
}

.timeline-item .timeline-item-left h4:before {
  position: absolute;
  content: "";
  height: 15px;
  width: 15px;
  background: #ffffff;
  left: -26px;
  transform: translateY(-50%);
  top: 50%;
  border-radius: 100%;
  border: 3px solid #EE0000;
}

.timeline-item p,
.timeline-item ul {
  margin-bottom: 20px;
}

.timeline-item ul {
  padding-left: 0;
  list-style: none;
}

.timeline-item ul li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}

.timeline-item ul li:before {
  position: absolute;
  content: "";
  height: 15px;
  width: 19px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(icon_arrow.png);
  left: 0;
  background-size: contain;
  top: 3px;
}

.timeline-item:not(:last-child) {
      padding-bottom: 40px;
}

.timeline-item .sticky-div {
  position: sticky;
  top: 20px;
}

@media(min-width:768px){

  .timeline-item-left {
  width: calc(50% - 15px);
  }

  .timeline-item-right {
      width: calc(50% - 15px);
  }

}
/*******************   L I N K S   *******************/

a.external {
  color: #EE0000;
  font-weight: bold;
}
a.external:before {

/*    display: inline-block;
  position: absolute;
  content: "";
  height: 10px;
  width: 18px;
  background-position: left center;
  background-repeat: no-repeat;
  background-image: url(assets/icon_arrow.png);
  transform: rotate(45deg);
  left: -24px;
  background-size: contain;
  top: 5px;
  padding-left: 24px;
*/

transform: rotate(-45deg);
  background-position: top center;
  background-repeat: no-repeat;
  background-image: url('icon_arrow.png');
  background-size: contain;
  height: 10px;
  width: 18px;
  content: ""; /* Hier dein Icon oder Unicode-Symbol */
  margin-right: 8px; /* Abstand zwischen Icon und Text */
  font-size: 1em; /* Icon-Größe anpassen */
  display: inline-block;
  vertical-align: middle; /* Ausrichtung zum Text */
}


/* custom bullet-points */
ul.custom-bullets {
  list-style: none;
  padding-left: 0;
}

ul.custom-bullets li {
  position: relative;
  padding-left: 30px;
}

ul.custom-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 22px;
  height: 14px;
  background-image: url('icon_arrow.png');
  background-size: contain; 
  background-repeat: no-repeat;
}
/* Responsive Darstellung STORY mit Bild links */
@media (max-width: 767px) {
  .story-large {
    display: flex;
  }
  .image-top {
    flex-direction: column-reverse;
  }
}
/* region page css */
.icon-number .highlight p {
  text-align: center !important;
}