/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --color-red-500: #9f2622;
    --color-orange-100: oklch(95.4% .038 75.164);
    --color-yellow-200: #fff3cf;
    --color-yellow-500: #e3ac07;
    --color-green-200: #1a936f;
    --color-blue-500: #0a66c2;
    --color-gray-100: #f7f7f7;
    --color-gray-200: #e8e8e8;
    --color-gray-400: #d9d9d9;
    --color-gray-500: #989898;
    --color-gray-700: #464646;
    --color-gray-900: #040404;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --font-weight-light: 300;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --ease-in: cubic-bezier(.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-family-base: "Roboto", system-ui, -apple-system, Arial, sans-serif;
    --font-weight-regular: 400;
    --text-heading-xl-sz-desk: 3.55rem;
    --text-heading-xl-lh-desk: normal;
    --text-heading-xl-sz-mobile: 2.4rem;
    --text-heading-xl-lh-mobile: normal;
    --text-heading-l-sz-desk: 2rem;
    --text-heading-l-lh-desk: normal;
    --text-heading-l-sz-mobile: 1.75rem;
    --text-heading-l-lh-mobile: normal;
    --text-heading-base-sz: 1.7rem;
    --text-heading-base-lh: normal;
    --text-subline-xl-sz-desk: 2.35rem;
    --text-subline-xl-lh-desk: normal;
    --text-subline-xl-sz-mobile: 1.8rem;
    --text-subline-xl-lh-mobile: normal;
    --text-subline-l-sz-desk: 1.75rem;
    --text-subline-l-lh-desk: normal;
    --text-subline-l-sz-mobile: 1.65rem;
    --text-subline-l-lh-mobile: normal;
    --text-copy-m-sz-desk: 1.25rem;
    --text-copy-m-lh-desk: 1.75rem;
    --text-copy-m-sz-mobile: 1.125rem;
    --text-copy-m-lh-mobile: 1.6rem;
    --text-copy-s-sz: 1rem;
    --text-copy-s-lh: normal;
    --text-button-base-sz: 1.125rem;
    --text-button-base-lh: normal;
    --text-menue-m-sz: 1.65rem;
    --text-menue-m-lh: 2.2rem;
    --text-menue-s-sz: 1.35rem;
    --text-menue-s-lh: 1.6;
    --font-base-lh: 1.6;
    --container-default: 1400px;
    --container-narrow: 800px;
    --transition-fast: all .2s ease-in-out;
    --animation-speed-fast: .2s;
    --gap-1: .25rem;
    --gap-2: .5rem;
    --gap-4: 1rem;
    --gap-6: 1.5rem;
    --gap-8: 2rem;
    --gap-16: 4rem;
    --gap-32: 8rem;
    --gap-64: 16rem;
    --radius-1: calc(1rem * .9375);
    --radius-2: calc(1rem * 1.875);
    --radius-3: calc(1rem * 3.75);
    --radius-full: 50%;
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .visible {
    visibility: visible;
  }

  .fixed {
    position: fixed;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .top-0 {
    top: calc(var(--spacing) * 0);
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .z-50 {
    z-index: 50;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 640px) {
    .container {
      max-width: 640px;
    }
  }

  @media (min-width: 768px) {
    .container {
      max-width: 768px;
    }
  }

  @media (min-width: 1024px) {
    .container {
      max-width: 1024px;
    }
  }

  @media (min-width: 1280px) {
    .container {
      max-width: 1280px;
    }
  }

  @media (min-width: 1600px) {
    .container {
      max-width: 1600px;
    }
  }

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .table {
    display: table;
  }

  .h-\[23px\] {
    height: 23px;
  }

  .h-\[40px\] {
    height: 40px;
  }

  .h-\[43px\] {
    height: 43px;
  }

  .h-\[50px\] {
    height: 50px;
  }

  .h-full {
    height: 100%;
  }

  .w-\[14px\] {
    width: 14px;
  }

  .w-\[27px\] {
    width: 27px;
  }

  .w-\[40px\] {
    width: 40px;
  }

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

  .translate-x-0 {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-full {
    --tw-translate-x: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .items-center {
    align-items: center;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }

  .text-center {
    text-align: center;
  }

  .text-end {
    text-align: end;
  }

  .text-justify {
    text-align: justify;
  }

  .text-start {
    text-align: start;
  }

  .italic {
    font-style: italic;
  }

  .underline {
    text-decoration-line: underline;
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }

  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }

  @media (min-width: 768px) {
    .md\:col-span-4 {
      grid-column: span 4 / span 4;
    }

    .md\:col-span-8 {
      grid-column: span 8 / span 8;
    }

    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .md\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }

  .frame-space-before-extra-small {
    padding-top: var(--gap-2);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-before-extra-small {
      padding-top: var(--gap-4);
    }
  }

  .frame-space-after-extra-small {
    padding-bottom: var(--gap-2);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-after-extra-small {
      padding-bottom: var(--gap-4);
    }
  }

  .frame-space-before-small {
    padding-top: var(--gap-4);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-before-small {
      padding-top: var(--gap-6);
    }
  }

  .frame-space-after-small {
    padding-bottom: var(--gap-4);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-after-small {
      padding-bottom: var(--gap-6);
    }
  }

  .frame-space-before-medium {
    padding-top: var(--gap-6);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-before-medium {
      padding-top: var(--gap-8);
    }
  }

  @media screen and (min-width: 1600px) {
    .frame-space-before-medium {
      padding-top: var(--gap-16);
    }
  }

  .frame-space-after-medium {
    padding-bottom: var(--gap-6);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-after-medium {
      padding-bottom: var(--gap-8);
    }
  }

  @media screen and (min-width: 1600px) {
    .frame-space-after-medium {
      padding-bottom: var(--gap-16);
    }
  }

  .frame-space-before-large {
    padding-top: var(--gap-8);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-before-large {
      padding-top: var(--gap-16);
    }
  }

  @media screen and (min-width: 1600px) {
    .frame-space-before-large {
      padding-top: var(--gap-32);
    }
  }

  .frame-space-after-large {
    padding-bottom: var(--gap-8);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-after-large {
      padding-bottom: var(--gap-16);
    }
  }

  @media screen and (min-width: 1600px) {
    .frame-space-after-large {
      padding-bottom: var(--gap-32);
    }
  }

  .frame-space-before-extra-large {
    padding-top: var(--gap-16);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-before-extra-large {
      padding-top: var(--gap-32);
    }
  }

  @media screen and (min-width: 1280px) {
    .frame-space-before-extra-large {
      padding-top: var(--gap-64);
    }
  }

  .frame-space-after-extra-large {
    padding-bottom: var(--gap-16);
  }

  @media screen and (min-width: 1024px) {
    .frame-space-after-extra-large {
      padding-bottom: var(--gap-32);
    }
  }

  @media screen and (min-width: 1600px) {
    .frame-space-after-extra-large {
      padding-bottom: var(--gap-64);
    }
  }
}

@font-face {
  font-family: Roboto;
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./Roboto-Light-DKDbSA-H.eot");
  src: local(Roboto Light), local(Roboto-Light), url("./Roboto-Light-DKDbSA-H.eot?#iefix") format("embedded-opentype"), url("./Roboto-Light-BND1yEHK.woff2") format("woff2"), url("./Roboto-Light-D8eEbjjJ.woff") format("woff"), url("./Roboto-Light-CZE1r6-S.ttf") format("truetype");
}

@font-face {
  font-family: Roboto;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./Roboto-Regular-CFbaRf1w.eot");
  src: local(Roboto Regular), local(Roboto-Regular), url("./Roboto-Regular-CFbaRf1w.eot?#iefix") format("embedded-opentype"), url("./Roboto-Regular-56L6iL-I.woff2") format("woff2"), url("./Roboto-Regular-BsN8iP2n.woff") format("woff"), url("./Roboto-Regular-f0lhpOnz.ttf") format("truetype");
}

@font-face {
  font-family: Roboto;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./Roboto-Bold-D_X5cL-b.eot");
  src: local(Roboto Bold), local(Roboto-Bold), url("./Roboto-Bold-D_X5cL-b.eot?#iefix") format("embedded-opentype"), url("./Roboto-Bold-B2n1BHly.woff2") format("woff2"), url("./Roboto-Bold-B7cOq_fN.woff") format("woff"), url("./Roboto-Bold-D-aAu_L5.ttf") format("truetype");
}

@font-face {
  font-family: Roboto;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("./Roboto-Black-ChI4CnfH.eot");
  src: local(Roboto Black), local(Roboto-Black), url("./Roboto-Black-ChI4CnfH.eot?#iefix") format("embedded-opentype"), url("./Roboto-Black-CvfyhdOV.woff2") format("woff2"), url("./Roboto-Black-CVDdelww.woff") format("woff"), url("./Roboto-Black-Dy2twG1j.ttf") format("truetype");
}

html {
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-regular);
  color: var(--color-black);
  font-size: .85rem;
}

body {
  line-height: var(--font-base-lh);
}

.t-heading-xl {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-heading-xl-sz-mobile);
  line-height: var(--text-heading-xl-lh-mobile);
}

@media (min-width: 768px) {
  .t-heading-xl {
    font-size: var(--text-heading-xl-sz-desk);
    line-height: var(--text-heading-xl-lh-desk);
  }
}

.t-heading-l {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-heading-l-sz-mobile);
  line-height: var(--text-heading-l-lh-mobile);
}

@media (min-width: 768px) {
  .t-heading-l {
    font-size: var(--text-heading-l-sz-desk);
    line-height: var(--text-heading-l-lh-desk);
  }
}

.t-heading-m, h1, h2, h3, h4, h5, h6 {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-heading-base-sz);
  line-height: var(--text-heading-base-lh);
}

.t-subline-xl {
  font-weight: var(--font-weight-light);
  font-size: var(--text-subline-xl-sz-mobile);
  line-height: var(--text-subline-xl-lh-mobile);
}

@media (min-width: 768px) {
  .t-subline-xl {
    font-size: var(--text-subline-xl-sz-desk);
    line-height: var(--text-subline-xl-lh-desk);
  }
}

.t-subline-l {
  font-weight: var(--font-weight-light);
  font-size: var(--text-subline-l-sz-mobile);
  line-height: var(--text-subline-l-lh-mobile);
}

@media (min-width: 768px) {
  .t-subline-l {
    font-size: var(--text-subline-l-sz-desk);
    line-height: var(--text-subline-l-lh-desk);
  }
}

.t-copy-base, p, li {
  font-weight: var(--font-weight-regular);
  font-size: var(--text-copy-m-sz-mobile);
  line-height: var(--text-copy-m-lh-mobile);
}

@media (min-width: 768px) {
  .t-copy-base, p, li {
    font-size: var(--text-copy-m-sz-desk);
    line-height: var(--text-copy-m-lh-desk);
  }
}

.t-copy-small {
  font-weight: var(--font-weight-regular);
  font-size: var(--text-copy-s-sz);
  line-height: var(--text-copy-s-lh);
}

.t-button-base {
  font-weight: var(--font-weight-extrabold);
  font-size: var(--text-button-base-sz);
  line-height: var(--text-button-base-lh);
}

.t-menue-base {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-menue-m-sz);
  line-height: var(--text-menue-m-lh);
}

.t-menue-s {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-menue-s-sz);
  line-height: var(--text-menue-s-lh);
}

.grid-section {
  width: auto;
}

.grid-section .grid-container {
  gap: var(--gap-4);
  width: 100%;
  max-width: var(--container-default);
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .grid-section .grid-container {
    gap: var(--gap-8);
  }
}

@media (max-width: 1616px) {
  .grid-section {
    padding-left: var(--gap-4);
    padding-right: var(--gap-4);
  }
}

.grid-section.frame-fluid {
  padding-left: 0;
  padding-right: 0;
}

.grid-section.frame-fluid .grid-container {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.grid-section.frame-narrow .grid-container {
  width: 100%;
  max-width: var(--container-narrow);
}

@media (max-width: 816px) {
  .grid-section.frame-narrow {
    padding-left: var(--gap-4);
    padding-right: var(--gap-4);
  }
}

a[onclick] {
  cursor: pointer;
}

.ce-bodytext ul, .ce-bodytext ol {
  margin: 0 0 0 15px;
  padding: 0;
  list-style: outside;
}

.ce-bodytext ol {
  list-style: decimal;
}

.ce-bodytext ul li, .ce-bodytext ol li {
  position: relative;
}

i.icon {
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: inline-block;
}

i.ico-instagram {
  background-image: url("./ico-instagram-Cl_JrNCZ.svg");
}

i.ico-youtube {
  background-image: url("./ico-youtube-IMlk0O85.svg");
}

i.ico-linkedin {
  background-image: url("./ico-linkedin-B3aGekxK.svg");
}

.ce-headline {
  margin-bottom: var(--gap-4);
  -webkit-hyphens: none;
  hyphens: none;
}

.ce-bodytext {
  gap: var(--gap-4);
  -webkit-hyphens: auto;
  hyphens: auto;
  display: grid;
}

.ce-bodytext .ce-headline {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .ce-bodytext p a + a {
    margin-left: var(--gap-4);
  }
}

.ce-bodytext a {
  text-decoration: underline;
}

button {
  cursor: pointer;
  border: none;
}

.btn-white, .btn-gray, .btn-yellow, .btn-lemon, .btn-red, [role="button"] {
  cursor: pointer;
  min-width: 250px;
  padding: var(--gap-4) var(--gap-8) 1.1rem var(--gap-8);
  border-radius: var(--gap-8);
  font-size: var(--text-button-base-sz);
  line-height: var(--text-button-base-lh);
  transition: var(--transition-fast);
  justify-content: flex-start;
  align-items: center;
  gap: var(--gap-2);
  padding-right: calc(var(--gap-8)  + 1.5rem + var(--gap-2));
  border: none;
  display: inline-flex;
  position: relative;
  font-weight: var(--font-weight-bold) !important;
  text-decoration: none !important;
}

a.btn-white:hover, button.btn-white:hover, .btn-white:hover, a.btn-gray:hover, button.btn-gray:hover, .btn-gray:hover, a.btn-lemon:hover, button.btn-lemon:hover, .btn-lemon:hover, a.btn-yellow:hover, button.btn-yellow:hover, .btn-yellow:hover, a.btn-red:hover, button.btn-red:hover, .btn-red:hover {
  background-color: var(--color-gray-900);
  color: var(--color-white) !important;
}

a.btn-white:after, button.btn-white:after, .btn-white:after, a.btn-gray:after, button.btn-gray:after, .btn-gray:after, a.btn-lemon:after, button.btn-lemon:after, .btn-lemon:after, a.btn-yellow:after, button.btn-yellow:after, .btn-yellow:after, a.btn-red:after, button.btn-red:after, .btn-red:after {
  content: "";
  right: var(--gap-8);
  width: 1.5rem;
  height: 1.5rem;
  transition: var(--transition-fast);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
}

a.btn-white, button.btn-white, .btn-white {
  background-color: var(--color-white);
  color: var(--color-black) !important;
}

a.btn-white:after, button.btn-white:after, .btn-white:after {
  background-image: url("./ico-arrow-2_b-Cq3BJc5e.svg");
}

a.btn-white:hover:after, button.btn-white:hover:after, .btn-white:hover:after {
  background-image: url("./ico-arrow-2_w-DhHLB6mH.svg");
}

a.btn-gray, button.btn-gray, .btn-gray {
  background-color: var(--color-gray-700);
  color: var(--color-white) !important;
}

a.btn-gray:after, button.btn-gray:after, .btn-gray:after, a.btn-gray:hover:after, button.btn-gray:hover:after, .btn-gray:hover:after {
  background-image: url("./ico-arrow-2_w-DhHLB6mH.svg");
}

a.btn-lemon, button.btn-lemon, .btn-lemon {
  background-color: var(--color-yellow-200);
  color: var(--color-gray-900) !important;
}

a.btn-lemon:after, button.btn-lemon:after, .btn-lemon:after, a.btn-lemon:hover:after, button.btn-lemon:hover:after, .btn-lemon:hover:after {
  background-image: url("./ico-arrow-2_b-Cq3BJc5e.svg");
}

a.btn-yellow, button.btn-yellow, .btn-yellow {
  background-color: var(--color-yellow-500);
  color: var(--color-black) !important;
}

a.btn-yellow:after, button.btn-yellow:after, .btn-yellow:after {
  background-image: url("./ico-arrow-2_b-Cq3BJc5e.svg");
}

a.btn-yellow:hover:after, button.btn-yellow:hover:after, .btn-yellow:hover:after {
  background-image: url("./ico-arrow-2_w-DhHLB6mH.svg");
}

a.btn-red, button.btn-red, .btn-red {
  background-color: var(--color-red-500);
  color: var(--color-white) !important;
}

a.btn-red:after, button.btn-red:after, .btn-red:after, a.btn-red:hover:after, button.btn-red:hover:after, .btn-red:hover:after {
  background-image: url("./ico-arrow-2_w-DhHLB6mH.svg");
}

.hero {
  margin-top: -96px;
  position: relative;
}

.hero__inner {
  background: var(--color-black);
  min-height: 600px;
  position: relative;
  overflow: hidden;
}

@media (min-width: 640px) {
  .hero__inner {
    min-height: 600px;
  }
}

@media (min-width: 768px) {
  .hero__inner {
    min-height: 600px;
  }
}

@media (min-width: 1024px) {
  .hero__inner {
    min-height: 600px;
  }
}

.hero__bg {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 0;
  transform: scale(1.02);
}

.hero__overlay {
  z-index: 1;
  background: linear-gradient(90deg, #000000b3 0%, #00000059 45%, #0000001a 100%);
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0;
}

.hero__content {
  z-index: 2;
  gap: var(--gap-4);
  flex-direction: column;
  display: flex;
  position: relative;
}

@media (min-width: 640px) {
  .hero__content {
    padding: var(--gap-8);
  }
}

@media (min-width: 768px) {
  .hero__content {
    padding: var(--gap-16);
  }
}

.hero__content p, .hero__content li {
  color: var(--color-white);
}

.hero__content ul {
  gap: var(--gap-4);
  margin-bottom: var(--gap-4);
  flex-direction: column;
  display: flex;
}

.hero__content ul li {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-copy-m-sz-desk);
  line-height: var(--text-copy-m-lh-desk);
}

@media (min-width: 768px) {
  .hero__content ul li {
    font-size: var(--text-heading-base-sz);
    line-height: var(--text-heading-base-lh);
  }
}

.card {
  position: relative;
}

.card.style-01 .card__wrapper {
  background: var(--color-gray-100);
}

.card.style-01 .card__wrapper .card__text .ce-headline, .card.style-01 .card__wrapper .card__text p, .card.style-01 .card__wrapper .card__text li {
  color: var(--color-gray-900);
}

.card.style-04 .card__wrapper {
  background: var(--color-gray-100);
}

.card.style-04 .card__wrapper .card__text .ce-headline, .card.style-04 .card__wrapper .card__text p, .card.style-04 .card__wrapper .card__text li {
  color: var(--color-gray-900);
}

.card.style-05 .card__wrapper {
  background: var(--color-gray-100);
}

.card.style-05 .card__wrapper .card__text .ce-headline, .card.style-05 .card__wrapper .card__text p, .card.style-05 .card__wrapper .card__text li {
  color: var(--color-gray-900);
}

.card__inner {
  min-height: 400px;
  position: relative;
}

@media (min-width: 640px) {
  .card__inner {
    min-height: 280px;
  }
}

@media (min-width: 768px) {
  .card__inner {
    min-height: 320px;
  }
}

@media (min-width: 1024px) {
  .card__inner {
    min-height: 360px;
  }
}

.card__bg {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 0;
  transform: scale(1.02);
}

.card__content {
  z-index: 2;
  position: relative;
}

@media (min-width: 640px) {
  .card__content {
    padding: var(--gap-8);
  }
}

@media (min-width: 768px) {
  .card__content {
    padding: var(--gap-16);
  }
}

.card__inner {
  gap: var(--gap-6);
  grid-template-columns: 1fr;
  grid-template-areas: "picture"
                       "text";
  display: grid;
}

@media (min-width: 768px) {
  .card__inner {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "text picture";
    align-items: center;
  }

  .card.style-04 .card__inner {
    grid-template-columns: auto 1fr;
    grid-template-areas: "picture text";
    width: 95%;
  }
}

.card__text {
  grid-area: text;
}

.card__picture {
  grid-area: picture;
}

.card.style-04 .card__picture {
  padding: var(--gap-4);
  justify-content: center;
  display: flex;
}

@media (min-width: 768px) {
  .card.style-04 .card__picture {
    padding: var(--gap-8);
  }
}

.card.style-05 .frame-radius-diagonal img {
  border-radius: var(--radius-1);
}

.card__picture img {
  border-radius: inherit;
  width: 100%;
  height: auto;
  display: block;
}

.accordion__wrapper, .accordion__inner {
  width: 100%;
}

.accordion_panels {
  gap: var(--gap-4);
  flex-direction: column;
  display: flex;
}

.accordion_panel {
  background-color: var(--color-gray-100);
  padding: var(--gap-4) var(--gap-6);
  flex-direction: column;
  display: flex;
}

@media (min-width: 768px) {
  .accordion_panel {
    padding: var(--gap-6) var(--gap-8);
  }
}

.accordion_title {
  cursor: pointer;
  text-align: left;
  width: 100%;
  transition: var(--transition-fast);
  justify-content: space-between;
  align-items: center;
  gap: var(--gap-4);
  border: none;
  display: flex;
}

.accordion_title h3 {
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
  flex: 1;
  margin: 0;
}

.accordion_icon {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  display: flex;
  position: relative;
}

.accordion_icon img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  transition: opacity var(--animation-speed-fast) ease-in-out;
}

.accordion_icon-plus {
  display: block;
}

.accordion_icon-minus {
  display: none;
}

.accordion_icon-visible {
  display: block !important;
}

.accordion_icon-hidden {
  display: none !important;
}

.accordion_content {
  overflow: hidden;
}

.accordion_content-inner {
  color: var(--color-gray-700);
  font-size: var(--text-copy-base-size);
  line-height: var(--text-copy-base-line-height);
  font-weight: var(--font-weight-regular);
}

.accordion_content-inner p {
  margin: 0;
  margin-top: var(--gap-4);
}

.accordion_content-inner p:first-child {
  margin-top: 0;
}

@media (min-width: 768px) {
  .accordion_panels {
    gap: var(--gap-6);
  }
}

.accordion_content[x-cloak] {
  display: none !important;
}

.steps__inner {
  margin: 0 0 var(--gap-4) 0;
  background: var(--color-white);
  flex-direction: column;
  display: flex;
}

.steps__items {
  gap: var(--gap-4);
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.step__item {
  border: 1px solid var(--color-gray-400);
}

@media (min-width: 768px) {
  .steps__wrapper {
    position: relative;
  }

  .steps__inner {
    z-index: 5;
    align-items: flex-end;
    width: 100%;
    margin: 0;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
  }

  .steps__text {
    max-width: 40%;
    margin-top: 250px;
  }

  .steps__items {
    z-index: 10;
    max-width: 55%;
    padding: var(--gap-8) 0 var(--gap-16) var(--gap-8);
    gap: var(--gap-6);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: grid;
    position: relative;
  }

  .steps__items .step__item:nth-child(odd) {
    grid-column: 1;
  }

  .steps__items .step__item:nth-child(2n) {
    transform: translateY(var(--gap-16));
    grid-column: 2;
  }
}

.steps__items .step__item:nth-child(odd) {
  background: var(--color-gray-200);
  color: var(--color-gray-900);
}

.steps__items .step__item:nth-child(odd) span.dot {
  color: var(--color-gray-900);
}

.steps__items .step__item:nth-child(2n) {
  background: var(--color-white);
  color: var(--color-gray-900);
}

.steps__items .step__item:nth-child(2n) span.dot {
  color: var(--color-gray-900);
}

.step__item_title {
  font-weight: var(--font-weight-bold);
  font-size: var(--text-heading-l-sz-mobile);
  line-height: var(--text-heading-l-lh-mobile);
}

@media (min-width: 768px) {
  .step__item_title {
    font-size: var(--text-heading-l-sz-desk);
    line-height: var(--text-heading-l-lh-desk);
  }
}

.tile {
  width: 100%;
}

.tile__wrapper {
  padding: 0;
}

.tile__inner {
  width: 100%;
}

.tile__items {
  gap: var(--gap-6);
  grid-template-columns: 1fr;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

@media (min-width: 1024px) {
  .style-03 .tile__items {
    grid-template-columns: 1fr 1fr;
  }
}

.tile__item {
  justify-content: flex-start;
  gap: var(--gap-4);
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.tile__picture {
  margin-bottom: var(--gap-4);
}

.tile__picture picture, .tile__picture img {
  width: 100%;
  height: auto;
  display: block;
}

.tile__text_text {
  gap: var(--gap-4);
  flex-direction: column;
  display: flex;
}

.tile.style-01 .tile__items, .tile.style-02 .tile__items {
  grid-template-columns: 1fr;
}

.tile.style-02 .tile__item {
  padding-top: var(--gap-8);
  padding-bottom: var(--gap-8);
}

.tile.style-02 .tile__picture {
  justify-content: center;
  align-items: center;
  display: flex;
}

@media (min-width: 768px) {
  .tile.style-01 .tile__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tile.style-02 .tile__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.tile .btn-default, .tile a.btn-default, .tile button.btn-default {
  background-color: var(--color-gray-700);
  color: var(--color-white) !important;
}

.tile .btn-default:hover, .tile a.btn-default:hover, .tile button.btn-default:hover {
  background-color: var(--color-gray-900);
  color: var(--color-white) !important;
}

.tile .tile__item {
  background-color: var(--color-gray-200);
  color: var(--color-gray-900);
}

.tile .tile__item .ce-headline, .tile .tile__item p, .tile .tile__item .ce-headline, .tile .tile__item p {
  color: var(--color-black);
}

.tile.style-02 .btn-white, .tile.style-02 .btn-gray, .tile.style-02 .btn-yellow, .tile.style-02 .btn-lemon, .tile.style-02 .btn-red {
  min-width: auto;
}

.tile.style-03 .tile__item, .tile.style-04 .tile__item {
  border: 1px solid var(--color-gray-400);
  background: var(--color-white);
}

.tile.style-03 .tile__item .ce-headline, .tile.style-04 .tile__item .ce-headline {
  margin-bottom: 0;
}

.tile__text {
  gap: var(--gap-4);
  display: flex;
}

.tile__text .tile__text_icon {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  margin-top: -.5rem;
}

.tile__text .tile__text_icon img {
  width: 100%;
}

picture, video, figure {
  line-height: 0;
}

figure img {
  height: auto;
}

figure img a {
  line-height: 0;
}

figure img.narrow-img {
  width: auto;
}

figure figcaption.image-caption {
  font-family: var(--font-family-base);
  font-size: var(--text-copy-base-size);
  line-height: var(--text-copy-base-line-height);
  text-align: center;
  -webkit-hyphens: none;
  hyphens: none;
}

.ce-image .ce-gallery, .ce-textpic .ce-gallery {
  gap: var(--gap-4);
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.ce-image .ce-gallery[data-ce-columns="1"], .ce-textpic .ce-gallery[data-ce-columns="1"] {
  flex-direction: column;
}

.ce-image .ce-gallery[data-ce-columns="2"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="2"] .ce-gallery-item {
  width: calc(50% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="3"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="3"] .ce-gallery-item {
  width: calc(33.333% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="4"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="4"] .ce-gallery-item {
  width: calc(25% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="5"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="5"] .ce-gallery-item {
  width: calc(20% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="6"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="6"] .ce-gallery-item {
  width: calc(16.666% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="7"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="7"] .ce-gallery-item {
  width: calc(14.2855% - var(--gap-4));
}

.ce-image .ce-gallery[data-ce-columns="8"] .ce-gallery-item, .ce-textpic .ce-gallery[data-ce-columns="8"] .ce-gallery-item {
  width: calc(12.5% - var(--gap-4));
}

.ce-image .ce-gallery .ce-gallery-item, .ce-textpic .ce-gallery .ce-gallery-item {
  flex-shrink: 1;
}

.ce-image.ce-center .ce-gallery, .ce-textpic.ce-center .ce-gallery {
  justify-content: center;
}

.ce-textpic {
  gap: var(--gap-4);
  flex-direction: row;
  display: flex;
}

@media screen and (max-width: 768px) {
  .ce-textpic {
    flex-direction: column;
  }
}

.ce-textpic.ce-right {
  flex-direction: row-reverse;
}

.ce-textpic.ce-below, .ce-textpic.ce-above {
  flex-direction: column;
}

.ce-textpic.ce-center .ce-gallery {
  align-items: center;
}

.ce-textpic.ce-right .ce-gallery {
  align-items: flex-start;
}

.m-lightbox {
  z-index: 9999;
  position: fixed;
  inset: 0;
}

.m-lightbox__backdrop {
  background: #000000d9;
  position: absolute;
  inset: 0;
}

.m-lightbox__dialog {
  justify-content: center;
  align-items: center;
  gap: var(--gap-4);
  height: 100%;
  padding: var(--gap-4);
  display: flex;
  position: relative;
}

.m-lightbox__figure {
  max-width: min(2100px, 98vw);
  max-height: 96vh;
  margin: 0;
}

.m-lightbox__img {
  max-width: 100%;
  max-height: 90vh;
  display: block;
}

.m-lightbox__caption {
  padding: var(--gap-4) 0;
  text-align: center;
  color: var(--color-white);
}

.m-lightbox__close {
  top: var(--gap-4);
  right: var(--gap-4);
  color: #0000;
  background-color: #0000;
  border: none;
  width: 34px;
  height: 34px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.m-lightbox__close:before {
  content: "";
  background-image: url("./x-close_w-DjcW6d0n.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.m-lightbox__nav {
  color: #0000;
  background: none;
  border: none;
  width: 3rem;
  height: 3rem;
  padding: 0;
  position: absolute;
  top: 50%;
  overflow: hidden;
  transform: translateY(-50%);
}

.m-lightbox__nav:before {
  content: "";
  background-image: url("./ico-arrow_w-CU1mPuQn.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.m-lightbox__nav--prev {
  left: var(--gap-4);
  transform: translateY(-50%)rotate(180deg);
}

.m-lightbox__nav--next {
  right: var(--gap-4);
}

.gallery {
  width: 100%;
}

.gallery__inner {
  gap: var(--gap-6);
  flex-direction: column;
  display: flex;
}

.gallery__nav {
  justify-content: center;
  align-items: center;
  gap: var(--gap-4);
  display: flex;
  overflow: hidden;
}

.gallery__tabs {
  gap: var(--gap-2);
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  overflow-x: auto;
}

.gallery__tab-item {
  flex-shrink: 0;
}

.gallery__tab {
  background-color: var(--color-gray-200);
  color: var(--color-gray-900);
  padding: var(--gap-4) var(--gap-8) 1.1rem var(--gap-8);
  border-radius: var(--gap-8);
  font-size: var(--text-button-base-sz);
  line-height: var(--text-button-base-lh);
  white-space: nowrap;
  cursor: pointer;
  transition: background-color var(--transition-fast), color var(--transition-fast);
  border: none;
  display: block;
  font-weight: var(--font-weight-bold) !important;
}

.gallery__tab:hover {
  background-color: var(--color-gray-900);
  color: var(--color-white);
}

.gallery__tab--active {
  background-color: var(--color-red-500);
  color: var(--color-white);
}

.gallery__arrows {
  flex-shrink: 0;
  display: none;
}

@media (max-width: 767.98px) {
  .gallery__arrows {
    display: flex;
  }
}

.gallery__arrow {
  border-radius: var(--radius-1);
  background-color: var(--color-gray-400);
  width: 2.5rem;
  height: 2.5rem;
  color: var(--color-black);
  cursor: pointer;
  transition: background-color var(--transition-fast);
  border: none;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
}

.gallery__arrow:hover {
  background-color: var(--color-gray-500);
}

.gallery__arrow-icon {
  background-image: url("./ico-arrow_b-DxaJ4fD7.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

.gallery__arrow--prev .gallery__arrow-icon {
  transform: rotate(180deg);
}

.gallery__preview {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.gallery__preview .swiper-slide {
  width: 100%;
  height: auto;
}

.gallery__figure {
  width: 100%;
  margin: 0;
}

.gallery__link {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

.gallery__link:hover {
  outline: 2px solid var(--color-yellow-500);
  outline-offset: 2px;
}

.gallery__img {
  object-fit: cover;
  width: 100%;
  height: auto;
  display: block;
}

.gallery__caption {
  margin-top: var(--gap-2);
  font-family: var(--font-family-base);
  font-size: var(--text-copy-s-sz);
  line-height: var(--text-copy-s-lh);
  color: var(--color-gray-900);
  padding: 0;
}

@media (min-width: 768px) {
  .gallery__caption {
    font-size: var(--text-copy-m-sz-desk);
    line-height: var(--text-copy-m-lh-desk);
  }
}

.tx-powermail {
  font-family: var(--font-family-base);
  font-size: var(--text-copy-s-sz);
  line-height: var(--text-copy-s-lh);
}

.tx-powermail .powermail_form {
  gap: var(--gap-6);
  flex-direction: column;
  display: flex;
}

.tx-powermail .powermail_fieldset {
  gap: var(--gap-6);
  border: none;
  flex-direction: column;
  margin: 0;
  padding: 0;
  display: flex;
}

.tx-powermail .powermail_legend {
  display: none;
}

.tx-powermail .row {
  gap: var(--gap-6);
  flex-wrap: wrap;
  display: flex;
}

.tx-powermail .row .powermail_fieldwrap {
  flex: 100%;
  min-width: 0;
}

@media (min-width: 768px) {
  .tx-powermail .row .powermail_fieldwrap.col-md-6 {
    flex: 1 1 calc(50% - var(--gap-6));
  }
}

.tx-powermail .powermail_fieldwrap, .tx-powermail .powermail_field {
  gap: var(--gap-2);
  flex-direction: column;
  display: flex;
}

.tx-powermail .form-label, .tx-powermail .powermail_label {
  font-weight: var(--font-weight-regular);
  color: var(--color-black);
  font-size: var(--text-copy-m-sz-mobile);
  line-height: var(--text-copy-m-lh-mobile);
}

@media (min-width: 768px) {
  .tx-powermail .form-label, .tx-powermail .powermail_label {
    font-size: var(--text-copy-m-sz-desk);
    line-height: var(--text-copy-m-lh-desk);
  }
}

.tx-powermail .mandatory {
  color: var(--color-red-500);
}

.tx-powermail .powermail_input, .tx-powermail .powermail_textarea, .tx-powermail .powermail_select, .tx-powermail .form-control {
  padding: var(--gap-4) var(--gap-8);
  border: 1px solid var(--color-gray-700);
  border-radius: var(--gap-8);
  width: 100%;
  font-family: var(--font-family-base);
  color: var(--color-gray-900);
  background-color: var(--color-white);
  transition: var(--transition-fast);
  box-sizing: border-box;
  overflow: hidden;
}

.tx-powermail .powermail_fieldwrap_type_html, .tx-powermail .form-check label, .tx-powermail .powermail_input, .tx-powermail .powermail_textarea, .tx-powermail .powermail_select, .tx-powermail .form-control {
  font-size: var(--text-copy-m-sz-mobile);
  line-height: var(--text-copy-m-lh-mobile);
}

@media (min-width: 768px) {
  .tx-powermail .powermail_fieldwrap_type_html, .tx-powermail .form-check label, .tx-powermail .powermail_input, .tx-powermail .powermail_textarea, .tx-powermail .powermail_select, .tx-powermail .form-control {
    font-size: var(--text-copy-m-sz-desk);
    line-height: var(--text-copy-m-lh-desk);
  }
}

.tx-powermail .powermail_input::placeholder, .tx-powermail .powermail_textarea::placeholder {
  color: var(--color-gray-700);
}

.tx-powermail .powermail_input:focus, .tx-powermail .powermail_textarea:focus, .tx-powermail .powermail_select:focus {
  border-color: var(--color-red-500);
  box-shadow: 0 0 0 2px var(--color-red-500);
  outline: none;
}

.tx-powermail .powermail_textarea {
  resize: vertical;
  min-height: 6rem;
}

.tx-powermail .powermail_select {
  cursor: pointer;
  appearance: auto;
}

.tx-powermail .powermail_input.powermail_field_error, .tx-powermail .powermail_textarea.powermail_field_error {
  border-color: var(--color-red-500);
}

.tx-powermail .powermail_input.powermail_field_error:focus, .tx-powermail .powermail_textarea.powermail_field_error:focus {
  box-shadow: 0 0 0 2px #a0261933;
}

.tx-powermail .powermail-errors-list {
  gap: var(--gap-1);
  color: var(--color-red-500);
  flex-direction: column;
  margin: 0;
  padding: 0;
  font-size: .875rem;
  list-style: none;
  display: flex;
}

.tx-powermail .powermail-errors-list:not(.filled) {
  display: none;
}

.tx-powermail .powermail_radiowrap, .tx-powermail .form-check {
  align-items: flex-start;
  gap: var(--gap-2);
  display: flex;
}

.tx-powermail .powermail_radiowrap label, .tx-powermail .form-check label {
  align-items: flex-start;
  gap: var(--gap-2);
  cursor: pointer;
  font-weight: var(--font-weight-regular);
  display: flex;
}

.tx-powermail .powermail_radio, .tx-powermail .powermail_checkbox, .tx-powermail input[type="radio"], .tx-powermail input[type="checkbox"] {
  opacity: 0;
  cursor: pointer;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  position: absolute;
  top: .15rem;
  left: 0;
}

.tx-powermail .powermail_radiowrap label, .tx-powermail .form-check label {
  padding-left: 2rem;
  position: relative;
}

.tx-powermail .checkmark {
  border: 2px solid var(--color-gray-700);
  background-color: var(--color-white);
  width: 1.5rem;
  height: 1.5rem;
  transition: var(--transition-fast);
  pointer-events: none;
  flex-shrink: 0;
  position: absolute;
  top: .15rem;
  left: 0;
}

.tx-powermail .powermail_fieldwrap_type_radio .checkmark, .tx-powermail .powermail_radiowrap .checkmark {
  border-radius: var(--radius-full);
}

.tx-powermail .powermail_radio:checked + .checkmark, .tx-powermail input[type="radio"]:checked + .checkmark {
  border-color: var(--color-red-500);
  background-color: var(--color-white);
}

.tx-powermail .powermail_radio:checked + .checkmark:after, .tx-powermail input[type="radio"]:checked + .checkmark:after {
  content: "";
  border-radius: var(--radius-full);
  background-color: var(--color-red-500);
  width: .5rem;
  height: .5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tx-powermail .powermail_radio:focus-visible + .checkmark, .tx-powermail input[type="radio"]:focus-visible + .checkmark {
  box-shadow: 0 0 0 2px var(--color-red-500);
}

.tx-powermail .powermail_fieldwrap_type_checkbox .checkmark, .tx-powermail .powermail_fieldwrap_type_check .checkmark {
  border-radius: 4px;
}

.tx-powermail .powermail_checkbox:checked + .checkmark, .tx-powermail input[type="checkbox"]:checked + .checkmark {
  border-color: var(--color-red-500);
  background-color: var(--color-red-500);
}

.tx-powermail .powermail_checkbox:checked + .checkmark:after, .tx-powermail input[type="checkbox"]:checked + .checkmark:after {
  content: "";
  border: solid var(--color-gray-700);
  border-width: 0 2px 2px 0;
  width: .4rem;
  height: .7rem;
  position: absolute;
  top: .15rem;
  left: .4rem;
  transform: rotate(45deg);
}

.tx-powermail .powermail_checkbox:focus-visible + .checkmark, .tx-powermail input[type="checkbox"]:focus-visible + .checkmark {
  box-shadow: 0 0 0 2px var(--color-orange-100);
}

.tx-powermail .powermail_radiowrap label:hover .checkmark, .tx-powermail .form-check label:hover .checkmark {
  border-color: var(--color-red-500);
}

.tx-powermail .powermail_radiowrap + .powermail_radiowrap {
  margin-top: var(--gap-2);
}

.tx-powermail .powermail_field_error_container {
  min-height: 0;
}

.tx-powermail .powermail_fieldwrap_type_submit .powermail_field {
  gap: var(--gap-4);
  display: flex;
}

.tx-powermail .powermail_form input[type="submit"], .tx-powermail .powermail_form .btn[type="submit"] {
  padding: var(--gap-4) var(--gap-8);
  font-family: var(--font-family-base);
  font-size: var(--text-button-base-sz);
  font-weight: var(--font-weight-bold);
  line-height: var(--text-button-base-lh);
  color: var(--color-white);
  background-color: var(--color-red-500);
  border-radius: var(--gap-8);
  cursor: pointer;
  transition: var(--transition-fast);
  border: none;
}

.tx-powermail .powermail_form input[type="submit"]:hover, .tx-powermail .powermail_form .btn[type="submit"]:hover {
  filter: brightness(1.08);
}

[x-cloak] {
  display: none !important;
}

@media (min-width: 1024px) {
  .nav-desktop {
    align-items: center;
    display: flex;
  }

  .nav-desktop .menu-list {
    gap: var(--gap-4);
    align-items: start;
    display: flex;
  }

  .nav-desktop .menu-item-wrapper {
    margin-bottom: 0;
    position: relative;
  }

  .nav-desktop a.menu-link {
    color: var(--color-black);
    font-size: var(--text-menue-s-sz);
    line-height: var(--text-menue-s-lh);
    font-weight: var(--font-weight-regular);
    padding: var(--gap-2) 0;
    transition: var(--transition-fast);
    border-bottom: 2px solid #0000;
  }

  .nav-desktop a.menu-link:hover {
    color: var(--color-red-500);
  }

  .nav-desktop a.menu-link.current {
    color: var(--color-gray-700);
  }

  .nav-desktop .dropdown-toggle {
    display: none;
  }

  .nav-desktop .menu-item-group {
    margin-top: 0;
  }

  .nav-desktop .submenu-list {
    padding: var(--gap-2) 0;
    background-color: var(--color-white);
    border-radius: var(--radius-1);
    z-index: 100;
    min-width: 12rem;
    margin: 0;
    list-style: none;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    box-shadow: 0 4px 16px #0000001a;
  }

  .nav-desktop .menu-item-wrapper:hover .submenu-list {
    display: block;
  }

  .nav-desktop .submenu-item {
    margin-bottom: 0;
  }

  .nav-desktop .submenu-link {
    padding: var(--gap-2) var(--gap-4);
    color: var(--color-gray-700);
    font-size: var(--text-menue-s-sz);
    line-height: var(--text-menue-s-lh);
    font-weight: var(--font-weight-bold);
    display: block;
  }

  .nav-desktop .submenu-link:hover {
    color: var(--color-red-500);
  }

  .hamburger {
    display: none;
  }

  #main, main {
    margin-top: 7.25rem;
  }
}

@media (max-width: 1023px) {
  .nav-desktop {
    display: none;
  }
}

.menu-overlay {
  background-color: var(--color-gray-100);
  z-index: 60;
  background-image: url("./bg-fond-DEVMonAj.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  overflow-y: auto;
}

@media (min-width: 768px) {
  .menu-overlay {
    width: 50%;
  }
}

.menu-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu-item-wrapper {
  margin-bottom: 1.5rem;
}

.menu-item-group {
  margin-top: var(--gap-4);
}

.menu-link {
  color: var(--color-black);
  font-size: var(--text-menue-m-sz);
  line-height: var(--text-menue-m-lh);
  font-weight: var(--font-weight-bold);
  align-items: center;
  text-decoration: none;
  transition: color .2s;
  display: flex;
}

.menu-link:hover, .menu-link.active {
  color: var(--color-red-500);
}

.submenu-list {
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

.submenu-item {
  margin-bottom: .75rem;
}

.submenu-link {
  color: var(--color-black);
  align-items: center;
  text-decoration: none;
  transition: color .2s;
  display: flex;
}

.submenu-link:hover {
  color: var(--color-red-500);
}

.dropdown-toggle {
  cursor: pointer;
  background: none;
  border: none;
  margin-left: 1rem;
  margin-right: 1.2rem;
  padding: 0;
}

.dropdown-toggle img {
  transition: transform .2s;
}

.dropdown-toggle img.dropdown-arrow-closed {
  transform: rotate(90deg);
}

.dropdown-toggle img.dropdown-arrow-open {
  transform: rotate(-90deg);
}

.menu-close-wrapper {
  justify-content: flex-end;
  padding-top: 38px;
  padding-right: 18px;
  display: flex;
}

.menu-close-button {
  cursor: pointer;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  display: flex;
}

.footer ul.footer-nav {
  gap: var(--gap-2);
  flex-direction: column;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
}

.footer ul.footer-nav li {
  display: block;
}

@media (min-width: 768px) {
  .footer ul.footer-nav {
    gap: var(--gap-4);
    flex-wrap: wrap;
    flex-direction: row !important;
  }
}

.social-icons a {
  width: 36px;
  height: 36px;
  display: inline-block;
}

header {
  background-color: var(--color-white);
  min-height: 110px;
}

header.header--scrolled {
  border-bottom: 1px solid var(--color-gray-100);
}

.header__inner {
  width: 100%;
  max-width: var(--container-default);
  padding: var(--gap-8) 0;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 1616px) {
  .header__inner {
    padding-left: var(--gap-4);
    padding-right: var(--gap-4);
  }
}

header .contact-button {
  display: none;
}

@media (min-width: 1200px) {
  header .contact-button {
    display: block;
  }
}

#main {
  margin-top: 206px;
}

.frame-layout-910 {
  background-color: var(--color-gray-100);
}

.frame-layout-920 {
  background-color: var(--color-gray-400);
}

.center {
  text-align: center;
}

.marker-red {
  color: var(--color-red-500);
}

.marker-price {
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
  background-color: var(--color-white);
  padding: var(--gap-2) var(--gap-4);
  border-radius: var(--radius-1);
  margin: 0 5px 5px 0;
  display: inline-block;
}

.citation {
  position: relative;
}

.citation:before {
  content: "„";
  margin-right: .1em;
}

.citation:after {
  content: "“";
  margin-left: .1em;
}

.footer {
  background-color: var(--color-gray-100);
  padding: var(--gap-16) 0 var(--gap-8) 0;
}

.footer-container {
  color: var(--color-gray-900);
  gap: var(--gap-4);
  width: 100%;
  display: grid;
}

@media (min-width: 768px) {
  .footer-container {
    gap: var(--gap-4);
  }
}

.footer a {
  font-weight: var(--font-weight-regular);
  color: var(--color-gray-900);
  text-decoration: none;
  transition: all .2s;
}

.footer a:hover {
  font-weight: var(--font-weight-bold);
  text-decoration: underline;
}

.footer a[onclick] {
  cursor: pointer;
}

@media (min-width: 768px) {
  .footer-container {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .footer-container .grid-item-footer-brand {
    grid-area: 1 / 1;
  }

  .footer-container .grid-item-footer-buttons {
    grid-area: 1 / 2;
  }

  .footer-container .grid-item-footer-contact {
    grid-area: 2 / 1;
  }

  .footer-container .grid-item-footer-social {
    grid-area: 2 / 2;
  }

  .footer-container .grid-item-footer-nav {
    grid-area: 3 / 1;
  }

  .footer-container .grid-item-footer-legal {
    grid-area: 3 / 2;
  }
}

.footer-container .grid-item {
  width: 100%;
}

.footer-container .grid-item-footer-brand, .footer-container .grid-item-footer-contact, .footer-container .grid-item-footer-buttons, .footer-container .grid-item-footer-social, .footer-container .grid-item-footer-legal {
  text-align: left;
}

@media (min-width: 768px) {
  .footer-container .grid-item-footer-brand, .footer-container .grid-item-footer-contact {
    text-align: left;
  }

  .footer-container .grid-item-footer-buttons, .footer-container .grid-item-footer-legal {
    text-align: right;
  }

  .footer-container .grid-item-footer-social {
    justify-content: flex-end;
    align-items: flex-end;
    display: flex;
  }
}

.footer .footer-nav, ul.footer-nav {
  gap: var(--gap-2);
  flex-direction: column;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
}

.footer .footer-nav li, ul.footer-nav li {
  display: block;
}

@media (min-width: 768px) {
  .footer .footer-nav, ul.footer-nav {
    gap: var(--gap-4);
    flex-wrap: wrap;
    flex-direction: row !important;
  }
}

.grid-item-footer-brand img {
  max-width: 200px;
}

.frame-radius-basic {
  border-radius: var(--radius-2);
  overflow: hidden;
}

.frame-radius-diagonal img {
  border-radius: var(--radius-1);
  overflow: hidden;
}

.frame-radius-round {
  aspect-ratio: 1;
  border-radius: 50%;
  max-width: 300px;
  overflow: hidden;
}

.frame-img-radius-round img {
  border-radius: var(--radius-3);
  overflow: hidden;
}

.frame-padding {
  padding: var(--gap-6);
}

@media (min-width: 768px) {
  .frame-padding {
    padding: var(--gap-8);
  }
}

.frame-vertical {
  flex-direction: column;
  justify-content: center;
  height: 100%;
  display: flex;
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}
