@charset "utf-8";

@font-face {
  font-family: 'Girott Regular';
  font-display: block;
  src: url('../fonts/gr.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'MonumentGroteskRegular';
  font-display: block;
  src: url('../fonts/monumentgrotesk-regular-new9.woff') format('woff');
  font-style: normal;
  font-weight: normal;
}

@font-face {
  font-family: 'MonumentGroteskBold';
  font-display: block;
  src: url('../fonts/monumentgrotesk-bold-new9.woff') format('woff');
  font-style: normal;
  font-weight: normal;
}

@font-face {
  font-family: 'MonumentGroteskMedium';
  font-display: block;
  src: url('../fonts/monumentgrotesk-medium-new9.woff') format('woff');
  font-style: normal;
  font-weight: normal;
}

* {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-overflow-scrolling: auto;
}

*[contenteditable="true"],
*[contenteditable="true"] * {
  -webkit-touch-callout: initial;
  -webkit-user-select: initial;
  -khtml-user-select: initial;
  -moz-user-select: initial;
  -ms-user-select: initial;
  user-select: initial;
  -webkit-tap-highlight-color: initial;
}

input,
input:before,
input:after {
  -webkit-user-select: initial;
  -khtml-user-select: initial;
  -moz-user-select: initial;
  -ms-user-select: initial;
  user-select: initial;
}

:root {
  --glob-scale: 0;
  --font-size: 17px;
  --line-height-factor: 1.375;
  --line-height: 1.375em;
  --line-height-headline-factor: 1.1;
  --line-height-headline: 1.1em;
  --fullbox-arrow-w: 3rem;
  --max-main-w: 2560px;
  --gap-w: 0px;
  --gap-h: 3px;
  --main-gap-w: 24px;
  --box-typo-padding: calc(0px);
  --box-typo-padding-bottom: calc(24px);
  --box-typo-padding-top: calc(6px);
  --box-typo-padding-right: calc(24px);
  --col-w: calc(9999px * var(--glob-scale));
  --col-count: 4;
  --col-w1: calc((var(--col-w) * var(--col-count) - var(--gap-w) * (var(--col-count) - 1)) / var(--col-count));
  --col-w2: calc(var(--col-w1) * 2 + var(--gap-w));
  --col-w3: calc(var(--col-w1) * 3 + var(--gap-w) * 2);
  --col-w4: calc(var(--col-w) * var(--col-count));
  --box-min-height: 4em;
  --bottom-padding: 3rem;
  --section-gap: 9rem;
  --logo-height: 4.7rem;
  --black-trans: rgb(0 0 0 / 0.985);
  --white-trans: rgb(255 255 255 / 0.985);
  --bg-url: url(http://www.fuzzyfusion.de/schlossfestspiele/dummies/7/imgs/bgs/bg1.jpg);
  --topbgoverlay-height: 7rem;
  --window-sw: 0px;
  --window-sh: 0px;
  --standard-time: 0.6s;
  --mainrect-left: -9999px;
  --mainrect-top: 0px;
  --mainrect-width: 0px;
  --mainrect-height: 0px;
  --body-width: 0px;
  --body-height: 0px;
  --scrollbar-handlerbg: #232323;
  --scrollbar-bg: black;
  --scrollbar-handlerbg2: #bbbbbb;
  --scrollbar-bg2: white;
  --menu-gradient: linear-gradient(90deg, #ff3b21 0%, #1eabd3 50%, #ff3b21 100%);
  --seventy-color: #ff5165;
  --seventy-gradient: linear-gradient(90deg, #E5243B 0%, #DDA63A 5.882%, #4C9F38 11.764%, #C5192D 17.647%, #FF3A21 23.529%, #26BDE2 29.411%, #FCC30B 35.294%, #A21942 41.176%, #FD6925 47.058%, #DD1367 52.941%, #FD9D24 58.823%, #BF8B2E 64.705%, #3F7E44 70.588%, #0A97D9 76.470%, #56C02B 82.352%, #00689D 88.235%, #19486A 94.117%, #E5243B 100%);
  --seventy-gradient-bright: linear-gradient(90deg, #ff5165 0%, #ffc44f 5.882%, #85ff68 11.764%, #ff3b52 17.647%, #FF3A21 23.529%, #3ad8ff 29.411%, #ffd54e 35.294%, #ff5689 41.176%, #ff8e5a 47.058%, #ff66a5 52.941%, #ffc070 58.823%, #f5b43f 64.705%, #8afb93 70.588%, #5ccbff 76.470%, #83f853 82.352%, #2791c7 88.235%, #4d92c4 94.117%, #ff6376 100%);
  --seventy-gradient-trans: linear-gradient(90deg, #E5243B00 0%, #DDA63A00 5.882%, #4C9F3800 11.764%, #C5192D00 17.647%, #FF3A2100 23.529%, #26BDE200 29.411%, #FCC30B00 35.294%, #A2194200 41.176%, #FD692500 47.058%, #DD136700 52.941%, #FD9D2400 58.823%, #BF8B2E00 64.705%, #3F7E4400 70.588%, #0A97D900 76.470%, #56C02B00 82.352%, #00689D00 88.235%, #19486A00 94.117%, #E5243B00 100%);
  --seventy-gradient-black: linear-gradient(90deg, #000000 0%, #000000 5.882%, #000000 11.764%, #000000 17.647%, #000000 23.529%, #000000 29.411%, #000000 35.294%, #000000 41.176%, #000000 47.058%, #000000 52.941%, #000000 58.823%, #000000 64.705%, #000000 70.588%, #000000 76.470%, #000000 82.352%, #000000 88.235%, #000000 94.117%, #000000 100%);
  --seventy-gradient-anibgposx: ani_bg_posx600 32s linear infinite;
  --seventy-gradient-bgsize: 900vw 5000px;
  --form-padding-left: var(--main-gap-w);
  --production-thumbcolcount: 6;
  --production-thumbcolcount-max: 10;
  --production-thumbcolcount-min: 3;
}

::-moz-selection {
  color: inherit;
  background: #f60b89;
}

::selection {
  color: inherit;
  background: #f60b89;
}

@keyframes ani_bg_posx {
  0% {
    background-position: 0vw 0vh
  }

  100% {
    background-position: 100vw 0vh
  }
}

@keyframes ani_bg_posx600 {
  0% {
    background-position: 0vw 0vh
  }

  100% {
    background-position: 900vw 0vh
  }
}

@media only screen and (max-width: 1280px) {
  :root {
    --col-count: 3;
  }
}

@media only screen and (max-width: 960px) {
  :root {
    --col-count: 2;
    --col-w3: var(--col-w2);
    --main-gap-w: 16px;
  }
}

@media only screen and (max-width: 640px) {
  :root {
    --col-count: 1;
    --col-w2: var(--col-w1);
    --col-w3: var(--col-w1);
    --main-gap-w: 12px;
    --logo-height: 3.7rem;
  }
}

html,
body {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: 'MonumentGroteskRegular', sans-serif;
  font-size: var(--font-size);
  font-weight: 400;
  line-height: var(--line-height);
  color: var(--black-trans);
  vertical-align: baseline;
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

html {
  width: 100vw;
  overflow-x: hidden;
  overflow-y: scroll;
  width: 100%;
}

body {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: white;
  pointer-events: none;
}

body[resize-occured] {
  opacity: 1;
}

body {
  opacity: 0;
}

b {
  font-family: inherit;
  font-weight: inherit;
  text-transform: uppercase;
}

strong {
  font-family: 'MonumentGroteskBold', sans-serif;
  font-weight: 400;
}
.page.notpublic{
  display: none;
}
p,
strong,
a,
b,
.dsmaintextbox *,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: text;
  -khtml-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

li:hover {}

h1 {
  font-size: calc(var(--font-size) * (var(--col-count) + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  line-height: var(--line-height-headline);
  margin-top: 0;
  margin-bottom: 1em;
}

h2 {
  font-size: calc(var(--font-size) * (var(--col-count) / 3 + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  line-height: var(--line-height-headline);
  margin-top: 0;
  margin-bottom: calc(var(--line-height-factor) * 1rem);
}

bp:before {
  position: absolute;
  box-sizing: border-box;
  display: block;
  content: " ";
  margin-left: -1.0em;
  top: 0.4em;
  background-color: var(--black-trans);
  width: 0.4em;
  height: 0.4em;
  border-radius: 0.4em;
  margin-right: 0.8em;
}

bp {
  position: relative;
  display: block;
  padding-left: 1.0em;
  line-height: 1.25em;
  min-height: 1.25em;
  margin-top: 0.5em;
}

div,
section,
main,
nav,
ul,
li,
input {
  position: relative;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

section>div {
  opacity: 1;
  margin-top: 6rem;
  transition: margin-top var(--standard-time), margin-bottom var(--standard-time);
}

section>div[col-index="1"]:not([component-name="ExcerptBox"]):not([component-name="GapBox"]):not(.whitecentered):not(.searchform):not(.productionentry):before {
  content: " ";
  position: absolute;
  top: 0;
  width: calc(var(--main-gap-w) + 0px);
  height: 100%;
  background: var(--white-trans);
  left: calc(var(--main-gap-w) * -1);
}

section>.formbox2[col-index="1"]:before {
  background-color: black;
}

section>.mediagallerybox[col-index="1"]:before,
section>.formbox[col-index="1"]:before,
section>.formbox[col-index="1"]:after,
section>.ytbox[col-index="1"]:before,
section>.ytbox[last-in-row]:after {
  background: black !important;
}

section>.issuucontainer[col-index="1"]:before {
  background: #00000000 !important;
}

section>div[was-in-viewport] {
  margin-top: 0;
  opacity: 1;
}

a {
  position: relative;
  text-decoration: inherit;
  color: inherit;
  font-weight: inherit;
}

.mainscroll p a:not([target="_blank"]) {
  border-bottom: 1px solid;
}

.mainscroll a[target="_blank"]:not(.flexboxlink):not(.logolinka):not(.ignore):not(.shareboxlink):after {
  content: "↗";
  margin-left: 3px;
}

.mainscroll a[target="_blank"]:not(.flexboxlink):not(.logolinka):not(.ignore):not(.shareboxlink) {
  border-bottom: solid 1px;
}

/* TOP BG OVERLAY */
.topbgoverlay {
  position: fixed;
  top: calc(-3rem + var(--headspace-top));
  left: 0;
  width: 100vw;
  height: calc(var(--topbgoverlay-height) + 4rem);
  z-index: 8;
  overflow: hidden;
  pointer-events: none;
  transition: top var(--standard-time) 0.1s;
  -webkit-mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 1) 100%);
  mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 1) 100%);
}

body[menu-state="start"][scroll-direction="top"] .topbgoverlay {
  opacity: 0;
  top: -3rem;
}

body[menu-state="oneline"] .topbgoverlay {
  opacity: 1;
  top: calc(-3rem + var(--headspace-top));
}

body[menu-state="twoline"] .topbgoverlay {
  opacity: 1;
  top: calc(0rem + var(--headspace-top));
}

body[col-count="1"] .topbgoverlay {
  top: calc(-4rem + var(--headspace-top));
}

body[col-count="1"][menu-state="twoline"] .topbgoverlay {
  top: calc(-2rem + var(--headspace-top));
}

body[submenu-state="hidden"] .topbgoverlay {
  top: calc(var(--headspace-top) - 10rem);
}

body[submenu-state="hidden"][menu-state="twoline"] .topbgoverlay {
  top: calc(-5rem + var(--headspace-top));
}

/* TOP SPACER */
.topspacer {
  height: calc(9rem + var(--headspace-top));
  width: 100vw;
}

body[col-count="1"] .topspacer {
  height: calc(7rem + var(--headspace-top));
  width: 100vw;
}

body[p-type="2020/12/01/14/44/58615905/"] .topspacer {
  /* height: 16rem; */
}

body[p-name="production"] .topspacer {
  height: calc(var(--body-height) - var(--section-gap)/2);
}

/* TOPBAR */
body[scroll-step="0"] .topbar {
  top: var(--headspace-top);
}

.topbar {
  position: fixed;
  top: calc(var(--headspace-top) - 3rem);
  z-index: 18;
  transition: top var(--standard-time) 0.1s;
  height: 3rem;
  width: 100%;
  pointer-events: none;
}

body[menu-state="twoline"] .topbar,
body[scroll-direction="up"]:not([menu-state="start"]) .topbar {
  top: var(--headspace-top);
}

/* MAIN MENU BAR */
.mainmenubar {
  position: absolute;
  display: block;
  height: 3rem;
  top: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
}

.mainmenubar * {
  pointer-events: all;
}

.mainmenu .mainmenubar {
  position: fixed;
  opacity: 1;
}

body:not([show-main-menu]) .mainmenu .mainmenubar,
body:not([show-main-menu]) .mainmenu .mainmenubar * {
  opacity: 0;
  pointer-events: none;
}

.mainmenubar ul {
  position: absolute;
  display: flex;
  flex-wrap: nowrap;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  width: fit-content;
  width: -moz-fit-content;
  right: 0.5rem;
}

.mainmenubar li {
  display: block;
  width: 2rem;
  height: 2rem;
  margin-left: 1rem;
  background-color: var(--white-trans);
  cursor: pointer;
}

body[color-mode="black"] .mainmenubar li.iconbtmenulabel {
  color: black;
  background: transparent;
}

body[color-mode="black"] .mainmenubar li {
  background: var(--black-trans);
}

.mainmenu .mainmenubar li,
.mainmenu .mainmenubar2 li {
  background: var(--black-trans) !important;
}

.mainmenubar2 {
  position: absolute;
  width: 100%;
  display: block;
  height: 3rem;
  top: 0rem;
  right: 0;
  pointer-events: none;
  z-index: 1;
}

.mainmenubar2 * {
  pointer-events: initial;
}

@media only screen and (max-width: 920px) {
  body>.mainmenubar2 {
    display: none;
  }
}

.topbar .mainmenubar2 {
  display: none;
}

.mainmenubar2 ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  width: 10rem;
  margin-left: calc(100% - var(--box-typo-padding) - 14rem);
}

.mainmenubar2 li {
  display: block;
  width: 2rem;
  height: 2rem;
  margin-left: 1rem;
  background-color: var(--white-trans);
  cursor: pointer;
}

body[color-mode="black"] .mainmenubar2 li {
  background: var(--black-trans);
}

li.iconbt.iconbtuser {
  display: none;
}

.iconbtmenu {
  -webkit-mask-image: var(--lsf-icon-menu);
  mask-image: var(--lsf-icon-menu);
  margin-left: 2rem !important;
}

body[show-main-menu="true"] .iconbtmenu {
  -webkit-mask-image: var(--lsf-icon-menu-close);
  mask-image: var(--lsf-icon-menu-close);
  margin-left: 2rem;
  background: black;
}

.iconbtshop {
  -webkit-mask-image: var(--lsf-icon-shop);
  mask-image: var(--lsf-icon-shop);
}

.iconbtuser {
  -webkit-mask-image: var(--lsf-icon-user);
  mask-image: var(--lsf-icon-user);
}

.iconbtsearch {
  -webkit-mask-image: var(--lsf-icon-search);
  mask-image: var(--lsf-icon-search);
}

/* MAIN MENU */
.mainmenu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: calc(var(--window-sh));
  z-index: 20;
  overflow-x: hidden;
  pointer-events: none;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  opacity: 0;
  transition: opacity 0s var(--standard-time);
}

body[show-main-menu] .mainmenu {
  left: 0vw;
  pointer-events: initial;
}

body[col-count] .mainmenu {
  opacity: 1;
}

.mainmenuinnercont {
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
  min-height: calc(100vh + 1px);
}

body[col-count="1"] .mainmenuinnercont {
  flex-direction: column;
}

body[col-count="2"] .mainmenuinnercont {
  flex-direction: column;
  justify-content: stretch;
  align-content: stretch;
  align-items: stretch;
}

.mainmenu .box1 {
  width: calc(50%);
  min-height: calc(100%);
  padding-top: 5rem;
  background-color: var(--white-trans);
  transition: transform 1s;
}

body:not([show-main-menu]) .mainmenu .box1 {
  transform: translate(100%, 0);
}

body:not([show-main-menu]) .mainmenu .box2 {
  transform: translate(-100%, 0);
}

body:not([show-main-menu]) .mainmenu {
  transition: opacity 0s 1s;
}

body[show-main-menu] .mainmenu {
  transition: opacity 0s 0s;
}

body:not([show-main-menu]) .mainmenu {
  opacity: 0;
}

body[col-count="1"] .mainmenu .box1 {
  font-size: 0.82rem;
}

body[col-count="2"] .mainmenu .box1,
body[col-count="1"] .mainmenu .box1 {
  width: 100%;
  min-height: calc(var(--window-sh) - var(--window-sh) * 0.2);
}

body[col-count="2"] .mainmenu .box2,
body[col-count="1"] .mainmenu .box2 {
  width: 100%;
  height: calc(var(--window-sh) * 0.2);
}


body[col-count="1"]:not([show-main-menu]) .mainmenu .box1,
body[col-count="2"]:not([show-main-menu]) .mainmenu .box1 {
  transform: translate(0, -100%);
}

body[col-count="1"]:not([show-main-menu]) .mainmenu .box2,
body[col-count="2"]:not([show-main-menu]) .mainmenu .box2 {
  transform: translate(0%, 100%);
}

body[col-count="2"] .mainmenu .box1,
body[col-count="1"] .mainmenu .box1 {
  width: 100%;
  min-height: calc(var(--window-sh) - var(--window-sh) * 0.2);
}

body[col-count="2"] .mainmenu .box2,
body[col-count="1"] .mainmenu .box2 {
  width: 100%;
  height: calc(var(--window-sh) * 0.2);
}

.mainmenu .box2:after {
  position: absolute;
  top: 100%;
  width: 100%;
  height: 0;
  background-color: var(--black-trans);
  content: " ";
}

.mainmenu .box2 {
  width: 50%;
  min-height: 100%;
  background-color: var(--black-trans);
  transition: transform 1s;
}

body[show-main-menu] .mainmenu .box2 {
  /* left: calc(0%); */
}

body[col-count="2"] .mainmenu .box2 {
  width: 100%;
}

body[col-count="1"] .mainmenu .box2 {
  width: 100%;
}

body[col-count="1"][show-main-menu] .mainmenu .box2 {
  /* top: calc(100% * (9/12)); */
}

.additinalmenubox {
  padding: 1rem;
  font-size: 1.25em;
  line-height: 1.25em;
}

body[col-count="1"] .additinalmenubox,
body[col-count="2"] .additinalmenubox {
  display: none;
}

.karteninfobox>* {
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.newsletterbt {
  margin-top: 1em;
  margin-left: 1em;
  line-height: 2em;
  display: inline-block;
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.newsletterbt:before {
  content: " ";
  position: absolute;
  top: 0em;
  left: -1em;
  width: calc(100% + 2em);
  height: calc(100% + 0em);
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  border-radius: 1024px;
  z-index: 0;
}

.newsletterbt span {
  position: relative;
  z-index: 9;
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.newsletterbt:after {
  content: " ";
  position: absolute;
  top: calc(0em + 2px);
  left: calc(-1em + 2px);
  width: calc(100% + 2em - 4px);
  height: calc(100% + 0.0em - 4px);
  background: black;
  border-radius: 1024px;
  z-index: 0;
}

.mainmenulogos {
  position: absolute;
  bottom: 1rem;
  width: 100%;
  color: white;
  height: auto;
}

.mainmenulogo,
.mainmenulogo2 {
  position: absolute;
  bottom: 0;
  font-family: 'Girott Regular', sans-serif;
  font-size: calc((var(--menu-logo-wh) * 0.372));
  line-height: 0.9em;
  font-weight: 400;
  text-transform: uppercase;
  background: var(--seventy-gradient);
  background-attachment: fixed;
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

body[col-count="1"] .mainmenulogos {
  top: 1rem;
  bottom: auto;
}

body[col-count="1"] .mainmenulogo,
body[col-count="1"] .mainmenulogo2 {
  bottom: auto;
}

.mainmenulogo {
  left: 1rem;
}

.mainmenulogo2 {
  right: 2rem;
  text-align: right;
}

body[col-count="2"] .mainmenulogo2,
body[col-count="1"] .mainmenulogo2 {
  right: 1rem;
}

.mainmenu .iconbt {}

.mainmenu .linkmenu1 {
  font-size: 2em;
  line-height: 1.5em;
  padding: 1rem;
  padding-top: 0;
  padding-left: 2rem;
  padding-bottom: 2rem;
}

.mainmenu .linkmenu2 {
  padding: 1rem;
  font-size: 1.5em;
  line-height: 1.5em;
  padding-top: 0;
  padding-left: 2rem;
  padding-bottom: calc(1.5em + 2rem);
}

.mainmenu .linkmenu3 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(100%);
  padding: 1rem;
  font-size: 1.25em;
  line-height: 1.5em;
  padding-bottom: 1rem;
  padding-left: 2rem;
}

.mainmenu .linkmenu3 .mainlink {
  display: inline-block;
  margin-right: 0.5em;
}

.linkmenu3 .mainlink[is-active]:before {
  display: none;
}

.linkmenu3 .mainlink[is-active] span {
  border-bottom: 2px solid;
}

.mainmenu .mainlink {
  display: table;
  cursor: pointer;
  white-space: nowrap;
}

.mainmenu .mainlink span {
  position: relative;
}

.mainmenu .mainlink[is-active] span test {
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.mainmenu .mainlink[is-active]:before {
  content: " ";
  position: absolute;
  top: 0;
  left: -0.5em;
  width: calc(100% + 1em);
  height: calc(100% + 0.1em);
  background: var(--seventy-gradient);
  background-attachment: fixed;
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  border-radius: 1024px;
  z-index: 0;
}

/* KLAPP MENU */

.linkklappmenu .klappmenutitel {
  display: flex;
  align-items: center;
}

.linkklappmenu .klappmenutitel:after {
  content: " ";
  margin-left: 0.5rem;
  margin-top: 0.3rem;
  display: block;
  width: 0.72em;
  height: 0.72em;
  -webkit-mask-image: var(--lsf-arrow);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-image: var(--lsf-arrow);
  mask-size: contain;
  mask-repeat: no-repeat;
  background: currentColor;
  transform: rotate(0deg);
}

.linkklappmenu .klappmenulinks {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s;
  padding-left: 1rem;
  /* padding-bottom: 0.5rem; */
}

.linkklappmenu .klappmenutitel[is-expanded]+.klappmenulinks {
  max-height: 500px;
  overflow: hidden;
  padding-bottom: 0.5rem;
}

.linkklappmenu .klappmenutitel[is-expanded]:after {
  transform: rotate(-180deg);
}


/* LOGO */
.logos {
  position: absolute;
  top: var(--headspace-top);
  left: calc(var(--mainrect-left) + var(--box-typo-padding));
  margin-top: 0.8rem;
  margin-bottom: 1rem;
  width: calc(var(--logo-height) * 2 + 1rem);
  color: var(--white-trans);
  z-index: 9;
  transition: width var(--standard-time);
  cursor: pointer;
}

body[is-intro] .logos {
  display: none;
}

body[color-mode="black"] .logos {
  color: black;
}

.logo,
.logo2 {
  float: left;
  width: var(--logo-height);
  height: var(--logo-height);
  max-width: var(--logo-height);
  min-width: var(--logo-height);
  cursor: pointer;
  pointer-events: all;
  z-index: 11;
  font-family: 'Girott Regular', sans-serif;
  font-size: calc(var(--logo-height) / 2.6);
  line-height: 0.9em;
  font-weight: 400;
  text-transform: uppercase;
  transition: all var(--standard-time);
}

.logo2 {
  float: right;
  text-align: right;
}

body[p-name="production"] .logos {
  z-index: -1;
}

body[p-name="production"] .logo {
  position: fixed;
  transform-origin: top left;
  transform: scale(1.75);
}

body[p-name="production"] .logo2 {
  display: none;
}

/* MAIN */
main,
header {
  position: relative;
  width: calc(var(--col-w) * var(--col-count));
  margin-left: calc(100% - var(--col-w) * var(--col-count));
  /* margin-left: var(--mainrect-left); */
}

body[is-shop] main .page {
  margin-top: 6em;
}

section {
  width: calc(100% + var(--gap-w));
  display: flex;
  flex-wrap: wrap;
  margin-bottom: var(--section-gap);
}

body[p-type="2020/12/01/14/44/58615905/"] section {
  margin-bottom: 80vh;
}

section>* {
  margin-right: calc(var(--gap-w));
}

/* HEADER */
header {
  height: calc(var(--var(--logo-height)));
}

/* SUBMENU */
.submenu {
  position: sticky;
  display: block;
  width: calc(var(--col-w) * var(--col-count) + var(--main-gap-w));
  margin-left: auto;
  top: calc(1rem + var(--headspace-top));
  height: 3em;
  z-index: 9;
  opacity: 1;
  pointer-events: all;
  margin-bottom: 3rem;
}

body[menu-state="twoline"] .submenu,
body[menu-state="oneline"][last-menu-state="twoline"] .submenu {
  transition: top var(--standard-time) 0.1s;
}

body[menu-state="twoline"] .submenu {
  top: calc(4rem + var(--headspace-top));
}

body[col-count="1"][menu-state="twoline"] .submenu {
  top: calc(3rem + var(--headspace-top));
}

.submenuscrollcont {
  overflow-y: hidden;
  overflow-x: auto;
  padding-bottom: 128px;
  margin-bottom: -128px;
  padding-left: var(--box-typo-padding);
  padding-right: var(--box-typo-padding);
  --mask-padding: calc(var(--main-gap-w));
  --mask-image: linear-gradient(to right, transparent 0%, black var(--mask-padding), black calc(100% - var(--mask-padding)), transparent 100%);
  -webkit-mask-image: var(--mask-image);
  mask-image: var(--mask-image);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  min-width: 100%;
}

.submenuscrollconthider {
  position: absolute;
  max-width: 100%;
  min-width: 100%;
  height: 3rem;
  overflow: hidden;
}

.submenu ul {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding-left: calc(var(--main-gap-w));
  padding-right: calc(var(--main-gap-w));
}

.submenu li {
  display: block;
  border-radius: 64px;
  padding-right: 1rem;
  padding-left: 1rem;
  white-space: nowrap;
  cursor: pointer;
  line-height: 2.5rem;
  color: white;
  border: solid white 1.5px;
  margin-right: 0.5rem;
}

body[color-mode="black"] .submenu li {
  color: black;
  background: white;
}

.submenu li span {
  display: block;
  position: relative;
  z-index: 9;
}

.submenu li[is-active] {
  background: var(--white-trans);
  color: var(--black-trans);
}

body[color-mode="black"] .submenu li[is-active] {
  background: black;
  color: white;
  border: solid black 1.5px;
}

.submenu li.calmonthel,
.submenu li.caldayel,
.submenu li.calyearel {
  height: 3rem;
  width: 3rem;
  min-width: 3rem;
  padding: 0;
  margin-top: 0;
  font-family: 'Girott Regular', sans-serif;
  font-size: 1.5rem;
  line-height: 3rem;
  text-align: center;
  text-transform: uppercase;
}

body[col-count="1"] .submenu li {
  font-size: 0.75rem;
  line-height: 1.75rem;
  padding-left: 0.75rem;
}

body[col-count="1"] .submenu li.calmonthel,
body[col-count="1"] .submenu li.caldayel,
body[col-count="1"] .submenu li.calyearel {
  font-size: 1.25rem;
  padding-left: 0rem;
  height: 2.5rem;
  width: 2.5rem;
  min-width: 2.5rem;
  line-height: 2.4rem;
}

body[col-count="1"] .submenu li:first-child {}

/* scrollbar */
.digitalstagecatbox::-webkit-scrollbar {
  width: 11px;
  height: 11px;
}

.digitalstagecatbox {
  scrollbar-width: thin;
  scrollbar-height: thin;
  scrollbar-color: var(--scrollbar-handlerbg) var(--scrollbar-bg);
}

.digitalstagecatbox::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}

.digitalstagecatbox::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-handlerbg);
  border-radius: 6px;
  border: 3px solid var(--scrollbar-bg);
}

.edgescrollparent::-webkit-scrollbar {
  width: 11px;
  height: 11px;
}

.edgescrollparent {
  scrollbar-width: thin;
  scrollbar-height: thin;
  scrollbar-color: var(--scrollbar-handlerbg2) var(--scrollbar-bg2);
}

.edgescrollparent::-webkit-scrollbar-track {
  background: var(--scrollbar-bg2);
}

.edgescrollparent::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-handlerbg2);
  border-radius: 6px;
  border: 3px solid var(--scrollbar-bg2);
}

.edgescrollparent.black {
  scrollbar-width: thin;
  scrollbar-height: thin;
  scrollbar-color: var(--scrollbar-handlerbg) var(--scrollbar-bg);
}

.edgescrollparent.black::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}

.edgescrollparent.black::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-handlerbg);
  border-radius: 6px;
  border: 3px solid var(--scrollbar-bg);
}

/* FLEX BOX */
.flexbox:not([is-breaker]) {
  word-break: break-word;
  margin-bottom: var(--gap-h);
}

.flexbox[h-align="center"] {
  margin-left: auto;
  margin-right: auto;
}

.w1[h-align="center"] {
  margin-left: calc((var(--col-w4) - var(--col-w2))/2);
  margin-right: 0;
}

.w1[h-align="center"]+.w1[h-align="center"] {
  margin-left: 0;
  margin-right: calc((var(--col-w4) - var(--col-w2))/2);
}

a.flexboxlink {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* GAP BOX */
.gapbox {
  height: 6rem;
  background: transparent;
}

body[col-count="1"] .gapbox {
  height: 3rem;
}

/* TEXTBOXES */
.textbox1,
.textbox2,
.textbox3,
.textbox4,
.textbox2centered,
.textbox {
  height: auto;
  min-height: var(--box-min-height);
  padding: var(--box-typo-padding);
  padding-top: var(--box-typo-padding-top);
  padding-bottom: var(--box-typo-padding-bottom);
  padding-right: var(--box-typo-padding-right);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
}

.textbox1 {
  min-width: var(--col-w1);
  max-width: var(--col-w1);
}

.textbox2 {
  min-width: var(--col-w2);
  max-width: var(--col-w2);
}

.textbox3 {
  min-width: var(--col-w3);
  max-width: var(--col-w3);
}

.textbox4 {
  min-width: var(--col-w4);
  max-width: var(--col-w4);
}

.textbox2centered {
  min-width: var(--col-w2);
  max-width: var(--col-w2);
  margin-left: calc((var(--col-w4) - var(--col-w2)) / 2);
  margin-top: calc(var(--section-gap) / 2);
}

.textbox.centered {
  margin-left: calc((var(--col-w4) - var(--col-w2)) / 2);
  margin-top: calc(var(--section-gap) / 2);
}

/* HEADLINE BOX */
.headlinebox {
  min-width: var(--col-w4);
  max-width: var(--col-w4);
  padding-bottom: var(--bottom-padding);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
  padding-left: var(--box-typo-padding);
  padding-right: var(--box-typo-padding);
  margin-top: var(--section-gap) !important;
}

.headlinebox[show-sublink="off"] {
  height: 0;
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
  margin-bottom: 0;
  padding-bottom: 0;
}

.headlinebox:first-child {
  margin-top: 0px !important;
}

.headline {
  font-size: calc(var(--font-size) * (var(--col-count) + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  padding-right: var(--box-typo-padding-right);
  line-height: var(--line-height-headline);
}

body[col-count="4"] .headline {
  font-size: calc(var(--font-size) * (var(--col-count) + 0));
}

.headlinebox .subheadline {
  font-size: calc(var(--font-size) * (var(--col-count) * 0.25 + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  padding-right: var(--box-typo-padding-right);
  line-height: calc(var(--line-height-factor) * (var(--font-size) * (var(--col-count) * 0.25 + 1)));
}

.headlinebox .descboxes {
  display: flex;
  flex-wrap: wrap;
}

.headlinebox .desc:not(:empty),
.headlinebox .desc2:not(:empty) {
  margin-top: 3rem;
  margin-bottom: 0.8rem;
}

.headlinebox .desc {
  min-width: var(--col-w2);
  max-width: var(--col-w2);
  padding-right: var(--box-typo-padding-right);
}

.headlinebox .desc2 {
  margin-left: auto;
  min-width: var(--col-w1);
  max-width: var(--col-w1);
  padding-right: var(--box-typo-padding-right);
}

.headlinebox .desc2 a {
  border-bottom: 0px solid !important;
}

/* IMGTEXTBOXES */
.imgtextbox1,
.imgtextbox2,
.imgtextbox3,
.imgtextbox4 {
  height: auto;
  min-height: var(--box-min-height);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
}

.imgtextbox1 .textcont,
.imgtextbox2 .textcont,
.imgtextbox3 .textcont,
.imgtextbox4 .textcont {
  padding: var(--box-typo-padding);
  padding-top: var(--box-typo-padding-top);
  padding-bottom: var(--box-typo-padding-bottom);
  padding-right: var(--box-typo-padding-right);
}

.imgtextbox1 .imgcont,
.imgtextbox2 .imgcont,
.imgtextbox3 .imgcont,
.imgtextbox4 .imgcont {
  width: 100%;
  height: auto;
}

.imgtextbox1 .imgcont img,
.imgtextbox2 .imgcont img,
.imgtextbox3 .imgcont img,
.imgtextbox4 .imgcont img {
  margin-left: 0;
  width: calc(100% - var(--gap-h));
  height: 100%;
  object-fit: contain;
}

.imgtextbox1 {
  min-width: var(--col-w1);
  max-width: var(--col-w1);
}

.imgtextbox2 {
  min-width: var(--col-w2);
  max-width: var(--col-w2);
}

.imgtextbox3 {
  min-width: var(--col-w3);
  max-width: var(--col-w3);
}

.imgtextbox4 {
  min-width: var(--col-w4);
  max-width: var(--col-w4);
}

/* IMGBOXES */
.mediabox .link {
  display: none;
}

img.objcover,
.mediabox img,
.mediabox iframe,
.mediatextbox img {
  width: calc(100% - var(--gap-h));
  height: 100%;
  object-fit: cover;
}

.mediagallerybox .mediameta {
  position: relative;
  width: auto;
  display: block;
  margin-top: 0.5rem;
}

body[col-count="1"] .mediagallerybox .mediameta {
  font-size: 0.8rem;
  line-height: calc(var(--line-height-factor) * 0.8rem);
}

.mediagallerybox .mediameta .credits {
  color: #434343;
  display: block;
}

.mediagallerybox .mediameta .caption {
  color: #7d7d7d;
  display: block;
}

.gallerymediabox {
  margin-right: 1rem;
}

*[no-gaps] .gallerymediabox {
  margin-right: 0rem;
}

body[col-count="1"] .mediagallerybox .mediaboxcontent {
  height: 12rem;
}

.gallerymediabox * {
  pointer-events: none;
}

.mediagallerybox:hover {
  cursor: crosshair;
  cursor: var(--cursor-arrow-right);
}

.mediagallerybox img {
  height: 100%;
  object-fit: contain;
  object-position: top left;
}

.mediagallerybox {
  background: var(--black-trans);
  padding-top: 1.5rem;
  margin-left: calc(var(--main-gap-w) * -1);
  min-width: calc(var(--col-w4) + var(--main-gap-w)) !important;
  max-width: calc(var(--col-w4) + var(--main-gap-w)) !important;
  overflow: hidden;
}

.edgescroll.mediagallerybox {
  background: white;
  display: flex;
}

.mediagallerybox .mediaels {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 2rem;
}

img {
  width: auto;
  height: 100%;
  object-fit: cover;
}

.mediabox .videoplaybt {
  width: 64px;
  height: 64px;
  left: calc(50% - 32px);
  top: calc(50% - 32px);
  position: absolute;
  -webkit-mask-image: var(--lsf-icon-play);
  mask-image: var(--lsf-icon-play);
  background: white;
  pointer-events: none;
  z-index: 2;
}

.mediacont {
  line-height: 0;
}

*[media-size="logo"] .mediacont {
  width: 320px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
}

*[component-class="w2"][media-size="logo"] .mediacont {
  width: 364px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
}

*[component-class="w3"][media-size="logo"] .mediacont {
  padding-left: 25%;
  padding-right: 25%;
  padding-top: 5%;
  padding-bottom: 5%;
}

*[component-class="w4"][media-size="logo"] .mediacont {
  padding-left: 30%;
  padding-right: 30%;
  padding-top: 4%;
  padding-bottom: 4%;
}

.mediatextbox .mediameta {
  display: none;
}

.mediatextbox .text {
  height: auto;
  min-height: var(--box-min-height);
  padding: var(--box-typo-padding);
  padding-top: var(--box-typo-padding-top);
  padding-bottom: var(--box-typo-padding-bottom);
  padding-right: var(--box-typo-padding-right);
  margin-top: 0px;
}

.flexbox.w1 {
  background-color: var(--white-trans);
}

.imgbox1,
.imgbox2,
.imgbox3,
.imgbox4,
.mediabox {
  height: auto;
  min-height: var(--box-min-height);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
  line-height: 0;
}

.imgbox1,
.flexbox.w1 {
  min-width: var(--col-w1);
  max-width: var(--col-w1);
}

.flexbox[last-in-row]:not([h-align="center"]):not([component-name="ExcerptBox"]):after {
  content: " ";
  position: absolute;
  top: 0;
  left: 100%;
  width: 100vw;
  background: var(--white-trans);
  height: 100%;
}

.imgbox2,
.flexbox.w2 {
  min-width: var(--col-w2);
  max-width: var(--col-w2);
}

.imgbox3,
.flexbox.w3 {
  min-width: var(--col-w3);
  max-width: var(--col-w3);
}

.w4[component-class="w2"]:not(.excerptbox) {
  min-width: var(--col-w2) !important;
  max-width: var(--col-w2) !important;
}

.w4[component-class="w2"][h-align="center"]:not(.excerptbox) {
  margin-left: calc((var(--col-w4) - var(--col-w2))/2);
  margin-right: calc((var(--col-w4) - var(--col-w2))/2);
}

.imgbox4,
.flexbox.w4 {
  min-width: var(--col-w4);
  max-width: var(--col-w4);
}

.w2.flexbox[h-align="center"] {
  margin-left: calc((var(--col-w4) - var(--col-w2))/2);
  margin-right: calc((var(--col-w4) - var(--col-w2))/2);
}

/* SUBMENUHEADLINE */
.submenuheadline4 {
  min-width: var(--col-w4);
  max-width: var(--col-w4);
  padding-bottom: var(--bottom-padding);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
  padding-left: var(--box-typo-padding);
  padding-right: var(--box-typo-padding);
  font-size: calc(var(--font-size) * (var(--col-count) + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  line-height: var(--line-height-headline);
}

.mainscroll {
  width: 100%;
  position: relative;
  height: fit-content;
  height: -moz-fit-content;
  overflow-x: hidden;
  overflow-y: hidden;
  min-height: calc(100vh - 16rem);
}

/* SHOP */
#showsoft {
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  background-color: var(--white-trans);
}

/* KALENDER */
.weeksectiontitel {
  text-transform: uppercase;
  margin-bottom: var(--box-typo-padding-top);
  color: white;
  padding-top: 4rem;
}

.weeksectiontitel:first-child {
  padding-top: 0rem;
}

.weeksectiontitel:before {
  opacity: 0;
}

.productionentry {
  width: calc(var(--col-w4) + var(--main-gap-w));
  background-color: var(--white-trans);
  height: 12rem;
  display: flex;
  flex-direction: row;
  padding-left: var(--main-gap-w);
  margin-left: calc(var(--main-gap-w) * -1);
  margin-bottom: var(--box-typo-padding-top);
  overflow: hidden;
  --scope-border-color: black;
}

.productionentrylink {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.productionentry:before {
  content: " ";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  color: white;
  background: linear-gradient(180deg, rgb(221, 221, 221) 0%, rgb(255, 255, 255) 75%, rgb(255, 255, 255) 100%);
}

.productionentry:hover:before {
  opacity: 1;
}

.productionentry .buttons {
  margin-top: 0.5rem;
}

.productionentry .infotext {
  padding-right: 0.5rem;
  pointer-events: none;
}

.productionentry[size-mode="small"] {
  width: 5rem;
  height: 3.5rem;
}

.productionentry:not([size-mode="small"])+.productionentry[size-mode="small"] {
  min-width: 10rem;
  max-width: 10rem;
}

.productionentry:not([size-mode="small"])+.productionentry[size-mode="small"]:before {
  content: "+";
  position: relative;
  display: block;
  font-size: 3rem;
  width: 3.5rem;
  height: 3.5rem;
  line-height: 3.125rem;
}

.productionentry .dreiklang,
.productioncalsectionel .datedreiklang {
  font-family: 'Girott Regular', sans-serif;
  font-size: 2em;
  line-height: 0.85em;
  font-weight: 400;
  text-transform: uppercase;
  max-width: 5em;
  min-width: 5em;
  padding-top: calc(var(--box-typo-padding-top) + 4px);
  pointer-events: none;
}

.productionentry[size-mode="small"] .dreiklang {
  font-size: 1em;
}

.productionentry .infobox {
  padding: var(--box-typo-padding);
  padding-top: var(--box-typo-padding-top);
  padding-bottom: var(--box-typo-padding-bottom);
  flex-grow: 1;
  pointer-events: none;
  margin-right: 1rem;
  width: calc(100% - (100% - 780px) - 5em);
}

.productionentry[size-mode="small"] .infobox {
  display: none;
}

.buttons {
  display: flex;
}

.desc2info {
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.ticketbt:not([onclick]) {
  pointer-events: none !important;
}

.ticketbt,
.livebt,
.icalbt {
  border: solid 1px black;
  border-radius: 2rem;
  display: inline-block;
  width: 240px;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  margin-top: 0.25em;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  margin-bottom: 0.25em;
  margin-right: 0.25rem;
  pointer-events: all;
  cursor: pointer;
}

.ticketbt,
.livebt,
.icalbt {
  display: flex;
  line-height: 1em;
  overflow: hidden;
}

.alivebt[href="x"],
.alivebt[href="x"] * {
  pointer-events: none;
}

.ticketbt>*,
.icalbt>*,
.livebt>* {
  margin: auto;
  margin-top: 0.4em;
  position: relative;
}

.icalbt>span,
.livebt>span {
  margin-right: 0.333em;
}

.livebt:after {
  content: " ";
  display: block;
  margin: auto;
  margin-left: 0;
  mask-image: var(--lsf-icon-live);
  -webkit-mask-image: var(--lsf-icon-live);
  mask-size: contain;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  width: 1.5em;
  height: 1.5em;
  background-color: #000000;
}

.icalbt:after {
  content: " ";
  display: block;
  margin: auto;
  margin-left: 0;
  mask-image: var(--lsf-icon-ical);
  -webkit-mask-image: var(--lsf-icon-ical);
  mask-size: contain;
  -webkit-mask-size: contain;
  width: 1.2em;
  height: 1.2em;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: #000000;
}

.livebt[media-type-name="Video"]:after {
  mask-image: var(--lsf-icon-video);
  -webkit-mask-image: var(--lsf-icon-video);
  width: 1.2em;
  height: 1.2em;
}

.productionentry .thumbnail {
  height: 100%;
  width: calc(100% - 780px);
  max-width: 520px;
  overflow: hidden;
  pointer-events: none;
}

.productionentry[size-mode="small"] .thumbnail {
  display: none;
}

.productionentry .thumbnail .media {
  width: 100%;
  height: 100%;
}

.productionentry .thumbnail .media>* {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body[col-count="1"] .productionentry:not([size-mode="small"]) .dreiklang,
body[col-count="1"] .productioncalsectionel .datedreiklang {
  max-width: 4em;
  min-width: 4em;
  font-size: 1.75em;
  overflow: hidden;
}

body[col-count="1"] .productionentry:not([size-mode="small"]) .dreiklang:after,
body[col-count="1"] .productioncalsectionel .datedreiklang:after {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1.5rem;
  height: 100%;
  background: linear-gradient(to left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 30%, rgba(255, 255, 255, 0) 100%);
}

body[col-count="1"] .ticketbt {
  width: 159px;
}

body[col-count="1"] .livebt,
body[col-count="1"] .icalbt {
  width: auto;
}

body[col-count="1"] .infotext {
  overflow: hidden;
}

@media only screen and (max-width: 1080px) {
  .livebt {
    width: auto;
  }

  .ticketbt .pothide,
  .livebt .pothide,
  .icalbt .pothide {
    display: none;
  }

  .icalbt {
    width: auto;
  }

  .productionentry .thumbnail {
    display: none;
  }
}

/* RECOMMENDATION MENU */
.recommendmenu {
  position: absolute;
  width: calc(var(--col-w) * var(--col-count) - 26rem);
  right: calc(26rem / 2);
  text-align: center;
  padding-top: 0rem;
  line-height: 1.5rem;
  padding-top: 0.75rem;
  white-space: nowrap;
  z-index: 1;
  margin-top: 0rem;
  color: var(--white-trans);
  overflow: visible;
}

body[color-mode="black"] .recommendmenu {
  color: var(--black-trans);
}

@media only screen and (max-width: 920px) {
  body>.recommendmenu {
    display: none;
  }
}

body[col-count="1"] .recommendmenu {
  display: none;
  width: calc(var(--col-w) * var(--col-count) - 3rem);
  right: calc(3rem);
  text-align: left;
}

body[col-count="1"][menu-state="twoline"][logo-state="hidden"] .recommendmenu {
  display: block;
}

.recommendlink {
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
  font-size: 1em;
}

body[col-count="1"] .recommendlink {
  font-size: 0.8em;
  line-height: var(--line-height);
  margin-left: 0;
  margin-right: 1rem;
}

.recommendlink[is-active] {
  border-bottom: 1.5px solid;
}

.recommendlink[is-subactive] {
  border-bottom: 1.5px dashed;
}

/* BACKGROUND */
.bgmedia {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
}

.bgmedia canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#bgmedia {
  top: 256px;
  width: 100%;
  height: auto;
  position: fixed;
  opacity: 0.000001;
  pointer-events: none;
  touch-actions: none;
}

img#bgmedia {
  display: none;
}

.background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--body-height) * 1);
  z-index: -999;
  pointer-events: none;
}

.background>* {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.topbgoverlay .background {
  background: #ffffff;
}

/* FORMS */
.formbox2 {
  padding: 1rem;
  min-width: var(--col-w2);
  max-width: var(--col-w2);
  background-color: black;
}

.forminputradio {
  padding-bottom: 0.5rem;
  padding-top: 0.5rem;
  padding-right: 1rem;
}

.forminputradio label {
  display: block;
  padding-left: 1.5rem;
  cursor: pointer;
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.forminputradio input[type="radio"] {
  position: absolute;
  display: inline-block;
  top: calc(var(--line-height) / 2 + 2px);
  width: 1rem;
  height: 1rem;
  opacity: 0;
  margin: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
}

.radiobtn {
  pointer-events: none;
  position: absolute;
  display: inline-block;
  cursor: pointer;
  top: calc(var(--line-height) / 2);
  left: 0;
  height: 1rem;
  width: 1rem;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  border-radius: 100%;
  margin-right: 0.5rem;
}

.radiobtn:after {
  content: " ";
  position: absolute;
  display: block;
  left: 1px;
  top: 1px;

  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 100%;
  transition: opacity var(--standard-time);
  background: black;
}

.forminputradio input[type="radio"]:checked~.radiobtn:after {
  opacity: 0;
}

.formradiobox {
  margin-bottom: 0.5rem;
}

.formhl {
  width: calc(100% + var(--form-padding-left) * 1);
  height: 1px;
  margin-left: calc(var(--form-padding-left) * -1);
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  margin-bottom: 0.5rem;
}

.formdescbox,
.formheadlinebox {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-right: 0.5rem;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

/* FORM BUTTON */
.form_sendbt {
  cursor: pointer;
  margin-top: 2em;
  margin-left: 1em;
  line-height: 2em;
  display: inline-block;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.form_sendbt:before {
  content: " ";
  position: absolute;
  top: -0.1em;
  left: -1em;
  width: calc(100% + 2em);
  height: calc(100% + 0.1em);
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  border-radius: 1024px;
  z-index: 0;
}

.form_sendbt span {
  position: relative;
  display: block;
  margin-top: -0.12em;
  margin-bottom: 0.12em;
  z-index: 9;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.form_sendbt:after {
  content: " ";
  position: absolute;
  top: calc(-0.1em + 1px);
  left: calc(-1em + 1px);
  width: calc(100% + 2em - 2px);
  height: calc(100% + 0.1em - 2px);
  background: black;
  border-radius: 1024px;
  z-index: 0;
}

.form_sendbt:hover:after {
  opacity: 0;
}

.form_sendbt:hover span {
  color: black;
  -webkit-background-clip: initial;
  -webkit-text-fill-color: initial;
  -moz-background-clip: initial;
  -moz-text-fill-color: initial;
}

.forminputtext input {
  display: block;
  box-sizing: border-box;
  font-family: 'MonumentGroteskBold';
  width: calc(100% + var(--form-padding-left) * 1);
  margin-left: calc(var(--form-padding-left) * -1);
  padding-left: calc(var(--form-padding-left) * 1);
  padding-top: 1.25rem;
  padding-bottom: 0.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: inherit;
  border: 0;
  outline: 0;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.forminputtext input:not(:focus) {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.forminputtext_hltop,
.forminputtext_hlbottom {
  position: absolute;
  left: 0;
  width: calc(100% + var(--form-padding-left) * 1);
  height: 1px;
  margin-left: calc(var(--form-padding-left) * -1);
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.forminputtext_hltop {
  top: 0;
}

.forminputtext_hlbottom {
  bottom: 0;
}

.forminput+.forminput {
  margin-top: -1px;
}

.forminputtext input:focus {
  color: black;
}

.forminputtext input::placeholder {

  opacity: 0;
}

.forminputtext label {
  position: absolute;
  top: 0.5rem;
  left: 0;
  display: block;
  margin-left: calc(var(--form-padding-left) * -1);
  margin-top: -0.5rem;
  padding-left: calc(var(--form-padding-left) * 1);
  font-size: 0.75rem;
  background: var(--seventy-gradient-bright);
  /* background-attachment: fixed;
     */
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.forminputtext input:not(:focus)+label {
  font-size: 1rem;
  padding-top: 0.75rem;
}

.forminputtext input:focus+label {
  color: black;
  background: var(--seventy-gradient-trans);
  -webkit-background-clip: initial;
  -webkit-text-fill-color: initial;
  -moz-background-clip: initial;
  -moz-text-fill-color: initial;
}

.forminputtext input:not(:focus):not(:placeholder-shown)+label {
  opacity: 0;
  pointer-events: none;
}

.formtextarea textarea {
  display: block;
  box-sizing: border-box;
  font-family: 'MonumentGroteskBold';
  width: calc(100% + var(--form-padding-left) * 1);
  height: 8rem;
  margin-left: calc(var(--form-padding-left) * -1);
  padding-left: calc(var(--form-padding-left) * 1);
  padding-top: 1.25rem;
  padding-bottom: 0.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: inherit;
  border: 0;
  outline: 0;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.formtextarea textarea:not(:focus) {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.formtextarea_hltop,
.formtextarea_hlbottom {
  position: absolute;
  left: 0;
  width: calc(100% + var(--form-padding-left) * 1);
  height: 1px;
  margin-left: calc(var(--form-padding-left) * -1);
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.formtextarea_hltop {
  top: 0;
}

.formtextarea_hlbottom {
  bottom: 0;
}

.formtextarea textarea:focus {
  color: black;
}

.formtextarea textarea::placeholder {
  opacity: 0;
}

.formtextarea label {
  position: absolute;
  top: 0.5rem;
  left: 0;
  display: block;
  margin-left: calc(var(--form-padding-left) * -1);
  margin-top: -0.5rem;
  padding-left: calc(var(--form-padding-left) * 1);
  font-size: 0.75rem;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.formtextarea textarea:not(:focus)+label {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
  font-size: 1rem;
  padding-top: 0.75rem;
}

.formtextarea textarea:focus+label {
  color: black;
  background: var(--seventy-gradient-trans);
  -webkit-background-clip: initial;
  -webkit-text-fill-color: initial;
  -moz-background-clip: initial;
  -moz-text-fill-color: initial;
}

.formtextarea textarea:not(:focus):not(:placeholder-shown)+label {
  display: none;
}

.formcheckbox {
  padding-bottom: 0rem;
  padding-top: 1rem;
  padding-right: 1rem;
}

.formcheckbox label {
  display: block;
  padding-left: 1.5rem;
  cursor: pointer;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.formcheckbox input[type="checkbox"] {
  position: absolute;
  display: inline-block;
  top: calc(var(--line-height) / 2 + 0.5rem + 2px);
  width: 1rem;
  height: 1rem;
  opacity: 0;
  margin: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
}

.checkboxbtn {


  pointer-events: none;
  position: absolute;
  display: inline-block;
  cursor: pointer;
  top: calc(var(--line-height) / 2 + 0.5rem);
  left: 0;
  height: 1rem;
  width: 1rem;
  background: var(--seventy-gradient-bright);
  /* background-attachment: fixed;
     */
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  margin-right: 0.5rem;
}

.checkboxbtn:before {
  content: " ";
  display: block;
  position: absolute;
  width: 25%;
  height: 50%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(32deg);
  border-right: solid black 2px;
  border-bottom: solid black 2px;
}

.checkboxbtn:after {
  content: " ";
  position: absolute;
  display: block;
  left: 1px;
  top: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  transition: opacity var(--standard-time);
  background: black;
}

.formcheckbox input[type="checkbox"]:checked~.checkboxbtn:after {
  opacity: 0;
}

.form_responsebox {
  margin-top: 1rem;
  margin-left: calc(var(--form-padding-left) * -1);
}

.form_repsonsebox span {
  position: relative;
  z-index: 9;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.form_responsebox:before {
  content: " ";
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  width: calc(100%);
  height: calc(100%);
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  z-index: 0;
  box-sizing: border-box;
}

.form_responsebox:not(:empty):before {
  opacity: 1;
}

.form_responsebox:after {
  content: " ";
  opacity: 0;
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: black;
  z-index: 0;
  box-sizing: border-box;
}

.form_responsebox:not(:empty):after {
  opacity: 1;
}

.form_responsebox span {
  position: relative;
  display: block;
  padding: 1rem;
  box-sizing: border-box;
  z-index: 9;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

/* FORM AUSNAHMEN */
div[formbox-name="Gechlecht"] .forminputradio {
  display: inline-block;
  width: 50%;
}

/* PRODUCTION OVERVIEW */
.productionoverview {
  display: inline-flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 5rem;
}

.productionthumbmedia {
  width: 100%;
  height: 100%;
  transform: rotate3d(1, 1, 0, 0deg);
  background: black;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform var(--standard-time);
}

.productionthumb {
  cursor: pointer;
  width: calc((var(--col-w) * var(--col-count) - 1rem * (var(--production-thumbcolcount)))/ var(--production-thumbcolcount));
  height: calc((var(--col-w) * var(--col-count) - 1rem * (var(--production-thumbcolcount)))/ var(--production-thumbcolcount));
  overflow: hidden;
  margin-right: 1rem;
  margin-bottom: 1rem;
}

.productionthumb img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.productiondreiklang {
  position: absolute;
  top: 0.08em;
  left: 0;
  font-family: 'Girott Regular', sans-serif;
  font-size: calc(calc((var(--col-w) * var(--col-count) - 1rem * (var(--production-thumbcolcount)))/ var(--production-thumbcolcount)) * 0.23);
  line-height: 0.9em;
  font-weight: 400;
  text-transform: uppercase;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform var(--standard-time);
}

.productionthumbmedia,
body[production-switchstate="1"] .productiondreiklang {
  transform: rotate3d(1, 1, 0, 0deg);
}

.productiondreiklang,
body[production-switchstate="1"] .productionthumbmedia {
  transform: rotate3d(1, 1, 0, 180deg);
}

body[production-switchstate="1"] .productionthumb:hover .productionthumbmedia,
body:not([production-switchstate="1"]) .productionthumb:hover .productiondreiklang {
  transform: rotate3d(-1, -1, 0, 0deg);
}

body:not([production-switchstate="1"]) .productionthumb:hover .productionthumbmedia,
body[production-switchstate="1"] .productionthumb:hover .productiondreiklang {
  transform: rotate3d(-1, -1, 0, 180deg);
}

.filtermenu {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
  row-gap: 0.75rem;
}

body[col-count="1"][menu-state="twoline"] .filtermenu {
  top: 3rem;
}

.filtermenu .labelcontentsec {
  max-width: 100%;
}

.filtermenu .labelcontentsec .contentsec {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1em;
  row-gap: 0.75rem;
}

.filtermenu .labelcontentsec .labelsec {
  padding-left: 0.5rem;
  padding-bottom: 0.25rem;
  color: grey;
  display: none;
}

body[col-count="1"] .filtermenu .labelcontentsec .labelsec {
  display: none;
}

.filtermenu .searchbar {
  display: flex;

}

.filtermenu .searchbar .searchinputfield {
  margin-left: auto;
  font-size: inherit;
  font-family: inherit;
  width: 11rem;
  padding: 0.25rem 0.75rem;
  border: 2px solid;
  height: fit-content;
  height: -moz-fit-content;
  border-radius: 1rem;
  line-height: var(--line-height);
  background: white;
  outline: none;
}

.kalenderfiltermenu {
  position: relative;
  margin-bottom: 3rem;
  padding-right: 1rem;
}

.kalenderfiltermenu>a {
  margin-left: auto;
  text-decoration: underline
}

body[col-count="1"] .kalenderfiltermenu>a,
body[col-count="2"] .kalenderfiltermenu>a {
  display: none;
}

.kalenderfiltermenu .dropdownfilter .fieldsec,
.kalenderfiltermenu .dropdownfilter .dropdownsec,
.kalenderfiltermenu .searchbar .searchinputfield {
  border: 0px solid;
}

[all-filterels-hidden]>*,
[all-filterels-hidden-by-search]>* {
  display: none;
}

[lang="de"] [all-filterels-hidden]:after,
[lang="de"] [all-filterels-hidden-by-search]:after {
  margin-top: 1em;
  font-family: 'MonumentGroteskBold', sans-serif;
  font-weight: 400;
  font-size: 1.25em;
  line-height: 1.1em;
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

[lang="de"] [all-filterels-hidden="0"]:after,
[lang="de"] [all-filterels-hidden-by-search="0"]:after {
  content: "Hier spielt noch keine Musik. Ändern Sie Ihre Suchanfrage und finden Sie den passenden Klang.";
}

[lang="de"] [all-filterels-hidden="1"]:after,
[lang="de"] [all-filterels-hidden-by-search="1"]:after {
  content: "Keine Pauken und Trompeten – Ihre Suchanfrage ergab leider keinen Treffer.";
}

[lang="de"] [all-filterels-hidden="2"]:after,
[lang="de"] [all-filterels-hidden-by-search="2"]:after {
  content: "Zugabe, Zugabe – probieren Sie es erneut mit einer angepassten Suchanfrage.";
}

[lang="en"] [all-filterels-hidden="0"]:after,
[lang="en"] [all-filterels-hidden-by-search="0"]:after {
  content: "Sorry, your search query yielded no results - please change your tune.";
}

[lang="en"] [all-filterels-hidden="1"]:after,
[lang="en"] [all-filterels-hidden-by-search="1"]:after {
  content: "Encore, encore - try again with a customised search query.";
}

[lang="en"] [all-filterels-hidden="2"]:after,
[lang="en"] [all-filterels-hidden-by-search="2"]:after {
  content: "Your search didn't ring a bell. Try a different key, please.";
}

.productionmenu {
  padding-left: var(--main-gap-w);
}

.productionmenu .thumbswitchbutton {
  width: 5rem;
  min-width: 5rem;
  height: 2rem;
  border-radius: 3rem;
  cursor: pointer;
  background-color: white;
  box-sizing: content-box;
}

.filterel[is-hidden],
*.filterel[hidden-by-search] {
  display: none;
}

.productionmenu .thumbswitchbutton:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: solid 2px;
  border-radius: 2rem;
}

.productionmenu .thumbswitchbutton .switcher {
  position: absolute;
  left: 0px;
  top: 0px;
  border-radius: 3rem;
  mix-blend-mode: exclusion;
  background-color: white;
  width: 2.75rem;
  height: 100%;
  transition: left 0.3s;
}

.productionmenu .switchiconleft {
  position: absolute;
  top: 0;
  left: 0.365rem;
  width: 2rem;
  height: 2rem;
}

.productionmenu .switchiconleft .kasten {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 50%;
  transform: translate(-50%, -50%);
  border: solid 2px;
}

.productionmenu .switchiconright {
  position: absolute;
  top: 0;
  right: 0.365rem;
  width: 2rem;
  height: 2rem;
}

.productionmenu .switchiconright .line1,
.productionmenu .switchiconright .line3,
.productionmenu .switchiconright .line2 {
  position: absolute;
  top: 25%;
  left: 25%;
  width: 56%;
  height: 2px;
  background: black;
}

.productionmenu .switchiconright .line2 {
  top: calc(50% - 1px);
  width: 67%;
}

.productionmenu .switchiconright .line3 {
  top: calc(75% - 2px);
  width: 50%;
}

body[production-switchstate="1"] .productionmenu .thumbswitchbutton .switcher {
  left: 2.25rem;
}

.thumbslider {
  width: 10rem;
  height: 2rem;
  border-radius: 3rem;
  cursor: pointer;
  background-color: white;
  box-sizing: content-box;
  /* margin-right: 1rem; */
  margin-bottom: 0.5rem;
}

.slider * {
  pointer-events: none;
}

.thumbsliderdownbt {
  position: absolute;
  top: 0;
  left: 0;
  width: 2rem;
  height: 2rem;
}

.thumbsliderdownkasten {
  border: 2px solid;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40%;
  height: 40%;
  transform: translate(-50%, -50%);
}

.sliderline {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: black;
  transform: translate(0%, -50%);
}

.sliderbt {
  position: absolute;
  background: black;
  right: calc(((100% - 2rem) / (var(--production-thumbcolcount-max) - var(--production-thumbcolcount-min))) * (var(--production-thumbcolcount) - var(--production-thumbcolcount-min)));
  width: 2rem;
  height: 2rem;
  border-radius: 2rem;
  transition: right 0.15s;
}

.thumbslider .slider {
  position: absolute;
  top: 0;
  left: 2rem;
  width: calc(100% - 4rem);
  height: 2rem;
}

.thumbsliderupbt {
  position: absolute;
  top: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
}

.thumbsliderupkasten {
  border: 2px solid;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70%;
  height: 70%;
  transform: translate(-50%, -50%);
}

/* PRDUKTIONEN */
.textbox2.productiondescmainbox {
  margin-left: 0;
}

.textbox1.productiondescsidebox {
  margin-left: auto;
}

body[col-count="2"] .textbox1.productiondescsidebox {
  margin-left: 0;
  min-width: var(--col-w2);
  max-width: var(--col-w2);
}

.mainscroll .productiondescsidebox p a {
  border-bottom: 0 !important;
}

.mainscroll .productiondescsidebox p a:after {
  content: " " !important;
  position: relative !important;
  display: inline-block !important;
  border: 1em solid !important;
  width: 0px !important;
  height: 0px !important;
  transform: rotate(360deg) !important;
  margin-left: 2px !important;
  margin-right: 2px !important;
  border-style: solid !important;
  border-width: 0.25em 0 0.25em 0.5em !important;
  border-color: transparent transparent transparent var(--black-trans) !important;
  background: transparent;
  left: auto;
  margin-top: unset;
}

.datesandtickets {
  min-width: var(--col-w3);
  max-width: var(--col-w3);
  padding-bottom: var(--bottom-padding);
  margin-bottom: var(--gap-h);
  background-color: var(--white-trans);
  padding-left: var(--box-typo-padding);
  padding-right: var(--box-typo-padding);
  margin-left: auto;
  font-size: calc(var(--font-size) * (var(--col-count) + 1));
  font-family: 'MonumentGroteskMedium', sans-serif;
  font-weight: 400;
  line-height: var(--line-height-headline);
}

.productioncalsectionel {
  display: flex;
  flex-direction: row;
  margin-left: auto;
}

.productionlogosectionel {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  font-size: 0.75em;
  line-height: var(--line-height);
}

.productionlogosectionel .logolink img {
  position: relative;
  display: block;
  height: calc(5rem);
  width: auto;
  margin-right: 3rem;
  margin-top: 1rem;
}

body[col-count="1"] .productionlogosectionel .logolink img {
  position: relative;
  display: block;
  height: calc(3rem);
  width: auto;
  margin-right: 3rem;
  margin-top: 1rem;
}

.productionlogosectionel .title {}

.productionlogosectionel .logolist {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.productionlogosectionel .info {
  margin-top: 1.5rem;
  width: var(--col-w2);
}

.productioncalsectionel .infobox {
  display: flex;
  flex-direction: column;
  padding: var(--box-typo-padding);
  padding-top: var(--box-typo-padding-top);
  padding-bottom: var(--box-typo-padding-bottom);
  pointer-events: none;
}

/* ARTIST OVERVIEW */
a.artistoverviewlink {}

a.artistoverviewlink:after {
  display: inline;
  color: transparent;
  content: "\00A0\00A0\00A0";
  position: relative;
  margin-left: 0.125em;
  margin-right: 0em;
  background-position: 0% 60%;
  background-size: 60%;
  background-repeat: no-repeat;
  background-image: var(--lsf-icon-artist-triangle);
}

.artistoverview {
  color: white;
  font-size: calc(6vw - var(--main-gap-w) + 1.5rem);
  line-height: calc((6vw - var(--main-gap-w) + 1.5rem) * 1);
  font-family: 'MonumentGroteskMedium';
  margin-bottom: 4rem;
  margin-right: 2rem;
}

body[col-count="1"] a.artistoverviewlink {
  display: block;
  line-height: 1em;
}

pre {
  position: relative;
  max-width: 90%;
  word-break: break-word;
  white-space: pre-wrap;
  display: none;
}

/* FOOTER */
.footer {
  padding-top: calc(var(--main-gap-w));
  padding-left: calc(var(--main-gap-w));
  padding-right: calc(var(--main-gap-w));
  padding-bottom: calc(var(--main-gap-w) *2);
  background: black;
  color: white;
}

body[col-count="1"] .footer {
  fontsize: 0.75em;
}

.hashtaglink {
  padding: 0.5rem 1rem 0.5rem 1rem;
  margin-right: 1rem;
  margin-bottom: 1rem;
  border: solid 1px;
}

.hashtaglinks {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5rem;
}

body[col-count="1"] .hashtaglinks {
  margin-bottom: 3rem;
}

body[col-count="1"] .hashtaglink {
  padding: 0.333rem 0.666rem 0.333rem 0.666rem;
  margin-right: 0.666rem;
  margin-bottom: 0.666rem;
  font-size: 0.666rem;
}

.footertextbox {
  text-align: center;
}

.mainht {
  font-size: 3rem;
  font-family: 'MonumentGroteskMedium';
  margin-bottom: 0.5rem;
  line-height: var(--line-height);
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

body[col-count="1"] .mainht {
  font-size: 2rem;
}

.socialicons>*>div {
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  cursor: pointer;
  background: var(--seventy-gradient);
  background-attachment: fixed;
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.socialicons {
  margin-bottom: 4rem;
}

body[col-count="1"] .hashtaglinks {
  margin-bottom: 3rem;
}

.lsffullname {
  font-family: 'Girott Regular', sans-serif;
  font-size: 1.5rem;
  text-transform: uppercase;
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

body[col-count="2"] .lsffullname {
  font-size: 1rem;
}

body[col-count="1"] .lsffullname {
  font-size: 0.75rem;
}

.sharehint {
  background: var(--seventy-gradient);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.instaiconbt {
  -webkit-mask-image: var(--lsf-icon-instagram);
  mask-image: var(--lsf-icon-instagram);
}

.fbiconbt {
  -webkit-mask-image: var(--lsf-icon-facebook);
  mask-image: var(--lsf-icon-facebook);
}

/* DIGTAL STAGE */
*[ds-media-typename="video"] .digitalstageicon {
  mask-image: var(--lsf-icon-digitalstage-video);
  -webkit-mask-image: var(--lsf-icon-digitalstage-video);
}

.digitalstagsubbox {
  width: 100%;
}

.digitalstagesubbox {
  height: 100%;
  margin-right: 1rem;
  cursor: pointer;
}

.digitalstagesubbox:last-child {
  margin-right: 0rem;
}

.digitalstagmediabox {
  height: 100%;
  pointer-events: all;
}

.digitalstagmediabox img,
.digitalstagmediabox video {
  height: calc(100% - 10rem);
  width: -moz-available;
  transition: opacity var(--standard-time);
  position: relative;
  height: 15rem;
}

.digitalstagedreiklang {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  margin-top: -4px;
  font-family: 'Girott Regular', sans-serif;
  font-size: 2em;
  line-height: 0.85em;
  font-weight: 400;
  text-transform: uppercase;
  max-width: 5em;
  min-width: 5em;
  padding-top: var(--box-typo-padding-top);
  pointer-events: none;
  color: white;
}

body[p-name="digitalstage"] .digitalstagedreiklang {
  top: calc(var(--dscutout-w)*0.02);
  left: calc(var(--dscutout-w)*0.05);
}

.digitalstagedreiklangtime {
  display: none;
  margin-top: -4px;
  font-family: 'Girott Regular', sans-serif;
  font-size: 2em;
  line-height: 0.85em;
  font-weight: 400;
  text-transform: uppercase;
  max-width: 100%;
  min-width: 100%;
  padding-top: var(--box-typo-padding-top);
  pointer-events: none;
}

.digitalstagtextbox {
  position: absolute;
  top: calc(15rem);
  color: white;
  padding: 0.5rem;
  padding-left: 0;
  width: 100%;
  font-size: 1rem;
  line-height: calc(var(--line-height) * 1);
}

.digitalstagedescription2 {
  display: none;
}

.digitalstagecatbox {
  color: white;
  display: flex;
  flex-wrap: nowrap;
  overflow-y: hidden;
  height: auto;
  background: var(--black-trans);
  padding-top: 0;
  margin-left: calc(var(--main-gap-w) * -1);
  min-width: calc(var(--col-w4) + var(--main-gap-w)) !important;
  max-width: calc(var(--col-w4) + var(--main-gap-w)) !important;
}

.digitalstageyategoryheadline {
  font-family: 'MonumentGroteskBold';
  font-size: 1.4rem;
  line-height: var(--line-height-headline);
  margin-bottom: 2rem;
  margin-top: 3rem;
  color: white;
}

.digitalstagenearest .digitalstagmediabox {
  height: 100%;
  background: var(--black-trans);
  line-height: 0;
  max-width: calc(var(--col-w2) - 1rem);
  min-width: calc(var(--col-w2) - 1rem);
}

.digitalstagenearest .digitalstagmediabox img {
  width: 100%;
  height: 100% !important;
}

.digitalstagecatboxinner {
  display: flex;
  flex-wrap: nowrap;
  height: 25rem;
  padding-left: calc(var(--main-gap-w) * 1);
  padding-right: calc(var(--main-gap-w) * 1);
}

.digitalstagemediatypeiconbox {
  flex-wrap: nowrap;
  position: absolute;
  display: flex;
  top: 0.5rem;
  right: 0.5rem;
  height: 3em;
  min-width: 4rem;
  border: solid 0.15em white;
  border-radius: 3rem;
  text-align: center;
  padding-left: 1em;
  padding-right: 1em;
  color: white;
}

.digitalstagemediatypeicon {
  -webkit-mask-image: var(--lsf-icon-video);
  mask-image: var(--lsf-icon-video);
  background: white;
  width: 2em;
  min-width: 2em;
  max-width: 2em;
  height: 2em;
  min-height: 2em;
  max-height: 2em;
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 0;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.digitalstagesubtitle {
  display: none;
}

body[col-count="1"] .digitalstagtextbox {
  top: 10rem;
  font-size: 0.75rem;
  line-height: var(--line-height);
}

.digitalstagetitle {
  display: none;
}

.digitalstagesubbox:hover img {
  opacity: 0.5;
}

/* ISSUUU */
.issuucontainer {
  position: relative;
  width: 100%;
  /* min-width: calc(100% + var(--main-gap-w)) !important; */
  /* margin-left: calc(var(--main-gap-w) * -1) !important; */
  /* margin-right: calc(var(--main-gap-w) * -1) !important; */
  /* overflow: hidden; */
}

.issuumaxh {
  position: relative;
  top: 0;
  left: 0;
  width: calc(100% + var(--main-gap-w));
  height: 0;
  padding-top: 66%;
  margin-left: calc(var(--main-gap-w) * -1);
  overflow: hidden;
}

.issuucontainer iframe {
  max-height: 90vh;
}

.shopbox {
  line-height: 0;
}

video.introvideo {
  position: fixed;
  cursor: pointer;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.skipintro {
  line-height: 3rem;
  border: solid 1px;
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  color: white;
  font-family: 'MonumentGroteskMedium';
  font-size: 2rem;
  cursor: pointer;
  border-radius: 3rem;
  width: 14rem;
  text-align: center;
}

.introaudioicon {
  width: 3rem;
  height: 3rem;
}

.introaudioicon {
  display: none;
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  width: 3rem;
  height: 3rem;
  -webkit-mask-image: var(--lsf-icon-sound);
  mask-image: var(--lsf-icon-sound);
  background-color: white;
  cursor: pointer;
}

.introaudioicon[audio-state="off"] {
  -webkit-mask-image: var(--lsf-icon-sound-off);
  mask-image: var(--lsf-icon-sound-off);
}

a.digitalstagesubboxlink {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.dsmainmediabox {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding-bottom: 0 !important;
}

.dsmain {
  width: 100%;
}

.digitalstagesection {
  margin-left: auto;
  margin-right: auto;
  color: white;
  width: var(--col-w2);
  min-width: var(--col-w2);
  max-width: var(--col-w2);
  margin-bottom: 12rem;
}

.dsmainmediabox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.formbox {
  background: black;
}

.forminput[input-name="Titel, Vor- und Nachname"] .forminputtext_hltop,
.forminput[input-name="Email"] .forminputtext_hlbottom {
  display: block;
}

.ytbox {
  min-width: calc(var(--col-w1)) !important;
  max-width: calc(var(--col-w1)) !important;
  padding-top: calc((1/(16/9)) * var(--col-w1) + 4rem);
}

.form[form-name="newsletter"] .formdescbox {
  margin-bottom: 2rem;
}

.mediagallerybox .gallerydreiklang {
  font-family: 'Girott Regular', sans-serif;
  font-weight: 400;
  line-height: 0.85em;
  font-size: 2em;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  cursor: pointer;
}

.digitalstagenearest {
  min-width: 100%;
  max-width: 100%;
}

.digitalstagenearest .digitalstagesubbox {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

body[col-count="1"] .digitalstagemediatypeiconbox {
  font-size: 0.8rem;
}

.digitalstagenearest .digitalstagtextbox {
  position: absolute;
  left: var(--col-w2);
  width: var(--col-w1);
  min-width: var(--col-w1);
  max-width: var(--col-w1);
  margin-left: auto;
  top: 0 !important;
}

*[is-audio] .digitalstagemediatypeicon {
  -webkit-mask-image: var(--lsf-icon-audio);
  mask-image: var(--lsf-icon-audio);
}

.digitalstagedreiklangtime {
  margin-bottom: 0.25em;
}

*[is-live] .digitalstagemediatypeicon {
  -webkit-mask-image: var(--lsf-icon-live);
  mask-image: var(--lsf-icon-live);
}

body[col-count="2"] .digitalstagenearest .digitalstagtextbox,
body[col-count="2"] .digitalstagenearest .digitalstagtextbox,
body[col-count="1"] .digitalstagenearest .digitalstagtextbox {
  position: relative;
  left: 0;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  margin-top: 0.5rem;
  height: 7rem;
}

body[col-count="1"] .digitalstagecatbox {
  height: 19rem;
}

*[has-realdate="1"][is-past="0"] .digitalstagedreiklangtime {
  display: block;
}

.digitalstagefuture {
  display: flex;
  margin-top: 3rem;
}

.edgescrollparent {
  overflow-x: auto;
}

.edgescroll.mediagallerybox .gallerydreiklang,
.edgescroll.mediagallerybox .gallerytitle {
  width: 14rem;
  margin-left: calc(var(--main-gap-w) + var(--box-typo-padding));
}

.edgescroll.mediagallerybox .gallerytitle {
  font-family: 'MonumentGroteskBold';
  font-size: 1em;
  line-height: calc(var(--line-height) * 1.125);
}

.edgescroll .mediaboxcontent {
  height: 16rem;
}

.edgescrollparent .mediaboxcontent {
  height: 24rem;
}

body[col-count="2"] .edgescrollparent .mediaboxcontent {
  height: 16rem;
}

.mediagallerybox .gallerydreiklang:empty {
  display: none;
}

.mediagallerybox .gallerytitle:empty {
  display: none;
}

.mediadonloadbt {
  display: none;
}

.edgescroll.mediagallerybox .gallerymediabox .mediadonloadbt {
  background: white;
  display: block;
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  width: 2rem;
  height: 2rem;
  border-radius: 2rem;
  cursor: pointer;
  pointer-events: all;
}

.edgescroll.mediagallerybox .gallerymediabox .mediadonloadicon {
  content: " ";
  width: 100%;
  height: 100%;
  background: black;
  -webkit-mask-image: var(--lsf-icon-download);
  mask-image: var(--lsf-icon-download);
}

.mediaels.edgescrollparent .edgescrollparentinnercont {
  display: flex;
}

.digitalstagenearest .digitalstagedreiklang {
  font-size: 2.5rem;
}

.form a {
  background: var(--seventy-gradient-bright);
  /* background-attachment: fixed;
     */
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.form a:after {
  content: " " !important;
  position: absolute;
  left: 0;
  margin-top: 1.3em;
  width: 100%;
  height: 1px;
  margin-left: 0 !important;
  background: var(--seventy-gradient-bright);
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

btn a {
  border-bottom: 0 !important;
}

btn {
  display: inline-block;
  bottom: 1rem;
  left: 0.5rem;
  width: fit-content;
  width: -moz-fit-content;
  border-radius: 64px;
  padding-right: 1rem;
  padding-left: 1rem;
  white-space: nowrap;
  cursor: pointer;
  height: 2.5rem;
  line-height: 2.5rem;
  border: solid 1.5px;
  margin-bottom: 5px;
}

.ytbox {
  background: black !important;
}

.ytbox iframe {
  top: 2rem !important;
  width: calc(100% - 3px) !important;
  height: calc(100% - 4rem) !important;
}

.mediatextbox {
  background-color: white;
}

body[col-count="1"] .productionentry {
  height: fit-content;
  height: -moz-fit-content;
}

.w2.ytbox {
  min-width: calc(var(--col-w2)) !important;
  max-width: calc(var(--col-w2)) !important;
  padding-top: calc((1/(16/9)) * var(--col-w2) + 4rem);
}

body[col-count="1"] .edgescroll.mediagallerybox .gallerydreiklang,
body[col-count="1"] .edgescroll.mediagallerybox .gallerytitle {
  width: 10rem;
  margin-bottom: 1rem;
}

body[col-count="1"] .edgescroll.mediagallerybox {
  flex-wrap: wrap;
}

body[col-count="1"] .mediaels.edgescrollparent:before {
  content: " ";
  padding-left: calc(var(--main-gap-w) + var(--box-typo-padding));
  display: block;
  position: relative;
  height: 100px;
}

.hscrollinnercont {
  padding-left: var(--main-gap-w);
}

.dsmainmediabox .digitalstagemediatypeiconbox {
  width: fit-content;
  width: -moz-fit-content;
  top: calc(var(--dscutout-w)*0.02);
  right: calc(var(--dscutout-w)*0.05);
}

.dsmainedescription2 btn {}

.dsmaintextbox btn {
  margin-top: 3rem;
}

.dsmainmediabox .digitalstagedreiklang {
  font-size: calc(var(--dscutout-w)*0.08);
}

btn a:after,
btn a:before {
  display: none;
}

a.flexboxlink[href=""] {
  display: none;
}

body[show-main-menu] {}

.introplaybt {
  position: fixed;
  z-index: 9999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  mask-image: var(--lsf-icon-play);
  -webkit-mask-image: var(--lsf-icon-play);
  background: white;
  width: 9rem;
  height: 9rem;
  cursor: pointer;
}

body[intro-is-playing] .introaudioicon {
  display: block;
}

body[intro-is-playing] video.introvideo {
  cursor: auto;
}

.digitalstagefuture.digitalstagecatbox:empty {
  display: none;
}

.flexrowwrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

*[is-past="1"][is-live] .digitalstagemediatypeicon {
  -webkit-mask-image: var(--lsf-icon-video);
  mask-image: var(--lsf-icon-video);
}

.excerptbox:empty {
  display: none;
}

body[col-count="2"] .headlinebox .desc2 {
  margin-left: 0;
}

/* Share box */
.sharebox {
  position: absolute;
  top: 15.25rem;
  display: block;
  color: black;
  right: 0;
  left: auto;
}

.digitalstagenearest .sharebox {
  left: calc(var(--col-w2) + var(--col-w1) - 42.5px);
  right: auto;
}

.sharebox .dottediconbt {
  width: 2.5rem;
  height: 1.5rem;
  border-radius: 2rem;
}

.sharebox .dottediconbt:hover {
  background: white;
}

.sharebox .dottediconbt:hover .dottedicon {
  background: black;
}

.sharebox .dottedicon {
  pointer-events: none;
  position: absolute;
  top: 0;
  right: 0.5rem;
  -webkit-mask-image: var(--lsf-icon-metaballs);
  mask-image: var(--lsf-icon-metaballs);
  width: 1.5rem;
  height: 1.5rem;
  background: white;
}

.sharebox .shareboxiconlinks {
  position: absolute;
  width: 12rem;
  padding: 0.5rem;
  border-radius: 0.75rem;
  top: 0;
  right: 0;
  background: white;
  display: none;
}

.sharebox[is-open] .shareboxiconlinks {
  display: block;
}

.sharebox .sharelinkicon {
  background: black;
  width: 1.5rem;
  height: 1.5rem;
}

.sharebox .sharelinkicon[icon-id="copy"] {
  -webkit-mask-image: var(--lsf-icon-copy);
  mask-image: var(--lsf-icon-copy);
}

.sharebox .sharelinkicon[icon-id="mail"] {
  -webkit-mask-image: var(--lsf-icon-mail);
  mask-image: var(--lsf-icon-mail);
}

.sharebox .sharelinkicon[icon-id="facebook"] {
  -webkit-mask-image: var(--lsf-icon-facebook);
  mask-image: var(--lsf-icon-facebook);
}

.sharebox .sharelinkicon[icon-id="whatsapp"] {
  -webkit-mask-image: var(--lsf-icon-whatsapp);
  mask-image: var(--lsf-icon-whatsapp);
}

.sharebox .sharelinkicon[icon-id="twitter"] {
  -webkit-mask-image: var(--lsf-icon-twitter);
  mask-image: var(--lsf-icon-twitter);
}

.sharebox .closeiconbt {
  position: absolute;
  z-index: 999;
  top: 0.5rem;
  right: 0.5rem;
  width: 1rem;
  height: 1rem;
  -webkit-mask-image: var(--lsf-icon-menu-close);
  mask-image: var(--lsf-icon-menu-close);
  background: black;
}

a.shareboxlink {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  margin-bottom: 0.2rem;
}

.digitalstagenearest .sharebox {
  top: 0.25rem !important;
}

body[col-count="1"] .sharebox {
  top: 10.25rem;
  font-size: 0.8rem;
}

body[col-count="1"] .shareboxiconlinks {
  width: 10rem;
}

a.artistoverviewlink {}

li.iconbtmenulabel {
  background: transparent;
  color: white;
  line-height: 2rem;
  width: 3rem;
}

.mainmenu li.iconbtmenulabel {
  display: none;
}

body[col-count="2"] li.iconbtmenulabel,
body[col-count="1"] li.iconbtmenulabel {
  display: none;
}

.mainmenubar .iconbtmenu {
  margin-left: 0rem !important;
}

.mediaels.edgescrollparent.black .edgescrollparentinnercont:after {
  content: " ";
  top: 0;
  width: var(--main-gap-w);
  position: relative;
  display: block;
  height: 10px;
}

.mediaels.edgescrollparent.black .edgescrollparentinnercont:before {
  content: " ";
  top: 0;
  padding-left: var(--main-gap-w);
  position: relative;
  display: block;
  height: 100%;
}

body[p-name="digitalstage"] .mainscroll {
  margin-top: calc(var(--background-h) * 1 - (12rem + var(--headspace-top)));
  background: black;
  padding-top: 1rem;
  box-shadow: #000000ad 0px 0px 64px;
}

body>* {
  pointer-events: initial;
}

.dsmainmediawrapper {
  position: fixed;
  top: var(--dscutout-y);
  left: var(--dscutout-x);
  width: var(--dscutout-w);
  height: var(--dscutout-h);
  z-index: -1000;
}

body[p-name="digitalstage"] .background {
  max-height: calc(var(--body-width) * 1.75);
  transition: filter 2s;
}

body[p-name="digitalstage"] {
  background: black;
}

.dsblende {
  position: fixed;
  top: calc(-0.5 * 100vh);
  left: calc(-0.5 * 100vw);
  width: 200vw;
  height: 200vh;
  pointer-events: none;
  z-index: 999999999999999;
}

.dsblende1,
.dsblende2,
.dsblende3 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  pointer-events: none;
}

.dsblende1 {
  background: radial-gradient(circle, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 100%);
  transition: opacity 3s
}

.dsblende2 {
  background: black;
  transition: opacity 1s
}

.dsblende3 {
  margin-top: calc(0.88 * var(--dscutout-y) + (-0.5 * 100vh));
  background: radial-gradient(circle, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 1) 100%);
  transition: opacity 0.1s;
  display: none;
}

body[bg-renderstarted] .dsblende1,
body[bg-renderstarted] .dsblende2 {
  opacity: 0;
}

.iggallery .thumbbox {
  height: auto;
  width: auto;
  margin-right: calc(var(--gap-h)*1);
  cursor: pointer;
}

.iggallery .thumbcontent img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.iggallery .thumbboxes {
  width: calc(100%);
  height: calc(300px + 4.333rem);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding-right: var(--main-gap-w);
  padding-bottom: 0.5rem;
}

body[col-count="1"] .iggallery .thumbboxes {
  height: calc(200px + 4.3333rem);
}

.iggallery {
  width: 100%;
  background: black;
  padding-top: calc(var(--gap-h)*3);
  color: white;
}

.iggallery .edgescrollparent {
  padding-left: calc(var(--mainrect-left) + var(--box-typo-padding));
}

.iggallery .edgescrollparent .edgescrollparentinnercont:after {
  padding-right: calc((var(--mainrect-left) + var(--box-typo-padding))*1);
  content: " ";
}

body[is-hashtag] .topspacer,
body[is-search] .topspacer {
  height: calc(9rem + var(--headspace-top)) !important;
}

.productionentry[ticket-info="abgesagt"]>*,
.productionentry[ticket-info="cancelled"]>* {
  opacity: 0.5;
}

.productionentry[ticket-info="abgesagt"]>.thumbnail,
.productionentry[ticket-info="abgesagt"]>.dreiklang,
.productionentry[ticket-info="cancelled"]>.thumbnail,
.productionentry[ticket-info="cancelled"]>.dreiklang {
  opacity: 1.0;
}

.productioncalsectionel[ticket-info="abgesagt"]>*,
.productioncalsectionel[ticket-info="cancelled"]>*,
.productioncalsectionel[is-past]>* {
  opacity: 0.5;
}

.productioncalsectionel[ticket-info="abgesagt"] .buttons,
.productioncalsectionel[ticket-info="cancelled"] .buttons,
.productioncalsectionel[is-past] .buttons,
.productioncalsectionel[ticket-info="abgesagt"] .buttons *,
.productioncalsectionel[ticket-info="cancelled"] .buttons *,
.productioncalsectionel[is-past] .buttons * {
  pointer-events: none !important;
}

.productioncalsectionel[ticket-info="abgesagt"]>.thumbnail,
.productioncalsectionel[ticket-info="cancelled"]>.thumbnail {
  opacity: 1.0;
}

.digitalstagemediatypetext {
  margin-top: auto;
  margin-right: 0.333rem;
  margin-bottom: auto;
  height: 2rem;
  line-height: 1.9rem;
}

.kalenderhinweis {
  margin-bottom: 2rem;
  color: black;
  width: var(--col-w2);
}

.digitalstageduration:not(:empty) {
  min-height: calc(var(--line-height-factor) * 1rem);
}

body[col-count="1"] .digitalstagmediabox img {
  height: 10rem;

}

body[col-count="1"] .digitalstagecatbox {
  height: 18rem;
}

body[col-count="1"] .digitalstagenearest .sharebox,
body[col-count="2"] .digitalstagenearest .sharebox {
  left: calc(100% - 3.5rem);
  margin-top: -7rem;
  position: relative;
}

.iframebox iframe {
  width: 100%;
  border: none;
  outline: 0;
  padding: 0;
  margin: 0;
}

.iframebox p {
  line-height: 0;
}

.shortlinkslogos {
  width: calc(var(--logo-height) * 2 + 1rem);
  color: var(--seventy-color);
  height: var(--logo-height);
  margin-bottom: 3rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
}

.shortlinkslogos .logo,
.shortlinkslogos .logo2 {
  transition: none;
}

.shortlinksbox {
  width: calc(100% - 2rem);
  padding: 1rem;
  margin: auto;
}

a.shortlink {
  display: flex;
  color: var(--seventy-color);
  text-align: center;
  border: solid 2px;
  border-radius: 2em;
  line-height: 1em;
  padding: 0.55em;
  padding-top: 0.45em;
  padding-bottom: 0.6em;
  margin-bottom: 1rem;
  font-size: 1.25em;
  margin-left: auto;
  margin-right: auto;
  max-width: 480px;
}

.shortlink>div {
  margin: auto;
}

body.shortlinksbody {
  min-height: 100vh;
  background-color: black;
}

.shortlinkssocialicons div {
  width: 3rem;
  height: 3rem;
  background: var(--seventy-color);
  -webkit-mask-size: cover;
  mask-size: cover;
}

.shortlinkssocialicons {
  display: flex;
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
  width: -moz-fit-content;
  margin-top: 2em;
}

a.shortlink:hover {
  background: var(--seventy-color);
  color: black;
}

.langlink[is-active] {
  pointer-events: none;
}

.iggallery .thumbcontent {
  height: 300px;
  width: 300px;
}

body[col-count="1"] .iggallery .thumbcontent {
  height: 200px;
  width: 200px;
}

#fsgallery {
  --fsgallery-arrow-w: 3rem;
  --fsgallery-bg-color: black;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999999999999;
  background: var(--fsgallery-bg-color);
  opacity: 0;
  transition: opacity 0.3s;
}

#fsgallery.iggallery {
  --fsgallery-bg-color: rgb(0 0 0 / 60%);
  --fsgallery-bg-color-trans: rgba(0, 0, 0, 0%);
}

.fsgalleryel::-webkit-scrollbar {
  width: 11px;
  height: 11px;
}

.fsgalleryel {
  scrollbar-width: thin;
  scrollbar-height: thin;
  scrollbar-color: var(--scrollbar-handlerbg) var(--scrollbar-bg);
}

.fsgalleryel::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}

.fsgalleryel::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-handlerbg);
  border-radius: 6px;
  border: 3px solid var(--scrollbar-bg);
}

/* .iggallery .fsgalleryel::-webkit-scrollbar {
     width: 11px;
     height: 11px;
}
 .iggallery .fsgalleryel{
     scrollbar-width: thin;
     scrollbar-height: thin;
     scrollbar-color: var(--scrollbar-handlerbg2) var(--scrollbar-bg2);
}
 .iggallery .fsgalleryel::-webkit-scrollbar-track {
     background: var(--scrollbar-bg2);
}
 .iggallery .fsgalleryel::-webkit-scrollbar-thumb {
     background-color: var(--scrollbar-handlerbg2) ;
     border-radius: 6px;
     border: 3px solid var(--scrollbar-bg2);
}
*/
.fsgalleryels {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex !important;
  flex-direction: row;
  flex-wrap: nowrap;
  transition: left 0.3s;
}

.fsgalleryel {
  min-width: 100%;
  max-width: 100%;
  padding-left: calc(var(--fsgallery-arrow-w)*0.5);
  padding-right: calc(var(--fsgallery-arrow-w)*0.5);
  min-height: 100%;
  max-height: 100%;
  height: 100%;
  overflow-y: auto;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  padding-top: 1rem;
  padding-bottom: 2rem;
}

.fsgalleryel iframe,
.fsgalleryel blockquote {
  /* height: 80%;
     */
  min-width: 270px !important;
  margin: auto !important;
  max-width: 480px !important;
  /* height: auto;
     */
  /* padding: 1rem !important;
     */
}

.fsgalleryprevbt {
  position: absolute;
  left: 0;
  top: 0;
  width: calc(var(--fsgallery-arrow-w));
  height: 100%;
  background: linear-gradient(-90deg, var(--fsgallery-bg-color-trans) 0%, var(--fsgallery-bg-color) 100%);
  z-index: 9;
}

.fsgallerynextbt {
  position: absolute;
  right: 0;
  top: 0;
  width: calc(var(--fsgallery-arrow-w));
  height: 100%;
  background: linear-gradient(90deg, var(--fsgallery-bg-color-trans) 0%, var(--fsgallery-bg-color) 100%);
  z-index: 10;
}

.fsgalleryclosebt {
  position: absolute;
  top: 0;
  right: 0;
  background: green;
  width: calc(var(--fsgallery-arrow-w));
  height: calc(var(--fsgallery-arrow-w));
  z-index: 11;
  background: transparent;
}

.iggallery .thumbmeta {
  height: 3rem;
  display: flex;
  padding-top: 0.333rem;
}

#fsgallery .arrowright,
#fsgallery .arrowleft,
#fsgallery .closex {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem;
  background-color: white;
  mask-size: contain;
  -webkit-mask-size: contain;
}

#fsgallery .arrowright {
  -webkit-mask-image: var(--lsf-icon-arrow-right);
  mask-image: var(--lsf-icon-arrow-right);
}

#fsgallery .closex {
  -webkit-mask-image: var(--lsf-icon-close-x);
  mask-image: var(--lsf-icon-close-x);
}

#fsgallery .arrowleft {
  -webkit-mask-image: var(--lsf-icon-arrow-left);
  mask-image: var(--lsf-icon-arrow-left);
}

.intsaprofileicon {
  background-image: url(../imgs/insta.png);
  width: 41px;
  height: 41px;
  background-size: contain;
}

.instaauthorname {
  margin-top: 0.1rem;
  height: 0.9rem;
  font-weight: 600;
}

.instatextblock {
  margin-left: 0.5rem;
  font-size: 0.8rem;
}

.instalocation {
  font-size: 0.9em;
}

.iggallery .galleryfsel {
  position: fixed;
  width: 100vw;
  height: 100vh;
}

.whitecentered {
  text-align: center;
  color: white;
  background: transparent;
}

.excerptbt.excerptbt2 {
  left: 8.5rem;
}

.ds_stagelink {
  border-radius: 2rem;
  padding-right: 1rem;
  padding-left: 1rem;
  white-space: nowrap;
  width: fit-content;
  width: -moz-fit-content;
  cursor: pointer;
  line-height: 2.3rem;
  border: solid 1.5px;
  height: 2.5rem;
  z-index: 9;
  margin-left: 0.25em;
  margin-right: 0.25em;
  background: white;
  color: #000000;
  /* font-family: 'MonumentGroteskMedium';
     */
  transition: color 0.3s, background 0.3s;
}

.ds_stagelink:hover {
  color: white;
  background: transparent;
}

.dsstagelinks {
  position: fixed;
  top: calc(var(--background-h) * 1 - (6.5rem));
  left: 0;
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  z-index: -1;
  justify-content: space-between;
  overflow-x: auto;
  padding-left: calc(var(--mainrect-left) + var(--box-typo-padding));
  padding-right: 1rem;
}

.ds_stagelink:first-of-type {
  /* margin-left: calc(var(--mainrect-left) + var(--box-typo-padding));
     */
}

input#searchinput {
  color: white;
  outline: 0;
  text-align: left;
  padding-left: 1em;
  display: flex;
  border-top-left-radius: 20em;
  border-bottom-left-radius: 20em;
  white-space: nowrap;
  border: solid 2px white;
  border-right: 0;
  height: 3em;
  line-height: 3em;
  width: calc(100% - 5rem);
  max-width: 16em;
  font-size: calc((var(--font-size) * (var(--col-count) / 3 + 1))*1);
  background-color: transparent;
}

button#startsearchbutton {
  display: flex;
  border-top-right-radius: 20em;
  border-bottom-right-radius: 20em;
  line-height: 3em;
  height: 3em;
  border: solid 2px white;
  border-left: 0;
  border: 0;
  font-size: calc((var(--font-size) * (var(--col-count) / 3 + 1))*1);
  background: white;
  color: black;
  width: 3em;
  box-sizing: border-box;
  cursor: pointer;
}

.searchform {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  max-width: calc(100% - (var(--mainrect-left) + var(--box-typo-padding)));
  width: 100%;
  justify-content: flex-end;
}

button#startsearchbutton:hover {
  color: white;
  background: black;
}

button#startsearchbutton:hover~input#searchinput {
  border-color: black;
}

button#startsearchbutton:hover .serachformiconbt.iconbtsearch {
  background: white;
}

input#searchinput::-webkit-input-placeholder,
input#searchinput::placeholder {
  color: rgb(255 255 255 / 75%);
}

.serachformiconbt.iconbtsearch {
  display: block;
  width: 2em;
  height: 2em;
  background: black;
  margin: auto;
}

a.location_link {
  border-bottom: 1px solid;
  pointer-events: all !important;
}

.productionentry[is-past] .infobox {
  opacity: 0.5;
}

.productionentry[is-past] .ticketbt {
  display: none;
}

.yearsectiontitel {
  text-transform: uppercase;
  margin-bottom: var(--box-typo-padding-top);
  /* color: white;
     */
  padding-top: 4rem;
}

.yearsectiontitel:before {
  display: none !important;
}

.ds_16zu9scale {
  position: absolute;
  top: 0px;
  left: 0px;
  padding-bottom: 56.25%;
  width: 100%;
  height: auto;
  overflow: hidden;
}

*[col-count="1"] .ds_16zu9scale {
  position: absolute;
  top: 0;
  left: 0;
  padding-bottom: calc(56.25% * 2);
  width: calc(100% * 2);
  height: auto;
  overflow: hidden;
  transform: scale(calc(1/2), calc(1/2));
  transform-origin: 0px 0px;
}

.dskronleuchter {
  position: fixed;
  top: calc(var(--dscutout-y) - (var(--dscutout-h)/1080)*1550);
  left: calc(var(--dscutout-x) + var(--dscutout-w) * 0.52 - (var(--dscutout-w) / 3.39)/2);
  width: calc(var(--dscutout-w) / 3.39);
  height: calc(var(--dscutout-h) / 0.58);
  background-image: url(../imgs/ds_kronleuchter.png);
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: top 2s, filter 2s;
}

*[dsmode="dark"] .dskronleuchter {
  top: calc(0px + (var(--dscutout-h)/1080)*441 - calc(var(--dscutout-h) / 0.58));
  filter: grayscale(1) brightness(0.2);
}

body[p-name="digitalstage"][dsmode="dark"] .background {
  filter: grayscale(1) brightness(0.2);
}

.topbar>* {
  pointer-events: all;
}

.ticketbt:hover {
  border: solid 1px rgb(3 169 244 / 0%) !important;
}

.ticketbt:hover {
  background: black;
}

.ticketbt:before {
  content: " ";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  color: white;
  background: var(--seventy-gradient-bright);
  background-attachment: fixed;
  background-size: var(--seventy-gradient-bgsize);
  animation: var(--seventy-gradient-anibgposx);
}

.ticketbt:hover:before {
  opacity: 1;
}

body[color-mode="black"] .whitecentered {
  color: black;
}

.flexbox.w4.igbox {
  min-width: var(--body-width);
  max-width: var(--body-width);
  margin-left: calc(-1*(var(--mainrect-left) + var(--box-typo-padding)));
}

body[perma-link="digitale_buehne"] {
  background: black;
}

body[perma-link="digitale_buehne"] .topbgoverlay {
  background: black;
}

.dsmediapasswordoverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  --bg-color: #121212;
  --bg-stripe-color: #232323;
  background: repeating-linear-gradient(45deg, var(--bg-color) 0px, var(--bg-color) 5px, var(--bg-stripe-color) 5px, var(--bg-stripe-color) 10px);
  display: flex;
}

#dsmediapasswordinputfield {
  margin: auto;
  font-size: inherit;
  font-family: inherit;
  padding: 0.5em;
  border: 0;
  outline: 0;
  background: white;
  text-align: center;
}

.dsmediacountdownoverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  --bg-color: #121212;
  --bg-stripe-color: #121212;
  background: repeating-linear-gradient(45deg, var(--bg-color) 0px, var(--bg-color) 5px, var(--bg-stripe-color) 5px, var(--bg-stripe-color) 10px);
  display: flex;
}

.dsmediacountdownoverlay .countdownbox {
  margin: auto;
  display: flex;

}

.dsmediacountdownoverlay .countdownbox .part {
  width: 4em;
}

.dsmediacountdownoverlay .countdownbox .part .num {
  font-size: 2em;
  margin-bottom: 0.25em;
}

.dsmediacountdownoverlay .countdownbox .part .unit {
  font-size: 0.75em;
}

.dsmediacountdownoverlay .countdownbox * {
  text-align: center
}

.ffetcshopmenubuttonswrapper {
  margin-bottom: 2em;
  width: fit-content;
  width: -moz-fit-content;
  margin-left: auto;
  margin-right: auto;
}

.etsContentWrapper {
  background-color: #ffffff !important;
  /* outline: solid 1em white; */
}

app-ets-component-router {
  /* background-color: transparent; */
}

.etsShop {
  background-color: transparent !important;
}

.ffetcshopwrapper {
  width: 100%;
  /* margin-left: calc(-1 * (100vw - var(--col-w) * var(--col-count))); */
  background: white;
  outline: solid 2em white;
  padding-top: 2em;
}

a.logolinka[href="javascript:;"] {
  pointer-events: none;
}