body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* COLOR DEFINITIONS */
/* EBENEN (z-index) */
/* SETTINGS */
/* ARTIKEL-ABSTÄNDE – Desktop zuerst, null = wie der größere Viewport */
/* BREAKPOINTS */
@font-face {
  font-family: "Nunito Sans";
  src: url("../../files/ring/theme/fonts/nunito-sans.woff2") format("woff2");
  font-weight: 200 1000;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Nunito Sans";
  src: url("../../files/ring/theme/fonts/nunito-sans-italic.woff2") format("woff2");
  font-weight: 200 1000;
  font-style: italic;
  font-display: swap;
}
a, p, h1, h2, h3, h4, h5, h6, li, span, strong, label, figcaption, textarea, input, button {
  font-family: "Nunito Sans", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #281f22;
}
a.nopadding, p.nopadding, h1.nopadding, h2.nopadding, h3.nopadding, h4.nopadding, h5.nopadding, h6.nopadding, li.nopadding, span.nopadding, strong.nopadding, label.nopadding, figcaption.nopadding, textarea.nopadding, input.nopadding, button.nopadding {
  padding: 0;
}

a, button {
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
  font-size: 16px;
  line-height: 16px;
  font-weight: 500;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

a.btn,
form button[type=submit] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 0;
  background-color: transparent;
  font-family: "Nunito Sans", sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  height: 3.125rem;
  margin-top: 1.875rem;
  padding: 0.9375rem 1.25rem;
  font-size: 1rem;
  line-height: 1.25rem;
  font-weight: 700;
  color: #e51f27;
  -webkit-box-shadow: inset 0 0 0 0.125rem #e51f27;
          box-shadow: inset 0 0 0 0.125rem #e51f27;
  border-radius: 1.875rem;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  -webkit-transition: color 1.75s ease;
  transition: color 1.75s ease;
}
a.btn::before,
form button[type=submit]::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 1.25rem;
  width: 0.5rem;
  height: 0.5rem;
  margin-top: -0.25rem;
  border-radius: 50%;
  background-color: #e51f27;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: -webkit-transform 1.75s ease;
  transition: -webkit-transform 1.75s ease;
  transition: transform 1.75s ease;
  transition: transform 1.75s ease, -webkit-transform 1.75s ease;
}
a.btn::after,
form button[type=submit]::after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #e51f27;
  -webkit-transition: background-color 1.75s ease;
  transition: background-color 1.75s ease;
  -webkit-animation: btn-dot 2.7s ease-in-out infinite;
          animation: btn-dot 2.7s ease-in-out infinite;
}
a.btn:hover, a.btn:focus-visible,
form button[type=submit]:hover,
form button[type=submit]:focus-visible {
  color: #ffffff;
}
a.btn:hover::before, a.btn:focus-visible::before,
form button[type=submit]:hover::before,
form button[type=submit]:focus-visible::before {
  -webkit-transform: scale(66);
          transform: scale(66);
}
a.btn:hover::after, a.btn:focus-visible::after,
form button[type=submit]:hover::after,
form button[type=submit]:focus-visible::after {
  background-color: #ffffff;
}
:is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit] {
  color: #ffffff;
  -webkit-box-shadow: inset 0 0 0 0.125rem #ffffff;
          box-shadow: inset 0 0 0 0.125rem #ffffff;
}
:is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn::before, :is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn::after,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]::before,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]::after {
  background-color: #ffffff;
}
:is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn:hover, :is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn:focus-visible,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]:hover,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]:focus-visible {
  color: #e51f27;
}
:is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn:hover::after, :is(.grid-section--bg-firered, .grid-item--bg-firered) a.btn:focus-visible::after,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]:hover::after,
:is(.grid-section--bg-firered, .grid-item--bg-firered) form button[type=submit]:focus-visible::after {
  background-color: #e51f27;
}

@-webkit-keyframes btn-dot {
  0%, 12.962962963%, 25.9259259259%, 100% {
    -webkit-transform: scale(0.875);
            transform: scale(0.875);
  }
  6.4814814815%, 19.4444444444% {
    -webkit-transform: scale(1.35);
            transform: scale(1.35);
  }
}

@keyframes btn-dot {
  0%, 12.962962963%, 25.9259259259%, 100% {
    -webkit-transform: scale(0.875);
            transform: scale(0.875);
  }
  6.4814814815%, 19.4444444444% {
    -webkit-transform: scale(1.35);
            transform: scale(1.35);
  }
}
@media (prefers-reduced-motion: reduce) {
  :is(a.btn, form button[type=submit]),
  :is(a.btn, form button[type=submit])::before,
  :is(a.btn, form button[type=submit])::after {
    -webkit-transition: none;
    transition: none;
    -webkit-animation: none;
            animation: none;
  }
}
strong {
  font-weight: 600;
  font-style: normal;
}

p {
  font-size: 16px;
  line-height: 22px;
  font-weight: 300;
  padding-bottom: 15px;
  -ms-hyphens: auto;
      hyphens: auto;
}
p:last-child {
  padding-bottom: 0;
}
@media (min-width: 320px) and (max-width: 767px) {
  p {
    font-size: 18px;
    line-height: 32px;
  }
}

p.lead,
.lead p {
  font-size: 24px;
  line-height: 34px;
  font-weight: 300;
}
@media (min-width: 320px) and (max-width: 767px) {
  p.lead,
  .lead p {
    font-size: 17.6px;
    line-height: 28px;
  }
}

.text-large,
.text-large p {
  font-size: 34px;
  line-height: 1;
  font-weight: 700;
  padding-bottom: 0px;
}

h1, .h1 {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 56px;
  line-height: 56px;
  text-align: left;
  padding-bottom: 20px;
  -ms-hyphens: none;
      hyphens: none;
  color: #e51f27;
}
@media (min-width: 768px) and (max-width: 991px) {
  h1, .h1 {
    font-size: 44px;
    line-height: 46px;
    font-weight: 800;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}
@media (min-width: 320px) and (max-width: 767px) {
  h1, .h1 {
    font-size: 32px;
    line-height: 36px;
    font-weight: 800;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}

h2, .h2 {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 42px;
  line-height: 42px;
  padding-bottom: 20px;
  -ms-hyphens: none;
      hyphens: none;
  color: #e51f27;
}
@media (min-width: 768px) and (max-width: 991px) {
  h2, .h2 {
    font-size: 30px;
    line-height: 32px;
    font-weight: 600;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}
@media (min-width: 320px) and (max-width: 767px) {
  h2, .h2 {
    font-size: 28px;
    line-height: 32px;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}

h3, .h3 {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 26px;
  line-height: 29.2px;
  padding-bottom: 10px;
  -ms-hyphens: none;
      hyphens: none;
  color: #e51f27;
}
@media (min-width: 768px) and (max-width: 991px) {
  h3, .h3 {
    font-size: 24px;
    line-height: 24px;
    padding-bottom: 10px;
  }
}
@media (min-width: 320px) and (max-width: 767px) {
  h3, .h3 {
    font-size: 22.8px;
    line-height: 26px;
    padding-bottom: 10px;
  }
}

h4, .h4 {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 20px;
  line-height: 32px;
  padding-bottom: 5px;
  -ms-hyphens: none;
      hyphens: none;
}

.content-text ul li {
  font-size: 16px;
  line-height: 22px;
  font-weight: 300;
  padding-bottom: 15px;
  padding-left: 20px;
  list-style-type: none;
  position: relative;
}
.content-text ul li::before {
  content: "+";
  font-weight: 600;
  color: #e51f27;
  position: absolute;
  left: 0;
  top: 0;
}
.content-text.negative ul li {
  padding-left: 45px;
}
.content-text.negative ul li::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("../../files/ring/theme/img/icon-list-x.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left top;
}
.content-text.positive ul li {
  padding-left: 45px;
}
.content-text.positive ul li::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("../../files/ring/theme/img/icon-list-v.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left top;
}

.grid-section {
  position: relative;
  isolation: isolate;
}
.grid-section__media {
  position: absolute;
  inset: 0;
  z-index: -1;
}

.grid {
  --grid-cols: 4;
  --grid-gap: 20px;
  --grid-max: 1200px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: ;
  grid-template-columns: repeat(var(--grid-cols), minmax(0, 1fr));
  gap: var(--grid-gap);
  width: min(100% - 40px, var(--grid-max));
  margin-inline: auto;
}
@media (min-width: 768px) {
  .grid {
    --grid-cols: 8;
  }
}
@media (min-width: 992px) {
  .grid {
    --grid-cols: 12;
  }
}
@media (min-width: 1200px) {
  .grid {
    --grid-cols: 12;
  }
}
.grid--narrow {
  --grid-max: 992px;
}
.grid--full {
  width: 100%;
}
.grid--no-gap {
  --grid-gap: 0px;
}
.grid--items-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.grid--items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.grid--items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
.grid-item .grid {
  width: 100%;
}

.grid-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 0;
}
.grid-item__inner {
  position: relative;
  z-index: 1;
}
.grid-item__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: inherit;
}
.grid-item__link {
  position: absolute;
  inset: 0;
  z-index: 2;
}
.grid-item__link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -2px;
}
.grid-item--self-start {
  -ms-flex-item-align: start;
      -ms-grid-row-align: start;
      align-self: start;
}
.grid-item--self-center {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.grid-item--self-end {
  -ms-flex-item-align: end;
      -ms-grid-row-align: end;
      align-self: end;
}
.grid-item--content-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.grid-item--content-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.grid-item--pad-s {
  padding: 20px;
}
.grid-item--pad-m {
  padding: 40px;
}
.grid-item--pad-l {
  padding: 60px;
}
.grid-item--radius-20 {
  border-radius: 20px;
}

.grid-section__media,
.grid-item__media {
  --img-shift: var(--img-x-s, var(--img-x-md, var(--img-x-lg, 0px)));
}
@media (min-width: 768px) {
  .grid-section__media,
  .grid-item__media {
    --img-shift: var(--img-x-md, var(--img-x-lg, 0px));
  }
}
@media (min-width: 992px) {
  .grid-section__media,
  .grid-item__media {
    --img-shift: var(--img-x-lg, 0px);
  }
}
.grid-section__media,
.grid-item__media {
  --img-x: calc(var(--img-x-default, 50%) + var(--img-shift));
}
.grid-section__media figure, .grid-section__media picture,
.grid-item__media figure,
.grid-item__media picture {
  display: block;
  height: 100%;
  margin: 0;
}
.grid-section__media img,
.grid-item__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--img-x) var(--img-y, 50%);
     object-position: var(--img-x) var(--img-y, 50%);
}

.grid-section--img-contain > .grid-section__media {
  --img-x-default: 100%;
  --img-y: 100%;
}
.grid-section--img-contain > .grid-section__media img {
  -o-object-fit: contain;
     object-fit: contain;
}

.border-radius img,
img.border-radius {
  border-radius: 20px;
}

@media (min-width: 992px) {
  .grid-section {
    --section-grid: min(100% - 40px, 1200px);
  }
  .grid-section:has(> .grid--narrow) {
    --section-grid: min(100% - 40px, 992px);
  }
  .grid-section--bg-from-2 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 1 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-3 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 2 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-4 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 3 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-5 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 4 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-6 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 5 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-7 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 6 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-8 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 7 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-9 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 8 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-10 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 9 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-11 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 10 * (var(--section-grid) + 20px) / 12);
  }
  .grid-section--bg-from-12 > .grid-section__media {
    left: calc((100% - var(--section-grid)) / 2 + 11 * (var(--section-grid) + 20px) / 12);
  }
}
.break-out {
  position: relative;
  z-index: 11;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}
@media (max-width: 991.98px) {
  .break-out {
    -webkit-transform: translateY(20%);
            transform: translateY(20%);
  }
}

.grid-section:has(.break-out) {
  z-index: 1;
}

.grid-item:has(.break-out) {
  z-index: 11;
}

.break-out-top {
  position: relative;
  z-index: 11;
  -webkit-transform: translateY(-44%);
          transform: translateY(-44%);
}
@media (max-width: 991.98px) {
  .break-out-top {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

.grid-section:has(.break-out-top) {
  z-index: 1;
}

.grid-item:has(.break-out-top) {
  z-index: 11;
}

.z-top {
  position: relative;
  z-index: 12;
}

.grid-section:has(.z-top) {
  z-index: 2;
}

.grid-item:has(.z-top) {
  z-index: 12;
}

.grid-section--bg-blackcoal, .grid-item--bg-blackcoal {
  background-color: #281f22;
}

.grid-section--bg-firered, .grid-item--bg-firered {
  background-color: #e51f27;
}

.grid-item--border-white {
  border: 2px solid #ffffff;
}

.grid-item--border-firered {
  border: 2px solid #e51f27;
}

.grid-item--border-blackcoal {
  border: 2px solid #281f22;
}

:is(.grid-section--bg-blackcoal, .grid-section--bg-firered, .grid-item--bg-blackcoal, .grid-item--bg-firered) :is(p, a:not(.btn), li, span, strong, h1, h3, h4, h5, h6) {
  color: #ffffff;
}

:is(.grid-section--bg-firered, .grid-item--bg-firered) h2 {
  color: #ffffff;
}

:is(.grid-section--bg-firered, .grid-item--bg-firered) .content-text ul li::before {
  color: #ffffff;
}

.g-start-auto {
  -ms-grid-column: auto;
      grid-column-start: auto;
}

.g-row-auto {
  -ms-grid-row: auto;
      grid-row-start: auto;
}

.g-row-1 {
  -ms-grid-row: 1;
      grid-row-start: 1;
}

.g-row-2 {
  -ms-grid-row: 2;
      grid-row-start: 2;
}

.g-row-3 {
  -ms-grid-row: 3;
      grid-row-start: 3;
}

.g-row-4 {
  -ms-grid-row: 4;
      grid-row-start: 4;
}

.g-row-5 {
  -ms-grid-row: 5;
      grid-row-start: 5;
}

.g-row-6 {
  -ms-grid-row: 6;
      grid-row-start: 6;
}

.g-row-7 {
  -ms-grid-row: 7;
      grid-row-start: 7;
}

.g-row-8 {
  -ms-grid-row: 8;
      grid-row-start: 8;
}

.g-row-9 {
  -ms-grid-row: 9;
      grid-row-start: 9;
}

.g-row-10 {
  -ms-grid-row: 10;
      grid-row-start: 10;
}

.g-row-11 {
  -ms-grid-row: 11;
      grid-row-start: 11;
}

.g-row-12 {
  -ms-grid-row: 12;
      grid-row-start: 12;
}

.g-start-1 {
  -ms-grid-column: 1;
      grid-column-start: 1;
}

.g-span-1 {
  -ms-grid-column-span: 1;
  grid-column-end: span 1;
}

.g-start-2 {
  -ms-grid-column: 2;
      grid-column-start: 2;
}

.g-span-2 {
  -ms-grid-column-span: 2;
  grid-column-end: span 2;
}

.g-start-3 {
  -ms-grid-column: 3;
      grid-column-start: 3;
}

.g-span-3 {
  -ms-grid-column-span: 3;
  grid-column-end: span 3;
}

.g-start-4 {
  -ms-grid-column: 4;
      grid-column-start: 4;
}

.g-span-4 {
  -ms-grid-column-span: 4;
  grid-column-end: span 4;
}

@media (min-width: 768px) {
  .g-start-md-auto {
    -ms-grid-column: auto;
        grid-column-start: auto;
  }
  .g-row-md-auto {
    -ms-grid-row: auto;
        grid-row-start: auto;
  }
  .g-row-md-1 {
    -ms-grid-row: 1;
        grid-row-start: 1;
  }
  .g-row-md-2 {
    -ms-grid-row: 2;
        grid-row-start: 2;
  }
  .g-row-md-3 {
    -ms-grid-row: 3;
        grid-row-start: 3;
  }
  .g-row-md-4 {
    -ms-grid-row: 4;
        grid-row-start: 4;
  }
  .g-row-md-5 {
    -ms-grid-row: 5;
        grid-row-start: 5;
  }
  .g-row-md-6 {
    -ms-grid-row: 6;
        grid-row-start: 6;
  }
  .g-row-md-7 {
    -ms-grid-row: 7;
        grid-row-start: 7;
  }
  .g-row-md-8 {
    -ms-grid-row: 8;
        grid-row-start: 8;
  }
  .g-row-md-9 {
    -ms-grid-row: 9;
        grid-row-start: 9;
  }
  .g-row-md-10 {
    -ms-grid-row: 10;
        grid-row-start: 10;
  }
  .g-row-md-11 {
    -ms-grid-row: 11;
        grid-row-start: 11;
  }
  .g-row-md-12 {
    -ms-grid-row: 12;
        grid-row-start: 12;
  }
  .g-start-md-1 {
    -ms-grid-column: 1;
        grid-column-start: 1;
  }
  .g-span-md-1 {
    -ms-grid-column-span: 1;
    grid-column-end: span 1;
  }
  .g-start-md-2 {
    -ms-grid-column: 2;
        grid-column-start: 2;
  }
  .g-span-md-2 {
    -ms-grid-column-span: 2;
    grid-column-end: span 2;
  }
  .g-start-md-3 {
    -ms-grid-column: 3;
        grid-column-start: 3;
  }
  .g-span-md-3 {
    -ms-grid-column-span: 3;
    grid-column-end: span 3;
  }
  .g-start-md-4 {
    -ms-grid-column: 4;
        grid-column-start: 4;
  }
  .g-span-md-4 {
    -ms-grid-column-span: 4;
    grid-column-end: span 4;
  }
  .g-start-md-5 {
    -ms-grid-column: 5;
        grid-column-start: 5;
  }
  .g-span-md-5 {
    -ms-grid-column-span: 5;
    grid-column-end: span 5;
  }
  .g-start-md-6 {
    -ms-grid-column: 6;
        grid-column-start: 6;
  }
  .g-span-md-6 {
    -ms-grid-column-span: 6;
    grid-column-end: span 6;
  }
  .g-start-md-7 {
    -ms-grid-column: 7;
        grid-column-start: 7;
  }
  .g-span-md-7 {
    -ms-grid-column-span: 7;
    grid-column-end: span 7;
  }
  .g-start-md-8 {
    -ms-grid-column: 8;
        grid-column-start: 8;
  }
  .g-span-md-8 {
    -ms-grid-column-span: 8;
    grid-column-end: span 8;
  }
}
@media (min-width: 992px) {
  .g-start-lg-auto {
    -ms-grid-column: auto;
        grid-column-start: auto;
  }
  .g-row-lg-auto {
    -ms-grid-row: auto;
        grid-row-start: auto;
  }
  .g-row-lg-1 {
    -ms-grid-row: 1;
        grid-row-start: 1;
  }
  .g-row-lg-2 {
    -ms-grid-row: 2;
        grid-row-start: 2;
  }
  .g-row-lg-3 {
    -ms-grid-row: 3;
        grid-row-start: 3;
  }
  .g-row-lg-4 {
    -ms-grid-row: 4;
        grid-row-start: 4;
  }
  .g-row-lg-5 {
    -ms-grid-row: 5;
        grid-row-start: 5;
  }
  .g-row-lg-6 {
    -ms-grid-row: 6;
        grid-row-start: 6;
  }
  .g-row-lg-7 {
    -ms-grid-row: 7;
        grid-row-start: 7;
  }
  .g-row-lg-8 {
    -ms-grid-row: 8;
        grid-row-start: 8;
  }
  .g-row-lg-9 {
    -ms-grid-row: 9;
        grid-row-start: 9;
  }
  .g-row-lg-10 {
    -ms-grid-row: 10;
        grid-row-start: 10;
  }
  .g-row-lg-11 {
    -ms-grid-row: 11;
        grid-row-start: 11;
  }
  .g-row-lg-12 {
    -ms-grid-row: 12;
        grid-row-start: 12;
  }
  .g-start-lg-1 {
    -ms-grid-column: 1;
        grid-column-start: 1;
  }
  .g-span-lg-1 {
    -ms-grid-column-span: 1;
    grid-column-end: span 1;
  }
  .g-start-lg-2 {
    -ms-grid-column: 2;
        grid-column-start: 2;
  }
  .g-span-lg-2 {
    -ms-grid-column-span: 2;
    grid-column-end: span 2;
  }
  .g-start-lg-3 {
    -ms-grid-column: 3;
        grid-column-start: 3;
  }
  .g-span-lg-3 {
    -ms-grid-column-span: 3;
    grid-column-end: span 3;
  }
  .g-start-lg-4 {
    -ms-grid-column: 4;
        grid-column-start: 4;
  }
  .g-span-lg-4 {
    -ms-grid-column-span: 4;
    grid-column-end: span 4;
  }
  .g-start-lg-5 {
    -ms-grid-column: 5;
        grid-column-start: 5;
  }
  .g-span-lg-5 {
    -ms-grid-column-span: 5;
    grid-column-end: span 5;
  }
  .g-start-lg-6 {
    -ms-grid-column: 6;
        grid-column-start: 6;
  }
  .g-span-lg-6 {
    -ms-grid-column-span: 6;
    grid-column-end: span 6;
  }
  .g-start-lg-7 {
    -ms-grid-column: 7;
        grid-column-start: 7;
  }
  .g-span-lg-7 {
    -ms-grid-column-span: 7;
    grid-column-end: span 7;
  }
  .g-start-lg-8 {
    -ms-grid-column: 8;
        grid-column-start: 8;
  }
  .g-span-lg-8 {
    -ms-grid-column-span: 8;
    grid-column-end: span 8;
  }
  .g-start-lg-9 {
    -ms-grid-column: 9;
        grid-column-start: 9;
  }
  .g-span-lg-9 {
    -ms-grid-column-span: 9;
    grid-column-end: span 9;
  }
  .g-start-lg-10 {
    -ms-grid-column: 10;
        grid-column-start: 10;
  }
  .g-span-lg-10 {
    -ms-grid-column-span: 10;
    grid-column-end: span 10;
  }
  .g-start-lg-11 {
    -ms-grid-column: 11;
        grid-column-start: 11;
  }
  .g-span-lg-11 {
    -ms-grid-column-span: 11;
    grid-column-end: span 11;
  }
  .g-start-lg-12 {
    -ms-grid-column: 12;
        grid-column-start: 12;
  }
  .g-span-lg-12 {
    -ms-grid-column-span: 12;
    grid-column-end: span 12;
  }
}
@media (min-width: 1200px) {
  .g-start-xl-auto {
    -ms-grid-column: auto;
        grid-column-start: auto;
  }
  .g-row-xl-auto {
    -ms-grid-row: auto;
        grid-row-start: auto;
  }
  .g-row-xl-1 {
    -ms-grid-row: 1;
        grid-row-start: 1;
  }
  .g-row-xl-2 {
    -ms-grid-row: 2;
        grid-row-start: 2;
  }
  .g-row-xl-3 {
    -ms-grid-row: 3;
        grid-row-start: 3;
  }
  .g-row-xl-4 {
    -ms-grid-row: 4;
        grid-row-start: 4;
  }
  .g-row-xl-5 {
    -ms-grid-row: 5;
        grid-row-start: 5;
  }
  .g-row-xl-6 {
    -ms-grid-row: 6;
        grid-row-start: 6;
  }
  .g-row-xl-7 {
    -ms-grid-row: 7;
        grid-row-start: 7;
  }
  .g-row-xl-8 {
    -ms-grid-row: 8;
        grid-row-start: 8;
  }
  .g-row-xl-9 {
    -ms-grid-row: 9;
        grid-row-start: 9;
  }
  .g-row-xl-10 {
    -ms-grid-row: 10;
        grid-row-start: 10;
  }
  .g-row-xl-11 {
    -ms-grid-row: 11;
        grid-row-start: 11;
  }
  .g-row-xl-12 {
    -ms-grid-row: 12;
        grid-row-start: 12;
  }
  .g-start-xl-1 {
    -ms-grid-column: 1;
        grid-column-start: 1;
  }
  .g-span-xl-1 {
    -ms-grid-column-span: 1;
    grid-column-end: span 1;
  }
  .g-start-xl-2 {
    -ms-grid-column: 2;
        grid-column-start: 2;
  }
  .g-span-xl-2 {
    -ms-grid-column-span: 2;
    grid-column-end: span 2;
  }
  .g-start-xl-3 {
    -ms-grid-column: 3;
        grid-column-start: 3;
  }
  .g-span-xl-3 {
    -ms-grid-column-span: 3;
    grid-column-end: span 3;
  }
  .g-start-xl-4 {
    -ms-grid-column: 4;
        grid-column-start: 4;
  }
  .g-span-xl-4 {
    -ms-grid-column-span: 4;
    grid-column-end: span 4;
  }
  .g-start-xl-5 {
    -ms-grid-column: 5;
        grid-column-start: 5;
  }
  .g-span-xl-5 {
    -ms-grid-column-span: 5;
    grid-column-end: span 5;
  }
  .g-start-xl-6 {
    -ms-grid-column: 6;
        grid-column-start: 6;
  }
  .g-span-xl-6 {
    -ms-grid-column-span: 6;
    grid-column-end: span 6;
  }
  .g-start-xl-7 {
    -ms-grid-column: 7;
        grid-column-start: 7;
  }
  .g-span-xl-7 {
    -ms-grid-column-span: 7;
    grid-column-end: span 7;
  }
  .g-start-xl-8 {
    -ms-grid-column: 8;
        grid-column-start: 8;
  }
  .g-span-xl-8 {
    -ms-grid-column-span: 8;
    grid-column-end: span 8;
  }
  .g-start-xl-9 {
    -ms-grid-column: 9;
        grid-column-start: 9;
  }
  .g-span-xl-9 {
    -ms-grid-column-span: 9;
    grid-column-end: span 9;
  }
  .g-start-xl-10 {
    -ms-grid-column: 10;
        grid-column-start: 10;
  }
  .g-span-xl-10 {
    -ms-grid-column-span: 10;
    grid-column-end: span 10;
  }
  .g-start-xl-11 {
    -ms-grid-column: 11;
        grid-column-start: 11;
  }
  .g-span-xl-11 {
    -ms-grid-column-span: 11;
    grid-column-end: span 11;
  }
  .g-start-xl-12 {
    -ms-grid-column: 12;
        grid-column-start: 12;
  }
  .g-span-xl-12 {
    -ms-grid-column-span: 12;
    grid-column-end: span 12;
  }
}
@media (min-width: 992px) {
  .g-rows-lg-2 {
    -ms-grid-row-span: 2;
    grid-row-end: span 2;
  }
  .g-rows-lg-3 {
    -ms-grid-row-span: 3;
    grid-row-end: span 3;
  }
  .g-rows-lg-4 {
    -ms-grid-row-span: 4;
    grid-row-end: span 4;
  }
}
.g-order-first {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

.g-order-last {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

@media (min-width: 768px) {
  .g-order-md-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .g-order-md-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media (min-width: 992px) {
  .grid-item[class*=g-order-] {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}
@media (max-width: 767.98px) {
  .g-hide-s {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .g-hide-md {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .g-hide-lg {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .g-hide-xl {
    display: none !important;
  }
}
.pt-0 {
  padding-top: 0px;
}

.pb-0 {
  padding-bottom: 0px;
}

.pt-40 {
  padding-top: 40px;
}

.pb-40 {
  padding-bottom: 40px;
}

.pt-60 {
  padding-top: 60px;
}

.pb-60 {
  padding-bottom: 60px;
}

.pt-80 {
  padding-top: 80px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pt-90 {
  padding-top: 90px;
}

.pb-90 {
  padding-bottom: 90px;
}

.pt-120 {
  padding-top: 120px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pt-160 {
  padding-top: 160px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pt-180 {
  padding-top: 180px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pt-200 {
  padding-top: 200px;
}

.pb-200 {
  padding-bottom: 200px;
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .pt-md-0 {
    padding-top: 0px;
  }
  .pb-md-0 {
    padding-bottom: 0px;
  }
  .pt-md-40 {
    padding-top: 40px;
  }
  .pb-md-40 {
    padding-bottom: 40px;
  }
  .pt-md-60 {
    padding-top: 60px;
  }
  .pb-md-60 {
    padding-bottom: 60px;
  }
  .pt-md-80 {
    padding-top: 80px;
  }
  .pb-md-80 {
    padding-bottom: 80px;
  }
  .pt-md-90 {
    padding-top: 90px;
  }
  .pb-md-90 {
    padding-bottom: 90px;
  }
  .pt-md-120 {
    padding-top: 120px;
  }
  .pb-md-120 {
    padding-bottom: 120px;
  }
  .pt-md-160 {
    padding-top: 160px;
  }
  .pb-md-160 {
    padding-bottom: 160px;
  }
  .pt-md-180 {
    padding-top: 180px;
  }
  .pb-md-180 {
    padding-bottom: 180px;
  }
  .pt-md-200 {
    padding-top: 200px;
  }
  .pb-md-200 {
    padding-bottom: 200px;
  }
}
@media (max-width: 767.98px) {
  .pt-s-0 {
    padding-top: 0px;
  }
  .pb-s-0 {
    padding-bottom: 0px;
  }
  .pt-s-40 {
    padding-top: 40px;
  }
  .pb-s-40 {
    padding-bottom: 40px;
  }
  .pt-s-60 {
    padding-top: 60px;
  }
  .pb-s-60 {
    padding-bottom: 60px;
  }
  .pt-s-80 {
    padding-top: 80px;
  }
  .pb-s-80 {
    padding-bottom: 80px;
  }
  .pt-s-90 {
    padding-top: 90px;
  }
  .pb-s-90 {
    padding-bottom: 90px;
  }
  .pt-s-120 {
    padding-top: 120px;
  }
  .pb-s-120 {
    padding-bottom: 120px;
  }
  .pt-s-160 {
    padding-top: 160px;
  }
  .pb-s-160 {
    padding-bottom: 160px;
  }
  .pt-s-180 {
    padding-top: 180px;
  }
  .pb-s-180 {
    padding-bottom: 180px;
  }
  .pt-s-200 {
    padding-top: 200px;
  }
  .pb-s-200 {
    padding-bottom: 200px;
  }
}
img {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  z-index: 2;
}

.icon img {
  width: auto;
  height: 80px;
  margin: 0 auto 20px;
}

.rotate {
  -webkit-animation: rotate 40s infinite linear;
          animation: rotate 40s infinite linear;
}
.rotate img {
  z-index: 5;
}
@media (min-width: 320px) and (max-width: 767px) {
  .rotate {
    margin-bottom: -40px;
  }
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
}
.fg {
  z-index: 10;
}

.bg {
  z-index: 2;
}

.invisible {
  display: none;
}

form .formbody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
}
form .widget {
  width: 100%;
}
form .widget.w50 {
  width: calc(50% - 10px);
}
@media (max-width: 767.98px) {
  form .widget.w50 {
    width: 100%;
  }
}
form .widget.w100 {
  width: 100%;
}
form label {
  display: block;
  padding-bottom: 10px;
  font-weight: 700;
  line-height: 24px;
  color: #281f22;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea) {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(100% - 6px);
  margin: 0 3px;
  height: 50px;
  padding: 0 20px;
  border: 2px solid #e51f27;
  border-radius: 25px;
  background-color: #ffffff;
  font-family: "Nunito Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000000;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea)::-webkit-input-placeholder {
  font-size: 16px;
  color: #281f22;
  opacity: 1;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea)::-moz-placeholder {
  font-size: 16px;
  color: #281f22;
  opacity: 1;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea):-ms-input-placeholder {
  font-size: 16px;
  color: #281f22;
  opacity: 1;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea)::-ms-input-placeholder {
  font-size: 16px;
  color: #281f22;
  opacity: 1;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea)::placeholder {
  font-size: 16px;
  color: #281f22;
  opacity: 1;
}
form :where(input:not([type=checkbox], [type=radio], [type=submit], [type=hidden]), select, textarea):focus {
  outline: 1px solid #e51f27;
  outline-offset: 0;
}
form textarea {
  height: auto;
  min-height: 200px;
  padding: 20px 20px 15px;
  border-radius: 20px;
  line-height: 24px;
  resize: vertical;
}
form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: 50px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='M1 1l7 7 7-7' fill='none' stroke='%23e51f27' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 16px auto;
}
form button[type=submit] {
  margin-top: 0;
}
form p.error {
  padding: 10px 0;
  color: #e51f27;
  font-size: 14px;
  line-height: 20px;
}
form .captcha_text {
  display: block;
  padding: 10px 0;
  font-size: 16px;
  line-height: 26px;
}

.accordeon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.accordeon__item {
  interpolate-size: allow-keywords;
}
.accordeon__item::details-content {
  block-size: 0;
  overflow: clip;
  -webkit-transition: block-size 0.4s ease, content-visibility 0.4s allow-discrete;
  transition: block-size 0.4s ease, content-visibility 0.4s allow-discrete;
}
.accordeon__item[open]::details-content {
  block-size: auto;
}
.accordeon__summary {
  cursor: pointer;
  list-style: none;
}
.accordeon__summary::-webkit-details-marker {
  display: none;
}
.accordeon__summary:focus-visible {
  outline: 2px solid #e51f27;
  outline-offset: 5px;
}
.accordeon__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  padding-bottom: 0;
}
.accordeon__title::before {
  content: "+";
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  display: -ms-grid;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  -webkit-box-shadow: inset 0 0 0 2px #e51f27;
          box-shadow: inset 0 0 0 2px #e51f27;
  border-radius: 50%;
  color: #e51f27;
  line-height: 1;
}
.accordeon__item[open] .accordeon__title::before {
  content: "−";
}
.accordeon__content {
  padding: 20px 0 0 70px;
}

.wave {
  position: absolute;
  left: 0;
  z-index: 10;
  display: block;
  width: 100%;
  height: 26px;
  pointer-events: none;
}
.wave--top {
  top: 0;
}
.wave--bottom {
  bottom: 0;
}
.wave--white {
  color: #ffffff;
}
.wave--blackcoal {
  color: #281f22;
}
.wave--firered {
  color: #e51f27;
}

.pulse {
  -webkit-animation: pulse 6s ease-in-out infinite;
          animation: pulse 6s ease-in-out infinite;
}

@-webkit-keyframes pulse {
  0%, 100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
}

@keyframes pulse {
  0%, 100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
}
.flicker img,
img.flicker {
  -webkit-transform-origin: 50% 100%;
          transform-origin: 50% 100%;
  -webkit-animation: flicker 9s ease-in-out infinite;
          animation: flicker 9s ease-in-out infinite;
}

@-webkit-keyframes flicker {
  0%, 100% {
    -webkit-transform: scale(1, 1) skewX(0);
            transform: scale(1, 1) skewX(0);
  }
  20% {
    -webkit-transform: scale(0.99, 1.07) skewX(-1.75deg);
            transform: scale(0.99, 1.07) skewX(-1.75deg);
  }
  40% {
    -webkit-transform: scale(1.01, 0.93) skewX(1deg);
            transform: scale(1.01, 0.93) skewX(1deg);
  }
  60% {
    -webkit-transform: scale(0.98, 1.05) skewX(-0.75deg);
            transform: scale(0.98, 1.05) skewX(-0.75deg);
  }
  80% {
    -webkit-transform: scale(1.01, 0.98) skewX(1.75deg);
            transform: scale(1.01, 0.98) skewX(1.75deg);
  }
}

@keyframes flicker {
  0%, 100% {
    -webkit-transform: scale(1, 1) skewX(0);
            transform: scale(1, 1) skewX(0);
  }
  20% {
    -webkit-transform: scale(0.99, 1.07) skewX(-1.75deg);
            transform: scale(0.99, 1.07) skewX(-1.75deg);
  }
  40% {
    -webkit-transform: scale(1.01, 0.93) skewX(1deg);
            transform: scale(1.01, 0.93) skewX(1deg);
  }
  60% {
    -webkit-transform: scale(0.98, 1.05) skewX(-0.75deg);
            transform: scale(0.98, 1.05) skewX(-0.75deg);
  }
  80% {
    -webkit-transform: scale(1.01, 0.98) skewX(1.75deg);
            transform: scale(1.01, 0.98) skewX(1.75deg);
  }
}
.rotate img,
img.rotate,
.font img {
  -webkit-animation: rotate 300s linear infinite;
          animation: rotate 300s linear infinite;
}

.font img {
  -webkit-animation-duration: 70s;
          animation-duration: 70s;
}

@keyframes rotate {
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}
@media (prefers-reduced-motion: reduce) {
  .pulse,
  .flicker img,
  img.flicker,
  .rotate img,
  img.rotate,
  .font img {
    -webkit-animation: none;
            animation: none;
  }
}
.laufschrift {
  container-type: inline-size;
  overflow: clip;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}
.laufschrift__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-family: "Nunito Sans", sans-serif;
  font-size: 104px;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
  color: rgba(229, 31, 39, 0.1);
  -webkit-animation: laufschrift calc(var(--laufschrift-chars, 40) * 1.25s) linear infinite alternate;
          animation: laufschrift calc(var(--laufschrift-chars, 40) * 1.25s) linear infinite alternate;
}

@-webkit-keyframes laufschrift {
  from {
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  to {
    -webkit-transform: translateX(calc(100cqw - 100% + 40px));
            transform: translateX(calc(100cqw - 100% + 40px));
  }
}

@keyframes laufschrift {
  from {
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
  }
  to {
    -webkit-transform: translateX(calc(100cqw - 100% + 40px));
            transform: translateX(calc(100cqw - 100% + 40px));
  }
}
@media (prefers-reduced-motion: reduce) {
  .laufschrift__text {
    -webkit-animation: none;
            animation: none;
  }
}
:has(> .font):has(> .flame) {
  display: -ms-grid;
  display: grid;
}
:has(> .font):has(> .flame) > .font,
:has(> .font):has(> .flame) > .flame {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
}

.flame {
  -ms-grid-row-align: center;
  -ms-grid-column-align: center;
  place-self: center;
  width: 39.65%;
}

.font {
  overflow: clip;
}

.referenzen {
  --referenzen-duration: 900ms;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 60px 10px 60px;
  grid-template-columns: 1fr 60px 60px;
  -ms-grid-rows: auto 60px auto;
      grid-template-areas: "slides slides slides" "dots   prev   next";
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 60px;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
@media (min-width: 992px) {
  .referenzen {
    -ms-grid-columns: 60px 60px 1fr 60px 60px;
    grid-template-columns: 60px 1fr 60px;
        grid-template-areas: "prev slides next" ".    dots   .";
    -webkit-column-gap: 60px;
       -moz-column-gap: 60px;
            column-gap: 60px;
  }
}
.referenzen__track {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 5;
  grid-area: slides;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.referenzen__track::-webkit-scrollbar {
  display: none;
}
.referenzen__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  scroll-snap-align: start;
  margin: 0;
  padding-inline: 2px;
  overflow: hidden;
  text-align: left;
}
.referenzen__rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
  color: #e51f27;
}
.referenzen__flame {
  width: auto;
  height: 40px;
}
.referenzen__text {
  margin: 0;
  font-family: "Nunito Sans", sans-serif;
  font-style: italic;
  font-weight: 300;
  font-size: 26px;
  line-height: 32px;
  color: #e51f27;
}
@media (min-width: 320px) and (max-width: 767px) {
  .referenzen__text {
    font-size: 20px;
    line-height: 28px;
  }
}
.referenzen__author {
  margin-top: 20px;
  font-family: "Nunito Sans", sans-serif;
  font-style: italic;
  font-weight: 700;
  font-size: 18px;
  color: #e51f27;
}
.referenzen__arrow {
  display: -ms-grid;
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background-color: #e51f27;
  color: #ffffff;
  cursor: pointer;
}
.referenzen__arrow svg {
  width: 22px;
  height: auto;
  -webkit-transform: translateX(12%);
          transform: translateX(12%);
}
.referenzen__arrow--prev {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: prev;
}
.referenzen__arrow--prev svg {
  -webkit-transform: scaleX(-1) translateX(12%);
          transform: scaleX(-1) translateX(12%);
}
.referenzen__arrow--next {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
  grid-area: next;
}
.referenzen__arrow:focus-visible {
  outline: 2px solid #e51f27;
  outline-offset: 5px;
}
.referenzen__arrow:disabled {
  opacity: 0.25;
  cursor: default;
}
.referenzen__dots {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: dots;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
@media (min-width: 992px){
  .referenzen__track {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
  .referenzen__arrow--prev {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .referenzen__arrow--next {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .referenzen__dots {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
}
@media (min-width: 992px) {
  .referenzen__dots {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.referenzen__dot {
  width: 12px;
  height: 12px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  -webkit-box-shadow: inset 0 0 0 2px #e51f27;
          box-shadow: inset 0 0 0 2px #e51f27;
  background-color: transparent;
  cursor: pointer;
}
.referenzen__dot[aria-current=true] {
  background-color: #e51f27;
}

.rechner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.rechner__intro {
  font-weight: 700;
}
.rechner__row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 60px 20px 1fr 20px 60px;
  grid-template-columns: 60px 1fr 60px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.rechner__icon {
  display: -ms-grid;
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #e51f27;
}
.rechner__icon img {
  width: 60%;
  height: 60%;
  -o-object-fit: contain;
     object-fit: contain;
}
.rechner__label {
  font-weight: 700;
}
.rechner__price {
  display: block;
  font-weight: 300;
  padding-top: 5px;
}
.rechner__input {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 60px;
  height: 60px;
  padding: 0;
  border: 2px solid #e51f27;
  border-radius: 30px;
  background-color: #ffffff;
  color: #281f22;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}
.rechner__input::-webkit-inner-spin-button, .rechner__input::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
  margin: 0;
}
.rechner__input:focus-visible {
  outline: 1px solid #e51f27;
}
.rechner__result {
  padding-top: 30px;
  border-top: 2px solid #e51f27;
}
.rechner__sums {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr) 20px minmax(0, 1fr);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.rechner__sum-title {
  padding-bottom: 5px;
  font-size: 18px;
  font-weight: 700;
  padding-bottom: 10px;
}
.rechner__total {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 2px solid #e51f27;
}
.rechner__sum strong, .rechner__total strong {
  font-size: 24px;
  font-weight: 700;
  color: #e51f27;
}
.rechner__note {
  padding-top: 20px;
  font-size: 14px;
}
.rechner__button {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.rechner--single .rechner__sums {
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
}

:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__label {
  color: #ffffff;
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input {
  background-color: transparent;
  color: #ffffff;
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) .rechner__input::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
:is(.grid-section--bg-blackcoal, .grid-item--bg-blackcoal) :is(.rechner__sum, .rechner__total) strong {
  color: #e51f27;
}

body {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='-19.0615 -6 117.667 117.667'%3E%3Cpath transform='translate(42.45 25.093)' fill='%23e52027' stroke='%23fff' stroke-width='12' stroke-linejoin='round' paint-order='stroke' d='M20.428,12.076s2.737,12.019-8.042,17.21c0,0-23.372-19.207-18.48-54.379,0,0-11.851,8.39-22.5,25.889C-39.848,19.307-45.813,30.554-40.467,54.845c2.657,12.077,14.079,21.882,18.687,24a19.038,19.038,0,0,0,8.886,1.7c-6.794-8.354-8.839-23.983-3.5-35.2,7.307-15.369,8.015-14.512,8.015-14.512,1.148,17.541,11.842,35.61,11.842,35.61,4.41-3.124,7.433-14.744,7.433-14.744,5.369,16.033,5.5,22.679.013,28.849a17.377,17.377,0,0,0,7.911-1.7c6.594-3.6,13.019-9.905,16.156-20.945,9.21-32.409-14.544-45.823-14.544-45.823'/%3E%3C/svg%3E") 15 0, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEhElEQVR42r2Xf0zUZRzHX8/d8eWHQGiGSlZHEGwtTSw1dU7MqTFdm6YONW3JMmpWpumyZeuP/qjlTCcuda6yH3+YrNYfucplki1tzpFj4RRcoTL5JRwcB3ccd+/+8A4FjuPA6PPXZ3s+z+d5P+/Pr+eBYYik6ZKqJF2RNJf/UyQtkNQZ9Hgkv1+SvroTf7YhHr4MOCa3O+FGUTEEgwDtdwLAMYTD84GjwRaXrWnVOrqrqsGyAJpHnAFJ44Gv5fXabqxdT/fFS5jkUeFl+4gCkGQDvkG6p+W1Lfj/quxrkjnSDLwLzGx97328P/18C1ibG7W2AjhHDICkecAO38lf8XxyuN96d81VgPtHBIAkO3AQnw/XW+9EtOmqqABIlzRpJBgoBrLdJfsJXK+LaOArOxVWXxouADPA7VOBy4F/asbWzy8I13v/zUlJTCj/A6y4NiDDGOO5zcc4YIUxpmQ4DGwHxrbt/GjAwwHU0YHnaClAKrAmdLCRlInHsxPYK+lAqJJiY0BSMtDkr7wQ37h46eAxHD+O8WXHwbIagBwgD/jF9ebbJC5aQPy8uQAfGmO2xcrAciDevWdfTDEM1tXj3n8IIB3YA2QAdFdd5sb6F/H+eBxgq6TCWBk4qdbWudcfmwWBQGyZFG+R/l0pjtwcgObAtdox9fkLIRDAlpZG+okfsI1OqwWcxpjuARmQlAjM8Z4oi/1wAF8XTavWEai5gjo6xjRv3NSzP+hy0X7gEMC9wKrBQjAJsHWV/zl4+Ywa1TsULS4aC9fStGIN/vMVvdY8h79E7naArYMByAbwV1VHH6HZWaS8vCFiPvgrL/SvFq8X36nfACZJmhgNQBpAsLklKoDU11/BkfXgkBqO9/czYfWBaABuJkiU2ndkOkkoWISV9+jQXlIuV0wAXAC2lJQBHSUXvwDGYEtPx5EZ+yAMdnSG1bujAbgGYBuXPkDmGRILFgJ4ABKezI+958fFhdXmaAAqAaypUyI6saY/jrnJzqtAU8Lip3pndFpa1MQNyd8DAjDGuIDr8TOmRwYwpSfuR4C9Vt4UHFm3HkR37diOSUiIuDcuJxtAQPlgrfjbuMmPYL83oz+N8RZAfWjqlQAdyUXPEw5b4pIC4mfPjAx+ah7AJWNM52AAPgNI3bY5wuSwAySG2GoGDiatfAZHdhapb2wCy8KaMa1/p549E/t9EwFKBx1GxpizwPeJTy8hYf683jVaXQ2QKincBHZhtwfG7NtN0vJlPWXaV1I2FofVT2N9DxQBLaN3fYDdeatsfWfPhdVnQ2CvArscOQ8BVNws4eTeZbuhCOuJGQCHjTGXh/QLkqRAQ4Pq8heq1pmrWmeuusrPS1KHpAm3PUCmSZolSZ4jpT22zZu3SYGAJDVKGjucf2ChJH/Q5VLT6udU68xVw9KVCsnHfWyPKRhU47JC1Tpz1ba7RAoGJalF0uQ7+YzOCd1A/gsX5Tt9RvJ6JencbTZGUiDobpfv9BkFGpvCIMskPfxf/IgzJH0hqTPk2CNpSx+b1ZLqJNVI+lzS/Fh8/wu0Mz4mazNu5AAAAABJRU5ErkJggg==") 15 0, auto;
}

a,
button,
label,
summary,
select,
[role=button],
input:is([type=submit], [type=button], [type=reset], [type=checkbox], [type=radio], [type=file]) {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='-19.0615 -6 117.667 117.667'%3E%3Cpath transform='translate(42.45 25.093)' fill='%23e52027' stroke='%23fff' stroke-width='12' stroke-linejoin='round' paint-order='stroke' d='M20.428,12.076s2.737,12.019-8.042,17.21c0,0-23.372-19.207-18.48-54.379,0,0-11.851,8.39-22.5,25.889C-39.848,19.307-45.813,30.554-40.467,54.845c2.657,12.077,14.079,21.882,18.687,24a19.038,19.038,0,0,0,8.886,1.7c-6.794-8.354-8.839-23.983-3.5-35.2,7.307-15.369,8.015-14.512,8.015-14.512,1.148,17.541,11.842,35.61,11.842,35.61,4.41-3.124,7.433-14.744,7.433-14.744,5.369,16.033,5.5,22.679.013,28.849a17.377,17.377,0,0,0,7.911-1.7c6.594-3.6,13.019-9.905,16.156-20.945,9.21-32.409-14.544-45.823-14.544-45.823'/%3E%3C/svg%3E") 15 0, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEhElEQVR42r2Xf0zUZRzHX8/d8eWHQGiGSlZHEGwtTSw1dU7MqTFdm6YONW3JMmpWpumyZeuP/qjlTCcuda6yH3+YrNYfucplki1tzpFj4RRcoTL5JRwcB3ccd+/+8A4FjuPA6PPXZ3s+z+d5P+/Pr+eBYYik6ZKqJF2RNJf/UyQtkNQZ9Hgkv1+SvroTf7YhHr4MOCa3O+FGUTEEgwDtdwLAMYTD84GjwRaXrWnVOrqrqsGyAJpHnAFJ44Gv5fXabqxdT/fFS5jkUeFl+4gCkGQDvkG6p+W1Lfj/quxrkjnSDLwLzGx97328P/18C1ibG7W2AjhHDICkecAO38lf8XxyuN96d81VgPtHBIAkO3AQnw/XW+9EtOmqqABIlzRpJBgoBrLdJfsJXK+LaOArOxVWXxouADPA7VOBy4F/asbWzy8I13v/zUlJTCj/A6y4NiDDGOO5zcc4YIUxpmQ4DGwHxrbt/GjAwwHU0YHnaClAKrAmdLCRlInHsxPYK+lAqJJiY0BSMtDkr7wQ37h46eAxHD+O8WXHwbIagBwgD/jF9ebbJC5aQPy8uQAfGmO2xcrAciDevWdfTDEM1tXj3n8IIB3YA2QAdFdd5sb6F/H+eBxgq6TCWBk4qdbWudcfmwWBQGyZFG+R/l0pjtwcgObAtdox9fkLIRDAlpZG+okfsI1OqwWcxpjuARmQlAjM8Z4oi/1wAF8XTavWEai5gjo6xjRv3NSzP+hy0X7gEMC9wKrBQjAJsHWV/zl4+Ywa1TsULS4aC9fStGIN/vMVvdY8h79E7naArYMByAbwV1VHH6HZWaS8vCFiPvgrL/SvFq8X36nfACZJmhgNQBpAsLklKoDU11/BkfXgkBqO9/czYfWBaABuJkiU2ndkOkkoWISV9+jQXlIuV0wAXAC2lJQBHSUXvwDGYEtPx5EZ+yAMdnSG1bujAbgGYBuXPkDmGRILFgJ4ABKezI+958fFhdXmaAAqAaypUyI6saY/jrnJzqtAU8Lip3pndFpa1MQNyd8DAjDGuIDr8TOmRwYwpSfuR4C9Vt4UHFm3HkR37diOSUiIuDcuJxtAQPlgrfjbuMmPYL83oz+N8RZAfWjqlQAdyUXPEw5b4pIC4mfPjAx+ah7AJWNM52AAPgNI3bY5wuSwAySG2GoGDiatfAZHdhapb2wCy8KaMa1/p549E/t9EwFKBx1GxpizwPeJTy8hYf683jVaXQ2QKincBHZhtwfG7NtN0vJlPWXaV1I2FofVT2N9DxQBLaN3fYDdeatsfWfPhdVnQ2CvArscOQ8BVNws4eTeZbuhCOuJGQCHjTGXh/QLkqRAQ4Pq8heq1pmrWmeuusrPS1KHpAm3PUCmSZolSZ4jpT22zZu3SYGAJDVKGjucf2ChJH/Q5VLT6udU68xVw9KVCsnHfWyPKRhU47JC1Tpz1ba7RAoGJalF0uQ7+YzOCd1A/gsX5Tt9RvJ6JencbTZGUiDobpfv9BkFGpvCIMskPfxf/IgzJH0hqTPk2CNpSx+b1ZLqJNVI+lzS/Fh8/wu0Mz4mazNu5AAAAABJRU5ErkJggg==") 15 0, auto !important;
}

.cursor-click {
  position: fixed;
  z-index: 10000;
  width: 80px;
  height: 80px;
  margin: -40px 0 0 -40px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(229, 31, 39, 0.7) 0%, rgba(229, 31, 39, 0) 70%);
  pointer-events: none;
  -webkit-animation: cursor-click 0.6s ease-out forwards;
          animation: cursor-click 0.6s ease-out forwards;
}

@-webkit-keyframes cursor-click {
  from {
    -webkit-transform: scale(0.2);
            transform: scale(0.2);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
    opacity: 0;
  }
}

@keyframes cursor-click {
  from {
    -webkit-transform: scale(0.2);
            transform: scale(0.2);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
    opacity: 0;
  }
}
:root {
  --header-height: 100px;
}
@media (min-width: 768px) {
  :root {
    --header-height: 120px;
  }
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(7px);
}

.header__grid {
  padding: 10px 0;
  row-gap: 0;
}

.header__logo {
  -ms-grid-row: 1;
  grid-row: 1;
  min-width: 0;
}
.header__logo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 80px;
}
@media (min-width: 768px) {
  .header__logo img {
    height: 100px;
    max-height: none;
    max-width: none;
  }
}

.header__bar {
  display: contents;
}

.header__icons {
  -ms-grid-row: 1;
  grid-row: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 25px;
}
.header__icons a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #281f22;
}
.header__icons a:hover {
  color: #e51f27;
}
@media (max-width: 767px) {
  .header__icons {
    gap: 15px;
    margin-right: 41px;
  }
  .header__icons svg {
    width: 34px;
    height: 34px;
  }
}

.header__toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  opacity: 0;
}

.header__toggle {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column-align: end;
      justify-self: end;
  position: relative;
  display: block;
  width: 26px;
  height: 44px;
  color: #281f22;
  cursor: pointer;
}
.header__toggle:hover {
  color: #e51f27;
}
.header__toggle span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  color: inherit;
  background-color: currentColor;
  -webkit-transition: opacity 0.2s ease, top 0.25s ease, -webkit-transform 0.25s ease;
  transition: opacity 0.2s ease, top 0.25s ease, -webkit-transform 0.25s ease;
  transition: transform 0.25s ease, opacity 0.2s ease, top 0.25s ease;
  transition: transform 0.25s ease, opacity 0.2s ease, top 0.25s ease, -webkit-transform 0.25s ease;
}
.header__toggle span:nth-child(1) {
  top: 13px;
}
.header__toggle span:nth-child(2) {
  top: 21px;
}
.header__toggle span:nth-child(3) {
  top: 29px;
}

.header__toggle-input:focus-visible + .header__toggle {
  outline: 2px solid #e51f27;
}

.header__toggle-input:checked + .header__toggle span:nth-child(1) {
  top: 21px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.header__toggle-input:checked + .header__toggle span:nth-child(2) {
  opacity: 0;
}
.header__toggle-input:checked + .header__toggle span:nth-child(3) {
  top: 21px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.header__nav {
  -ms-grid-row: 2;
  grid-row: 2;
  display: none;
  text-align: right;
  max-height: calc(100dvh - var(--header-height));
  overflow-y: auto;
}
.header__nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.header__nav ul.level_1 {
  padding: 10px 0 20px;
}
.header__nav li a,
.header__nav li strong {
  display: block;
  padding: 12px 0;
  font-size: 1rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  color: #281f22;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  text-transform: uppercase;
}
.header__nav li a:hover,
.header__nav li a:focus-visible,
.header__nav li strong,
.header__nav li a.trail {
  color: #e51f27;
}

.header__toggle-input:checked ~ .header__nav {
  display: block;
}

@media (min-width: 992px) {
  .header__bar {
    -ms-grid-row: 1;
    grid-row: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  .header__toggle-input,
  .header__toggle {
    display: none;
  }
  .header__nav,
  .header__toggle-input:checked ~ .header__nav {
    display: block;
    max-height: none;
    overflow: visible;
  }
  .header__nav ul.level_1,
  .header__toggle-input:checked ~ .header__nav ul.level_1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0;
    border-top: 0;
  }
  .header__nav ul.level_1 > li,
  .header__toggle-input:checked ~ .header__nav ul.level_1 > li {
    position: relative;
  }
  .header__nav ul.level_1 > li > a,
  .header__nav ul.level_1 > li > strong,
  .header__toggle-input:checked ~ .header__nav ul.level_1 > li > a,
  .header__toggle-input:checked ~ .header__nav ul.level_1 > li > strong {
    padding: 10px;
    white-space: nowrap;
  }
}
@media (min-width: 992px) and (min-width: 1200px) {
  .header__nav ul.level_1 > li > a,
  .header__nav ul.level_1 > li > strong,
  .header__toggle-input:checked ~ .header__nav ul.level_1 > li > a,
  .header__toggle-input:checked ~ .header__nav ul.level_1 > li > strong {
    padding: 10px 15px;
  }
}
html {
  width: 100%;
  height: 100%;
  scroll-behavior: smooth;
}
html body {
  width: 100%;
  height: 100%;
}
html body.noscroll {
  overflow: hidden;
}
html body .mod_article {
  padding-top: 60px;
  padding-bottom: 60px;
  overflow: visible;
}
html body .mod_article.space-none {
  padding-top: 0;
  padding-bottom: 0;
}
html body .mod_article.space-top-none {
  padding-top: 0;
}
html body .mod_article.space-bottom-none {
  padding-bottom: 0;
}
html body .mod_article.space-default {
  padding-top: 60px;
  padding-bottom: 60px;
}
html body .mod_article.space-top-default {
  padding-top: 60px;
}
html body .mod_article.space-bottom-default {
  padding-bottom: 60px;
}
@media (max-width: 991.98px) {
  html body .mod_article.space-md-none {
    padding-top: 0;
    padding-bottom: 0;
  }
  html body .mod_article.space-top-md-none {
    padding-top: 0;
  }
  html body .mod_article.space-bottom-md-none {
    padding-bottom: 0;
  }
  html body .mod_article.space-md-default {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  html body .mod_article.space-top-md-default {
    padding-top: 60px;
  }
  html body .mod_article.space-bottom-md-default {
    padding-bottom: 60px;
  }
}
@media (max-width: 767.98px) {
  html body .mod_article.space-s-none {
    padding-top: 0;
    padding-bottom: 0;
  }
  html body .mod_article.space-top-s-none {
    padding-top: 0;
  }
  html body .mod_article.space-bottom-s-none {
    padding-bottom: 0;
  }
  html body .mod_article.space-s-default {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  html body .mod_article.space-top-s-default {
    padding-top: 60px;
  }
  html body .mod_article.space-bottom-s-default {
    padding-bottom: 60px;
  }
}
html body .footer {
  padding: 60px 0;
  background-color: #281f22;
}
html body .footer p, html body .footer a, html body .footer li, html body .footer span, html body .footer strong {
  color: #ffffff;
}
html body .footer a:hover,
html body .footer strong.active {
  color: #e51f27;
}
html body .footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
html body .footer li a,
html body .footer li strong {
  display: block;
  padding: 5px 0;
}
html body .footer .grid {
  row-gap: 40px;
}
html body .footer__columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px;
}
html body .footer__columns > * {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
@media (max-width: 991.98px) {
  html body .footer__columns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  html body .footer__columns {
    -ms-grid-columns: minmax(0, 1fr);
    grid-template-columns: minmax(0, 1fr);
  }
}
html body .footer__title {
  padding-bottom: 10px;
  font-weight: 700;
}
html body .footer__logo {
  width: auto;
  max-width: 100%;
  margin-bottom: 20px;
}
html body #wrapper {
  width: 100%;
  height: 100%;
}
