/* OPIK Offline-Kopie: gemeinsame CSS-Regeln, identisch auf allen Seiten (aus dem urspruenglich pro Seite wiederholten "frozen-runtime-css"-Block extrahiert). */
@media (min-width: 0px) {
      .css-3lucb6 {
        display: none;
      }
    }
html {
      -webkit-font-smoothing: antialiased;
      box-sizing: border-box;
      text-size-adjust: 100%;
      scrollbar-gutter: stable;
    }
.css-1ptre1w.MuiButton-loading {
      color: transparent;
    }
.css-w3729.Mui-disabled {
      color: rgba(0, 0, 0, 0.26);
    }
@media print {
      .css-vme3x1 {
        print-color-adjust: exact;
      }
    }
.css-1gset9g.MuiButton-loading {
      color: transparent;
    }
a:hover {
      text-decoration: none;
    }
@media (hover: hover) {
      .css-w3729:hover {
        --variant-containedBg: rgb(16, 16, 18);
        --variant-textBg: rgba(24, 24, 26, 0.04);
        --variant-outlinedBorder: #18181A;
        --variant-outlinedBg: rgba(24, 24, 26, 0.04);
      }
    }
.css-vme3x1:hover {
      text-decoration: none;
    }
body,
    html {
      height: 100%;
      width: 100%;
    }
.ui.active.dimmer.cookie-content .ui.toggle.checkbox label::after {
      height: 1.2rem;
      top: 0.15rem;
      width: 1.2rem;
    }
@media (hover: hover) {
      .css-1ptre1w:hover {
        --variant-containedBg: rgb(16, 16, 18);
        --variant-textBg: rgba(24, 24, 26, 0.04);
        --variant-outlinedBorder: #18181A;
        --variant-outlinedBg: rgba(24, 24, 26, 0.04);
      }
    }
.css-is59hz {
      padding: 16px;
      margin: 32px auto auto;
      max-width: 1875px;
      display: flex;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      justify-content: space-between;
    }
body::backdrop {
      background-color: rgb(255, 255, 255);
    }
.css-w3729.MuiButton-loading {
      color: transparent;
    }
.css-vme3x1 {
      display: inline-flex;
      -webkit-box-align: center;
      align-items: center;
      -webkit-box-pack: center;
      justify-content: center;
      position: relative;
      box-sizing: border-box;
      -webkit-tap-highlight-color: transparent;
      outline: 0px;
      margin: 0px;
      cursor: pointer;
      user-select: none;
      vertical-align: middle;
      appearance: none;
      text-decoration: none;
      font-family: KHTeka;
      font-weight: 500;
      font-size: 0.875rem;
      line-height: 1.75;
      text-transform: uppercase;
      border: 0px;
      color: var(--variant-textColor);
      background-color: var(--variant-textBg);
      --variant-textColor: #18181A;
      --variant-outlinedColor: #18181A;
      --variant-outlinedBorder: rgba(24, 24, 26, 0.5);
      --variant-containedColor: #fff;
      --variant-containedBg: #18181A;
      transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1), border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
      border-radius: 0px;
      min-width: 0px;
      padding: 0px;
    }
@media (hover: hover) {
      .css-1gset9g:hover {
        --variant-containedBg: rgb(16, 16, 18);
        --variant-textBg: rgba(24, 24, 26, 0.04);
        --variant-outlinedBorder: #18181A;
        --variant-outlinedBg: rgba(24, 24, 26, 0.04);
      }
    }
.css-1ezy7oj {
      margin: 0px;
      font-family: KHTekaPro;
      font-weight: 300;
      font-size: 18px;
      line-height: 24px;
      text-decoration: none;
    }
.css-vme3x1.MuiButton-loading {
      color: transparent;
    }
@media (min-width: 600px) {
      .css-17cpte8 {
        margin-top: 0px;
        text-align: right;
      }
    }
.ui.active.dimmer.cookie-content .accordion .title h4 {
      font-size: 18px;
      margin: 0px;
    }
@-webkit-keyframes animation-1o38n3e {
      0% {
        stroke-dasharray: 1px, 200px;
        stroke-dashoffset: 0;
      }

      50% {
        stroke-dasharray: 100px, 200px;
        stroke-dashoffset: -15px;
      }

      100% {
        stroke-dasharray: 1px, 200px;
        stroke-dashoffset: -126px;
      }
    }
@media print {
      body {
        background-color: rgb(255, 255, 255);
      }
    }
.cookie-icon img {
      height: auto;
      left: 50%;
      position: absolute;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 60%;
    }
.css-w3729:hover {
      text-decoration: none;
    }
.css-o9b79t {
      list-style: none;
    }
.ui.active.dimmer.cookie-content .active.title i.icon {
      transform: rotate(90deg);
    }
.css-1lm3bqa {
      display: flex;
      flex-direction: row;
      margin-right: 16px;
      -webkit-box-align: center;
      align-items: center;
    }
.css-1ptre1w:hover {
      text-decoration: none;
    }
.css-13odlrs {
      stroke: currentcolor;
      stroke-dasharray: 80px, 200px;
      stroke-dashoffset: 0;
      animation: 1.4s ease-in-out 0s infinite normal none running animation-1o38n3e;
    }
.cookie-icon {
      animation: 2.5s ease 0s infinite alternate none running bounceIcon;
      background-color: rgb(24, 24, 26);
      border-radius: 50%;
      bottom: 24px;
      cursor: pointer;
      height: 38px;
      position: fixed;
      right: 12px;
      width: 38px;
      z-index: 999;
    }
*,
    ::before,
    ::after {
      box-sizing: inherit;
    }
.css-w3729 {
      font-family: KHTeka;
      font-weight: 500;
      font-size: 0.875rem;
      line-height: 1.75;
      text-transform: uppercase;
      border: 0px;
      color: var(--variant-textColor);
      background-color: var(--variant-textBg);
      --variant-textColor: #18181A;
      --variant-outlinedColor: #18181A;
      --variant-outlinedBorder: rgba(24, 24, 26, 0.5);
      --variant-containedColor: #fff;
      --variant-containedBg: #18181A;
      transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1), border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
      border-radius: 0px;
      min-width: 0px;
      padding: 0px;
    }
a {
      color: rgb(24, 24, 26);
    }
.css-1ezy7oj:hover {
      text-decoration: underline;
    }
.css-171ykj0 {
      -webkit-box-flex: 1;
      flex-grow: 1;
      padding: 0px;
      margin: 0px;
    }
.css-1gset9g.Mui-disabled {
      color: rgba(0, 0, 0, 0.26);
    }
@media (min-width: 0px) {
      .css-17cpte8 {
        margin-top: 80px;
      }
    }
.css-1gset9g.Mui-disabled {
      pointer-events: none;
      cursor: default;
    }
.css-1gset9g:hover {
      text-decoration: none;
    }
.css-tph8jr {
      margin: 16px 0px 0px;
      font-family: KHTeka;
      line-height: 24px;
      font-size: 16px;
      font-weight: 300;
    }
.css-1uygidu {
      height: 100vh;
      display: flex;
      -webkit-box-align: center;
      align-items: center;
      -webkit-box-pack: center;
      justify-content: center;
    }
.css-1gset9g {
      display: inline-flex;
      -webkit-box-align: center;
      align-items: center;
      -webkit-box-pack: center;
      justify-content: center;
      position: relative;
      box-sizing: border-box;
      -webkit-tap-highlight-color: transparent;
      outline: 0px;
      margin: 0px;
      cursor: pointer;
      user-select: none;
      vertical-align: middle;
      appearance: none;
      text-decoration: none;
      font-family: KHTeka;
      font-weight: 500;
      font-size: 0.875rem;
      line-height: 1.75;
      text-transform: uppercase;
      border: 0px;
      color: var(--variant-textColor);
      background-color: var(--variant-textBg);
      --variant-textColor: #18181A;
      --variant-outlinedColor: #18181A;
      --variant-outlinedBorder: rgba(24, 24, 26, 0.5);
      --variant-containedColor: #fff;
      --variant-containedBg: #18181A;
      transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1), border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
      border-radius: 0px;
      padding: 0px;
      min-width: 0px;
    }
@media print {
      .css-1gset9g {
        print-color-adjust: exact;
      }
    }
body {
      margin: 0px;
      color: rgba(0, 0, 0, 0.87);
      font-family: KHTeka;
      font-weight: 300;
      font-size: 18px;
      line-height: 24px;
      background-color: rgb(255, 255, 255);
    }
.css-vme3x1.Mui-disabled {
      pointer-events: none;
      cursor: default;
    }
.css-190jfzj {
      display: inline-block;
      animation: 1.4s linear 0s infinite normal none running animation-61bdi0;
      color: rgb(24, 24, 26);
    }
.ui.active.dimmer.cookie-content .accordion .title {
      align-items: center;
      color: var(--primaryColor);
      display: flex;
    }
@keyframes animation-61bdi0 {
      0% {
        transform: rotate(0deg);
      }

      100% {
        transform: rotate(360deg);
      }
    }
.css-t6exwh {
      padding-top: 8px;
      padding-bottom: 8px;
      list-style: none;
    }
.css-1ptre1w.Mui-disabled {
      color: rgba(0, 0, 0, 0.26);
    }
.cookie-content .ui.button.btn-oultine:hover {
      background-color: rgb(from var(--primaryColor) r g b/25%);
      color: var(--primaryColor);
    }
@media (hover: hover) {
      .css-vme3x1:hover {
        --variant-containedBg: rgb(16, 16, 18);
        --variant-textBg: rgba(24, 24, 26, 0.04);
        --variant-outlinedBorder: #18181A;
        --variant-outlinedBg: rgba(24, 24, 26, 0.04);
      }
    }
@-webkit-keyframes animation-61bdi0 {
      0% {
        transform: rotate(0deg);
      }

      100% {
        transform: rotate(360deg);
      }
    }
.ui.active.dimmer.cookie-content {
      justify-content: end;
    }
.css-4ejps8 {
      display: block;
    }
@media (min-width: 1200px) {
      .css-3lucb6 {
        display: block;
      }
    }
.css-vme3x1.Mui-disabled {
      color: rgba(0, 0, 0, 0.26);
    }
body {
      margin: 0px;
      padding: 0px;
    }
strong,
    b {
      font-weight: 700;
    }
.css-3lucb6 {
      padding: 0px;
      margin: 0px;
    }
.cookie-content .ui.button.btn-oultine,
    .cookie-content .ui.button.btn-oultine:active,
    .cookie-content .ui.button.btn-oultine:focus {
      background-color: initial;
      border: 1px solid var(--primaryColor);
      color: var(--primaryColor);
    }
.css-1ptre1w {
      font-family: KHTeka;
      font-weight: 500;
      font-size: 0.875rem;
      line-height: 1.75;
      text-transform: uppercase;
      border: 0px;
      color: var(--variant-textColor);
      background-color: var(--variant-textBg);
      --variant-textColor: #18181A;
      --variant-outlinedColor: #18181A;
      --variant-outlinedBorder: rgba(24, 24, 26, 0.5);
      --variant-containedColor: #fff;
      --variant-containedBg: #18181A;
      transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1), border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
      border-radius: 0px;
      padding: 0px;
      min-width: 0px;
    }
@keyframes animation-1o38n3e {
      0% {
        stroke-dasharray: 1px, 200px;
        stroke-dashoffset: 0;
      }

      50% {
        stroke-dasharray: 100px, 200px;
        stroke-dashoffset: -15px;
      }

      100% {
        stroke-dasharray: 1px, 200px;
        stroke-dashoffset: -126px;
      }
    }

/* --- Mobile-Fixes (Claude, 2026-08-27) --- */

/* 1) Hauptueberschriften (h2-Typografie, ueberall 52.5px) auf kleinen Screens verkleinern */
@media (max-width: 480px) {
  .css-1s76ou2, .css-bvjaqx, .css-smzyhi, .css-voyzdn {
    font-size: 42.5px !important;
  }
}

/* 3) Zweispaltige "Kaesten" (Text + Icon), die per MuiGrid2-wrap-xs-nowrap erzwungenermassen
   nebeneinander bleiben, sollen ab 768px Breite untereinander springen. */
@media (max-width: 767px) {
  .css-1wfgih2 {
    flex-wrap: wrap !important;
  }
}

/* 4) Lange Woerter in Hauptueberschriften (.css-voyzdn) sollen per Silbentrennung
   umbrechen koennen, statt den Container zu sprengen - unabhaengig von der Viewport-Breite. */
.css-voyzdn {
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

/* 5) "Connection matters"-Hero (Startseite): unterhalb 600px lag der Text ohne
   Abstand am linken Rand. Padding auf die Textelemente selbst (nicht auf die
   Wrapper-Divs), damit der volle farbige Balken (100vw) weiterhin bis an den
   Rand reicht und nur die Schrift eingerueckt wird. */
@media (max-width: 599px) {
  .css-smzyhi, .css-bvjaqx {
    padding-left: 16px;
  }
}

/* 6) Radio-Buttons (z.B. Anrede Frau/Mann/Divers im Kuendigungsformular): das
   Original-React-Bundle wuerde beim Anklicken die Klasse "Mui-checked" setzen
   und damit den gefuellten Kreis einblenden - in der statischen Kopie passiert
   das nie, da kein React-Runtime laeuft. Stattdessen ueber :checked direkt am
   nativen <input type="radio"> steuern, damit die Auswahl sichtbar wird. */
input[type="radio"]:checked ~ span svg[data-testid="RadioButtonCheckedIcon"] {
  transform: scale(1) !important;
}
input[type="radio"]:checked ~ span {
  color: rgb(24, 24, 26);
}
