@charset "UTF-8";
/*!
Theme Name: Inno Pro
Description: Hybrid-WordPress-Theme using theme.json
Author: Innoside Web Solutions, Thomas Schreiber
Author Uri: https://innoside.at/
Theme Uri: https://innoside.at/
Version: 1.0
Requires at least: 6.0
Requires PHP: > 8.2
Text-Domain: tsc
 */
@font-face {
  font-family: "flaticon_starter_theme";
  src: url("assets/fonts/flaticon/flaticon_starter_theme.woff2") format("woff2"), url("assets/fonts/flaticon/flaticon_starter_theme.woff") format("woff"), url("assets/fonts/flaticon/flaticon_starter_theme.ttf") format("truetype"), url("assets/fonts/flaticon/flaticon_starter_theme.eot") format("embedded-opentype"), url("assets/fonts/flaticon/flaticon_starter_theme.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
i[class^=flaticon-]::before,
i[class*=" flaticon-"]::before,
[class^=flaticon-]::before,
[class*=" flaticon-"]::before,
[class^=flaticon-],
[class*=" flaticon-"] {
  font-family: "flaticon_starter_theme" !important;
  speak: never;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.flaticon-facebook-app-symbol::before {
  content: "\f101";
}

.flaticon-instagram::before {
  content: "\f102";
}

.flaticon-linkedin::before {
  content: "\f103";
}

.flaticon-mail::before {
  content: "\f104";
}

.flaticon-telephone::before {
  content: "\f105";
}

.flaticon-check::before {
  content: "\f106";
}

.flaticon-right-arrow::before {
  content: "\f107";
}

.flaticon-left-arrow::before {
  content: "\f108";
}

.flaticon-arrow-down-sign-to-navigate::before {
  content: "\f109";
}

.flaticon-up-arrow::before {
  content: "\f10a";
}

.flaticon-youtube::before {
  content: "\f10b";
}

.flaticon-maps-and-flags::before {
  content: "\f10c";
}

.flaticon-whatsapp::before {
  content: "\f10d";
}

.flaticon-signal::before {
  content: "\f10e";
}

.flaticon-twitter::before {
  content: "\f10f";
}

.flaticon-wall-clock::before {
  content: "\f110";
}

.flaticon-pdf-file::before {
  content: "\f111";
}

.flaticon-download::before {
  content: "\f112";
}

.flaticon-calendar::before {
  content: "\f113";
}

.flaticon-calendar-1::before {
  content: "\f114";
}

.flaticon-next::before {
  content: "\f115";
}

.flaticon-back::before {
  content: "\f116";
}

.flaticon-next-1::before {
  content: "\f117";
}

.flaticon-forward::before {
  content: "\f118";
}

.flaticon-back-1::before {
  content: "\f119";
}

.flaticon-previous::before {
  content: "\f11a";
}

.flaticon-checked::before {
  content: "\f11b";
}

.flaticon-check-1::before {
  content: "\f11c";
}

.flaticon-check-2::before {
  content: "\f11d";
}

@media (max-width: 1599px) {
  :root {
    --wp--preset--spacing--10: calc(1rem / 1.25);
    --wp--preset--spacing--20: calc(2rem / 1.25);
    --wp--preset--spacing--30: calc(3rem / 1.25);
    --wp--preset--spacing--40: calc(4rem / 1.25);
    --wp--preset--spacing--50: calc(5rem / 1.25);
    --wp--preset--spacing--60: calc(6rem / 1.25);
    --wp--preset--spacing--70: calc(7rem / 1.25);
    --wp--preset--spacing--80: calc(8rem / 1.25);
    --wp--preset--spacing--90: calc(9rem / 1.25);
    --wp--preset--spacing--100: calc(10rem / 1.25);
  }
}
@media (max-width: 1399px) {
  :root {
    --wp--preset--spacing--10: calc(1rem / 1.5);
    --wp--preset--spacing--20: calc(2rem / 1.5);
    --wp--preset--spacing--30: calc(3rem / 1.5);
    --wp--preset--spacing--40: calc(4rem / 1.5);
    --wp--preset--spacing--50: calc(5rem / 1.5);
    --wp--preset--spacing--60: calc(6rem / 1.5);
    --wp--preset--spacing--70: calc(7rem / 1.5);
    --wp--preset--spacing--80: calc(8rem / 1.5);
    --wp--preset--spacing--90: calc(9rem / 1.5);
    --wp--preset--spacing--100: calc(10rem / 1.5);
  }
}
@media (max-width: 1199px) {
  :root {
    --wp--preset--spacing--10: calc(1rem / 2);
    --wp--preset--spacing--20: calc(2rem / 2);
    --wp--preset--spacing--30: calc(3rem / 2);
    --wp--preset--spacing--40: calc(4rem / 2);
    --wp--preset--spacing--50: calc(5rem / 2);
    --wp--preset--spacing--60: calc(6rem / 2);
    --wp--preset--spacing--70: calc(7rem / 2);
    --wp--preset--spacing--80: calc(8rem / 2);
    --wp--preset--spacing--90: calc(9rem / 2);
    --wp--preset--spacing--100: calc(10rem / 2);
  }
}
@media (max-width: 992px) {
  :root {
    --wp--preset--spacing--10: 25px;
    --wp--preset--spacing--20: 25px;
    --wp--preset--spacing--30: 30px;
    --wp--preset--spacing--40: 20px;
    --wp--preset--spacing--50: 30px;
    --wp--preset--spacing--60: 30px;
    --wp--preset--spacing--70: 35px;
    --wp--preset--spacing--80: 35px;
    --wp--preset--spacing--90: 40px;
    --wp--preset--spacing--100: 40px;
  }
}
@media (max-width: 781px) {
  :root {
    --wp--preset--spacing--10: calc(50px / 2);
    --wp--preset--spacing--20: calc(50px / 2);
    --wp--preset--spacing--30: calc(50px / 2);
    --wp--preset--spacing--40: calc(50px / 2);
    --wp--preset--spacing--50: calc(50px / 2);
    --wp--preset--spacing--60: calc(50px / 1.5);
    --wp--preset--spacing--70: calc(50px / 1.5);
    --wp--preset--spacing--80: calc(50px / 1.5);
    --wp--preset--spacing--90: calc(50px/ 1.5);
    --wp--preset--spacing--100: 50px;
  }
}
@media (max-width: 400px) {
  :root {
    --wp--preset--spacing--10: 2px;
    --wp--preset--spacing--20: 4px;
    --wp--preset--spacing--30: 6px;
    --wp--preset--spacing--40: 8px;
    --wp--preset--spacing--50: 10px;
    --wp--preset--spacing--60: 12px;
    --wp--preset--spacing--70: 14px;
    --wp--preset--spacing--80: 16px;
    --wp--preset--spacing--90: 18px;
    --wp--preset--spacing--100: 20px;
  }
}

@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-700italic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-900.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-v24-latin-900italic.woff2") format("woff2");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.5;
  scroll-behavior: smooth;
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 17.1px;
  }
}
html {
  overflow-x: hidden;
}

body {
  margin: 0;
  background-color: var(--wp--preset--color--base-bg);
  padding-top: 60px !important;
  overflow-x: hidden;
  position: relative;
}
@media (min-width: 1200px) {
  body {
    padding-top: 80px !important;
  }
}

body {
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 400;
  color: var(--wp--preset--color--base);
}

b, strong {
  font-weight: 600;
}

.has-background h1, .has-background h2, .has-background h3, .has-background h4, .has-background h5, .has-background h6 {
  color: var(--wp--preset--color--primary);
}

.has-darken-background h1, .has-darken-background h2, .has-darken-background h3, .has-darken-background h4, .has-darken-background h5, .has-darken-background h6 {
  color: var(--wp--preset--color--base-bg);
}

.has-text-color h1, .has-text-color h2, .has-text-color h3, .has-text-color h4, .has-text-color h5, .has-text-color h6 {
  color: inherit;
}

/*
.has-2-rem-font-size{
  font-size: clamp(1.25rem, calc(1rem + 2.5vw), 2rem) !important;
}
.has-2-5-rem-font-size{
  font-size: clamp(1.5rem, calc(1rem + 2.5vw), 2.5rem) !important;
}
.has-3-rem-font-size{
  font-size: clamp(2rem, calc(1rem + 2.5vw), 3rem) !important;
}
*/
h1, h2, h3, h4, h5, h6,
.is-style-h1,
.is-style-h2,
.is-style-h3 {
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 700;
  color: var(--wp--preset--color--primary);
  line-height: 1.1;
  position: relative;
}

h1 {
  font-size: clamp(2rem, 5vw, 3.25rem);
  line-height: 1.2;
}

.is-style-h1 {
  font-size: clamp(2rem, 5vw, 3.25rem) !important;
  line-height: 1.2;
}

h2:not(.post-title) {
  font-size: clamp(1.7rem, 4vw, 2.25rem);
  line-height: 1.2;
}

.is-style-h2 {
  font-size: clamp(1.7rem, 4vw, 2.25rem) !important;
  line-height: 1.3;
}

h3 {
  font-size: clamp(1.25rem, 3vw, 1.625rem);
  line-height: 1.3;
}

.is-style-h3 {
  font-size: clamp(1.25rem, 3vw, 1.625rem) !important;
  line-height: 1.3;
}

h4:not(.post-title) {
  font-size: clamp(1.125rem, 2vw, 1.25rem);
  line-height: 1.3;
}

h5 {
  font-size: 1rem;
}

h6 {
  font-size: 0.8rem;
}

a {
  color: var(--wp--preset--color--secondary);
  -webkit-transition: all 250ms linear;
  transition: all 250ms linear;
  text-decoration: none;
}
a:hover {
  color: var(--wp--preset--color--primary);
}
a:active {
  background-color: rgba(var(--wp--preset--color--base), 0.3);
}
a.more-link {
  display: inline-block;
}

/*!
Theme Name: Inno Pro
Description: Hybrid-WordPress-Theme using theme.json
Author: Innoside Web Solutions, Thomas Schreiber
Author Uri: https://innoside.at/
Theme Uri: https://innoside.at/
Version: 1.0
Requires at least: 6.0
Requires PHP: > 8.2
Text-Domain: tsc
 */
ul li::marker {
  color: var(--wp--preset--color--primary);
}

ul.is-style-highlights {
  list-style-type: none;
  padding: 0;
  padding-top: 1em;
}
ul.is-style-highlights li {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 0.4em;
}
ul.is-style-highlights li:before {
  font-family: "flaticon_starter_theme" !important;
  speak: never;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f107";
  color: var(--wp--preset--color--primary);
  position: absolute;
  font-size: 0.5em;
  top: 0.95em;
  left: 0;
}

ul.is-style-check {
  list-style-type: none;
  padding: 0;
  padding-top: 1em;
}
ul.is-style-check li {
  position: relative;
  padding-left: 1.4em;
  margin-bottom: 0.4em;
}
ul.is-style-check li:before {
  font-family: "flaticon_starter_theme" !important;
  speak: never;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f106";
  color: var(--wp--preset--color--primary);
  position: absolute;
  font-size: 1.1em;
  top: 0.2em;
  left: 0;
}

#page-footer ul.is-style-highlights li:before,
#page-footer ul.is-style-check li:before {
  color: #fff;
}

/***
* AUTO COLOR LISTS
*/
ul.has-lighted-color li::marker,
.has-lighted-color ul li::marker {
  color: var(--wp--preset--color--lighted) !important;
}
ul.has-lighted-color li:before,
.has-lighted-color ul li:before {
  color: var(--wp--preset--color--lighted) !important;
}

ul.has-base-bg-color li::marker,
.has-base-bg-color ul li::marker {
  color: var(--wp--preset--color--base-bg) !important;
}
ul.has-base-bg-color li:before,
.has-base-bg-color ul li:before {
  color: var(--wp--preset--color--base-bg) !important;
}

ul.has-secondary-background-color li::marker,
.has-secondary-background-color ul li::marker {
  color: var(--wp--preset--color--primary) !important;
}
ul.has-secondary-background-color li:before,
.has-secondary-background-color ul li:before {
  color: var(--wp--preset--color--primary) !important;
}

ul.has-primary-background-color li::marker,
.has-primary-background-color ul li::marker {
  color: var(--wp--preset--color--secondary) !important;
}
ul.has-primary-background-color li:before,
.has-primary-background-color ul li:before {
  color: var(--wp--preset--color--secondary) !important;
}

.nav-menu,
.sub-menu {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.js #primary-nav {
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
}
@media (min-width: 1200px) {
  .js #primary-nav .nav-menu > li > .sub-menu {
    -webkit-transition: opacity 200ms;
    transition: opacity 200ms;
  }
}
.js #primary-nav .nav-menu > li > .sub-menu li {
  -webkit-transition: height 200ms linear, -webkit-transform 200ms linear;
  transition: height 200ms linear, -webkit-transform 200ms linear;
  transition: transform 200ms linear, height 200ms linear;
  transition: transform 200ms linear, height 200ms linear, -webkit-transform 200ms linear;
}

#navbar:not(.full-size-pageheader-menu) {
  background-color: #fff !important;
}

#navbar.lighted:not(.full-size-pageheader-menu) {
  background-color: #fff !important;
}

#navbar {
  font-family: var(--wp--preset--font-family--primary) !important;
  font-weight: 700 !important;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 900;
  height: 60px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 5%;
  padding-left: 5%;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 1200px) {
  #navbar {
    padding-right: 5%;
    padding-left: 5%;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: fixed;
    top: 0;
    left: 0;
    background-color: transparent;
    font-weight: 700 !important;
    height: 80px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  #navbar.full-size-pageheader-menu.lighted .nav-menu > li > a {
    color: #fff !important;
  }
  #navbar.full-size-pageheader-menu.lighted #primary-nav ul.links i {
    color: #fff !important;
  }
  #navbar.full-size-pageheader-menu:not(.lighted) {
    background-color: #fff;
  }
}
@media (min-width: 1920px) {
  #navbar {
    padding-right: 5%;
    padding-left: 5%;
  }
}

@media (min-width: 783px) {
  .admin-bar #navbar,
  .admin-bar #navbar {
    top: 32px;
  }
}
.admin-bar #navbar,
.admin-bar #navbar {
  /*   @media (min-width: vars.$breakpoint-nav) {
       .sub-menu {
         top: 112px !important;
       }
     }*/
}

.brand,
.brand-lighted,
.brand-mobile {
  position: relative;
  top: 8px;
  z-index: 1000000000000000000000000000000000;
}
@media (min-width: 1200px) {
  .brand,
  .brand-lighted,
  .brand-mobile {
    top: 8px;
    z-index: 1000000000000000000000000000000000;
  }
}
.brand a,
.brand-lighted a,
.brand-mobile a {
  display: block;
}
@media (min-width: 1200px) {
  .brand a,
  .brand-lighted a,
  .brand-mobile a {
    padding-top: 5px;
  }
}
.brand a img,
.brand a svg,
.brand-lighted a img,
.brand-lighted a svg,
.brand-mobile a img,
.brand-mobile a svg {
  width: auto;
  height: 70px;
}
@media (min-width: 1200px) {
  .brand a img,
  .brand a svg,
  .brand-lighted a img,
  .brand-lighted a svg,
  .brand-mobile a img,
  .brand-mobile a svg {
    height: 100px !important;
  }
}

#navbar .brand,
#navbar .brand-lighted {
  display: none;
}
@media (min-width: 1200px) {
  #navbar .brand-mobile {
    display: none;
  }
}
@media (min-width: 1200px) {
  #navbar .brand {
    display: block;
  }
  #navbar .brand-mobile {
    display: none;
  }
  #navbar .brand-lighted {
    display: none;
  }
  #navbar.full-size-pageheader-menu.lighted .brand-mobile {
    display: none;
  }
  #navbar.full-size-pageheader-menu.lighted .brand {
    display: none;
  }
  #navbar.full-size-pageheader-menu.lighted .brand-lighted {
    display: block;
  }
}

@media (min-width: 1200px) {
  #navbar.hide-menu {
    top: -150px;
    -webkit-transition: 0.8s all ease-in-out;
    transition: 0.8s all ease-in-out;
  }
}
#menu-button {
  border: none;
  outline: none;
  display: block;
  height: 60px;
  cursor: pointer;
  z-index: 2000;
  background-color: transparent;
}
@media (min-width: 1200px) {
  #menu-button {
    display: none;
  }
}
#menu-button .sign {
  /* bg image buttom */
  /* classic burger button */
  background-color: var(--wp--preset--color--darken);
  height: 2px;
  display: block;
  width: 30px;
  top: 0;
  right: 5px;
  position: relative;
  margin: 15px 0 15px 20px;
  border-radius: 2px;
  -webkit-transition: background-color 200ms linear, -webkit-transform 300ms linear;
  transition: background-color 200ms linear, -webkit-transform 300ms linear;
  transition: background-color 200ms linear, transform 300ms linear;
  transition: background-color 200ms linear, transform 300ms linear, -webkit-transform 300ms linear;
}
#menu-button .sign:before, #menu-button .sign:after {
  content: "";
  display: block;
  height: 2px;
  border-radius: 2px;
  position: absolute;
  right: 0;
  -webkit-transition: -webkit-transform 300ms linear;
  transition: -webkit-transform 300ms linear;
  transition: transform 300ms linear;
  transition: transform 300ms linear, -webkit-transform 300ms linear;
  /* image button */
  /* classic menu button */
  background-color: var(--wp--preset--color--darken);
}
#menu-button .sign:before {
  width: 30px;
  /* classic menu button */
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px);
  /* image button */
}
#menu-button .sign:after {
  width: 30px;
  /* classic menu button */
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
  /* image button */
}

/* Offen-Zustand des Menüs per Button */
#menu-button[aria-expanded=true] ~ #primary-nav {
  opacity: 1;
  pointer-events: auto;
  left: 0;
  height: 100vh;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

/* Burger → X Animation beim geöffneten Zustand */
#menu-button[aria-expanded=true] .sign {
  background-color: transparent;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}

#menu-button[aria-expanded=true] .sign::before {
  -webkit-transform: translateY(5px) rotate(-45deg);
          transform: translateY(5px) rotate(-45deg);
  background-color: var(--wp--preset--color--darken);
  width: 28px;
}

#menu-button[aria-expanded=true] .sign::after {
  -webkit-transform: translateY(5px) rotate(45deg);
          transform: translateY(5px) rotate(45deg);
  background-color: var(--wp--preset--color--darken);
  width: 28px;
}

/* Button-Grundlayout bleibt unverändert */
.menu-toggle {
  outline: none;
  border: none;
  position: absolute;
  right: 1em;
  top: 1px;
  padding: 25px 11px 24px;
  cursor: pointer;
  background-color: rgba(var(--wp--preset--color--darken), 0);
  -webkit-transition: background-color 250ms linear;
  transition: background-color 250ms linear;
}
@media (min-width: 1200px) {
  .menu-toggle {
    display: none;
    padding: 3em 11px 24px;
  }
}
.menu-toggle em {
  display: block;
  position: relative;
  width: 28px;
  height: 0;
}
.menu-toggle em:before, .menu-toggle em:after {
  content: "";
  display: block;
  height: 2px;
  width: 10px;
  position: absolute;
  -webkit-transition: -webkit-transform 200ms linear;
  transition: -webkit-transform 200ms linear;
  transition: transform 200ms linear;
  transition: transform 200ms linear, -webkit-transform 200ms linear;
  background-color: var(--wp--preset--color--darken);
}
.menu-toggle em::before {
  left: 0;
  -webkit-transform: rotate(45deg) translateY(-8px);
          transform: rotate(45deg) translateY(-8px);
}
.menu-toggle em:after {
  right: 0;
  -webkit-transform: rotate(-45deg) translateY(-8px);
          transform: rotate(-45deg) translateY(-8px);
}

/* NEU: Wenn das Untermenü geöffnet ist → Linien gerade stellen */
.menu-toggle[aria-expanded=true] em::before,
.menu-toggle[aria-expanded=true] em::after {
  -webkit-transform: rotate(0) translateY(-2px);
          transform: rotate(0) translateY(-2px);
  width: 11px;
}

/* Untermenü geöffnet → Linien gerade, zu einer Linie verbunden */
.menu-toggle[aria-expanded=true] em::before,
.menu-toggle[aria-expanded=true] em::after {
  width: 10px;
  -webkit-transform: rotate(0) translateY(-2px);
          transform: rotate(0) translateY(-2px);
}

.menu-toggle[aria-expanded=true] em::before {
  left: 4px;
}

.menu-toggle[aria-expanded=true] em::after {
  right: 4px;
}

#primary-nav {
  position: fixed;
  top: 60px;
  width: 100%;
  left: 0;
  height: 0;
  overflow-y: auto;
  background-color: #fff;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  z-index: 1000;
}
#primary-nav ul.links {
  margin: 3rem 0 0;
  padding: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--wp--preset--color--darken);
}
#primary-nav ul.links li {
  padding: 1rem;
}
#primary-nav ul.links li a i {
  color: var(--wp--preset--color--base-bg);
  font-size: 1.5rem;
}
@media (min-width: 1200px) {
  #primary-nav ul.links {
    position: relative;
    height: 80px;
    margin: 0 0 0 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.7rem;
    background-color: transparent;
  }
  #primary-nav ul.links li {
    padding: 0.5rem;
  }
  #primary-nav ul.links li a i {
    font-size: 0.9rem;
    color: var(--wp--preset--color--darken);
  }
}
@media only screen and (min-width: 768px) {
  #primary-nav {
    width: 50%;
  }
}
@media (min-width: 1200px) {
  #primary-nav {
    width: 100%;
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: 80px;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
#primary-nav .menu-widget-right {
  padding: 1rem 0 0 2.5rem;
}
#primary-nav .menu-widget-left {
  padding: 0 0 0 2.5rem;
}
@media (min-width: 1200px) {
  #primary-nav .menu-widget-right,
  #primary-nav .margin-block-left {
    padding: 0;
  }
  #primary-nav .menu-widget-right h1, #primary-nav .menu-widget-right h2, #primary-nav .menu-widget-right h3, #primary-nav .menu-widget-right h4, #primary-nav .menu-widget-right p,
  #primary-nav .margin-block-left h1,
  #primary-nav .margin-block-left h2,
  #primary-nav .margin-block-left h3,
  #primary-nav .margin-block-left h4,
  #primary-nav .margin-block-left p {
    margin: 0 !important;
  }
}
#primary-nav .nav-menu {
  padding: 1rem 1rem 2rem 2.5rem;
}
@media (min-width: 768px) {
  #primary-nav .nav-menu {
    padding: 2em 50px;
  }
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu {
    display: inline-block;
    padding: 0;
    margin-top: 0;
  }
}
#primary-nav .nav-menu li, #primary-nav .nav-menu a {
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
#primary-nav .nav-menu a {
  display: block;
  text-decoration: none;
}
#primary-nav .nav-menu li {
  position: relative;
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu li {
    white-space: nowrap;
  }
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li {
    display: inline-block;
    border: none;
    background-color: transparent;
    margin-right: 1.5em;
  }
  #primary-nav .nav-menu > li:last-of-type {
    margin-right: 0;
  }
}
#primary-nav .nav-menu > li > a {
  position: relative;
  height: 40px;
  line-height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  font-weight: 700;
  color: var(--wp--preset--color--darken);
}
#primary-nav .nav-menu > li > a:active {
  color: var(--wp--preset--color--primary);
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 80px;
    line-height: 80px;
    font-size: 13px;
    font-weight: 700;
    color: var(--wp--preset--color--darken);
  }
  #primary-nav .nav-menu > li > a:after {
    content: "";
    position: absolute;
    bottom: 22px;
    left: 0;
    width: 0;
    height: 4px;
    background: transparent;
    -webkit-transition: top 0.22s linear, width 0.42s ease-in, left 0.4s ease-in;
    transition: top 0.22s linear, width 0.42s ease-in, left 0.4s ease-in;
  }
  #primary-nav .nav-menu > li > a:hover {
    color: var(--wp--preset--color--secondary);
  }
  #primary-nav .nav-menu > li > a:hover:after {
    width: 75%;
    background: linear-gradient(106deg, rgb(55, 183, 255) 0%, rgb(55, 183, 255) 0%, rgb(143, 97, 197) 70%, rgb(241, 0, 131) 100%);
  }
}
#primary-nav .nav-menu > li:last-child a {
  position: relative;
  background-color: var(--wp--preset--color--primary) !important;
  color: #fff !important;
  height: 3rem;
  line-height: 3rem;
  border-radius: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 20px;
  text-decoration: none;
  font-weight: bold;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  z-index: 0;
}
#primary-nav .nav-menu > li:last-child a:after {
  content: unset;
}
#primary-nav .nav-menu > li:last-child a:hover {
  opacity: 0.7;
}
#primary-nav .nav-menu > li.current-menu-item > a {
  color: var(--wp--preset--color--primary);
  font-weight: 700;
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li.current-menu-item > a {
    color: var(--wp--preset--color--secondary);
    font-weight: 700;
  }
  #primary-nav .nav-menu > li.current-menu-item > a:hover {
    color: var(--wp--preset--color--secondary);
  }
  #primary-nav .nav-menu > li.current-menu-item > a:hover:after {
    width: 0 !important;
  }
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li.current-menu-parent > a {
    color: var(--wp--preset--color--secondary);
  }
  #primary-nav .nav-menu > li.current-menu-parent > a:hover {
    color: var(--wp--preset--color--secondary);
  }
  #primary-nav .nav-menu > li.current-menu-parent > a:hover:after {
    width: 0 !important;
  }
}
#primary-nav .nav-menu > li {
  /*========================================
  =            SUBMENU STYLES             =
  ========================================*/
}
#primary-nav .nav-menu > li > .sub-menu {
  display: none;
  padding-bottom: 1em;
  padding-left: 0;
  background-color: #fff;
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu {
    padding: 1rem;
    background-color: var(--wp--preset--color--secondary);
    display: block;
    min-width: 180px;
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    -webkit-box-shadow: 10px 10px 12px -6px rgba(0, 0, 0, 0.2);
            box-shadow: 10px 10px 12px -6px rgba(0, 0, 0, 0.2);
  }
  #primary-nav .nav-menu > li > .sub-menu:before {
    content: "";
    top: -15px;
    left: 25px;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 12px 16px 12px;
    border-color: transparent transparent var(--wp--preset--color--secondary) transparent;
  }
}
#primary-nav .nav-menu > li > .sub-menu li, #primary-nav .nav-menu > li > .sub-menu a {
  color: var(--wp--preset--color--darken);
  font-size: 14.4px;
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu li, #primary-nav .nav-menu > li > .sub-menu a {
    color: #fff;
    font-size: 12px;
  }
}
#primary-nav .nav-menu > li > .sub-menu li {
  height: 0;
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu li {
    -webkit-transform: none;
            transform: none;
    height: auto;
    background-color: var(--wp--preset--color--secondary);
  }
}
#primary-nav .nav-menu > li > .sub-menu li.current-menu-item > a {
  color: var(--wp--preset--color--primary);
  font-weight: 700;
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu li.current-menu-item > a {
    color: var(--wp--preset--color--third);
  }
}
#primary-nav .nav-menu > li > .sub-menu a {
  line-height: 1.2;
  padding: 0.7em 0 0.7em 0.7em;
  color: var(--wp--preset--color--darken);
}
#primary-nav .nav-menu > li > .sub-menu a:active {
  color: var(--wp--preset--color--primary);
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu a:hover {
    color: var(--wp--preset--color--third);
  }
}
@media (min-width: 1200px) {
  #primary-nav .nav-menu > li > .sub-menu a {
    padding: 0.7em 1rem;
    color: #fff;
  }
}
#primary-nav .nav-menu > li {
  /* Toggle-Zustand über Button-Attribut statt Checkbox */
}
#primary-nav .nav-menu > li .menu-toggle[aria-expanded=true] {
  /* Icon-Animation wie bisher */
}
#primary-nav .nav-menu > li .menu-toggle[aria-expanded=true] em:before,
#primary-nav .nav-menu > li .menu-toggle[aria-expanded=true] em:after {
  -webkit-transform: rotate(0) translateY(-2px);
          transform: rotate(0) translateY(-2px);
}
#primary-nav .nav-menu > li {
  /* Submenü zeigen, wenn geöffnet (mobile) */
}
#primary-nav .nav-menu > li .menu-toggle[aria-expanded=true] ~ .sub-menu {
  display: block;
}
@media (max-width: 1199px) {
  #primary-nav .nav-menu > li .menu-toggle[aria-expanded=true] ~ .sub-menu li {
    height: auto;
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
}
#primary-nav .nav-menu > li:hover > .sub-menu {
  opacity: 1;
  pointer-events: auto;
  z-index: -1;
  -webkit-animation: animateSubMenu 0.4s;
          animation: animateSubMenu 0.4s;
}

#primary-nav .follow {
  margin-top: 20px;
  line-height: 58px;
  height: 58px;
  text-align: center;
  margin-right: 1rem;
}
@media screen and (min-width: 1200px) {
  #primary-nav .follow {
    text-align: left;
  }
}
#primary-nav .follow .links a {
  color: #fff;
  display: inline-block;
  line-height: 58px;
  height: 75px;
  width: 25px;
  margin-right: 20px;
  text-align: center;
  -webkit-transition: 0.7s ease-in-out all;
  transition: 0.7s ease-in-out all;
  text-decoration: none;
}
@media screen and (min-width: 1200px) {
  #primary-nav .follow .links a {
    line-height: 58px;
    height: 58px;
    width: 12px;
    margin-left: 20px;
    margin-right: 0;
    color: var(--wp--preset--color--darken);
  }
}
#primary-nav .follow .links a i {
  font-size: 18px;
  color: var(--wp--preset--color--darken);
}
@media screen and (min-width: 1200px) {
  #primary-nav .follow .links a i {
    font-size: 15px;
  }
}
@media screen and (min-width: 1200px) {
  #primary-nav .follow .links a:hover i {
    color: var(--wp--preset--color--secondary);
  }
}

@media (min-width: 1200px) {
  #navbar.lighted .follow a i {
    color: #fff;
  }
}
#content {
  min-height: 60vh;
}
#content > div:first-child:not(.wp-block-cover.alignfull):not(.wp-block-image.alignfull):not(.tsc-slider-header) {
  margin-top: 2rem;
}
@media (min-width: 992px) {
  #content > div:first-child:not(.wp-block-cover.alignfull):not(.wp-block-image.alignfull):not(.tsc-slider-header) {
    margin-top: 2.5rem;
  }
}
#content .has-background:not(.alignfull):not(.wp-block-gallery):not(.wp-block-separator):not(.wp-block-button__link):not(.wp-block-media-text) {
  padding: 1rem;
}
@media screen and (min-width: 1200px) {
  #content .has-background:not(.alignfull):not(.wp-block-gallery):not(.wp-block-separator):not(.wp-block-button__link):not(.wp-block-media-text) {
    padding: calc(1rem * 3);
  }
}
@media screen and (min-width: 1200px) {
  #content .has-background:not(.alignfull):not(.wp-block-gallery):not(.wp-block-separator):not(.wp-block-button__link):not(.wp-block-media-text).wp-block-columns {
    padding: 6rem;
  }
}
#content .has-background:not(.alignfull):not(.wp-block-gallery):not(.wp-block-separator):not(.wp-block-button__link):not(.wp-block-media-text) a:not(.btn):not(.btn-primary):not(.is-style-btn-primary):not(.btn-secondary):not(.is-style-btn-secondary):hover {
  text-decoration: none;
}
#content > .wp-block-group {
  margin-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  #content > .wp-block-group {
    margin-bottom: 6rem;
  }
}
#content > .wp-block-group {
  min-height: 0;
}
#content > .wp-block-cover {
  margin-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  #content > .wp-block-cover {
    margin-bottom: 6rem;
  }
}
#content > .wp-block-cover.alignfull .wp-block-cover__inner-container {
  padding-right: 20px;
  padding-left: 20px;
  max-width: calc(40px + var(--wp--style--global--content-size));
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  #content > .wp-block-cover.alignfull .wp-block-cover__inner-container {
    padding-right: 50px;
    padding-left: 50px;
    max-width: calc(100px + var(--wp--style--global--content-size));
  }
}
#content > .has-background.wp-block-group {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  #content > .has-background.wp-block-group {
    padding-top: 6rem;
    padding-bottom: calc(6rem);
  }
}

.alignfull {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}
.alignfull.has-background, .alignfull.wp-block-cover {
  padding-left: 0;
  padding-right: 0;
}

.alignwide {
  margin-right: calc(25% - 25vw);
  margin-left: calc(25% - 25vw);
}

.container,
.alignfull:not(.tsc-overlay-video):not(.tsc-video-header):not(.wp-block-image):not(.wp-block-cover):not(.wp-block-media-text):not(.tsc-video-text-banner):not(.tsc-slider-header) > * {
  padding-right: 20px;
  padding-left: 20px;
  max-width: calc(40px + var(--wp--style--global--content-size));
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container,
  .alignfull:not(.tsc-overlay-video):not(.tsc-video-header):not(.wp-block-image):not(.wp-block-cover):not(.wp-block-media-text):not(.tsc-video-text-banner):not(.tsc-slider-header) > * {
    padding-right: 50px;
    padding-left: 50px;
    max-width: calc(100px + var(--wp--style--global--content-size));
  }
}

.wp-block-cover.alignfull .wp-block-cover__inner-container {
  padding-right: 20px;
  padding-left: 20px;
  max-width: calc(40px + var(--wp--style--global--content-size));
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .wp-block-cover.alignfull .wp-block-cover__inner-container {
    padding-right: 50px;
    padding-left: 50px;
    max-width: calc(100px + var(--wp--style--global--content-size));
  }
}

.container-small {
  max-width: 1100px;
  margin: 0 auto;
  padding-left: 10px;
  padding-right: 10px;
}

.wp-block-columns {
  /*  gap: vars.$column-gap;
    @media screen and (min-width: vars.$breakpoint-nav) {
      gap: calc(2rem * 2);
    }*/
}
.wp-block-columns.is-style-reverse {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important;
}

.noscroll {
  overflow: hidden;
}

.box-shadow {
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2) !important;
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2) !important;
}

@media screen and (max-width: 781px) {
  .no-gap-mobile {
    gap: 0 !important;
  }
}

@media (min-width: 782px) {
  .alignfull-right,
  .is-style-alignfull-right {
    margin-left: unset !important;
    padding-right: 0 !important;
    margin-right: calc(50% - 50vw) !important;
    min-width: calc(50vw - 2rem) !important;
    width: calc(50vw - 2rem) !important;
  }
}

@media (min-width: 782px) {
  .alignfull-left,
  .is-style-alignfull-left {
    margin-right: unset !important;
    padding-left: 0 !important;
    margin-left: calc(50% - 50vw) !important;
    min-width: calc(50vw - 2rem) !important;
    width: calc(50vw - 2rem) !important;
  }
}

/*
@media (max-width: calc(782px - 1px)) {
  margin-left: -20px !important;
  margin-right: -20px !important;
}
*/
.no-body-spacing {
  margin-top: -60px !important;
}
@media (min-width: 1200px) {
  .no-body-spacing {
    margin-top: -80px !important;
  }
}

.btn,
.ff-btn,
input[type=submit],
.wp-block-button .wp-block-button__link,
.is-style-btn-primary .wp-block-button__link,
.btn-primary {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  padding: 1em 1.5em;
  margin: 1em 0 1.1em;
  line-height: 1;
  border-radius: 0;
  border: 1px solid none;
  background: var(--wp--preset--color--secondary);
  color: #fff;
  font-family: var(--wp--preset--font-family--primary);
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease, -webkit-transform 0.2s ease;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 1px;
}
.btn:hover, .btn:active,
.ff-btn:hover,
.ff-btn:active,
input[type=submit]:hover,
input[type=submit]:active,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:active,
.is-style-btn-primary .wp-block-button__link:hover,
.is-style-btn-primary .wp-block-button__link:active,
.btn-primary:hover,
.btn-primary:active {
  opacity: 0.8;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.btn-secondary,
.is-style-btn-secondary .wp-block-button__link {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  padding: 1em 1.5em;
  margin: 1em 0 1.1em;
  line-height: 1;
  border-radius: 0;
  border: 1px solid none;
  background: var(--wp--preset--color--third);
  color: #fff;
  font-family: var(--wp--preset--font-family--primary);
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease, -webkit-transform 0.2s ease;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 1px;
}
.btn-secondary:hover, .btn-secondary:active,
.is-style-btn-secondary .wp-block-button__link:hover,
.is-style-btn-secondary .wp-block-button__link:active {
  opacity: 0.8;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.btn-third,
.is-style-btn-third .wp-block-button__link,
.is-style-btn-third a {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  padding: 1em 1.5em;
  margin: 1em 0 1.1em;
  line-height: 1;
  border-radius: 0;
  border: 1px solid none;
  background: linear-gradient(106deg, rgb(55, 183, 255) 0%, rgb(55, 183, 255) 0%, rgb(143, 97, 197) 70%, rgb(241, 0, 131) 100%);
  color: #fff;
  font-family: var(--wp--preset--font-family--primary);
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease, -webkit-transform 0.2s ease;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 1px;
}
.btn-third:hover, .btn-third:active,
.is-style-btn-third .wp-block-button__link:hover,
.is-style-btn-third .wp-block-button__link:active,
.is-style-btn-third a:hover,
.is-style-btn-third a:active {
  opacity: 0.8;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.btn-third,
.is-style-btn-third .wp-block-button__link,
.is-style-btn-third a {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-third:hover, .btn-third:focus,
.is-style-btn-third .wp-block-button__link:hover,
.is-style-btn-third .wp-block-button__link:focus,
.is-style-btn-third a:hover,
.is-style-btn-third a:focus {
  background: linear-gradient(106deg, rgb(241, 0, 131) 0%, rgb(143, 97, 197) 30%, rgb(55, 183, 255) 100%);
}

.is-style-outline .wp-block-button__link {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  padding: 1em 1.5em;
  margin: 1em 0 1.1em;
  line-height: 1;
  border-radius: 0;
  border: 1px solid var(--wp--preset--color--primary);
  background: transparent;
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--primary);
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, -webkit-transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease;
  transition: opacity 0.3s linear, transform 0.2s ease, -webkit-transform 0.2s ease;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 1px;
}
.is-style-outline .wp-block-button__link:hover, .is-style-outline .wp-block-button__link:active {
  opacity: 0.8;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.is-style-outline .wp-block-button__link {
  border: 2px solid;
  overflow: hidden;
  position: relative;
  background-color: transparent !important;
}
.is-style-outline .wp-block-button__link:before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--wp--preset--color--primary);
  opacity: 0;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  z-index: -1;
}
.is-style-outline .wp-block-button__link:hover {
  color: var(--wp--preset--color--base-bg);
  -webkit-transition: color 0.5s ease;
  transition: color 0.5s ease;
}
.is-style-outline .wp-block-button__link:hover:before {
  opacity: 0.6;
}

.site-info, .legals {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  z-index: 3;
  position: relative;
  line-height: 1.5;
  padding: 0.5rem 1rem 1.75rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 768px) {
  .site-info, .legals {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.site-info .copyright,
.site-info .creator, .legals .copyright,
.legals .creator {
  display: inline-block;
}
.site-info .copyright:hover,
.site-info .creator:hover, .legals .copyright:hover,
.legals .creator:hover {
  opacity: 0.8;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}
.site-info .legal-nav, .legals .legal-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  margin: 0;
  gap: 0.7rem;
  color: #fff;
  list-style-type: none;
}
.site-info .legal-nav li a, .legals .legal-nav li a {
  color: #fff;
}
.site-info .legal-nav li:not(:last-of-type), .legals .legal-nav li:not(:last-of-type) {
  position: relative;
  margin-right: 0.7rem;
}
.site-info .legal-nav li:not(:last-of-type):after, .legals .legal-nav li:not(:last-of-type):after {
  content: "";
  height: 0.9rem;
  right: -0.7rem;
  width: 2px;
  top: 6px;
  position: absolute;
  background-color: #fff;
}

.page-footer a {
  text-decoration: none;
}
.page-footer a:hover {
  color: var(--wp--preset--color--secondary);
}

.fluentform {
  border: 1px solid var(--wp--preset--color--lighted);
  padding: 1em;
  border-radius: 5px;
}
@media only screen and (min-width: 768px) {
  .fluentform {
    padding: 1.5em;
  }
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
input[type=search] {
  font-family: var(--wp--preset--font-family--primary) !important;
  width: 100%;
  background-color: var(--wp--preset--color--base-bg);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  line-height: 38px;
  height: 40px;
  font-size: 1em;
  padding: 0 0.5em;
  margin: 0;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=search]:focus {
  outline: none;
  border: 1px solid var(--wp--preset--color--secondary);
}
input[type=text][readonly],
input[type=email][readonly],
input[type=tel][readonly],
input[type=password][readonly],
input[type=search][readonly] {
  color: rgba(var(--wp--preset--color--base), 0.6);
}

textarea {
  font-family: var(--wp--preset--font-family--primary) !important;
  width: 100%;
  height: 130px;
  background-color: var(--wp--preset--color--base-bg);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  font-size: 1em;
  padding: 0.5em;
}
textarea:focus {
  outline: none;
  border: 1px solid var(--wp--preset--color--secondary);
}

select {
  width: 100%;
  background-color: var(--wp--preset--color--base-bg);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  line-height: 38px;
  height: 40px;
  font-size: 1em;
  padding: 0 0.5em;
}
select:focus {
  outline: none;
  border: 1px solid var(--wp--preset--color--secondary);
}

input[type=file] {
  width: 100%;
  background-color: var(--wp--preset--color--base-bg);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  line-height: 32px;
  height: 40px;
  font-size: 1em;
  padding: 0 0.5em 0 0;
}
input[type=file]:focus {
  outline: none;
  border: 1px solid var(--wp--preset--color--secondary);
}

.wp-block-separator {
  border-top: 0.5px solid;
}

/**
  * I C O N S
  * */
.is-style-icon-white {
  background-color: #fff;
  border-radius: 50%;
  width: 75px;
  margin: 0 !important;
}
.is-style-icon-white a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.is-style-icon-white a:hover {
  opacity: 0.7;
}
.is-style-icon-white img {
  padding: 30%;
  display: inline-block;
}

.is-style-icon-primary {
  background-color: var(--wp--preset--color--primary);
  border-radius: 50%;
  width: 75px;
  margin: 0 !important;
}
.is-style-icon-primary a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.is-style-icon-primary a:hover {
  opacity: 0.7;
}
.is-style-icon-primary img {
  padding: 30%;
  display: inline-block;
}

.is-style-icon-secondary {
  background-color: var(--wp--preset--color--secondary);
  border-radius: 50%;
  width: 75px;
  margin: 0 !important;
}
.is-style-icon-secondary a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.is-style-icon-secondary a:hover {
  opacity: 0.7;
}
.is-style-icon-secondary img {
  padding: 30%;
  display: inline-block;
}

.is-style-icon-darken {
  background-color: var(--wp--preset--color--darken);
  border-radius: 50%;
  width: 75px;
  margin: 0 !important;
}
.is-style-icon-darken a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.is-style-icon-darken a:hover {
  opacity: 0.7;
}
.is-style-icon-darken img {
  padding: 30%;
  display: inline-block;
}

body:not(.wp-admin) .is-style-display-none {
  display: none !important;
}

@media (min-width: 768px) {
  body:not(.wp-admin) .is-style-mobile-only {
    display: none !important;
  }
}

@media (max-width: calc(768px - 1px)) {
  body:not(.wp-admin) .is-style-mobile-off {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  body:not(.wp-admin) .is-style-tablet-only {
    display: none !important;
  }
}

@media (max-width: calc(1200px - 1px)) {
  body:not(.wp-admin) .is-style-tablet-off {
    display: none !important;
  }
}

.is-style-rounded {
  border-radius: 0;
}

.is-style-section-half-lighted-horizontal {
  position: relative;
  z-index: 2;
  padding-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  .is-style-section-half-lighted-horizontal {
    padding-bottom: 6rem;
  }
}
.is-style-section-half-lighted-horizontal:before {
  content: "";
  position: absolute;
  background: var(--wp--preset--color--lighted);
  top: 40%;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

.is-style-section-half-lighted-horizontal-top {
  position: relative;
  z-index: 2;
  padding-top: 3rem;
}
@media screen and (min-width: 1200px) {
  .is-style-section-half-lighted-horizontal-top {
    padding-top: 6rem;
  }
}
.is-style-section-half-lighted-horizontal-top:before {
  content: "";
  position: absolute;
  background: var(--wp--preset--color--lighted);
  bottom: 40%;
  left: 0;
  right: 0;
  top: 0;
  z-index: -1;
}

.is-style-section-half-lighted-right {
  position: relative;
  z-index: 2;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  .is-style-section-half-lighted-right {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.is-style-section-half-lighted-right:before {
  content: "";
  position: absolute;
  background: var(--wp--preset--color--lighted);
  bottom: 0;
  left: 50%;
  right: 0;
  top: 0;
  z-index: -1;
}

.is-style-section-half-lighted-left {
  position: relative;
  z-index: 2;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  .is-style-section-half-lighted-left {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.is-style-section-half-lighted-left:before {
  content: "";
  position: absolute;
  background: var(--wp--preset--color--lighted);
  bottom: 0;
  right: 50%;
  left: 0;
  top: 0;
  z-index: -1;
}

.wp-block-image.aligncenter {
  margin-left: auto;
  margin-right: auto;
}

.wp-block-image.alignright {
  margin-left: auto;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  width: 100%;
}
img[src$=".svg"] {
  width: 100%;
}

figure {
  margin: 0;
}

.is-style-fancy-img-rounded {
  border-radius: 30% 70% 70% 30%/30% 55% 45% 70%;
  overflow: hidden; /* Wichtig für Bilder */
}

.is-style-fancy-img-rounded-2 {
  border-radius: 56% 44% 68% 32%/54% 26% 74% 46%;
  overflow: hidden; /* Wichtig für Bilder */
}

.is-style-img-top-rounded {
  border-radius: 999px 999px 0 0;
  overflow: hidden;
}

.wp-block-image {
  border-radius: 0;
  overflow: hidden;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  white-space: nowrap;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

.scroll-top {
  background-color: var(--wp--preset--color--secondary);
  height: 40px;
  width: 40px;
  display: inline-block;
  position: fixed;
  bottom: 5%;
  right: 5px;
  z-index: 10000000;
  opacity: 0;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  -webkit-box-shadow: 4px 4px 10px -2px rgba(0, 0, 0, 0.4);
          box-shadow: 4px 4px 10px -2px rgba(0, 0, 0, 0.4);
}
@media only screen and (min-width: 768px) {
  .scroll-top {
    height: 45px;
    width: 45px;
  }
}
.scroll-top {
  visibility: hidden;
}
.scroll-top:before {
  position: absolute;
  top: calc(50% - 4px);
  left: calc(50% - 10px);
  content: "";
  border: solid var(--wp--preset--color--base-bg);
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 9px;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.scroll-top.visible {
  opacity: 0.9;
  visibility: visible;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}
.scroll-top.visible:hover {
  -webkit-box-shadow: 1px 1px 9px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 1px 1px 9px 2px rgba(0, 0, 0, 0.2);
  -webkit-transition: -webkit-box-shadow 0.3s ease-in-out;
  transition: -webkit-box-shadow 0.3s ease-in-out;
  transition: box-shadow 0.3s ease-in-out;
  transition: box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  opacity: 0.5;
}

#sidebar-menu {
  position: fixed;
  bottom: 20%;
  right: 5px;
  z-index: 1000;
}
@media only screen and (min-width: 768px) {
  #sidebar-menu {
    top: 25vh;
    bottom: unset;
  }
}
#sidebar-menu ul {
  list-style-type: none;
}
#sidebar-menu ul li {
  margin: 2rem 0;
}
#sidebar-menu ul a {
  text-decoration: none;
}
#sidebar-menu ul a i {
  color: #fff;
  background-color: var(--wp--preset--color--secondary);
  padding: 12.5px;
  -webkit-box-shadow: 4px 4px 10px -2px rgba(0, 0, 0, 0.4);
          box-shadow: 4px 4px 10px -2px rgba(0, 0, 0, 0.4);
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  opacity: 0.75;
}
#sidebar-menu ul a i:hover {
  -webkit-box-shadow: 1px 1px 9px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 1px 1px 9px 2px rgba(0, 0, 0, 0.2);
  opacity: 0.55;
  -webkit-transition: -webkit-box-shadow 0.3s ease-in-out;
  transition: -webkit-box-shadow 0.3s ease-in-out;
  transition: box-shadow 0.3s ease-in-out;
  transition: box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
}

@media (max-width: calc(782px - 1px)) {
  #navbar:not(.colored) ~ #sidebar-menu {
    display: none;
  }
}
.tsc-akkordeon-item {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.tsc-akkordeon-item .tsc-akk-heading {
  margin: 0;
}
.tsc-akkordeon-item .label-wrapper {
  display: grid;
  grid-template-columns: 1fr 60px;
  grid-gap: 1rem;
}
.tsc-akkordeon-item .label-wrapper .tsc-akk-heading-label {
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.tsc-akkordeon-item .label-wrapper .tsc-akk-heading-label:hover {
  opacity: 0.7;
}
.tsc-akkordeon-item .label-wrapper .labelicon {
  color: #fff;
  font-size: 50px;
  background-color: var(--wp--preset--color--primary);
  font-weight: 400;
  border-radius: 50%;
  padding: 0 10px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  line-height: 50px;
  position: relative;
  z-index: 0;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  opacity: 0.8;
}
.tsc-akkordeon-item .label-wrapper .labelicon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% - 10px);
  width: 20px;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 1;
}
.tsc-akkordeon-item .label-wrapper .labelicon:after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% - 10px);
  width: 20px;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 1;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
.tsc-akkordeon-item .label-wrapper .labelicon:hover {
  background-color: var(--wp--preset--color--secondary);
}
.tsc-akkordeon-item .label-wrapper .labelicon:hover:before, .tsc-akkordeon-item .label-wrapper .labelicon:hover:after {
  width: 18px;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
  left: calc(50% - 9px);
}
.tsc-akkordeon-item .has-background {
  margin: 0;
  padding: 1rem !important;
}
.tsc-akkordeon-item .tsc-akk-content {
  height: 0;
  padding: 0.5rem;
  opacity: 0;
  -webkit-transition: 0.4s ease all;
  transition: 0.4s ease all;
}
.tsc-akkordeon-item input[type=checkbox] {
  display: none;
}
.tsc-akkordeon-item input[type=checkbox]:checked ~ .tsc-akk-content {
  height: auto;
  opacity: 1;
}
.tsc-akkordeon-item input[type=checkbox]:checked ~ .label-wrapper .labelicon:after {
  opacity: 0;
}

.inno-icon-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
  background-color: transparent;
}
.inno-icon-content__image-wrapper {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 32px;
          flex: 0 0 32px;
  width: 32px;
  height: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.inno-icon-content__image-wrapper img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.inno-icon-content__body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}
.inno-icon-content__strong {
  margin-top: 0;
  display: block;
  font-weight: 500;
  font-size: 1.15rem;
  margin-bottom: 0.25rem;
  color: var(--wp--preset--color--primary);
}
.inno-icon-content__text {
  margin: 0;
  color: var(--wp--preset--color--base);
}

.image-teaser-block {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: 1fr;
}
@media (min-width: 782px) {
  .image-teaser-block {
    grid-template-columns: 1fr 1fr;
    grid-gap: 2rem;
  }
}
@media (min-width: 1200px) {
  .image-teaser-block.image-teaser-col-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .image-teaser-block.image-teaser-col-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media (min-width: 1400px) {
  .image-teaser-block {
    grid-gap: 3rem;
  }
}
.image-teaser-block .image-teaser-item {
  aspect-ratio: 4/3;
}
.image-teaser-block .image-teaser-item .image-teaser-link {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/3;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.image-teaser-block .image-teaser-item .image-teaser-link:hover {
  -webkit-box-shadow: -2px 2px 10px 4px rgba(255, 255, 255, 0.1);
          box-shadow: -2px 2px 10px 4px rgba(255, 255, 255, 0.1);
}
.image-teaser-block .image-teaser-item .image-teaser-link:hover:after {
  background-color: rgba(0, 0, 0, 0.88);
}
.image-teaser-block .image-teaser-item .image-teaser-link:hover .image-teaser-description {
  opacity: 1;
}
.image-teaser-block .image-teaser-item .image-teaser-link:after {
  position: absolute;
  aspect-ratio: 4/3;
  z-index: 2;
  content: "";
  top: -1px;
  bottom: -1px;
  left: -1px;
  right: -1px;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.image-teaser-block .image-teaser-item .image-teaser-link img {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}
.image-teaser-block .image-teaser-item .image-teaser-link .image-teaser-title {
  margin: 0;
  position: absolute;
  bottom: 0;
  left: -10px;
  width: 110%;
  height: 70px;
  padding: 1rem 2rem 2rem;
  z-index: 3;
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
}
.image-teaser-block .image-teaser-item .image-teaser-link .image-teaser-description {
  padding: 2rem;
  opacity: 0;
  color: #fff;
  position: absolute;
  font-weight: 600;
  z-index: 4;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-self: center;
  -ms-flex-item-align: center;
      align-self: center;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  text-align: center;
}

.tsc-moving-overlay {
  position: relative;
}
.tsc-moving-overlay .overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: -10px;
  width: 100%;
  background-color: #fff;
  opacity: 0.95;
}

.follow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.follow.alignleft {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.follow.alignright {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.follow.aligncenter {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.follow .links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 1rem;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.follow .links a {
  font-size: 0.8em;
  display: inline-block;
  text-decoration: none;
  opacity: 1;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.follow .links a:hover {
  opacity: 0.7;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.follow .links a i {
  background-color: var(--wp--preset--color--primary);
  color: #fff;
  padding: 7px;
  border-radius: 100%;
}
.follow .links a span:hover {
  -webkit-transform: rotateY(360deg);
          transform: rotateY(360deg);
  -webkit-transition: all linear 0.6s;
  transition: all linear 0.6s;
}

.page-footer .follow a i {
  color: #fff !important;
  background-color: var(--wp--preset--color--third) !important;
}

.tsc-overlay-video {
  position: relative;
  width: 100vw;
  padding: 0 !important;
  overflow: hidden;
  left: 0;
  max-height: 90vh;
  aspect-ratio: 2/1;
  z-index: 0;
}
.tsc-overlay-video video {
  width: 100vw;
  padding: 0 !important;
  max-width: 100vw !important;
}
.tsc-overlay-video .overlay {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  max-width: 100%;
  background-size: cover;
  background-position: center;
}

.tsc-block-txt-img-overlay {
  position: relative;
}
.tsc-block-txt-img-overlay img {
  width: 100%;
  z-index: -2;
  position: relative;
}
@media (min-width: 992px) {
  .tsc-block-txt-img-overlay img {
    width: 80%;
  }
}
.tsc-block-txt-img-overlay .txt-img-ol-content {
  position: relative;
  bottom: 0;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 992px) {
  .tsc-block-txt-img-overlay .txt-img-ol-content {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    top: 70%;
  }
}
@media (min-width: 992px) {
  .tsc-block-txt-img-overlay .txt-img-ol-content {
    position: absolute;
    bottom: 10%;
    top: 10%;
    right: 0;
    width: 80%;
  }
}
@media (min-width: 1200px) {
  .tsc-block-txt-img-overlay .txt-img-ol-content {
    width: 50%;
  }
}
.tsc-block-txt-img-overlay .txt-img-ol-content h1, .tsc-block-txt-img-overlay .txt-img-ol-content h2, .tsc-block-txt-img-overlay .txt-img-ol-content h3, .tsc-block-txt-img-overlay .txt-img-ol-content h4, .tsc-block-txt-img-overlay .txt-img-ol-content h5, .tsc-block-txt-img-overlay .txt-img-ol-content h6 {
  color: #fff;
  margin-top: 0;
}
.tsc-block-txt-img-overlay .txt-img-ol-content:after {
  position: absolute;
  content: "";
  z-index: -1;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: var(--wp--preset--color--primary);
}
.tsc-block-txt-img-overlay .txt-img-ol-content a {
  color: #fff;
  text-decoration: underline;
}

.tsc-video-header {
  margin-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  .tsc-video-header {
    margin-bottom: 6rem;
  }
}
.tsc-video-header {
  position: relative;
  overflow: hidden;
  max-height: 100vh;
}
.tsc-video-header video {
  width: auto;
  height: 75%;
  position: relative;
  left: -100vw;
}
@media (min-width: 600px) {
  .tsc-video-header video {
    left: -75%;
  }
}
@media (min-width: 768px) {
  .tsc-video-header video {
    left: -50%;
  }
}
@media (min-width: 992px) {
  .tsc-video-header video {
    left: unset;
    width: 100%;
    height: auto;
  }
}
.tsc-video-header .video-overlay {
  position: absolute;
  width: 100vw;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0.9;
}
.tsc-video-header {
  margin-top: 0 !important;
}
@media (min-width: 992px) {
  .tsc-video-header {
    margin-top: 0 !important;
  }
}
.tsc-video-header.no-body-spacing {
  margin-top: -60px !important;
}
@media (min-width: 1200px) {
  .tsc-video-header.no-body-spacing {
    margin-top: -80px !important;
  }
}
.tsc-video-header .video-content {
  padding-right: 20px;
  padding-left: 20px;
  max-width: calc(40px + var(--wp--style--global--content-size));
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .tsc-video-header .video-content {
    padding-right: 50px;
    padding-left: 50px;
    max-width: calc(100px + var(--wp--style--global--content-size));
  }
}
.tsc-video-header .video-content {
  position: absolute;
  padding: 5%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
}
.tsc-video-header .video-content .acf-innerblocks-container {
  width: 100%;
}
.tsc-video-header .video-content * {
  color: inherit;
}

.tsc-slider-header {
  top: calc(-1 * 60px);
}
@media (min-width: 1200px) {
  .tsc-slider-header {
    top: calc(-1 * 80px);
  }
}
.tsc-slider-header {
  position: relative;
  height: 90vh;
  margin-bottom: 3rem;
}
@media screen and (min-width: 1200px) {
  .tsc-slider-header {
    margin-bottom: 6rem;
  }
}
.tsc-slider-header.image-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.tsc-slider-header .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
.tsc-slider-header .single-image-header {
  position: absolute;
  background-size: cover;
  inset: 0;
  background-position: center;
  z-index: 0;
}
@media (min-width: 768px) {
  .tsc-slider-header .single-image-header {
    left: 0;
  }
}
.tsc-slider-header .image-slider {
  position: relative;
  height: 90vh;
  overflow: hidden;
}
.tsc-slider-header .image-slider .image-slide {
  height: 90vh;
  width: 100%;
  background-size: cover;
  background-position: center;
  top: 0;
  left: 0;
  bottom: 0;
  position: relative;
}
.tsc-slider-header .acf-innerblocks-container {
  padding: 5px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 768px) {
  .tsc-slider-header .acf-innerblocks-container {
    padding: 5%;
  }
}
@media (min-width: 1200px) {
  .tsc-slider-header .acf-innerblocks-container {
    padding: 10%;
  }
}
.tsc-slider-header .splide__arrow,
.tsc-slider-header .splide__pagination {
  z-index: 6;
}

.tsc-video-text-banner {
  overflow: hidden;
  margin: 0;
  padding: 0;
  max-width: 100vw;
  height: 100vh;
  position: relative;
  margin-left: -20px;
  margin-right: -20px;
}
@media (min-width: 1200px) {
  .tsc-video-text-banner {
    margin-left: -50px;
    margin-right: -50px;
  }
}
.tsc-video-text-banner svg {
  max-width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
}
.tsc-video-text-banner #svg-text {
  max-width: 100vw;
  font-weight: 900;
  letter-spacing: 10px;
  font-family: var(--wp--preset--font-family--primary);
  font-size: 25px;
}
@media (min-width: 768px) {
  .tsc-video-text-banner #svg-text {
    font-size: 75px;
  }
}
@media (min-width: 992px) {
  .tsc-video-text-banner #svg-text {
    font-size: 100px;
  }
}
@media (min-width: 1400px) {
  .tsc-video-text-banner #svg-text {
    font-size: 150px;
  }
}
@media (min-width: 1920px) {
  .tsc-video-text-banner #svg-text {
    font-size: 200px;
  }
}
.tsc-video-text-banner .bg-video {
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}
.tsc-video-text-banner #mask-bg {
  display: none;
}
.tsc-video-text-banner.alignfull {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}
.tsc-video-text-banner.alignwide {
  margin-right: calc(25% - 25vw);
  margin-left: calc(25% - 25vw);
}

.wp-block-tsc-inno-akkordeon {
  border-bottom: 1px solid #ccc;
  padding: 1rem 0;
  max-width: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
.wp-block-tsc-inno-akkordeon .inno-accordion-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
}
.wp-block-tsc-inno-akkordeon .inno-accordion-heading .inno-accordion-button {
  all: unset;
  cursor: pointer;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: 600;
  font-size: 1.1rem;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 3.5rem;
}
.wp-block-tsc-inno-akkordeon .inno-accordion-heading .inno-accordion-button::after {
  font-weight: 400 !important;
  position: absolute;
  right: 0;
  content: "+";
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  border-radius: 50%;
  background-color: #005f7f;
  color: white;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.5rem;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.wp-block-tsc-inno-akkordeon.is-open button.inno-accordion-button::after {
  content: "−";
}
.wp-block-tsc-inno-akkordeon .inno-accordion-content {
  padding-left: 1rem;
  display: block;
}
.wp-block-tsc-inno-akkordeon .inno-accordion-content[hidden] {
  display: none;
}

.tsc-testimonial-slider {
  max-width: 750px;
  margin: 0 auto;
  text-align: center;
}
.tsc-testimonial-slider .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.7rem 0 1rem;
  position: relative;
}
@media (min-width: 768px) {
  .tsc-testimonial-slider .content {
    padding: 1rem 5rem;
  }
}
.tsc-testimonial-slider .testimonial-sign {
  display: inline-block;
  margin-bottom: 1rem;
  font-size: clamp(2rem, 5vw, 3.125rem);
  color: var(--wp--preset--color--secondary);
  opacity: 0.5;
}
.tsc-testimonial-slider .splide__arrow,
.tsc-testimonial-slider .splide__pagination {
  z-index: 6;
}
.tsc-testimonial-slider .splide__arrow {
  background: var(--wp--preset--color--lighted);
  border: none;
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.tsc-testimonial-slider .splide__arrow svg {
  fill: var(--wp--preset--color--third);
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
}
.tsc-testimonial-slider .splide__arrow:hover {
  background: var(--wp--preset--color--third);
}
.tsc-testimonial-slider .splide__arrow:hover svg {
  fill: var(--wp--preset--color--third);
}
.tsc-testimonial-slider .splide__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.7rem;
}
.tsc-testimonial-slider .splide__pagination button {
  border-radius: 50%;
  margin: 0;
  background: var(--wp--preset--color--primary);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.tsc-testimonial-slider .splide__pagination button.is-active {
  -webkit-transform: scale(1) !important;
          transform: scale(1) !important;
  background: var(--wp--preset--color--third);
}

.page-template-contact-page .contact span {
  display: block;
}

.page-template-impressum h1,
.page-template-privacypolicy h1 {
  font-size: 2rem;
}
.page-template-impressum h2,
.page-template-privacypolicy h2 {
  font-size: 1.5rem;
}
.page-template-impressum h3, .page-template-impressum h4, .page-template-impressum h5,
.page-template-privacypolicy h3,
.page-template-privacypolicy h4,
.page-template-privacypolicy h5 {
  font-size: 1.1rem;
}
