/* #region Fonts */

@font-face {
  font-family: "documenta-sans-regular";
  src: url("../fonts/documenta-sans-regular-table.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "documenta-sans-regular-table";
  src: url("../fonts/documenta-sans-regular-table.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "documenta";
  src: url("../fonts/documenta.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "documenta-sans-italic";
  src: url("../fonts/documenta-italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "documenta-bold";
  src: url("../fonts/documenta-bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

/* Symbole */

@font-face {
  font-family: "amatiksymbols";
  src: url("../fonts/amatiksymbols.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}

/* #endregion Fonts */

.skip_navi {
  position: absolute;
  left: -999999px;
  top: -999999px;
}

:focus-visible {
  outline: 1px dashed var(--clr-blau-100);
  outline-offset: 2px;
  border-radius: 4px;
}

:root {
  /*--font-h1: clamp(1.5rem, 1.3rem + 1vw, 2.5rem); 40px */
  --font-h1: clamp(2.25rem, 1.825rem + 2.125vw, 4.375rem); /* 36-70px */
  --font-h1-med: clamp(2.25rem, 1.925rem + 1.625vw, 3.875rem); /* 36-62*/
  --font-h1-big: clamp(2.5rem, 1.875rem + 3.125vw, 5.625rem); /*90px*/
  /* --font-h2: clamp(1.625rem, 1.575rem + 0.25vw, 1.875rem); 30px */
  /* --font-h2: clamp(1.625rem, 1.55rem + 0.375vw, 2rem); /* 26-32px */
  --font-h2: clamp(1.875rem, 1.85rem + 0.125vw, 2rem); /* 30-32px */
  --font-h2-start: clamp(1.625rem, 1.55rem + 0.375vw, 2rem); /* 26-32px */
  /* --font-h3: clamp(1.125rem, 1.075rem + 0.25vw, 1.375rem); 22px*/
  /* --font-h3: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem); /*20-24px*/
  --font-h3: clamp(1.5rem, 1.45rem + 0.25vw, 1.75rem); /*24-28px*/
  --font-h3: clamp(1.375rem, 1.35rem + 0.125vw, 1.5rem); /*22-24px*/
  /*--font-h4: clamp(0.8125rem, 0.8rem + 0.0625vw, 0.875rem); 14px*/
  --font-h4: clamp(0.875rem, 0.85rem + 0.125vw, 1rem); /* 14-16px*/
  --font-menu-top: 1.125rem; /*18px*/
  --font-menu-subhead: clamp(1.25rem, 0.9rem + 0.5vw, 1.5rem); /*24px*/
  --font-menu-subtext: 1.125rem; /*18px*/
  --font-big: 1.75rem;
  --font-btn: clamp(1rem, 0.975rem + 0.125vw, 1.125rem);
  /*--font-p: clamp(1rem, 0.975rem + 0.125vw, 1.125rem); 18px*/
  /* --font-p: clamp(1.125rem, 1.1rem + 0.125vw, 1.25rem); /* 18-20px */
  --font-p: 18px; /* 16-18px */
  /* --font-p-bold: clamp(1rem, 0.95rem + 0.25vw, 1.25rem); /* 16-20px */
  --font-p-bold: clamp(1rem, 0.975rem + 0.125vw, 1.125rem); /* 16-18px */
  /*--font-p-big: clamp(1.25rem, 1.125rem + 0.625vw, 1.875rem); */
  --font-p-big: clamp(1.625rem, 1.55rem + 0.375vw, 2rem);
  --font-p-med: clamp(1rem, 0.975rem + 0.125vw, 1.125rem); /*18px*/
  /*--font-p-small: clamp(0.875rem, 0.85rem + 0.125vw, 1rem); 16px*/
  --font-p-small: clamp(0.875rem, 0.85rem + 0.125vw, 1rem); /*14-16px*/
  --font-small: 0.875rem; /*14px*/
  --font-quote: clamp(1.375rem, 1.3rem + 0.375vw, 1.75rem); /*22-28px*/
  --font-quote-ref: clamp(1rem, 0.975rem + 0.125cqw, 1.125rem);
  --font-calendar: clamp(1rem, -0.3333rem + 6.6667cqw, 1.75rem);
  --font-calendar-head: clamp(1.125rem, 0.8459rem + 1.3953cqw, 1.5rem);
  --font-calendar-date: clamp(1.125rem, 0.939rem + 0.9302cqw, 1.375rem);
  --font-calendar-cat: clamp(0.75rem, 0.657rem + 0.4651cqw, 0.875rem);

  --clr-schwarz: #000000;
  --clr-weiss: #ffffff;

  --clr-blau-hell: #99bece;
  --clr-blau-medium: #337d9d;
  --clr-blau-100: #005c84;
  --clr-blau-dunkel: #00405c;

  --clr-rot-rosa: #ea9685;
  --clr-rot-hell: #e1715b;
  --clr-rot-100: #dc5034;
  --clr-rot-dunkel: #e62527;

  --clr-oliv-100: #9a996e;
  --clr-oliv-dunkel: #707c47;

  --clr-grau-100: #8b8d8e;
  --clr-grau-hell: #f0f0f0;
  --clr-grau-med: #58585a;
  --clr-grau-dunkel: #4d4d4d;

  --arrow-bg: rgba(255, 255, 255, 0.3);
  --arrow-icon: url(https://upload.wikimedia.org/wikipedia/commons/9/9d/Caret_down_font_awesome_whitevariation.svg);
  --option-bg: white;
  --select-bg: rgba(255, 255, 255, 0.2);

  --swiper-theme-color: var(--clr-grau-dunkel);
  --swiper-pagination-bullet-size: 12px;
  --swiper-navigation-size: var(--font-p-big);

  --padder: clamp(1.5rem, 1.2rem + 1.5vw, 3rem);
  --letter-spacer: 0.05em;
  --letter-spacer-neg: -0.125em;
  --bs-gutter-x: 3rem;
  --delay: 0.1s;

  interpolate-size: allow-keywords;
}

@media (max-width: 480px) {
  :root {
    --font-menu-top: 1.25rem; /*24px*/
    --font-menu-title: 1.25rem; /*20px*/
  }
}

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1.3;
  font-family: documenta-sans-regular;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}

body:has(.menu-overlay.active) {
  overflow: hidden;
}

/* ===== Scrollbar CSS ===== */
/* Firefox */
main * {
  scrollbar-width: thin;
  scrollbar-color: var(--clr-grau-dunkel) var(--clr-grau-hell);
}

/* Chrome, Edge, and Safari */
main *::-webkit-scrollbar {
  width: 16px;
}

main *::-webkit-scrollbar-track {
  background: var(--clr-grau-hell);
  width: 10px;
}

main *::-webkit-scrollbar-thumb {
  background-color: var(--clr-grau-dunkel);
  border-radius: 0px;
  border: 0px none var(--clr-grau-hell);
}

* {
  margin: 0;
  box-sizing: border-box;
}
:before,
:after {
  box-sizing: border-box;
}

video {
  width: 100%;
  border-radius: 4px;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

iframe {
  border: 0;
}

.desgintrenner {
  width: 100%;
  background-color: var(--clr-blau-100);
  color: var(--clr-weiss);
  text-align: center;
  height: 6rem;
  align-content: center;
  font-size: var(--font-big);
  border-top: 5px dashed;
  border-bottom: 5px dashed;
}

.align-right {
  margin-top: var(--padder);
}

.introtext {
  margin-bottom: var(--padder);
}

.stoerer * {
  font-family: documenta-sans-regular;
}

/* #region Tabmenü */

.burgerwrapper {
  display: none;
}

.burgerwrapper,
.burgerwrapper:hover {
  height: 4.5rem;
  width: fit-content;
  position: relative;
  padding: 0rem 3rem 0rem 1rem;
  padding-left: var(--padder);
  color: var(--clr-schwarz);
  white-space: nowrap;
  place-content: center;
  cursor: pointer;
  font-size: 18px;
}

.burgerwrapper::after {
  content: "";
  background: url("../images/klapper.svg") no-repeat right 0.8em center / 1em;
  width: 3rem;
  height: 4.5rem;
  position: absolute;
  place-content: center;
  right: 0;
  top: 0;
  transform-origin: 50%;
  transition: 0.3s;
}

.burgerwrapper.active::after {
  rotate: 180deg;
}

.tabmenu,
.grey-navbar-responsive-collapse {
  background: var(--clr-grau-hell);
  margin-top: calc(1.75 * var(--padder));
  margin-bottom: calc(0.75 * var(--padder));
}

.tabmenu .navbar,
.nav.navbar-nav.tabs,
.tabmenu.shop .navbar {
  display: flex;
  max-width: 1980px;
  margin: auto;
  padding-bottom: 0;
  padding-inline: var(--padder);
  padding-left: calc(7 * var(--padder));
  columns: auto;
}

.tabmenu .navbar,
.nav.navbar-nav.tabs {
  padding-left: calc(6 * var(--padder));
}

.tabmenu .navbar li::before,
.nav.navbar-nav.tabs li::before {
  content: "";
  padding-right: 0;
  display: none;
}

.tabmenu .navbar li,
.nav.navbar-nav.tabs li {
  display: block;
  border-top: 1px solid var(--clr-weiss);
}

main .tab-link,
.tabmenu .navbar li {
  padding-left: 0;
}

.tabmenu .navbar li.active,
.tabmenu .navbar li:hover,
.nav.navbar-nav.tabs .tab-link.current,
.nav.navbar-nav.tabs .tab-link:hover {
  background-color: var(--clr-weiss);
  border-top: 1px solid var(--clr-schwarz);
}

.tabmenu .navbar li a,
.tabmenu .navbar li span,
.nav.navbar-nav.tabs .tab-link {
  text-decoration: none;
  display: block;
  padding: 1rem 2rem;
  cursor: pointer;
}

.grey-navbar-toggle.container {
  display: none;
}

.container:has(.grey-navbar-responsive-collapse) {
  padding-inline: 0;
}

.grey-navbar-responsive-collapse {
  position: relative;
  background: var(--clr-grau-hell);
  padding-inline: var(--padder);
}

@media (max-width: 1320px) {
  .tabmenu .navbar,
  .nav.navbar-nav.tabs,
  .tabmenu.shop .navbar {
    padding-left: calc(4 * var(--padder));
  }

  .tabmenu .navbar,
  .nav.navbar-nav.tabs {
    padding-left: calc(3 * var(--padder));
  }
}

@media (max-width: 1080px) {
  .burgerwrapper,
  .burgerwrapper:hover {
    display: block;
  }

  .grey-navbar-responsive-collapse::before {
    content: "Fortschritt";
    position: absolute;
    left: var(--padder);
    top: -2rem;
  }

  .tabmenu .navbar,
  .tabmenu.shop .navbar {
    display: none;
    width: 100%;
  }

  .tabmenu .navbar,
  .nav.navbar-nav.tabs,
  .tabmenu.shop .navbar {
    padding-left: var(--padder);
  }

  .nav.navbar-nav.tabs {
    width: 100%;
    padding-bottom: 0;
    padding-inline: 0;
  }

  .tabmenu .navbar.active,
  .nav.navbar-nav.tabs {
    display: grid;
  }

  .tabmenu .navbar li,
  .nav.navbar-nav.tabs li {
    border-top: 1px solid var(--clr-schwarz);
  }

  .tabmenu .navbar li:last-child,
  .nav.navbar-nav.tabs li:last-child {
    border-bottom: 1px solid;
  }

  .nomobile {
    display: none;
  }

  .tabmenu.status .navbar,
  .tabmenu.status .navbar .active {
    display: block;
    border-top: 0;
  }

  .tabmenu.status .navbar li {
    display: none;
  }
}

/* #endregion Tabmenü */

/* #region Angebotsmenü */

.teaserbox.menubox li {
  position: relative;
}

.teaserbox.menubox .active,
.teaserbox.menubox li:hover {
  background: var(--clr-grau-hell);
}

main .teaserbox.menubox li::before {
  content: ">";
  padding-right: 0.5rem;
  font-family: amatiksymbols;
  font-size: 14px;
  height: 100%;
  display: inline-block;
  translate: 0rem 0.5rem;
  position: absolute;
}

.teaserbox.menubox a {
  text-decoration: none;
  line-height: 2;
  display: inline-block;
  padding-left: 2rem;
}

@media (max-width: 1080px) {
  .teaserbox.menubox h2 {
    border: 1px solid;
    font-family: documenta-sans-regular-table;
    font-size: 1rem;
    width: min-content;
    padding: 0rem 3rem 0rem 1rem;
    background:
      url("../images/klapper.svg") no-repeat right 0.8em center / 1em,
      linear-gradient(to left, var(--arrow-bg) 3em, var(--select-bg) 2em);
    color: var(--clr-schwarz);
    border-radius: 60px;
    cursor: pointer;
    height: 44px;
    white-space: nowrap;
    place-content: center;
    display: grid;
    padding-bottom: 0;
  }

  .teaserbox.menubox ul {
    display: none;
  }

  .teaserbox.menubox.active ul {
    display: block;
    width: fit-content;
    background: var(--clr-weiss);
    border-radius: 4px;
    outline: 1px solid;
    outline-offset: 5px;
    padding: 1rem 0.5rem;
  }

  main .teaserbox.menubox li::before {
    content: "";
  }

  main .teaserbox.menubox li.active,
  main .teaserbox.menubox li:hover {
    background-color: var(--clr-grau-hell);
  }

  .teaserbox.menubox a {
    padding-inline: 0.5rem;
  }
}

/* #endregion Angebotsmenü */

/* #region Standards */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: documenta-sans-regular;
  font-weight: normal;
  margin-bottom: 0.25em;
  line-height: 1.2;
  text-wrap: pretty;
}

h1 {
  font-family: documenta-sans-regular;
  font-size: var(--font-h1);
  line-height: 1.2;
  max-width: 32ch;
  margin-bottom: 0.25em;
}

.big h1 {
  font-size: var(--font-h1-big);
  margin-bottom: 0.25em;
  line-height: 1.1;
  max-width: 18ch;
}

h1.big {
  font-size: var(--font-h1);
  margin-bottom: 0.5em;
  line-height: 1.2;
}

.teaserbox h1.big {
  font-size: var(--font-h1-med);
  margin-bottom: 0.5em;
  line-height: 1.2;
}

.intro:has(.datumsausgabe) h1 {
  margin-top: calc(0.25 * var(--padder));
}

.intro:has(.datumsausgabe) .datumsausgabe {
  margin-top: 12px;
  display: inline-block;
}

.intro h1 {
  margin-bottom: 0.5em;
  line-height: 1.1;
}

.beauftragte h3 {
  font-size: var(--font-h2);
}

h2,
h2.big {
  font-family: documenta;
  font-size: var(--font-h2);
  line-height: 1.2;
  margin-bottom: 0.75em;
}

h2 {
  font-family: documenta-sans-regular;
}

h2.big {
  font-size: var(--font-h1-med);
}

.container:has(.grid.lottie) h2.big,
.container:has(.dialogbox.desktop) h2.big {
  padding-top: calc(0.5 * var(--padder));
}

h2 + h3 {
  margin-top: 0.75em;
}

.g-flexgrid-fill + h3,
.g-flexgrid-fit + h3 {
  margin-top: 2em;
  margin-bottom: 0.75em;
}

.intro h2 {
  font-size: var(--font-h3);
}

h3,
.beauftragte h4,
.teaserbox h3,
.introtext h3,
.multilinkblock.bottom h2,
.pic_petition_headline a {
  font-size: var(--font-h3);
}

.introtext h3 {
  margin-bottom: 0.75em;
}

h4,
.caption {
  font-size: var(--font-h4);
}

em {
  font-family: documenta-sans-italic;
  font-style: normal;
}

b,
strong {
  font-family: "documenta-sans-regular";
  font-weight: bold;
}

.content {
  container-type: inline-size;
}

.content.middle {
  max-width: 900px;
  margin: auto;
}

img {
  width: 100%;
  border-radius: 4px;
  display: block;
  height: auto;
}

img:has(+ .caption) {
  margin-bottom: 0.75rem;
}

.logo img {
  border-radius: 0;
}

.inline.image {
  max-width: 86ch;
  margin-block: var(--padder);
  margin-top: calc(0.2 * var(--padder));
  padding-right: var(--padder);
}

.textblock .inline.image {
  margin-top: calc(0.5 * var(--padder));
}

.floating.image {
  float: right;
  width: 66cqw;
  padding: var(--padder);
  padding-right: 0;
  margin-right: calc(0.5 * var(--padder));
  padding-top: 60px;
}

@media (max-width: 810px) {
  .inline.image {
    padding-right: 0;
  }
}

@media (max-width: 900px) {
  .floating.image {
    float: none;
    width: 100%;
    max-width: 66ch;
    padding: 0;
    padding-block: var(--padder);
    padding-right: 0;
    margin-right: 0;
    padding-top: var(--padder);
  }
}

.container.small.claim p {
  font-size: var(--font-p-big);
}

.big p {
  font-size: var(--font-h3);
  max-width: 44ch;
  padding-bottom: calc(0.5 * var(--padder));
  line-height: 1.3;
}

.big p + .btn,
.g-flexgrid-fill + p,
.g-flexgrid-fit + p,
.g-flexgrid-fill + h4,
.g-flexgrid-fit + h4 {
  margin-top: calc(1 * var(--padder));
}

p {
  line-height: 1.4;
}

p,
.text ul,
.text ol {
  font-size: var(--font-p);
  max-width: 58ch;
  padding-bottom: 1em;
}

.intro p,
.intro ul li {
  font-size: var(--font-h3);
}

.leichte-sprache p {
  font-size: var(--font-p-med);
}

.teaser.small h2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.teaser.small p {
  font-size: var(--font-p-med);
  display: -webkit-box;
  -webkit-line-clamp: 8;
  line-clamp: 8;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.introtext p {
  font-size: var(--font-p-med);
  padding-bottom: 0;
}

p:last-child {
  padding-bottom: 0;
}

p + h2,
p + h3,
ul + h2,
ul + h3,
ol + h2,
ol + h3 {
  margin-top: calc(0.5 * var(--padder));
}

p + h3,
ul + h3,
ol + h3 {
  margin-bottom: 0.5em;
}

.textblock + h2.moreh2,
.textblock + .textblock h2:first-child,
.textblock + .textblock h3:first-child {
  margin-top: calc(1.5 * var(--padder));
}

.adresse p {
  padding-bottom: 0.5rem;
}

.adresse p + h3 {
  margin-top: 0;
}

.adresse h3 {
  margin-top: calc(0 * var(--padder));
  margin-bottom: 0;
}

.date {
  font-size: var(--font-h4);
  margin-bottom: calc(0.15 * var(--padder));
  display: block;
}

.date.big {
  font-size: var(--font-p-med);
}

.btn,
.btn.inv:hover,
.btn.btn_fill:hover,
.label[for="petition.userImageContent"] {
  position: relative;
  font-size: var(--font-btn);
  font-family: documenta-sans-regular;
  padding: 0rem 1rem;
  border-radius: 60px;
  background-color: transparent;
  border: 1px solid var(--clr-schwarz);
  transition: 0.3s;
  margin-top: calc(0.5 * var(--padder));
  text-decoration: none;
  margin-right: 0.5rem;
  color: var(--clr-schwarz);
  white-space: nowrap;
  min-height: 44px;
  min-width: 44px;
  line-height: 0;
  text-align: center;
  width: fit-content;
  max-width: fit-content;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
}

.btn:hover,
.btn.inv,
.btn.btn_fill,
.label[for="petition.userImageContent"]:hover {
  background-color: var(--clr-schwarz);
  color: var(--clr-weiss);
}

.btn.dl {
  margin-top: 0;
}

.textblock + p:has(.btn) {
  padding-top: calc(0.5 * var(--padder));
}

.divider {
  width: calc(100% - 2 * var(--padder));
  margin: auto;
  margin-top: 0;
  border: none;
  max-width: 1880px;
  transition: all 0.75s;
  transition-delay: 0.3s;
  background: linear-gradient(black, black);
  background-size: 0% 1px;
  background-repeat: no-repeat;
  height: 1px;
}

.divider.comein {
  background-size: 100% 1px;
}

@media (max-width: 1080px) {
  .divider {
    width: 100%;
  }
}

.v-center {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  transition: margin-top 0.3s;
  margin-bottom: 1rem;
}

.down .v-center {
  margin-top: -200px;
}

.up .v-center {
  margin-top: -120px;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

ol {
  padding-left: 1rem;
}

.text ul,
.text ol {
  margin-top: 1rem;
}

.textblock ul,
.textblock ol {
  font-size: var(--font-p);
  padding-bottom: 1em;
  max-width: 58ch;
}

.container.full.absatzinfobox + .container.full.absatzinfobox {
  padding-block: 0;
}

.container.full + .container.full.nopadding {
  padding-top: var(--padder);
}

.big ul,
.big ol {
  font-size: var(--font-p-big);
  padding-bottom: 1em;
}

.leichte-sprache ul,
.leichte-sprache ol {
  font-size: var(--font-p-med);
}

main li::before {
  content: "–";
  margin-left: -1rem;
  padding-right: 0.5rem;
}

main li {
  padding-left: 1rem;
  line-height: 1.6;
}

main .linelist li::before {
  content: "";
  padding-right: 0;
}

main ol li::before {
  content: "";
  padding-right: 0.25rem;
}

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

main a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

main a[target="_blank"]::after {
  content: "F";
  font-family: "amatiksymbols";
  display: inline-block;
  font-size: 16px;
  padding-left: 2px;
  position: relative;
}

main .btn[target="_blank"]::after,
main .btn:hover[target="_blank"]::after {
  right: -15px;
  top: 0;
  color: var(--clr-schwarz);
  position: absolute;
  content: "";
}

button {
  border: 0;
  cursor: pointer;
  margin: 0;
  height: 44px;
  line-height: 1.2;
  background-color: inherit;
}

button a {
  text-decoration: none;
}

.blocklink {
  text-decoration: none;
}

.sr-only {
  display: none;
}

.nopadding {
  padding: 0;
}

.bottomline {
  align-items: end;
}

.center {
  display: grid;
  place-items: center;
  width: 100%;
}

main {
  padding-bottom: calc(0.75 * var(--padder));
}

main,
main:has(.container.full.seiteneinleitung_main + .container.full.bg.panorama) {
  padding-top: calc(5 * var(--padder));
}

main:has(.container.full.easylanguage.easyintro.bg.start.big),
main:has(.container.full.bg.panorama) {
  padding: 0;
  padding-bottom: 0;
}

.linelist {
  overflow: hidden;
  padding-block: 2rem;
  margin-top: -2rem;
}

.linelist li {
  border-top: 1px solid;
  padding-top: 0.5rem;
  padding-bottom: 1rem;
  position: relative;
  min-height: 10rem;
}

.linelist li img {
  position: absolute;
  height: calc(100% + 4rem);
  width: auto;
  right: 0;
  top: -2rem;
  z-index: 1;
  transition:
    translate 0.3s,
    opacity 0.3s;
  opacity: 0;
  translate: 100%;
}

.linelist li:hover img {
  opacity: 1;
  width: auto;
  translate: 0;
}

.multilinkblock.bottom {
  background-color: var(--clr-grau-hell);
  padding: calc(0.75 * var(--padder)) var(--padder);
  margin-block: calc(0.5 * var(--padder));
  font-size: var(--font-p-med);
  width: fit-content;
  max-width: 50ch;
  border-radius: 4px;
}

.multilinkblock.bottom + h2,
.multilinkblock.bottom + h3,
.multilinkblock.bottom + p {
  margin-top: var(--padder);
}

.multilinkblock.bottom p,
.multilinkblock.bottom strong,
.multilinkblock.bottom ul,
.multilinkblock.bottom ol {
  font-size: var(--font-p-small);
}

.textblock .multilinkblock.bottom h3 {
  margin-top: 0;
}

p + .multilinkblock.bottom {
  margin-top: var(--padder);
}

/* #endregion Standards */

/* #region Container */

.container,
.container.petitions_detailseite.pic_petition_site,
.area-body:has(.container.petitions_detailseite.pic_petition_site)
  .container.start {
  margin: auto;
  max-width: 1980px;
  padding-block: var(--padder);
  padding-inline: var(--padder);
}

.container:has(.divider) > .container {
  padding-block: calc(0.5 * var(--padder));
}

.container.small,
.dialogbox.desktop,
.container.petitions_detailseite.pic_petition_site,
.area-body:has(.container.petitions_detailseite.pic_petition_site)
  .container.start,
.container.pic_petition_site.pic_petitionsformular {
  padding-left: calc(6 * var(--padder));
}

.container.small:has(.swiper) {
  padding-left: var(--padder);
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: var(--padder);
}

.container.small:has(.swiper.plenum-4er) {
  grid-template-columns: 1fr;
  padding-inline: 0;
}

.container.medium {
  max-width: 1280px;
}

.container.full {
  width: 100%;
  max-width: 100%;
  border-top: 0 !important;
}

/*.container.full.pic_layout_bild, .container.full.pic_layout_bild .container.small  {
	padding-bottom: 0;
}
*/

.container.full.red {
  background-color: var(--clr-rot-100);
  color: var(--clr-weiss);
  margin-top: var(--padder);
}

.container.full.nopadding {
  padding-inline: 0;
  padding-block: 0;
}

.container.full.switch.plenum.nopadding.active {
  padding-top: 0;
}

.container:has(> .presseticker.head) {
  padding-inline: 0;
}

.container.full.nopadding.right {
  padding-left: var(--padder);
}

.container.full.bg {
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 100vh;
  position: relative;
}

.container.full.bg:has(+ section) {
  margin-bottom: var(--padder);
}

.container.full > .container {
  padding-block: 0;
}

.container.full.dialog {
  margin-bottom: calc(2 * var(--padder));
}

.container.full:last-child > .container {
  padding-bottom: var(--padder);
}

.container > .titlegrid.big {
  padding-top: calc(0.5 * var(--padder));
  padding-bottom: var(--padder);
}

.dayMonthCalendar .calenderwrapper {
  margin-top: 0;
}

.container.full.kalender.dayMonthCalendar {
  padding-bottom: 0;
}

.container.full:last-child > .container.mt-4.pic-ltsh-calendar-container {
  margin-bottom: 0;
  padding-bottom: 0;
}

.container.full.pic_textslider {
  padding-block: 0;
}

.container.full > .container.small.grid {
  padding-bottom: var(--padder);
}

.container.full > .container.small.grid:first-child {
  padding-bottom: 0;
}

.container.full:has(.nav.navbar-nav.tabs) {
  padding-block: 0;
}

.container.multirows.shop {
  padding-top: 0;
}

.fc .fc-view-harness {
  max-height: 60vh;
  border-bottom: 1px solid black !important;
  border-radius: 0;
  margin-bottom: calc(0.5 * var(--padder));
}

.dayMonthCalendar .fc-view-harness {
  border: 0 !important;
  height: auto;
}

@media (max-width: 1320px) {
  .container.small,
  .dialogbox.desktop,
  .container.petitions_detailseite.pic_petition_site,
  .area-body:has(.container.petitions_detailseite.pic_petition_site)
    .container.start,
  .container.pic_petition_site.pic_petitionsformular {
    padding-left: calc(3 * var(--padder));
  }
}

@media (max-width: 1080px) {
  .container.small:has(.swiper) {
    padding-left: 0;
    grid-template-columns: 1fr;
  }

  .container.full.dialog {
    margin-bottom: calc(0 * var(--padder));
  }
}

@media (max-width: 810px) {
  .container.small,
  .dialogbox.desktop,
  .container.petitions_detailseite.pic_petition_site,
  .area-body:has(.container.petitions_detailseite.pic_petition_site)
    .container.start,
  .container.pic_petition_site.pic_petitionsformular {
    padding-left: var(--padder);
  }

  .container.small:has(.swiper),
  .calendernwrapper {
    padding-left: 0;
    grid-template-columns: 1fr;
  }

  .container.full.nopadding.right {
    padding-left: 0;
  }

  .container > .container {
    padding-inline: 0;
  }
}

@media (max-width: 810px) {
  .container.full.bg {
    background-size: 100%;
    min-height: 0;
  }

  .container.full.bg .grid.g-23 {
    grid-template-columns: 1fr;
  }

  .bgfiller {
    aspect-ratio: 16/9;
    margin-top: 0;
    margin-left: calc(-1 * var(--padder));
    width: calc(100% + 1 * var(--padder));
    margin-bottom: calc(-1 * var(--padder));
  }

  section.bg .sticky .teaserbox,
  section.bg .sticky .teaserbox.comein {
    margin-top: 0 !important;
    padding-top: var(--padder) !important;
  }

  section.bg .container:first-child {
    border-top: 0;
    min-height: 0;
  }
}

section .container:first-child,
.container.switch {
  border-top: 0px solid;
}

section.bg .container:first-child {
  border-top: 0;
  /* min-height: calc(100vh - 4*var(--padder)); */
}

section .container.small:first-child,
section .container.full:first-child {
  border-top: 0px solid;
}

/* #endregion Container */

/* #region Readprint */

.print.rs_skip.rs_preserve,
.readspeak {
  display: none;
}

.readwrapper {
  display: grid;
  place-content: start;
  height: max-content;
  padding-left: calc(0.75 * var(--padder));
}

.readprint {
  max-width: max-content;
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.newsback {
  width: 100%;
  margin-bottom: calc(0.25 * var(--padder));
}

.grid.g-63 .readprint {
  margin-bottom: 1rem;
}

.readprint > div {
  min-height: 44px;
  place-content: center;
}

.readprint a {
  text-decoration: none;
  display: block;
  min-height: 44px;
  place-content: center;
  min-width: 44px;
}

.readprint a:hover,
.readprint > div:hover::before {
  color: var(--clr-rot-dunkel);
}

.red .readprint a:hover,
.red .readprint > div:hover::before {
  color: var(--clr-weiss);
}

.readprint a:hover {
  text-decoration: underline;
}

.readprint > div::before {
  font-family: "amatiksymbols";
  display: block;
  float: left;
  font-size: 16px;
  line-height: 1;
  padding-right: 5px;
  place-content: center;
  min-height: 44px;
}

.readprint > .newsback::before {
  content: "<";
}

.readprint > .print::before {
  content: "W";
}

.readprint > .readspeak::before {
  content: "A";
}

.rs_skip.rsbtn.rs_preserve.rsbtn_compactskin {
  display: none;
}

@media screen and (max-width: 1080px) {
  .readwrapper {
    place-content: first baseline;
    padding: 0;
  }

  .newsback {
    margin-bottom: calc(0.75 * var(--padder));
  }
  .readprint {
    row-gap: 0;
  }

  .grid.g-63 .readprint {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 810px) {
  .readprint > div::before {
    font-size: 16px;
  }
}

/* #endregion Readprint */

/* #region Caption */

.caption.g22 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
}

.capdesc {
  max-width: 90ch;
  text-wrap: balance;
}

.caption div:last-child {
  text-transform: uppercase;
  letter-spacing: var(--letter-spacer);
  font-size: calc(0.75 * var(--font-h4));
  align-content: center;
  color: var(--clr-grau-med);
  margin-top: 0.25rem;
}

.copyright.overlay .caption div:last-child {
  color: var(--clr-weiss);
}

.caption.g22 div:first-child {
  line-height: 1.25;
  max-width: 90ch;
  text-wrap: balance;
}

.caption.g22 div:last-child {
  text-align: left;
  margin-top: 0.5em;
}

@media screen and (max-width: 600px) {
  .caption.g22 {
    grid-template-columns: 1fr;
    gap: 0rem;
  }

  .caption.g22 div:last-child {
    text-align: left;
  }
}

/* #endregion Caption */

/* #region Zitat */

.container.full.pic_zitat {
  margin-block: calc(0 * var(--padder));
  padding-inline: 0;
  max-width: 130ch;
  margin-bottom: 0;
  margin-left: 0;
}

.container.full.pic_zitat {
  translate: calc(-3 * var(--padder));
}

@media screen and (max-width: 1320px) {
  .container.full.pic_zitat {
    translate: calc(-2 * var(--padder));
  }
}

@media screen and (max-width: 810px) {
  .container.full.pic_zitat {
    translate: 0;
  }
}

blockquote {
  container-type: inline-size;
  color: var(--clr-grau-100);
  max-width: 100ch;
}

blockquote p::before {
  font-size: inherit;
  content: "„";
  float: inherit;
  width: 100%;
  text-align: center;
  line-height: 1;
  margin-top: 0px;
  font-family: documenta-sans-regular;
}

blockquote p::after {
  font-size: inherit;
  content: "“";
  float: inherit;
  width: 100%;
  text-align: center;
  line-height: 1;
  margin-top: 0px;
  font-family: documenta-sans-regular;
}

blockquote p {
  font-size: var(--font-quote);
  line-height: 1.3;
}

blockquote footer {
  display: block;
  font-size: var(--font-quote-ref);
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
  color: var(--clr-grau-100);
  padding-top: 0;
  margin-top: 0;
}

cite {
  font-style: normal;
  font-family: documenta-sans-regular;
  letter-spacing: var(--letter-spacer);
  font-size: var(--font-quote-ref);
}

/* Zitat Gallery */

.container.full:has(.swiper.galery-cite) {
  overflow: hidden;
}

@media (max-width: 810px) {
  .container.full:has(.galery-cite) {
    padding-left: 0;
  }
}

.introwrapper.cite {
  height: 100%;
  display: grid;
  align-content: baseline;
  grid-template-rows: auto 1fr;
}

.swiper.galery-cite {
  translate: calc(2 * var(--padder));
  padding-bottom: calc(2 * var(--padder));
}

@media (max-width: 810px) {
  .swiper.galery-cite {
    translate: calc(1 * var(--padder));
  }
}

.cite .introimage {
  margin-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.cite .introtext {
  display: grid;
  align-items: end;
  height: 100%;
}

.cite .introtext p {
  font-size: var(--font-quote);
  font-family: documenta-sans-regular;
}

.cite .bgblue blockquote {
  background-color: var(--clr-blau-medium);
  color: var(--clr-weiss);
}

.cite .bgred blockquote {
  background-color: var(--clr-rot-hell);
  color: var(--clr-schwarz);
  cite {
    color: var(--clr-schwarz);
  }
}

.cite .bglightred blockquote {
  background-color: var(--clr-rot-rosa);
  color: var(--clr-schwarz);
  cite {
    color: var(--clr-schwarz);
  }
}

.cite .bglightblue blockquote {
  background-color: var(--clr-blau-hell);
  color: var(--clr-schwarz);
  cite {
    color: var(--clr-schwarz);
  }
}

.cite .bgolive blockquote {
  background-color: var(--clr-oliv-dunkel);
  color: var(--clr-weiss);
}

.cite .introtext blockquote {
  padding: var(--padder);
  padding-bottom: calc(0.75 * var(--padder));
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 100%;
  align-content: end;
}

.cite .introtext blockquote footer {
  padding-top: calc(1 * var(--padder));
}

.cite .introtext cite {
  color: var(--clr-weiss);
}

.cite .introimage img {
  aspect-ratio: 16/9;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

@media (max-width: 480px) {
  .cite .introimage img {
    aspect-ratio: 1/1;
  }
}

.introwrapper.cite:hover .introimage img {
  scale: 1;
}

/* #endregion Zitat */

/* #region Lightbox für Inline Images */

.inline.image,
.floating.image {
  position: relative;
}

.inline.image img,
.floating.image img {
  cursor: zoom-in;
  position: relative;
}

.inline.image::before,
.floating.image::before {
  content: "L";
  font-family: amatiksymbols;
  font-size: 14px;
  color: var(--clr-weiss);
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(2px);
  width: 30px;
  height: 30px;
  position: absolute;
  align-content: center;
  display: grid;
  right: 0;
  top: 0;
  z-index: 1;
  text-align: center;
  border-radius: 100%;
  cursor: zoom-in;
  transition: 0.2s;
}

.floating.image::before {
  top: 70px;
  right: 10px;
}

.inline.image::before {
  top: 10px;
  right: calc(var(--padder) + 10px);
}

@media (max-width: 810px) {
  .inline.image::before,
  .floating.image::before {
    top: 10px;
    right: 10px;
  }

  .floating.image::before {
    top: 40px;
    right: 10px;
  }
}

.inline.image:hover::before,
.floating.image:hover::before {
  scale: 1.1;
}

.js-lightbox {
  position: fixed;
  inset: 0;
  z-index: 999999;
  background: rgba(0, 0, 0, 0.88);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  box-sizing: border-box;
  backdrop-filter: blur(2px);
}

.js-lightbox.is-active {
  display: flex;
}

.js-lightbox__inner {
  max-width: min(1200px, 95vw);
  max-height: 95vh;
  color: #fff;
  text-align: center;
}

.js-lightbox__image {
  max-width: 100%;
  max-height: 75vh;
  width: auto;
  height: auto;
  display: block;
  margin: 0 auto;
  cursor: zoom-out;
}

.js-lightbox__caption {
  text-align: left;
  margin-top: 0.75rem;
}

.js-lightbox__caption div + div {
  text-transform: uppercase;
  letter-spacing: var(--letter-spacer);
  font-size: calc(0.75 * var(--font-h4));
  align-content: center;
  color: var(--clr-weiss);
  margin-top: 0.25rem;
}

.js-lightbox__close {
  position: fixed;
  top: 1rem;
  right: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
}

.js-lightbox__close:hover {
  background: rgba(255, 255, 255, 0.3);
}

body.js-lightbox-open {
  overflow: hidden;
}

/* #endregion Lightbox für Inline Images */

/* #region header */

header {
  display: block;
  width: 100%;
  position: fixed;
  z-index: 99;
  padding: 0 var(--padder);
}

header .container {
  max-width: 1980px;
  padding-block: 0;
  padding-inline: var(--padder);
}

header .item-center {
  align-self: end;
}
header .item-right {
  flex: 0 0 17%;
  display: flex;
  justify-content: flex-end;
}
header .item-right a {
  text-decoration: none;
  font-size: 16px;
  color: #555555;
  display: inline-block;
  margin-left: 10px;
  transition: color 0.3s ease;
}

header:has(.menu-main:hover) {
  /* animation: appear .3s forwards; */
  min-height: 100dvh;
  animation-delay: 0.1s;
  transition: 0.1s;
  /* transition-delay: .3s; */

  background: linear-gradient(
    to bottom,
    #fff,
    #fff 75%,
    transparent 100%,
    transparent 75%
  );
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

header.down:has(.menu-main:hover) {
  animation: none 0.3s forwards;
  min-height: 0;
}

@keyframes appear {
  from {
    background: linear-gradient(
      to bottom,
      transparent,
      transparent 60%,
      transparent 60%,
      transparent 75%
    );
    -webkit-backdrop-filter: blur(0px);
    backdrop-filter: blur(0px);
  }

  to {
    background: linear-gradient(
      to bottom,
      #fff,
      #fff 75%,
      transparent 100%,
      transparent 75%
    );
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }
}

@keyframes vanish {
  to {
    background: linear-gradient(
      to bottom,
      transparent,
      transparent 60%,
      transparent 60%,
      transparent 75%
    );
    -webkit-backdrop-filter: blur(0px);
    backdrop-filter: blur(0px);
  }

  from {
    background: linear-gradient(
      to bottom,
      #fff,
      #fff 75%,
      transparent 100%,
      transparent 75%
    );
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }
}

@media (max-width: 1080px) {
  header:has(.menu-main:hover),
  header:not(:has(.menu-main:hover)),
  .menu-main:hover,
  header {
    animation: none !important;
    -webkit-animation: none !important;
  }
}

/* #endregion header */

/* #region Logo */

.logo {
  transition: 0.3s;
  height: 120px;
}

.up .logo {
  translate: 0 115px;
}

.logo .svg {
  height: 115px;
  transition: 0.3s;
  width: auto;
  max-width: inherit;
}

.up .logo svg {
  height: 75px;
}

.logo.light .svg .schrift .cls-1 {
  fill: var(--clr-weiss);
  transition: 0.3s;
}

header:has(.menu-main:hover) .logo.light .svg .schrift .cls-1 {
  fill: var(--clr-blau-100);
}

@media (max-width: 1140px) {
  .up .logo .schrift {
    display: none;
  }
}

@media (max-width: 1080px) {
  header .container {
    padding-inline: 0;
  }

  .up .logo .schrift {
    display: block;
  }
}

/* #endregion Logo */

/* #region Top Menu Searchbar */

.topmenu {
  display: grid;
  justify-content: right;
  padding-top: calc(0.5 * var(--padder));
}

.topmenu .menu-items {
  display: flex;
  position: absolute;
  right: var(--padder);
  gap: 1rem;
  color: var(--clr-weiss);
}

.icon {
  font-family: amatiksymbols;
  font-size: 1rem;
  color: var(--clr-weiss);
}

header:has(.menu-main:hover) .icon {
  color: var(--clr-schwarz);
}

.icon.small {
  font-size: 1rem;
  padding-right: 0.5rem;
}

.pill {
  height: max-content;
  border-radius: 60px;
  padding-inline: 1.25rem;
  transition: 0.3s;
  min-height: 44px;
  min-width: 44px;
  line-height: 1.6;
  -webkit-backdrop-filter: blur(10px) brightness(50%);
  backdrop-filter: blur(10px) brightness(50%);
  display: block;
  border: 1px solid transparent;
  place-content: center;
}

header:has(.menu-main:hover) .pill {
  background-color: var(--clr-weiss);
  color: var(--clr-schwarz);
  border: 1px solid var(--clr-schwarz);
}

.pill:hover {
  background-color: var(--clr-schwarz);
}

.pilltext {
  font-size: var(--font-h4);
  font-family: documenta-sans-regular;
  color: var(--clr-weiss);
}

header:has(.menu-main:hover) .pilltext {
  color: var(--clr-schwarz);
}

.language:hover {
  z-index: 1;
}

.language ul {
  -webkit-backdrop-filter: blur(10px) brightness(50%);
  backdrop-filter: blur(10px) brightness(50%);
  padding-bottom: 0.75rem;
  display: none;
  position: absolute;
  border-radius: 10px;
  border-top: 10px solid transparent;
}

.language:has(:hover) ul {
  display: block;
}

.language .wrapper {
  padding-top: 0.75rem;
}

.language .wrapper a {
  font-size: var(--font-p-small);
  display: block;
  place-content: center;
  padding-inline: 0.75rem;
  min-height: 30px;
}

.language .wrapper a:hover {
  backdrop-filter: brightness(50%);
}

.searchbar {
  position: relative;
}

.searchbar .input-group-btn {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-left: 1rem;
  padding: 0 1.25rem;
}

.searchbar .input-group-btn button {
  background: transparent;
  align-content: center;
  line-height: 0;
  height: 42px;
}

.searchbar .input-group-btn button .icon {
  font-size: 1rem;
  margin-left: -17px;
  translate: 0px 0px;
  display: block;
}

#hidesearch {
  translate: 13px;
}

.searchbar .form {
  display: none;
  animation: slidein 0.3s forwards;
}

.searchbar .form.active {
  display: block;
  animation: slidein 0.3s forwards;
}

.searchbar .input-group {
  position: absolute;
  z-index: 1;
  right: 0;
  border-radius: 60px;
  background: transparent;
  width: 322px;
  display: grid;
  grid-template-columns: auto 1fr;
}

.searchbar .form-control.pull-right,
.form-horizontal .form-control {
  border-radius: 60px;
  font-size: 1rem;
  padding: 0.95rem;
  width: 238px;
  border: 1px solid;
  margin-left: -42px;
  transition:
    width 0.3s,
    display 0.3s;
  height: 44px;
}

.form-horizontal .form-control {
  margin-left: 0;
  margin-right: 0.5rem;
}

.searchbar {
  display: block;
}

.searchbar.mobile {
  display: none;
}

/* Searchbar mobil */

@media screen and (max-width: 1080px) {
  .searchbar {
    display: none;
  }

  .searchbar.mobile {
    display: block;
    position: relative;
    padding-top: 0.5rem;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    padding-inline: var(--padder);
    width: 100%;
  }

  .searchbar.mobile .form {
    display: block;
    max-width: fit-content;
    margin: auto;
    margin-right: 0;
  }

  #hidesearch,
  #showsearch {
    display: none;
  }

  .searchbar.mobile .input-group {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 90px;
  }

  .searchbar.mobile .form-control.pull-right {
    width: 100%;
    margin-left: 0;
  }

  .searchbar.mobile .input-group-btn,
  header:has(.menu-main:hover) .searchbar.mobile .input-group-btn {
    grid-template-columns: 1fr;
    margin-left: 1rem;
    padding: 0;
    backdrop-filter: brightness(0);
  }

  header:has(.menu-main:hover) .pill {
    background-color: var(--clr-schwarz);
    color: var(--clr-weiss);
    border: 1px solid var(--clr-weiss);
  }

  header:has(.menu-main:hover) .icon {
    color: var(--clr-weiss);
  }

  .searchbar .input-group-btn button .icon {
    font-size: 1rem;
    margin-left: 0;
  }
}

/* Topmenü mobile */

.topmenu.mobile.menu-items {
  display: none;
}

.topmenu.mobile.menu-items a {
  line-height: 44px;
  text-decoration: none;
  font-size: var(--font-h3);
}

@media screen and (max-width: 1080px) {
  .topmenu.mobile.menu-items {
    display: block;
    line-height: 1.5;
    margin-bottom: 15rem;
    height: 100%;
    max-height: 100%;
  }

  .topmenu .menu-items,
  .topmenu.mobile.menu-items button {
    display: none;
  }
}

/* #endregion Top Menu Searchbar */

/* #region Grids */

.grid.g-1 {
  display: grid;
  gap: 1rem;
}

.grid.g-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(0.5 * var(--padder));
}

.grid.g-2:has(.intro) {
  padding-bottom: 0;
}

.grid.g-3,
.pic_petition_teaser_overview .row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: calc(0.5 * var(--padder));
}

.grid.g-4 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
  gap: calc(1 * var(--padder));
  row-gap: calc(1 * var(--padder));
  max-width: 1660px;
  margin: auto;
}

.container_news_archiv {
  margin-bottom: var(--padder);
}

.container_news_archiv:last-child {
  margin-bottom: 0;
}

.grid.g-23 {
  display: grid;
  grid-template-columns: 3fr 2.5fr;
  gap: calc(1 * var(--padder));
}

.grid.g-63,
.row.row_change_order_mobile,
.container.petitions_detailseite.pic_petition_site > .row,
.container.pic_petition_site.pic_petitionsformular .row,
.container.full.seiteneinleitung_main .grid.g-2 {
  display: grid;
  gap: var(--padder);
  grid-template-columns: 3fr 1.5fr;
}

.grid.g-63:has(.filterform),
.grid.g-63:has(.searchform),
.grid.g-63:has(.ticker),
.grid.g-63:has(.filter),
.grid.g-63:has(.teaserbox.presseticker),
.row.row_change_order_mobile {
  grid-template-columns: 1fr 320px;
}

.grid.g-363 {
  display: grid;
  gap: var(--padder);
  grid-template-columns: 1.5fr 3fr 1.5fr;
}

.grid.g-63.bottomline:has(.videoelement) {
  grid-template-columns: 1fr;
}

/* Seiteneinleitung */

.seiteneinleitung .grid.g-63.bottomline {
  grid-template-columns: 1.5fr 3fr;
  align-items: start;
}

.seiteneinleitung .grid.g-63.bottomline .medium {
  order: 1;
}

.seiteneinleitung .container.small {
  padding-left: 0;
}

/* Grid Systeme */

.grid.g-flexgrid-fill {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
  gap: var(--padder);
}

.grid.g-flexgrid-fit {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: var(--padder);
}

.grid.g-141 {
  display: grid;
  grid-template-columns: minmax(200px, 330px) 1fr minmax(200px, 330px);
  grid-auto-flow: column;
  gap: 0px 0px;
}

.grid.g-252 {
  display: grid;
  grid-template-columns: 0.5fr 1fr 0.5fr;
  gap: calc(0.5 * var(--padder));
}

.grid.g-522 {
  display: grid;
  grid-template-columns: 1fr 0.5fr 0.5fr;
  gap: calc(0.5 * var(--padder));
}

.grid.g-169 {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) 2fr;
  gap: 4rem;
}

.grid.g-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: calc(0.5 * var(--padder));
}

.titlegrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(480px, 100%), 1fr));
  gap: calc(0.5 * var(--padder));
}

.titlegrid p {
  max-width: 100%;
  padding-top: 0.25rem;
}

@media screen and (max-width: 1500px) {
  .grid.g-23 {
    grid-template-columns: 2fr 2.5fr;
  }
}

@media screen and (max-width: 1080px) {
  .grid.g-23 {
    grid-template-columns: 1fr 2.5fr;
  }
  .grid.g-63,
  .grid.g-363,
  .grid.g-169,
  .grid.g-63:has(.filterform),
  .grid.g-63:has(.searchform),
  .grid.g-63:has(.filter),
  .grid.g-63:has(.ticker),
  .grid.g-63:has(.teaserbox.presseticker),
  .row.row_change_order_mobile,
  .container.petitions_detailseite.pic_petition_site .row,
  .container.pic_petition_site.pic_petitionsformular .row,
  .seiteneinleitung .grid.g-63.bottomline,
  .container.full.seiteneinleitung_main .grid.g-2,
  .grid.g-252 {
    grid-template-columns: 1fr;
  }

  .grid.g-63:has(.filter) .filter {
    order: -1;
  }

  .grid.g-169 {
    display: block;
  }

  .titlegrid {
    padding-inline: 0;
  }

  .titlegrid.big h2 {
    margin-bottom: 0;
  }

  .container > .titlegrid.big {
    padding-bottom: calc(1.75 * var(--padder));
  }
}

@media screen and (max-width: 810px) {
  .grid.g-3,
  .grid.g-2,
  .pic_petition_teaser_overview .row {
    grid-template-columns: 1fr;
  }
  .dayMonthCalendar .pic-ltsh-calendar-row-col-eventlist {
    margin-bottom: calc(3 * var(--padder));
    margin-top: calc(-1 * var(--padder));
  }
}

@media screen and (max-width: 600px) {
  .grid.g-141 {
    grid-template-columns: 1fr;
    grid-auto-flow: unset;
  }

  .grid.g-23 {
    grid-template-columns: 1fr;
  }
}

/* #endregion Grids */

/* Elemente */

/* #region Counter */

/* .countwrapper {
	width: 100%;
	clear: both;
	padding-bottom: 0;
	padding-top: 0;
	display: grid;
	font-family: documenta-sans-regular-table;
	margin: auto;
	text-align: center;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: .5rem;
	margin-bottom: var(--padder);
	container-type: inline-size;
} */

.counter .container.small.grid.g-2 {
  padding-bottom: 0;
}

.container.full.counter {
  margin-block: var(--padder);
  margin-top: calc(2 * var(--padder));
  padding: 0;
}

.counter .container.small.grid.g-2 {
  padding-right: 0;
  max-width: 100%;
}

.counter {
  container-type: inline-size;
  padding: var(--padder);
}

.countwrapper {
  width: 75cqw;
  clear: both;
  padding-bottom: 0;
  padding-top: 0;
  display: grid;
  font-family: documenta-sans-regular-table;
  margin: auto;
  text-align: center;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 1.25rem;
  margin-bottom: 5cqw;
  container-type: inline-size;
  max-width: 480px;
  margin-left: 0;
}

.countwrapper:has(.counter-end) {
  display: block;
}

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

/* .countwrapper .count {
	background-color: var(--clr-grau-med);
	color: var(--clr-weiss);
	aspect-ratio: 1/1;
	place-content: center;
	display: grid;
	font-size: 8cqw;
	line-height: 1.2;
	border-radius: 5px;
} */

.countwrapper .count {
  background-color: transparent;
  color: var(--clr-schwarz);
  aspect-ratio: 1/1;
  place-content: center;
  display: grid;
  font-size: 7cqw;
  line-height: 1.2;
  border-radius: 5px;
  border: 1px solid var(--clr-schwarz);
}

.countwrapper .count::after {
  content: "Tage";
  font-size: 2.75cqw;
}

.count.hours::after {
  content: "Stunden";
}

.count.minutes::after {
  content: "Minuten";
}

.count.seconds::after {
  content: "Sekunden";
}

.counter-bild {
  aspect-ratio: 4/3;
  background-repeat: no-repeat;
  background-size: cover;
}

.counter h2 {
  margin-bottom: 1.25em;
}

.counter p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  padding-bottom: 0;
  margin-bottom: calc(0.75 * var(--padder));
}

@media screen and (max-width: 1380px) {
  .counter h2 {
    margin-bottom: 0.75em;
  }
}

@media screen and (max-width: 1140px) {
  .counter p {
    -webkit-line-clamp: 2;
  }
}

@media screen and (max-width: 1080px) {
  .counter .container.small.grid.g-2 {
    grid-template-columns: 1fr;
    padding-left: 0;
  }

  .counter-bild {
    order: -1;
  }

  .counter h2 {
    margin-bottom: 1.25em;
  }

  .counter p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 999;
    overflow: hidden;
    padding-bottom: calc(1.5 * var(--padder));
    margin-bottom: 0;
  }

  .container.full.counter {
    padding-bottom: var(--padder);
  }
}

@media screen and (max-width: 600px) {
  .countwrapper {
    width: 100cqw;
  }
}

/* #endregion Counter */

/* #region Akkordeon */

.detailswrapper {
  margin-bottom: calc(0.5 * var(--padder));
}

details {
  position: relative;
  padding-bottom: 0.5rem;
  margin-inline: auto;
  border-radius: 0.3rem;
  display: block;
  clear: both;
}

summary {
  padding-inline: 2rem;
  position: relative;
  cursor: pointer;
  font-size: var(--font-h3);
}

.teaserbox summary {
  font-size: var(--font-p);
}

/* Demo Code */
.details::details-content {
  display: block;
  margin-inline: 2rem;
  block-size: 0;
  overflow: hidden;
  transition-property: block-size, content-visibility;
  transition-duration: 0.5s;
  transition-behavior: allow-discrete;
}

.details[open]::details-content {
  /* Fallback for browsers that don't support calc-size() function */
  block-size: auto;

  /* calc-size() function allows transition to height: auto; */
  block-size: calc-size(auto, size);
}

.details__content {
  margin-top: 0.5rem;
  padding-bottom: 1rem;
}

/* List Item ::marker supports only some CSS properties, so we're using ::before pseudo-element instead */
summary::marker {
  content: ">";
  content: none;
}

summary::-webkit-details-marker {
  display: none;
}

summary::before {
  content: ">";
  position: absolute;
  inset-inline-start: 0rem;
  inset-block-start: 0.25rem;
  transition: rotate 0.2s;
  font-family: amatiksymbols;
  font-size: 1rem;
  align-content: center;
  height: 1.75rem;
}

.teaserbox summary::before {
  height: calc(0.5 * var(--font-p));
  font-size: calc(0.75 * var(--font-p));
  transform-origin: center bottom;
}

.details[open] summary::before {
  rotate: 90deg;
  inset-block-start: 0.25rem;
}

/* #endregion Akkordeon */

/* #region Startseite Introtext Störer */

.teaser.big.flash {
  display: grid;
  grid-auto-flow: column;
  padding-top: var(--padder);
  max-width: 1980px;
  margin: auto;
  width: 100%;
  padding-inline: 0;
  margin-bottom: var(--padder);
}

.flashwrap {
  align-content: end;
  position: relative;
}

.flashbox {
  font-size: var(--font-h3);
  border: 2px solid;
  color: var(--clr-rot-dunkel);
  position: absolute;
  right: calc(1 * var(--padder));
  padding: calc(0.4 * var(--padder));
  padding-right: var(--padder);
  bottom: calc(-1 * var(--padder));
  border-radius: 4px;
  text-decoration: none;
  padding-top: calc(0.25 * var(--padder));
  width: max-content;
  max-width: 300px;
  transition: 0.3s;
  padding-bottom: var(--padder);
}

@media screen and (max-width: 1980px) {
  .flashbox {
    right: calc(2 * var(--padder));
  }
}

.flashbox p {
  font-size: var(--font-p);
}

.flashbox::before {
  content: ">";
  font-family: amatiksymbols;
  position: absolute;
  bottom: 5px;
  right: 5px;
}

.flashbox:hover {
  scale: 1.025;
  background-color: var(--clr-rot-dunkel);
  color: var(--clr-weiss);
  border-color: var(--clr-rot-dunkel);
}

@media screen and (max-width: 1080px) {
  .teaser.big.flash {
    display: grid;
    grid-auto-flow: inherit;
    gap: 0rem;
  }

  .flashwrap {
    align-content: end;
    position: inherit;
  }

  .flashbox {
    position: absolute;
    bottom: calc(25svh + var(--padder));
    margin-left: var(--padder);
    display: block;
    z-index: 1;
    right: var(--padder);
    height: fit-content;
    background-color: var(--clr-weiss);
    color: var(--clr-rot-dunkel);
    border-color: var(--clr-weiss);
  }
}

/* #endregion Startseite Introtext Störer */

/* #region Plenum News Switcher */

.container.switch {
  display: none;
}

.container.switch.active {
  display: block;
}

.container.news h2,
.container.plenum h2 {
  font-size: var(--font-h1-med);
  font-family: documenta;
}

.switcher {
  color: var(--clr-grau-100);
}

.switcher span {
  background-image: linear-gradient(var(--clr-schwarz), var(--clr-schwarz));
  background-size: 0% 3px;
  background-repeat: no-repeat;
  background-position: right bottom;
  transition: background-size 300ms ease;
  padding-bottom: 0.5rem;
}

.switcher .active,
.switcher span:hover {
  background-size: 100% 3px;
  width: auto;
}

.switcher .active {
  color: var(--clr-schwarz);
}

.switcher span:last-of-type {
  cursor: pointer;
}

@media screen and (max-width: 480px) {
  .switcher {
    line-height: 1.75;
  }
}

.socialblock {
  max-width: 130px;
}

.socialblock img {
  max-width: 75px;
  display: block;
  filter: grayscale(100%);
  transition: 0.2s;
  margin: auto;
}

.socialblock img:hover {
  filter: grayscale(0%);
}

.socialblock a {
  text-decoration: none;
}

main a:has(.social)[target="_blank"]::after {
  content: "";
}

.socialblock .grid.g-2 {
  width: max-content;
  gap: calc(0.25 * var(--padder));
  grid-template-columns: 1fr;
}

.socialblock .grid.g-2 div {
  display: grid;
  text-align: center;
}

.socialblock a:hover,
.socialblock a:focus {
  text-decoration: underline;
}

.social {
  font-size: var(--font-h4);
  line-height: 1.5;
  margin-top: 0;
  min-height: auto;
}

.social::before {
  text-decoration: none !important;
  font-size: 16px;
  font-family: amatiksymbols;
  display: inline-block;
  text-decoration: none;
  padding-right: 5px;
}

.social.x::before {
  content: "b";
}

.social.insta::before {
  content: "a";
}

.social.linkedin::before {
  content: "l";
}

.social.whatsapp::before {
  content: "w";
}

.container.news .socialblock h2 {
  font-size: var(--font-h4);
  font-family: documenta-sans-regular;
  color: var(--clr-schwarz);
  margin-bottom: 2em;
}

@media screen and (max-width: 1080px) {
  .socialblock {
    max-width: 100%;
    margin-top: var(--padder);
    margin-bottom: var(--padder);
  }

  .socialblock .grid.g-2 {
    grid-template-columns: repeat(3, 1fr);
    gap: calc(0.5 * var(--padder));
    width: 100%;
  }

  .container.news .socialblock h2 {
    margin-bottom: 1em;
  }
}

/* #endregion Plenum News Switcher */

/* #region Swiper */

.swiper {
  min-width: 0;
  width: 100%;
  padding-bottom: 1rem;
}

h2 + .swiper.news {
  margin-top: 3em;
}

.swiper-slide {
  height: auto;
}

.swiper .buttowrapper {
  position: relative;
  width: 100px;
  float: right;
  margin-top: calc(1.5 * var(--padder));
  margin-bottom: 0.5rem;
}

.swiper-wrapper {
  height: fit-content;
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  left: auto;
  right: auto;
  width: 100%;
  height: 4px;
  margin: auto;
  display: block;
  position: relative;
}

.swiper-scrollbar {
  background: var(--clr-grau-hell);
}

.swiper-scrollbar-drag {
  background: var(--clr-grau-100);
}

.swiper-scrollbar.news {
  margin-top: calc(0.5 * var(--padder));
  width: 100%;
}

@media screen and (max-width: 1280px) {
}

/* #endregion Swiper */

/* #region Swiper Full */

.swiper.full {
  padding-bottom: var(--padder);
  margin-bottom: var(--padder);
  padding-inline: var(--padder);
}

.swiper.full .introimage img {
  aspect-ratio: 16/9;
}

/* #endregion Swiper Full */

/* Plenum */

.container.full.news_slider + .container.full.absatzinfobox {
  padding-top: 0;
}

/* #region Plenum Laufschrift */

.marquee {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  padding: var(--padder);
  padding-bottom: 0;
}

.marquee div {
  display: inline-block;
  padding-left: 105%;
  animation: marquee 10s linear infinite;
  font-size: var(--font-h3);
  font-family: documenta-sans-regular;
}

.marquee + .lightblue .clearblock:first-child {
  height: calc(1 * var(--padder));
}

.marquee div a {
  font-size: var(--font-h2);
  text-decoration-thickness: 0.05em;
}

.marquee div a:hover {
  color: var(--clr-white);
}

.marquee span::before {
  content: "+ + +";
}

.marquee span:last-child::after {
  content: "+ + +";
}

/* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */
.marquee div:hover {
  animation-play-state: paused;
}

/* Make it move */
@keyframes marquee {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}

/* #endregion Plenum Laufschrift */

/* #region Swiper Plenum */

.swiper.plenum {
  margin-bottom: 0;
  translate: calc(1 * var(--padder));
  height: max-content;
}

.swiper.plenum .swiper-slide,
.swiper.plenum-4er .swiper-slide {
  background-color: var(--clr-grau-hell);
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.swiper.plenum .introwrapper,
.swiper.plenum-4er .introwrapper {
  display: block;
  height: 100%;
}

.swiper.plenum .introimage img,
.swiper.plenum .introwrapper .introimage,
.swiper.plenum-4er .introimage img,
.swiper.plenum-4er .introwrapper .introimage {
  aspect-ratio: 16/9;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  margin-bottom: 1.25rem;
}

.swiper.plenum .introtext,
.swiper.plenum-4er .introtext {
  padding: 1.5rem 1rem;
  place-self: end;
  width: 100%;
  padding-top: 0;
  margin-bottom: 0;
}

.swiper.plenum .buttowrapper,
.swiper.plenum-4er .buttowrapper {
  margin-right: calc(2 * var(--padder));
}

.swiper.plenum-4er .buttowrapper {
  margin-right: 0;
}

@media screen and (max-width: 1080px) {
  .swiper.plenum .buttowrapper {
    margin-right: var(--padder);
  }
}
/* #endregion Swiper Plenum */

/* #region Video Plenum */

.plenum .video {
  width: calc(100% + 1 * var(--padder));
  float: left;
  display: block;
  aspect-ratio: 16/9;
  height: auto;
}

.plenum .video video {
  margin-bottom: 1rem;
  width: 100%;
}

@media screen and (max-width: 1080px) {
  .plenum .video {
    width: 100%;
    margin-top: var(--padder);
    margin-bottom: calc(3 * var(--padder));
  }

  .swiper.plenum {
    translate: calc(0 * var(--padder));
    width: calc(100% + var(--padder));
  }
}

/* #endregion Video Plenum */

/* #region Newsticker Plenum */

.newsticker {
  margin-top: calc(0.75 * var(--padder));
}

.newsticker h2 {
  margin-bottom: calc(0.5 * var(--padder));
  font-size: var(--font-h3);
}

.tickerbox,
.searchitem {
  border-left: 1px solid;
  padding-left: var(--padder);
  padding-bottom: calc(2 * var(--padder));
  position: relative;
  display: block;
}

.tickerbox::before,
.searchitem::before,
.partei::before {
  content: "";
  width: 13px;
  height: 13px;
  background-color: var(--clr-grau-100);
  position: absolute;
  left: -7px;
  top: 0;
  border-radius: 13px;
}

.tickerbox.active::before {
  background-color: var(--clr-rot-dunkel);
}

.grid.g-2 .tickerbox:first-of-type::before {
  background-color: var(--clr-grau-100);
}

.tickerbox h2 a,
.tickerbox h3 a {
  text-decoration: none;
}

.pressetickerblock p:last-child {
  padding-bottom: var(--padder);
}

.presseticker + .presseticker {
  margin-top: var(--padder);
}

.presseticker.head + .presseticker {
  margin-top: 0;
}

.pressetickerblock h1 {
  margin-bottom: 1em;
}

/* Parteifarben */

.partei {
  position: relative;
  padding-left: 1rem;
  margin-left: 10px;
  margin-top: 1rem;
  display: block;
  line-height: 0.9;
  margin-bottom: 1.5rem;
}

.tickerbox.cdu::before,
.partei.cdu::before {
  background-color: #000;
}

.tickerbox.gruene::before,
.partei.gruene::before {
  background-color: #42ac32;
}

.tickerbox.fdp::before,
.partei.fdp::before {
  background-color: #fecb00;
}

.tickerbox.spd::before,
.partei.spd::before {
  background-color: #d52b1e;
}

.tickerbox.ssw::before,
.partei.ssw::before {
  background-color: #4060af;
}

.tickerlink {
  text-decoration: none;
}

.tickerlink:hover {
  text-decoration: underline;
}

.tickerbox .date {
  display: block;
  line-height: 1;
  margin-bottom: 0.5em;
}

.tickerbox h2 {
  font-size: var(--font-h3);
  margin-bottom: 0.25em;
}

.tickerbox p {
  font-size: var(--font-p-med);
}

.searchitem {
  padding-bottom: var(--padder);
}

.searchitem p {
  font-size: var(--font-p-med);
}

.searchitem a {
  font-size: var(--font-h3);
  text-decoration: none;
  line-height: 1.2;
  max-width: 41ch;
  display: block;
  padding-bottom: 0.25em;
}

.searchitem a:hover {
  text-decoration: underline;
}

.searchitem:last-of-type {
  margin-bottom: var(--padder);
}

a.tickerbox {
  text-decoration: none;
}

a.tickerbox:hover h2 {
  text-decoration: underline;
}

@media screen and (max-width: 1080px) {
  .newsticker {
    grid-row-start: 2;
  }
}

/* #endregion Newsticker Plenum */

/* #region Startseite Kalender */
.calendergrid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: calc(2 * var(--padder));
  border-top: 1px solid;
  padding-top: calc(0.5 * var(--padder));
}

.dayMonthCalendar
  .pic-ltsh-calendar-row-col-eventlist-eventDetails-eventList.swiper-wrapper {
  aspect-ratio: 1/0.75;
}

.dayMonthCalendar .pic-ltsh-calendar-row-col-eventlist-eventDetails-eventList {
  gap: calc(0.5 * var(--padder));
}

@media screen and (max-width: 1080px) {
  .calendergrid {
    width: 100cqw;
  }
}

.fc .fc-view-harness {
  max-height: 300vh;
}

/* Calender ohne reszize test */

.calendergrid .fc .fc-view-harness {
  max-height: 300vh;
  aspect-ratio: 1/1.25;
  container-type: inline-size;
}

.calendergrid .fc-daygrid-body.fc-daygrid-body-unbalanced {
  width: auto !important;
}

.calendergrid .fc-scrollgrid-sync-table {
  width: 100% !important;
  height: 100% !important;
}

.calendergrid .fc .fc-scroller {
  padding-right: 0;
}

@media screen and (max-width: 810px) {
  .calendergrid {
    margin-top: var(--padder);
    grid-template-columns: 1fr;
    gap: var(--padder);
  }

  .dayMonthCalendar
    .pic-ltsh-calendar-row-col-eventlist-eventDetails-eventList {
    gap: 0;
  }

  .dayMonthCalendar
    .pic-ltsh-calendar-row-col-eventlist-eventDetails-eventList.swiper-wrapper {
    aspect-ratio: 0;
  }

  .dayMonthCalendar .fc-day {
    aspect-ratio: 48/48;
  }

  .dayMonthCalendar .pic-ltsh-calendar-row-col-eventlist-eventDetails-date {
    border-bottom: 1px solid;
    padding-bottom: 0.5rem;
  }

  .dayMonthCalendar .calenderwrapper {
    max-width: 480px;
    margin: auto;
    margin-right: auto;
  }

  .dayMonthCalendar tbody[role="presentation"] {
    display: grid;
    gap: 1.75rem;
    padding-top: 1px;
    height: 100vw;
    width: calc(100vw - 2 * var(--padder));
    max-width: 480px;
    max-height: 480px;
  }

  .dayMonthCalendar .pic-ltsh-calendar-row-col,
  .fc .fc-view-harness {
    margin-bottom: 0rem;
  }
}

@media screen and (max-width: 480px) {
  .dayMonthCalendar tbody[role="presentation"] {
    gap: 1.25rem;
  }
}

/* #endregion Startseite Kalender */

/* #region Startseite Dialog */

.dialogbox.mobile {
  display: none;
}

.dialogbox.desktop {
  padding-right: var(--padder);
}

.dialogbox {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.dialogbox .textbox {
  text-align: right;
}

.dialogbox .textbox span {
  font-size: var(--font-h1-big);
  display: block;
  margin-right: var(--padder);
  cursor: pointer;
  background-image: linear-gradient(var(--clr-schwarz), var(--clr-schwarz));
  background-size: 0% 1px;
  background-repeat: no-repeat;
  background-position: left bottom;
  transition: background-size 0.75s ease;
  max-width: fit-content;
}

.dialogbox .textbox span:hover {
  background-size: 100% 1px;
  width: auto;
}

.bilderbox {
  display: grid;
  place-content: center left;
  z-index: -1;
  max-width: max-content;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  aspect-ratio: 1/1;
  border-radius: 4px;
}

.bilderbox img {
  grid-area: 1/1;
  translate: -100%;
  opacity: 1;
  transition: 0.75s;
  aspect-ratio: 1/1;
  object-fit: cover;
}

.dialogbox:has(.hovertext-1:hover) .hoverbild-1,
.dialogbox:has(.hovertext-2:hover) .hoverbild-2,
.dialogbox:has(.hovertext-3:hover) .hoverbild-3 {
  opacity: 1;
  translate: 0%;
}

main .dialogbox a {
  text-decoration: none;
}

@media screen and (max-width: 1080px) {
  .dialogbox.desktop {
    display: none;
  }

  .dialogbox.mobile {
    display: grid;
    margin-top: calc(1.5 * var(--padder));
  }

  .dialogbox {
    grid-template-columns: 1fr;
  }

  main .dialogbox a {
    display: grid;
  }

  .textbox {
    text-align: left;
    overflow: hidden;
  }

  .dialogbox .textbox span {
    margin-bottom: 1.25em;
    font-size: var(--font-h2-start);
    background-image: url(../images/arrow.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: right center;
    width: 100%;
    display: block;
    float: left;
    max-width: 100%;
    text-align: left;
    order: 2;
  }

  .dialogbox.mobile img {
    aspect-ratio: 16/9;
    object-fit: cover;
    margin-bottom: 0.5em;
  }

  .textbox a:has(img:hover) span {
    background-size: 100% 1px;
    width: auto;
  }

  .bilderbox {
    max-width: 100%;
  }

  .bilderbox img {
    width: 100vw;
    max-width: 100vw;
  }
}

/* #endregion Dialog */

/* #region Introblöcke */

.introwrapper {
  transition: 0.2s;
  text-decoration: none;
}

.introwrapper.center {
  text-align: center;
  place-content: start;
}

.introwrapper:hover .introimage img {
  scale: 1.05;
}

.introwrapper:hover .introimage.small img {
  scale: 1;
}

.introwrapper h3 span,
.pressenews .ticker .presserow a span,
a.newsteaser p span {
  background-image: linear-gradient(var(--clr-schwarz), var(--clr-schwarz));
  background-size: 0% 1px;
  background-repeat: no-repeat;
  background-position: left bottom;
  transition: background-size 300ms ease;
}

.introwrapper:hover h3 span,
.pressenews .ticker .presserow a:hover span,
a.newsteaser:hover p span {
  background-size: 100% 1px;
  width: auto;
}

.introimage,
.introimg,
.topimage {
  position: relative;
}

.introimage,
.introimg {
  overflow: hidden;
  margin-bottom: 1.75rem;
  border-radius: 4px;
}

.introimage img,
.introimg img,
.teaserbox .newsteaser .introimg img {
  aspect-ratio: 1/1;
  object-fit: cover;
  display: block;
  transition: 0.5s;
}

.teaserbox .introimg img {
  aspect-ratio: auto;
}

.introimage.small img {
  object-fit: contain;
  aspect-ratio: unset;
}

.teaserbox p:last-child {
  padding-bottom: 1.5em;
}

.teaserbox .details .text p:last-child {
  padding-bottom: 0;
}

/* #endregion Introblöcke */

/* #region Copyright Overlay */

.copyright.overlay {
  position: absolute;
  -webkit-backdrop-filter: brightness(100%);
  backdrop-filter: brightness(100%);
  bottom: 0;
  height: auto;
  padding: 1rem 0.5rem;
  height: 36px;
  width: 100%;
  color: var(--clr-weiss);
  overflow: hidden;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  padding-top: 1.5rem;
}

.bildergalerie .copyright.show_caption {
  height: auto;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  color: var(--clr-schwarz);
  position: relative;
  padding-inline: 0;
  padding-top: 0.75rem;
}

.copyright.show_caption .open {
  display: none;
}

.copyright.overlay.show_caption .caption {
  padding-inline: 0;
  font-size: var(--font-h4);
}

.copyright.overlay.show_caption .caption .capdesc {
  display: block;
  -webkit-line-clamp: none;
  overflow: visible;
  max-width: 90ch;
  text-wrap: balance;
}

.copyright.show_caption .caption div:last-child {
  color: var(--clr-grau-med);
}

.copyright.overlay.active {
  height: auto;
  -webkit-backdrop-filter: brightness(25%);
  backdrop-filter: brightness(25%);
}

.copyright.overlay .caption {
  padding-inline: 0.75rem;
}

.copyright.overlay .caption .capdesc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.copyright .open {
  font-family: amatiksymbols;
  border: 0px solid var(--clr-schwarz);
  border-radius: 100%;
  width: 20px;
  height: 20px;
  text-align: center;
  font-size: 16px;
  translate: 3px -10px;
  cursor: pointer;
  background-color: var(--clr-schwarz);
  place-content: center;
  display: grid;
}

/* #endregion Copyright Overlay */

/* #region Teaserbox */

.grid.lottie {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 0px 0px;
  grid-auto-flow: row;
  grid-template-areas:
    "one animation two"
    "three animation four";
  transition: 0.5s;
  padding-inline: calc(0.5 * var(--padder));
}

/*  .grid.lottie:has(.teaserbox:hover) {
	grid-template-columns: 1fr 2.25fr 1fr;
} */

.grid.lottie p {
  max-width: 30ch;
}

.lottie .one {
  grid-area: one;
}

.lottie .two {
  grid-area: two;
}

.lottie .three {
  grid-area: three;
}

.lottie .four {
  grid-area: four;
}

.lottie .animation {
  grid-area: animation;
  align-content: baseline;
}

.container > .container:has(.grid.lottie) {
  padding-inline: 0;
}

.container > .container:has(.grid.lottie) .big {
  padding-inline: var(--padder);
}

@media screen and (max-width: 1080px) {
  .container > .container:has(.grid.lottie) .big {
    padding-inline: 0;
  }
}

.teaserbox {
  background-color: var(--clr-weiss);
  padding: calc(1 * var(--padder)) calc(0.75 * var(--padder));
  border-radius: 4px;
  height: fit-content;
}

.sticky .teaserbox {
  padding-top: 0;
  position: sticky;
  top: calc(2 * var(--padder));
}

section.bg .sticky .teaserbox {
  position: relative;
  top: 0;
  margin-top: calc(3 * var(--padder));
  padding-top: calc(3 * var(--padder));
  transition: all 1s cubic-bezier(0.43, -0.085, 0.57, 1.075);
}

section.bg .sticky .teaserbox.comein {
  margin-top: 0;
  padding-top: var(--padder);
}

.container.full.bg.panorama.start .teaserbox.comein {
  margin-top: 11rem;
}

section.bg.start .sticky .teaserbox.comein {
  margin-top: 8rem;
}

.pic_infobox + .pic_infobox,
.pic_infobox + .pic,
.pic + .pic_infobox,
.pic + .pic {
  margin-top: 1rem;
}

.teaserbox h2 {
  font-size: var(--font-p-big);
  font-family: documenta-sans-regular;
  border-bottom: 1px solid;
  padding-bottom: 0.25em;
  margin-bottom: 1em;
}

.teaserbox .pic:not(:first-child) h2 {
  font-size: var(--font-p);
  font-family: documenta-sans-regular;
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0.75em;
}

.teaserbox h3 {
  font-size: var(--font-p);
}

.teaserbox h3:has(+ .pic_infobox) {
  margin-bottom: 0.75em;
}

.teaserbox p,
.teaserbox ul,
.teaserbox ol,
.teaserbox strong {
  font-size: 1rem;
  line-height: 1.3;
}

.infobox.pic_text_color_red p {
  color: var(--clr-rot-dunkel);
  font-size: 14px;
}

.bg.start .teaserbox p {
  font-size: var(--font-p);
}

.teaserbox ul {
  padding-bottom: 1rem;
}

.teaserbox ul li,
.teaserbox ol li {
  margin-bottom: 0.25em;
}

.teaserbox .imagewrapper {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: 0.75s;
}

.teaserbox .imagewrapper img {
  overflow: hidden;
  /* display: none; */
}

.teaserbox:hover .imagewrapper {
  grid-template-rows: 1fr;
  margin-bottom: 1rem;
}

.grid.lottie:has(.teaserbox:not(:hover)) .teaserbox:hover {
  opacity: 1;
  transition: 0.75s;
}

.grid.lottie:has(.teaserbox:hover) .teaserbox {
  opacity: 0.25;
  transition: 0.75s;
}

a.newsteaser {
  text-decoration: none;
  margin-bottom: calc(0.5 * var(--padder));
  display: grid;
  grid-template-columns: 75px 1fr;
  gap: 0.75rem;
}

.newsteaser .introimage,
.newsteaser .introimg {
  margin-bottom: 0;
}

.teaserbox a.newsteaser p {
  text-decoration: none;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  padding-bottom: 0;
}

canvas {
  aspect-ratio: 690/650;
  padding: var(--padder);
}

@media screen and (max-width: 1080px) {
  .newsteaser-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0rem;
    column-gap: 1rem;
  }
}

@media screen and (max-width: 500px) {
  .newsteaser-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0rem;
  }
}

@media screen and (max-width: 1080px) {
  .sticky .teaserbox {
    padding-inline: 0;
    position: relative;
    top: 0;
    margin-top: calc(1.5 * var(--padder));
  }

  section.bg .sticky .teaserbox {
    padding-inline: calc(0.75 * var(--padder));
  }

  a.newsteaser {
    margin-bottom: calc(0.75 * var(--padder));
  }
}

@media screen and (max-width: 810px) {
  .teaserbox .grid.g-2 {
    gap: calc(0.5 * var(--padder));
    grid-template-columns: 1fr;
    row-gap: 0.25rem;
  }
  section.bg .sticky .teaserbox.comein,
  .container.grid.g-23.sticky,
  .container.full.bg:has(+ section) {
    padding-bottom: 0;
  }

  section.bg .sticky .teaserbox.comein {
    padding-inline: 0;
  }

  .container.full.easylanguage.easyintro.bg.start.big
    .container.grid.g-23.sticky {
    padding-top: 0;
  }
}

.lottie .teaserbox h3 {
  border-bottom: 0px solid;
  padding-bottom: 0;
  font-size: var(--font-h2-start);
  cursor: pointer;
}

.lottie .teaserbox .imagewrapper img {
  margin-top: 0.25em;
}

@media screen and (max-width: 1080px) {
  .grid.lottie {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "animation" "one" "two" "three" "four";
    padding-inline: 0;
  }

  .lottie .container {
    padding-bottom: 0;
    padding-top: 0;
  }

  .lottie .teaserbox {
    padding: 0;
  }

  .lottie .teaserbox.active {
    margin-bottom: calc(1.5 * var(--padder));
  }

  .lottie .teaserbox h3 {
    border-top: 1px solid;
    padding-bottom: 0;
    padding-top: 0.5rem;
  }

  .lottie .teaserbox .contentwrapper {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition: 500ms;
  }

  .lottie .teaserbox.active .contentwrapper {
    grid-template-rows: 1fr;
    margin-bottom: 1rem;
    opacity: 1;
  }

  .lottie .teaserbox .content {
    overflow: hidden;
  }

  .teaserbox:hover .imagewrapper {
    grid-template-rows: 0fr;
    margin-bottom: 0rem;
  }

  .teaserbox.active .imagewrapper {
    grid-template-rows: 1fr;
    margin-bottom: 1rem;
  }

  .teaserbox.active .imagewrapper img {
    max-width: 400px;
    margin-top: 1em;
  }

  .teaserbox.four.active {
    margin-bottom: 0;
  }
}

/* #endregion Teaserbox */

/* #region Video Hintergrund */

.videocontainer {
  display: grid;
  grid-template-rows: 75svh 1fr;
}

.videobg video,
.videobg img {
  position: relative;
  z-index: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  filter: brightness(75%);
  border-radius: 0;
}

.videobg video::-webkit-media-controls {
  display: none !important;
}

.videobg {
  position: relative;
  display: grid;
  place-items: center;
  height: 75svh;
  width: 100%;
  margin: 0 auto;
  background: #ccc;
  top: 0;
  overflow: hidden;
}

.toggle-pause {
  position: absolute;
  bottom: var(--padder);
  left: calc(2 * var(--padder));
  background-color: transparent;
  color: var(--clr-weiss);
  min-height: 44px;
  min-width: 65px;
  display: block;
  font-family: amatiksymbols;
}

.toggle-pause img {
  width: 13px;
  height: 13px;
}

@media screen and (max-width: 1080px) {
  .toggle-pause {
    left: var(--padder);
  }
}

/* #endregion Video Hintergrund */

/* #region Personenliste */

.personengrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr));
  gap: calc(0.75 * var(--padder));
  row-gap: calc(1.5 * var(--padder));
}

.personenwrapper .introimage img {
  aspect-ratio: inherit;
}

.personenwrapper .name h3 {
  font-size: var(--font-h3);
  margin-bottom: 1em;
}

.personenwrapper {
  hyphens: auto;
}

.personenwrapper p {
  font-size: var(--font-p-small);
  line-height: 1.3;
  padding-bottom: 0.75em;
}

.personenwrapper a {
  font-size: var(--font-h4);
}

@media screen and (max-width: 810px) {
  .personengrid {
    row-gap: calc(2.5 * var(--padder));
  }
}

@media screen and (max-width: 480px) {
  .personengrid {
    grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr));
  }
}

/* #endregion Personenliste */

/* Felder Reset */

.flexfields {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.flexfields + .flexfields {
  margin-top: 1rem;
}

.flexfields + h2,
.flexfields + h3 {
  margin-top: calc(0.75 * var(--padder));
  margin-bottom: 0.75em;
}

.mandatory-message + h3 {
  margin-bottom: 0.75rem;
}

.gridfields {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--padder);
}

.gridfields fieldset {
  display: grid;
}

fieldset {
  border: 0;
  padding: 0;
  margin-bottom: 1rem;
}

.teaserbox.presseticker fieldset {
  margin-bottom: 0.25rem;
}

.flexfields fieldset {
  margin-bottom: 0;
}

fieldset:has(.input-file) {
  display: flex;
}

fieldset:has(.input-file) label {
  position: relative;
  font-size: var(--font-btn);
  font-family: documenta-sans-regular;
  padding: 0rem 1rem;
  border-radius: 60px;
  background-color: transparent;
  border: 1px solid var(--clr-schwarz);
  transition: 0.3s;
  text-decoration: none;
  margin-right: 0.5rem;
  color: var(--clr-schwarz);
  white-space: nowrap;
  min-height: 44px;
  min-width: 44px;
  line-height: 0;
  text-align: center;
  width: fit-content;
  max-width: fit-content;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
}

fieldset:has(.input-file) label:hover {
  background-color: var(--clr-schwarz);
  color: var(--clr-weiss);
}

fieldset:has(.input-file) label.sr-only,
fieldset:has(.input-file) label:hover.sr-only {
  display: none;
}

@media screen and (max-width: 1080px) {
  .gridfields {
    grid-template-columns: 1fr;
  }
}

/* #region Filter */
.form-horizontal {
  display: grid;
  gap: 1rem;
}

.filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  row-gap: 0;
  margin-top: 0;
  margin-bottom: calc(0.25 * var(--padder));
}

.filters-list li {
  padding-left: 0;
}

.filters-list li::before,
.pagination li::before,
.presseticker li::before {
  display: none;
}

.filters-list .btn {
  margin-top: 0;
  background:
    url("../images/klapper.svg") no-repeat right 0.8em center / 1em,
    linear-gradient(to left, var(--arrow-bg) 3em, var(--select-bg) 2em);
  padding: 0rem 3rem 0rem 1rem;
  color: var(--clr-schwarz);
}

.resultcount {
  width: 100%;
  margin-top: 1rem;
}

.subfilter {
  display: none;
  position: absolute;
  background-color: #fff;
  border: 0px solid #4d4d4d;
  border-top-width: 0px;
  padding: calc(0.5 * var(--padder));
  width: fit-content;
  min-width: 130px;
  z-index: 10;
  margin-top: 10px;
  font-size: 1rem;
  border-radius: 4px;
  outline: 1px solid var(--clr-schwarz);
  outline-offset: 0px;
  padding-top: calc(0.75 * var(--padder));
}

.subfilter:has(.firstkat),
.subfilter:has(legend) {
  padding-top: calc(0.5 * var(--padder));
}

.active .subfilter {
  display: block;
}

.subfilter legend {
  margin-bottom: 10px;
}

.subfilter fieldset {
  margin-bottom: 0;
  margin-top: 5px;
}

.filterform select, .filtersearch, .webform_field select /*, .searchform select */ {
  font-size: var(--font-p-small);
  margin-right: 0px;
  margin-bottom: 10px;
  width: 100%;
  float: left;
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid var(--clr-grau-dunkel);
  background-image: none;
  background-repeat: no-repeat;
  background-position: right;
  background-size: 20px;
  cursor: pointer;
  color: var(--clr-grau-dunkel);
  background-color: var(--clr-weiss);
  border-radius: 0;
  -webkit-appearance: none;
  appearance: none;
}

.searchform select,
.filterform select {
  background-image: url(../images/klapper.svg);
}

.filterform option {
  font-family: arial;
  font-size: 12px;
}

.closer {
  position: absolute;
  right: 10px;
  top: 10px;
  text-decoration: none;
}

.closer::after {
  content: "";
  background-image: url(../images/close.png);
  width: 15px;
  height: 15px;
  display: block;
  background-size: cover;
}

.inputline,
.inputline label {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  line-height: 1.3;
}

.inputline:has(.firstkat) input {
  display: none;
}

.inputline:has(.firstkat) label {
  margin-top: 10px;
}

/* #endregion Filter */

/* #region Selectlist */

/* <select> styles */

label span {
  display: block;
  margin-bottom: 0.5rem;
  clear: both;
}

select,
select:focus {
  /* Reset */
  appearance: none;
  border: 1px solid;
  outline: 0;
  font: caption;
  font-family: documenta-sans-regular-table;
  font-size: 1rem;
  width: min-content;
  min-width: 140px;
  padding: 0rem 3rem 0rem 1rem;
  background:
    url("../images/klapper.svg") no-repeat right 0.8em center / 1em,
    linear-gradient(to left, var(--arrow-bg) 3em, var(--select-bg) 2em);
  color: var(--clr-schwarz);
  border-radius: 60px;
  cursor: pointer;
  height: 44px;
  /* Remove IE arrow */
  &::-ms-expand {
    display: none;
  }
  /* Remove focus outline */
  &:focus {
    outline: none;
  }
  /* <option> colors */
  option {
    appearance: none;
    color: inherit;
    font: caption;
    margin-bottom: 1rem;
    font-size: var(--font-p-small);
    background-color: var(--option-bg);
  }
  option:checked {
    background-color: red;
  }
}

select,
option {
  font: -moz-pull-down-menu;
}
/* #endregion Selectlist */

/* #region textfield */

/*
.input-field {
	position: relative;
}

.input-field input {
	border-radius: 60px;
	font-size: 1rem;
	padding: .95rem;
	width: fit-content;
	border: 1px solid;
	transition: width .3s, display .3s;
	height: 44px;
}

.input-field label {
	position: absolute;
	top: 50%;
	left: .95rem;
	translate: 0px -50%;
	font-size: var(--font-btn);
	pointer-events: none;
	transition: .3s;
}

input:focus {
	border: 1px solid green;
}

input:focus ~ label,
input:valid ~ label {
	top: 0;
	font-size: var(--font-h4);
	padding: 0 10px;
	background: var(--clr-weiss);	
}

*/

label {
  --padding: 12px;
  --height: 40px;
  --bg: white;
  display: inline-block;
  position: relative;
  max-width: fit-content;
  width: 100%;
  margin-bottom: 10px;
}

.filter label {
  max-width: 100%;
}

.error_msg {
  color: var(--clr-rot-dunkel);
  position: absolute;
  z-index: 1;
  margin-top: 44px;
  font-size: 14px;
  margin-left: 15px;
}

.pet_error,
.pet_error input[type="checkbox"],
.pet_error input[type="radio"] {
  color: var(--clr-schwarz);
  border-color: var(--clr-rot-dunkel);
}

#petition\.userImageHasRights\.errors,
#neuePetitionModel\.errors {
  position: relative;
  margin-top: 0;
  width: 100%;
  margin-left: 40px;
}

.teaserbox .label * {
  width: 100%;
  max-width: 100%;
}

.input-field.full label {
  width: 100%;
}

label:before {
  --left: calc(0.5 * var(--padding));
  content: attr(aria-label);
  position: absolute;
  top: calc(0.55 * var(--height) - 0.5lh);
  left: var(--left);
  max-width: calc(100% - 2 * var(--left));
  transition: transform 0.4s;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 calc(0.5 * var(--padding));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
  transform-origin: left;
  background-color: var(--bg);
}

/* Anpassung Planet */
#search-filter,
form input,
form input:focus-visible,
.calendar input,
.calendar input:focus-visible {
  border-radius: 60px;
  font-size: 1rem;
  padding: 0.95rem;
  width: 100vw;
  border: 1px solid;
  transition:
    width 0.3s,
    display 0.3s;
  height: 44px;
  max-width: 28ch;
}

.input-field.full input {
  width: 100%;
  max-width: 493px;
}

input:autofill {
  box-shadow: inset 0 0 0 666vw var(--bg);
}

input::placeholder {
  color: transparent;
}

label:has(input:focus):before,
label:has(input:autofill):before,
label:has(:not(input:placeholder-shown)):before {
  transform: translateY(calc(-0.5 * var(--height))) scale(0.8);
}

.state-error input {
  border-color: var(--clr-rot-dunkel);
}

.note.note-error {
  color: var(--clr-rot-dunkel);
}

/* Upload button */
.label.btn.inv {
  margin-bottom: var(--padder);
}

/* textarea */

fieldset:first-of-type .label.textarea_label {
  margin-top: 0;
}

.label.textarea_label {
  margin-top: var(--padder);
}

.label.textarea_label:has(.tooltip) h3::after {
  content: "I";
  font-family: amatiksymbols;
  font-size: 12px;
  position: absolute;
}

.label.textarea_label:has(.tooltip) .tooltip {
  position: absolute;
  top: 0;
  background-color: var(--clr-rot-dunkel);
  color: var(--clr-weiss);
  padding: 0.5rem;
  display: none;
}

.label.textarea_label:hover .tooltip {
  display: block;
}

fieldset:has(textarea) {
  width: 100%;
}

textarea {
  background-color: var(--clr-weiss);
  border: 1px solid;
  display: grid;
  width: 100%;
  max-width: 62ch;
  min-height: 25ch;
  padding: 0.5rem;
  border-radius: 4px;
}

/* Number */

input[type="number"] {
  max-width: 100px;
}

/* Checkbox */

.checkbox,
.radio {
  display: flex;
  gap: 0.25rem;
  margin-bottom: 0.5rem;
}

input[type="checkbox"],
input[type="radio"] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  appearance: none;
  /* For iOS < 15 to remove gradient background */
  background-color: #fff;
  /* Not removed via appearance */
  margin: 0;
}

input[type="checkbox"],
input[type="radio"] {
  appearance: none;
  background-color: #fff;
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 10px;
  height: 10px;
  border: 1px solid currentColor;
  border-radius: 4px;
  transform: translateY(-0.075em);
  display: grid;
  place-content: center;
  padding: 10px;
}

input[type="radio"] {
  border-radius: 100%;
}

input[type="checkbox"]::before,
input[type="radio"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--clr-rot-dunkel);
}

input[type="checkbox"]::before {
  background-image: url(../images/haken.svg);
  background-size: contain;
  box-shadow: none;
  background-repeat: no-repeat;
  margin-top: 0.25rem;
}

input[type="radio"]::before {
  border-radius: 100%;
}

input[type="checkbox"]:checked::before,
input[type="radio"]:checked::before {
  transform: scale(1);
}

/* Datei Upload */

.upload-wrapper {
  display: flex;
}

/* Anpassung Planet */
form input[type="file"],
.calendar input[type="file"] {
  display: none;
}

.input.input-file {
  display: flex;
  gap: 0.5rem;
}

.label.upload.btn {
  margin: 0;
  cursor: pointer;
}

/* #endregion textfield */

/* #region Shop */

.container.full.shop {
  padding-top: calc(1.25 * var(--padder));
}

.container.full.shop .teaserbox.comein {
  margin-top: calc(-0.25 * var(--padder));
}

.tab-content {
  display: none;
}

.tab-content.active {
  display: block;
}

.shop .grid.g-3 {
  row-gap: var(--padder);
}

.shop .introwrapper {
  position: relative;
}

.shop .introtext {
  margin-bottom: calc(2 * var(--padder));
}

.shop .formular .introtext {
  margin-bottom: var(--padder);
}

.shop input[type="number"] {
  position: relative;
  bottom: 0;
  margin-top: calc(1 * var(--padder));
}

.container.full.shop .date {
  display: none;
}

.webform_mandatory {
  max-width: 74ch;
}

.container.full.shop .introtext h3,
.container.full.shop .introtext p {
  margin-bottom: 0.75em;
  text-decoration: none;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.container.full.shop .introtext h3:hover {
  overflow: visible;
  -webkit-line-clamp: none;
}

.container.full.shop .introtext p {
  min-height: 2ch;
  -webkit-line-clamp: 3;
}

.container.full.shop .introtext p:empty {
  display: none;
}

.snackbar {
  margin-top: var(--padder);
}

#emailform .grid.g-2 {
  grid-template-columns: 1fr;
}

#emailform .flexfields {
  max-width: 800px;
}

/* #endregion Shop */

/* #region Listen */

.container:has(.pagination):not(.container:has(.g-63)) {
  padding-block: 0;
}

.container:last-child:has(.pagination):not(.container:has(.g-63)) {
  padding-bottom: var(--padder);
}

.pressepager {
  margin-bottom: var(--padder);
}

.pressepager .pagination {
  justify-content: start;
}

.pagination {
  display: flex;
  max-width: 100%;
  margin: auto;
  gap: 0.25rem;
  font-family: documenta-sans-regular-table;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.pagination li {
  padding-left: 0;
}

.pagination > li a {
  text-decoration: none;
  padding: 0.5rem;
  display: block;
  min-width: 44px;
  min-height: 44px;
  place-content: center;
  text-align: center;
}

.pagination > li.active,
.pagination > li:hover {
  background-color: var(--clr-grau-hell);
  border-radius: 100%;
}

.presseticker.head .presserow,
.ticker .presseticker .date,
.calendar .presseticker .date {
  color: var(--clr-grau-dunkel);
  border-bottom: 1px solid var(--clr-grau-dunkel);
  padding-bottom: 0.25rem;
  margin: 0;
  font-family: documenta-sans-regular-table;
  font-size: var(--font-h4);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacer);
}

.presseticker.head ul {
  padding-bottom: 0;
}

.presseticker.head .presserow:hover {
  background-color: var(--clr-weiss);
}

.presserow {
  display: grid;
  grid-template-columns: 10% 25% 25% 10% 10%;
  width: 100%;
  gap: 2rem;
  border-bottom: 1px solid;
  padding-bottom: 1rem;
  font-family: documenta-sans-regular-table;
  padding: 2rem;
}

.presseticker.head .presserow {
  padding-top: 0;
}

.presserow > div {
  place-content: center;
  margin-bottom: 0.25em;
}

.presserow:last-child {
  border-bottom: 0;
}

.container.full.presseticker.daily.pressebilder {
  margin-top: var(--padder);
}

.presserow.image.title .presseimagetext,
.presserow.image.title .presseimagedownload {
  display: none;
}

.imagelist .presserow,
.imagelist .presserow.image.title {
  grid-template-columns: 25% 50% 15%;
  align-items: start;
}

.presseimagedownload {
  align-self: center;
}

.doks .presserow,
.presserow.image.title {
  grid-template-columns: 65% 15% 10%;
}

.presserow:hover {
  background-color: var(--clr-grau-hell);
}

.presseticker .document.drucksachen a {
  text-indent: -99999px;
  float: left;
  min-width: 44px;
  min-height: 44px;
  margin-top: -5px;
}

.presseticker .document.drucksachen a::before {
  content: "pdf";
  float: left;
  background: transparent;
  padding: 0.5rem 1rem;
  text-indent: 0;
  font-family: documenta-sans-regular-table;
  text-transform: uppercase;
  font-size: var(--font-btn);
  border: 1px solid;
  display: block;
  border-radius: 60px;
  letter-spacing: var(--letter-spacer);
  height: 44px;
  line-height: 1.5;
  display: inline-grid;
  place-items: center;
}

main .pressedocdownload a[target="_blank"]::after,
main .presseimagedownload a[target="_blank"]::after {
  display: none;
}

.presseticker .document.drucksachen a:hover::before {
  background-color: var(--clr-schwarz);
  color: var(--clr-weiss);
}

.ticker .presserow {
  grid-template-columns: 20% 1% 15% 50%;
  border-bottom: 0;
  align-items: center;
}

.ticker .presserow:nth-child(2n + 1) {
  background: var(--clr-grau-hell);
}

.ticker .presserow a,
.presseticker .presserow a {
  text-decoration: none;
  min-width: 44px;
  min-height: 44px;
  max-width: fit-content;
  display: block;
  place-content: center;
}

.ticker .partycolor {
  width: 1%;
  padding-right: 20px;
  background-size: 10px 40px;
  background-repeat: no-repeat;
  background-position: top left;
  min-height: 40px;
}

.presseimagetitle {
  max-width: 64ch;
  font-size: var(--font-p);
  margin-bottom: calc(0.5 * var(--padder));
}

.pressenews .ticker .presserow {
  border-radius: 4px;
}

.pressenews .ticker .presserow:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.pressenews .presserow:hover {
  background-color: var(--clr-weiss);
}

.pressenews .ticker .presserow:nth-child(2n + 1):hover {
  background: var(--clr-grau-hell);
}

.attachment .btn {
  margin-bottom: 1rem;
}

@media screen and (max-width: 1080px) {
  .imagelist .presserow,
  .imagelist .presserow.image.title,
  .presserow,
  .doks .presserow,
  .presserow.image.title {
    grid-template-columns: 1fr;
    gap: 0.75rem;
    padding: var(--padder) 0;
  }

  .presseimagedownload {
    padding-top: var(--padder);
  }

  .presseticker.head {
    display: none;
  }

  .presseticker div::before {
    font-family: documenta-sans-regular;
    font-weight: bold;
  }

  .presseticker .readprint > div::before {
    font-family: amatiksymbols;
    font-weight: normal;
  }

  .presseticker .meeting.drucksachen::before {
    content: "Dokumentnr.: ";
  }

  .presseticker .date_daily.drucksachen::before {
    content: "Datum: ";
  }

  .presseticker .titel.drucksachen::before {
    content: "Titel: ";
  }

  .presseticker .vorgang.drucksachen::before {
    content: "Vorgang: ";
  }

  .presseticker .document::before {
    content: "Dokument: ";
    width: auto;
    float: left;
    padding-right: 0.5rem;
  }

  .presserow:hover {
    background-color: inherit;
  }

  .sticky .pressenews,
  .row.row_change_order_mobile .col-md-8 {
    grid-row-start: 2;
  }

  .ticker .partycolor {
    width: 100%;
    min-height: 10px;
    background-size: cover;
  }

  .ticker .presserow {
    grid-template-columns: 1fr;
    border-bottom: 1px solid;
  }

  .ticker .presserow:nth-child(2n + 1) {
    background: var(--clr-weiss);
  }
}

/* #endregion Listen Filter */

/* #region Kalender Overrides */

.jqwc_loader.hidden {
  display: none;
}

.jqwc_top {
  border-top: 0px solid #e62527;
  overflow: hidden;
  padding-top: 0;
  border-bottom: 0;
  margin-bottom: 0;
}

.dayMonthCalendar .pic-ltsh-calendar-eventlist-item-title,
.dayMonthCalendar .pic-ltsh-calendar-eventlist-item-desc {
  text-align: left;
  hyphens: auto;
}

.dayMonthCalendar .pic-ltsh-calendar-eventlist-item-title {
  line-height: 1.2;
  margin-bottom: 0.25em;
}

.pic-ltsh-calendar-container {
  margin-bottom: var(--padder);
}

.dayMonthCalendar .pic-ltsh-calendar-eventlist-item-wrapper {
  display: grid;
  grid-template-columns: 0.45fr 1fr;
  column-gap: 1rem;
  padding-top: 0;
  transition: 0.2s;
  animation: appear 0.3s forwards;
  padding-bottom: 20px;
  width: 100% !important;
  border-top: 1px solid;
  padding-top: 10px;
}

.dayMonthCalendar .pic-ltsh-calendar-row-col-eventlist-eventDetails-date {
  font-size: var(--font-h3);
  margin-bottom: calc(0.5 * var(--padder));
}

.dayMonthCalendar .pic-ltsh-calendar-eventlist-item-time {
  font-size: var(--font-p);
  max-width: 120px;
}

.fc .fc-toolbar-title {
  font-size: var(--font-p);
  margin: 0px;
  width: fit-content;
}

.fc .fc-button {
  padding-top: 0;
}

.dayMonthCalendar .fc .fc-toolbar {
  gap: 0;
  grid-template-columns: 50px auto 50px;
  margin-bottom: 0;
  width: fit-content;
}

@media screen and (max-width: 810px) {
  .dayMonthCalendar .pic-ltsh-calendar-eventlist-item-wrapper {
    grid-template-columns: 1fr;
    display: grid;
    row-gap: 1rem;
    align-content: baseline;
  }

  .dayMonthCalendar .pic-ltsh-calendar-eventlist-item-time {
    max-width: 100%;
  }

  .dayMonthCalendar .pic-ltsh-calendar-eventlist-item-wrapper {
    border-top: 0px solid;
    padding-top: 0px;
  }
}

/* Listenkalender */

.calendar.calendar_ls02_list_view a.fc-list-day-text,
.calendar.calendar_ls02_list_view a.fc-list-day-side-text {
  text-decoration: none;
  font-size: var(--font-p);
  margin-bottom: 0.25em;
}

.fc .fc-scroller {
  padding-right: var(--padder);
}

.section_calendar_listview {
  background-color: var(--clr-weiss);
}

.section_calendar_listview .filter select,
.section_calendar_listview .filter input {
  width: 100%;
  max-width: 100%;
}

.fc .fc-list-day-cushion,
.fc .fc-list-table td {
  padding: 0;
}

.fc-list-day-cushion a {
  font-weight: normal;
}

.calendar.calendar_ls02_list_view .fc-list-day:first-child {
  padding-top: 0;
  color: var(--clr-rot-dunkel);
  border-color: var(--clr-rot-dunkel);
}

.calendar.calendar_ls02_list_view .fc-list-day {
  border-bottom: 1px solid var(--clr-schwarz);
  background-color: var(--clr-weiss);
}

.calendar.calendar_ls02_list_view .fc-list-day-cushion,
.calendar.calendar_ls02_list_view
  .fc-list-table
  tr.fc-event:nth-child(2n):focus
  *,
.calendar.calendar_ls02_list_view .fc-list-day > *,
.calendar.calendar_ls02_list_view .fc-list-table tr.fc-event:nth-child(2n) {
  background-color: var(--clr-weiss);
}

.section_calendar_listview .filter {
  padding: 0;
  background-color: var(--clr-weiss);
  max-width: 320px;
}

.jqwc_top .jqwc_filter {
  margin-bottom: 0;
  background-color: var(--clr-grau-hell);
  background-image: url(/images/klapper.svg);
  background-position: calc(100% - 10px);
  background-size: 15px;
}

.calendar .presserow {
  grid-template-columns: 15% 15% 25% 35%;
  cursor: pointer;
}

.calendar .presseticker {
  margin-bottom: var(--padder);
}

.calendar .presserow .time,
.calendar .presserow .partycolor,
.calendar .presserow .name,
.calendar .presserow .text {
  width: auto;
  padding: 0;
}

/* Popup */

.popup-content-container h2 {
  border-bottom: 1px solid var(--clr-schwarz);
  padding-bottom: 5px;
  max-width: 100%;
  margin-bottom: 20px;
  margin-top: 0;
  font-family: documenta-sans-regular;
  font-size: var(--font-h2);
}

.event_tooltip .event_cat {
  color: inherit;
  margin-bottom: 0.25em;
  display: block;
}

.event_tooltip h2 {
  border-bottom: 1px solid;
  padding-bottom: 0.25em;
  max-width: 100%;
  margin-bottom: 0.5em;
  margin-top: 0;
  font-family: documenta-sans-regular;
  font-size: var(--font-h3);
  font-weight: normal;
}

.event_tooltip .divider {
  border-bottom: 1px solid;
  padding-top: 40px;
  width: 100%;
}

.event_tooltip .qtip_additional_links a {
  color: #000;
  font-size: 14px;
}

.event-popup {
  width: 100%;
  background: transparent;
  height: 100%;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  backdrop-filter: blur(5px);
  z-index: 999;
}

.popup-content-container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 20px;
  z-index: 9999;
  max-width: 90%;
  max-height: 80%;
  overflow-y: auto;
  background: #fff;
  padding: 2.5rem;
  color: #000;
  z-index: 1;
  width: calc(100% - 2 * var(--padder));
  max-width: 600px;
  border-left: 0px solid #ededed;
  border-bottom: 0px solid #ededed;
  border-radius: 4px;
  border: 1px solid;
  padding-inline: 2rem;
}

.popup-content-container .popup-content_additional_links a::before {
  display: grid;
  place-content: center;
  width: 30px;
  height: 30px;
  background-color: var(--clr-weiss);
  font-family: "amatiksymbols";
  content: ">";
  color: var(--clr-schwarz);
  font-size: 18px;
  margin-right: 10px;
  border-radius: 4px;
}

.popup-content-container
  .popup-content_additional_links
  .ical_download::before {
  content: "k";
}

.popup-content-container
  .popup-content_additional_links
  .parla_radio_links
  a:before {
  content: "r";
}

.popup-content-container
  .popup-content_additional_links
  .allgemeine_links
  a:before {
  content: "C";
}

.popup-content-container
  .popup-content_additional_links
  .parla_tv_links
  a:before {
  content: "t";
}

.popup-content-container .popup-content_additional_links .docs_links a:before {
  content: "p";
}

.popup-content-container .close-popup {
  position: absolute;
  right: -25px;
  top: -40px;
  color: #000;
  font-family: amatiksymbols;
  font-size: 18px;
}

@media screen and (max-width: 1080px) {
  .calendar .jqwc_mainlist {
    grid-row-start: 2;
  }

  .calendar .presserow {
    grid-template-columns: 1fr;
  }

  .jqwc_template_default {
    padding-inline: var(--padder);
  }

  .calendar.calendar_ls02_list_view
    .fc-list-table
    tr.fc-event
    .fc-list-event-title
    .event_description {
    display: grid;
  }
}

/* Wochenkalender */

.fc-theme-standard td,
.fc-theme-standard th {
  border: 1px solid var(--clr-grau-dunkel);
  border-top: 0;
}

.fc-theme-standard th {
  border: 0;
  border-left: 1px solid;
  border-right: 1px solid;
  border-top: 1px solid;
}

.calendar.calendar_ls02_list_view
  .fc-list-table
  tr.fc-event
  .fc-list-event-title
  .event_description {
  display: grid;
  gap: var(--padder);
  grid-template-columns: 75px 1fr 1.5fr 2fr;
}

.calendar.calendar_ls02_list_view
  .fc-list-table
  tr.fc-event
  .fc-list-event-title
  .event_description
  > div {
  padding: 0;
}

.section_calendar_weekview .calendar_ls02_list_view * {
  border: 0;
}

.section_calendar_weekview .calendar_ls02_list_view {
  max-height: 75vh;
}

.fc-day * {
  border-color: transparent !important;
}

.event_description {
  padding: 0.75rem;
  overflow-x: hidden;
  hyphens: auto;
}

.section_calendar_weekview table.fc-scrollgrid-sync-table tr[role="row"] td {
  padding: 0;
}

.section_calendar_weekview .fc-col-header tr[role="row"] th {
  border-bottom: 1px solid var(--clr-grau-dunkel);
}

.section_calendar_weekview .fc-col-header tr[role="row"] th.fc-day-today {
  color: var(--clr-rot-dunkel);
  border-bottom: 3px solid var(--clr-rot-dunkel);
}

.section_calendar_weekview .fc-daygrid-day.fc-day-today {
  background-color: var(--clr-grau-hell);
}

.jqwc_top .jqwc_filter {
  color: inherit;
}

.jqwc_wrap.jqwc_template_wide.grid.g-63 {
  grid-template-columns: 1fr;
}

.jqwc_template_wide .jqwc_weekday_wrap {
  border-bottom: 1px solid var(--clr-grau-dunkel);
}

.jqwc_week_wrap {
  overflow-y: scroll;
  border-bottom: 1px solid var(--clr-schwarz);
}

.jqwc_template_wide .jqwc_event {
  border-right: 1px solid var(--clr-grau-hell);
  border-bottom: 1px solid var(--clr-grau-hell);
}

.jqwc_template_wide .jqwc_day.active {
  background: var(--clr-grau-hell);
  border-top: 1px solid var(--clr-grau-dunkel);
}

.jqwc_day_head.active {
  border-bottom: 0px solid var(--clr-grau-dunkel);
  color: var(--clr-grau-dunkel);
}

.jqwc_template_wide .jqwc_day.active .jqwc_event {
  border-bottom: 1px solid var(--clr-grau-dunkel);
}

.jqwc_template_default .jqwc_events {
  max-height: 100%;
}

.jqwc_day.current {
  border-bottom-color: var(--clr-schwarz);
  color: var(--clr-schwarz);
}

.jqwc_prev_week,
.jqwc_next_week {
  width: 44px;
  height: 44px;
}

.jqwc_prev_week:before,
.jqwc_next_week:before {
  width: 44px;
  height: 44px;
  place-content: center;
}

.event_tooltip {
  background: var(--clr-grau-hell);
}

@media (max-width: 810px) {
  .event_tooltip {
    max-width: calc(100% - 2 * var(--padder));
  }

  .calendar.calendar_ls02_list_view
    .fc-list-table
    tr.fc-event
    .fc-list-event-title
    .event_description {
    display: grid;
    gap: 0.5rem;
    grid-template-columns: 1fr;
  }
}

/* #endregion Kalender Overrides */

/* #region Petitonen Overrides */

.pic_petition_content {
  display: grid;
  padding-inline: 0.75rem;
}

.pic_petition_teaser_overview .row {
  margin-bottom: calc(0.5 * var(--padder));
}

.pic_petition_item {
  height: 100%;
}

.pic_petition_item_inner {
  background-color: var(--clr-grau-hell);
  border-radius: 4px;
  padding: 0;
  height: 100%;
}

.pic_petition_image {
  aspect-ratio: 16/9;
  margin-bottom: 1rem;
}

.pic_petition_image img {
  object-fit: cover;
  height: 100%;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.pic_petition_site .pic_petition_mitzeichner_skala {
  background-color: var(--clr-weiss);
  height: 5px;
  margin: 15px 0;
  position: relative;
}

.pic_petition_site .pic_petition_mitzeichner_skala .bar {
  height: 5px;
  background: var(--clr-rot-dunkel);
}

.pic_petition_headline a {
  text-decoration: none;
}

.pic_petition_site .pic_petition_mitzeichner .pic_petition_mitzeichner_sum {
  float: left;
  margin-right: 3px;
}

.pic_petition_bottom .row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  margin-top: var(--padder);
  text-align: left;
  font-size: var(--font-p-med);
}

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

/* linke Seite */

.pic_petition_site .pic_petition_mitzeichner .pic_petition_mitzeichner_overlay {
  position: relative;
}

.pic_petition_site .pic_petition_mitzeichner .infoverlay {
  position: static;
  width: auto;
  display: none;
}

.pic_petition_mitzeichner_overlay_name:hover + .infoverlay {
  display: block;
  position: absolute;
  z-index: 111;
  background: var(--clr-grau-dunkel);
  color: var(--clr-weiss);
  padding: 0.75rem;
  border-radius: 4px;
}

.pic_petition_mitzeichner_overlay_name {
  cursor: pointer;
}

.pic_petition_mitzeichner_overlay_name::after {
  content: "i";
  font-family: amatiksymbols;
  margin-left: 3px;
}

.pic_petition_site .pic_petition_mitzeichner .effects .infoblock {
  overflow: visible;
}

.pic_petition_site .pic_petition_mitzeichner .effects .infoblock:before {
  bottom: 15px;
  color: #000;
  margin-left: 5px;
}

.pic_petition_site
  .pic_petition_mitzeichner
  .effects
  .infoblock.click
  .close
  .smallcap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}

/* rechte Seite */

.pic_petition_id {
  display: grid;
}

.pic_petition_id_number {
  order: 2;
}

.pic_petition_id_desc {
  font-size: var(--font-h4);
}

/* Kreis */

.pic_petition_site .circle-wrap {
  margin: 0 auto;
  width: 70px;
  height: 70px;
  background: var(--clr-grau-hell);
  border-radius: 50%;
}

.pic_petition_site .circle-wrap .circle2 .mask,
.pic_petition_site .circle-wrap .circle2 .fill {
  width: 70px;
  height: 70px;
  position: absolute;
  border-radius: 50%;
}

.pic_petition_site .circle-wrap .circle2 .mask {
  clip: rect(0px, 70px, 70px, 35px);
}

.pic_petition_site .circle-wrap .circle2 .mask .fill {
  clip: rect(0px, 35px, 70px, 0px);
  background-color: var(--clr-rot-dunkel);
}

.pic_petition_site .circle-wrap .circle2 .mask.full,
.pic_petition_site .circle-wrap .circle2 .fill {
  transform: rotate(157deg);
}

.pic_petition_site .circle-wrap .inside-circle {
  width: 60px;
  height: 60px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: #fff;
  line-height: 60px;
  text-align: center;
  margin-top: 5px;
  margin-left: 5px;
  position: absolute;
  z-index: 100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
}

.pic_petition_days_desc {
  font-size: var(--font-h4);
  margin-top: 0.5rem;
}

/* Filter */

.container.petitions_uebersicht.pic_petition_site
  .equalizer:has(.multibox.border.sticky) {
  position: sticky;
  top: 4rem;
}

.petitions_uebersicht_filter select {
  width: 100%;
}

.petitions_uebersicht_filter .btn.submitbutton {
  background-color: var(--clr-schwarz);
  color: var(--clr-weiss);
  cursor: pointer;
}

.petitions_uebersicht_filter .btn.submitbutton:hover {
  background-color: var(--clr-weiss);
  color: var(--clr-schwarz);
}

/* Details */

.area-body:has(.container.petitions_detailseite.pic_petition_site)
  .container.start {
  padding-bottom: 0;
}

.area-body:has(.container.petitions_detailseite.pic_petition_site)
  .container.start
  h1 {
  margin-bottom: 0;
}

.petitions_detailseite_details .detail_line {
  font-size: var(--font-h4);
}

.pic_line.pic_petition_erstellungsdatum,
.pic_line.pic_petition_hauptpetent,
.pic_line.pic_petition_status {
  font-size: var(--font-h3);
  margin-bottom: 0.75rem;
}

.petitions_detailseite_details .readwrapper {
  place-content: start;
  padding-left: 0;
  margin-bottom: var(--padder);
}

.container.petitions_detailseite .inline.image {
  max-width: 100%;
  margin-block: 0;
  margin-top: 0;
}

.container.petitions_detailseite .inline.image img {
  margin-bottom: 0.5rem;
  aspect-ratio: 16/9;
  object-fit: cover;
}

.petitions_detailseite_details .headline {
  border-bottom: 1px solid;
}

.petitions_detailseite_details .headline h2 {
  margin-bottom: 0px;
}

.petitions_detailseite_details .pic_petition_content {
  display: grid;
  padding-inline: 0;
  padding-top: 1rem;
}

.petitions_detailseite_details .pic_petition_days {
  text-align: center;
  margin-top: var(--padder);
  width: fit-content;
}

.petitions_detailseite_details .pic_petition_mitzeichner_skala {
  background-color: var(--clr-grau-hell);
}

.petitions_detailseite_details
  .pic_petition_mitzeichner_overlay:hover
  .infoverlay {
  background: var(--clr-grau-dunkel);
  color: var(--clr-weiss);
}

.container.petitions_detailseite.pic_petition_site .textblock {
  margin-top: var(--padder);
}

.pic_petition_mitzeichnerliste_popup.rs_skip {
  display: none;
  position: fixed;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  background: transparent;
  left: 0;
  top: 0;
  backdrop-filter: blur(10px);
}

.pic_petition_mitzeichnerliste_popup .pic_btn_close {
  position: absolute;
  right: 2rem;
  top: 1rem;
}

.pic_petition_mitzeichnerliste_popup .pic_btn_close::after {
  content: "X";
  font-family: amatiksymbols;
  margin-left: 1rem;
}

.pic_btn_container.bottom {
  display: none;
}

.pic_petition_mitzeichnerliste_popup.rs_skip .container {
  background: var(--clr-grau-hell);
  max-width: calc(100% - 2 * var(--padder));
  max-height: calc(100% - 2 * var(--padder));
  margin-top: var(--padder);
  border-radius: 4px;
  overflow: scroll;
  position: relative;
}

.pic_petition_mitzeichnerliste_popup_content .pic_liste {
  display: flex;
  flex-wrap: wrap;
  gap: var(--padder);
}

.pic_petition_mitzeichnerliste_popup.rs_skip.active {
  display: block;
}

.pic_petition_mitzeichnerliste_popup_content .headline {
  font-size: var(--font-h1);
}

.container.pic_petition_site.pic_petitionsformular .row.row_step1,
.container.pic_petition_site.pic_petitionsformular .row.row_step2,
.container.pic_petition_site.pic_petitionsformular .row.row_step3 {
  display: block;
  margin-top: 1rem;
}

.label[for="petition.userImageContent"] {
  margin-top: calc(0.15 * var(--padder));
}

/* Formular NEUE Petition */

.kontaktformular-registrierung .grid.g-flexgrid-fill:first-of-type {
  grid-template-columns: 1fr;
  margin-top: var(--padder);
}

.kontaktformular-registrierung .grid.g-flexgrid-fill {
  gap: var(--padder);
  row-gap: 0;
}

.kontaktformular-registrierung .grid.g-flexgrid-fill h4 {
  margin-bottom: 0;
}

.kontaktformular-registrierung .grid.g-flexgrid-fill p:last-child {
  padding-bottom: 0.5em;
}

.kontaktformular-registrierung .g-flexgrid-fill + h4 + p {
  font-size: var(--font-p-med);
  max-width: 60ch;
  margin-bottom: calc(0.25 * var(--padder));
}

#petitionareal .nav.navbar-nav.tabs .tab-link {
  cursor: auto;
}

/* Social Media */

.petitions_detailseite_bottom {
  padding-top: var(--padder);
}

.social_media_liste ul {
  display: flex;
}

.social_media_liste li::before,
.pic_liste li:before {
  content: "";
  padding: 0;
}

.social_media_liste .icon {
  color: var(--clr-schwarz);
  font-size: var(--font-h2);
}

.icon.icon-icn-fb::before {
  content: "f";
}

.icon.icon-icn-twitter::before {
  content: "b";
}

.icon.icon-icn-whatsapp::before {
  content: "w";
}

.social_media_liste a {
  text-decoration: none;
}

.social_media_liste a[target="_blank"]::after {
  content: "";
  padding-left: 2px;
}

@media screen and (max-width: 1080px) {
  .container.petitions_detailseite.pic_petition_site .col-md-4 {
    order: -1;
  }
}

/* Petition einreichen öffentlich */

.mandatory-message {
  margin-block: calc(1 * var(--padder));
  color: var(--clr-grau-100);
  margin-bottom: calc(0.5 * var(--padder));
}

.kontaktformular-registrierung h3 + p {
  font-size: var(--font-p-small);
}

.kontaktformular-registrierung .formbutton,
.kontaktformular-registrierung .formbutton:hover,
.kontaktformular-registrierung .petResetLink,
.kontaktformular-registrierung .petResetLink:hover {
  margin-top: var(--padder);
}

.formular.contactform h3 {
  max-width: 48ch;
}

/* #endregion Petitonen Overrides */

/* #region Kalender Overrides */

.section_calendar_weekview {
  background-color: var(--clr-weiss);
  padding: 0;
}

/* #endregion Kalender Overrides */

/* #region Video allgemein */

.video-js {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  font-family: documenta-sans-regular;
  font-size: 14px;
}

.vjs-icon-play::before {
  content: "P";
  font-family: amatiksymbols;
  font-size: 40px;
}

.video-js .vjs-big-play-button {
  font-size: 2.5em;
  line-height: 2.1em;
  height: 2.25em;
  width: 2.25em;
  background-color: transparent;
  border-radius: 100%;
}

.responsive_iframe_video + .teaser.small {
  margin-top: calc(0.5 * var(--padder));
}

/* #endregion Video allgemein */

/* #region Footer */

footer {
  background-color: var(--clr-grau-hell);
  padding-top: var(--padder);
}

footer h2 {
  font-size: var(--font-p);
  margin-bottom: 0.75em;
}

footer a {
  text-decoration: underline;
  min-width: 44px;
  display: block;
  place-content: center;
  text-decoration: none;
}

footer .grid.g-3 {
  row-gap: calc(1.5 * var(--padder));
}

.logolast {
  display: grid;
  grid-template-columns: 1fr 200px;
  align-items: end;
}

footer nav ul {
  display: flex;
  gap: 4rem;
  flex-wrap: wrap;
  row-gap: 2rem;
}

.logofooter {
  position: relative;
  width: 200px;
}

.logofooter img {
  width: 100%;
  position: absolute;
  right: var(--padder);
  bottom: 0;
  border-radius: 0;
}

@media screen and (max-width: 1080px) {
  .logolast {
    grid-template-columns: 1fr;
  }

  .logofooter {
    width: 100%;
    height: 160px;
  }

  .logofooter img {
    left: auto;
    right: var(--padder);
    width: 200px;
  }
}

@media screen and (max-width: 810px) {
  footer {
    margin-top: var(--padder);
  }
}

@media screen and (max-width: 480px) {
  footer nav ul {
    display: grid;
    row-gap: 1rem;
  }
}

/* #endregion Footer */

/* #region Cookie Hinweis */

.stoerer .container {
  max-width: 72ch;
  width: 100%;
  padding: var(--padder);
  margin-right: 0;
  margin-left: 0;
  margin: auto;
}

.stoerer .text {
  width: 100%;
  max-width: 100%;
  padding: 0;
  display: grid;
}

.stoerer .btn {
  float: left;
  margin-left: calc(0.25 * var(--padder));
  margin-bottom: var(--padder);
  margin-right: 0;
  border-color: var(--clr-weiss);
  color: var(--clr-weiss);
  margin-top: calc(1 * var(--padder));
}

/* #endregion Cookie Hinweis */
