:root {
  --c-brand: currentColor;
  --c-bg: white;
  --c-fond: color-mix(in srgb, var(--c-text), transparent 95%);
  --c-text: currentColor;
  --c-text-dimmed: color-mix(in srgb, var(--c-text), transparent 37.5%);
  --c-text-invert: white;
  --c-link: currentColor;
  --c-warn: #c00;
  --c-media: transparent;
}

:root {
  --w-min: 32rem;
  --w-wide: min(calc(100dvw - 2 * var(--w-gutter)), 120rem);
  --w-content: calc(var(--w-wide) / 12 * 10);
  --w-gutter: clamp(1.2rem, 5dvw, 3rem);
  --w-gutter-real: calc((100dvw - var(--w-layout)) / 2);
  --gap-base: clamp(1.2rem, 5dvw, 3rem);
}

:root {
  --wp--preset--spacing--20: 2rem;
  --wp--preset--spacing--30: 3rem;
  --wp--preset--spacing--40: 4rem;
  --wp--preset--spacing--50: 5rem;
  --wp--preset--spacing--60: 6rem;
  --wp--preset--spacing--70: 7rem;
  --wp--preset--spacing--80: 8rem;
}

:root {
  --font-base: sans-serif;
  --space-l: 16rem;
  --space-m: 8rem;
  --space-s: 5rem;
  --space-xs: calc(var(--fs-body-base) * var(--lh-body-base));
  --space-xxs: calc(var(--space-xs) / 2);
  --fs-h1: 4.8rem;
  --fs-h2: 3.6rem;
  --fs-h3: 2.4rem;
  --fs-body-l: 2rem;
  --fs-body-base: 1.6rem;
  --fs-body-s: 1.4rem;
  --fs-body-xs: 1.2rem;
  --fs-media-copyright: 1rem;
  --lh-h1: 1.2;
  --lh-h2: 1.2;
  --lh-h3: 1.2;
  --lh-body-l: 1.4;
  --lh-body-base: 1.4;
  --lh-body-s: 1.4;
  --lh-body-xs: 1.4;
  --lh: var(--lh-body-base);
  --fw-regular: 400;
  --fw-bold: 700;
  --fw: var(--fw-regular);
  --ls-base: normal;
  --ls: var(--ls-base);
  --focus-outline-width: .1rem;
  --focus-outline-offset: .3rem;
  --focus-outline-style: dotted;
  --focus-outline-color: currentColor;
  --speed-s: .1s;
}

/*! based on normalize.css v6.0.0 | MIT License */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 * 3. Make sure document is at least as high as the viewport
 * 4. Apply default border-box model
 */
html {
  line-height: 1.15;
  /* 1 */
  height: 100%;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

*,
*::before,
*::after {
  box-sizing: border-box;
  /* 4 */
}

/* Sections
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  overflow: visible;
  /* 2 */
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
  border-bottom: none;
  /* 1 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  color: #000;
  background-color: #ff0;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Remove inner focus ring in FF
 * 1. prevent <option>s from becoming transparent as well.
 */
select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 black;
}

option:not(:checked) {
  color: black;
  /* 1 */
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  display: table;
  /* 1 */
  box-sizing: border-box;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
  color: inherit;
  /* 2 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 2 */
  -webkit-appearance: textfield;
  /* 1 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  font: inherit;
  /* 2 */
  -webkit-appearance: button;
  /* 1 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/* Reset
   ========================================================================== */
/**
 * Reset defaults
 */
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure {
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
}

/* Buttons
   ========================================================================== */
button {
  font-size: inherit;
  cursor: pointer;
}
button:focus {
  outline: none;
}
button::-moz-focus-inner {
  border: 0;
}

/* Font handling
   ========================================================================== */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

nav * {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

address {
  font-style: normal;
}

@view-transition {
  navigation: auto;
}
/**
* Include webfonts
* ----------------------
* Example:
* @include font.font-face('Webfont Name', 'filename-without-extension', 'folder', 400, italic);
*/
html,
body {
  background: var(--c-bg);
}
@media (prefers-reduced-motion: no-preference) {
  html,
  body {
    scroll-behavior: smooth;
  }
}

body {
  min-width: var(--w-min);
}

input[type=checkbox],
input[type=radio],
input[type=range],
input[type=file] {
  line-height: normal;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
}

::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label[for] {
  cursor: pointer;
}

::-moz-placeholder {
  opacity: 1;
  color: var(--form-input-placeholder-color);
}

::placeholder {
  opacity: 1;
  color: var(--form-input-placeholder-color);
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

a {
  text-decoration: none;
  color: var(--c-link);
}
a[href^="mailto:"] {
  word-wrap: break-word;
  word-break: break-all;
  word-break: break-word;
  hyphens: auto;
  overflow-wrap: break-word;
}
a,
button,
label {
  -webkit-tap-highlight-color: transparent;
}
a[tabindex="-1"],
button[tabindex="-1"],
label[tabindex="-1"] {
  outline: none !important;
}

svg {
  display: block;
}

html {
  font-size: 62.5%;
}

body {
  color: var(--c-text);
  font-size: var(--fs-body-base);
  font-family: var(--font-base);
}

button,
input,
textarea,
select {
  font-size: inherit;
  font-family: inherit;
  text-transform: inherit;
}

body,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
html,
p,
*,
::marker,
::before,
::after {
  hyphenate-limit-chars: 10 5 3;
  font-weight: var(--fw);
  line-height: var(--lh);
  letter-spacing: var(--ls);
}

cite {
  font-style: normal;
}

strong {
  --fw: var(--fw-bold);
}

::-moz-selection {
  background-color: color-mix(in srgb, currentColor, transparent 85%);
}

::selection {
  background-color: color-mix(in srgb, currentColor, transparent 85%);
}

.blank-button,
.button {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-align: left;
  color: currentColor;
  display: inline-block;
}

.button {
  --lh: 1;
  position: relative;
  padding: 1em;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  vertical-align: top;
  white-space: nowrap;
  cursor: pointer;
}
.button__inner {
  gap: 0 0.625em;
  grid-auto-flow: column;
  display: inline-grid;
  align-items: center;
  vertical-align: bottom;
}

.button__icon {
  fill: currentColor;
  align-self: baseline;
  width: var(--w-button-icon, 1em);
  height: 1em;
  transition: all 0.1s;
}

.clearfix::after {
  display: table;
  clear: both;
  content: "";
}

.visuallyhidden {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.visuallyhidden-focusable {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.visuallyhidden-focusable:active, .visuallyhidden-focusable:focus {
  position: static;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.invisible {
  visibility: hidden;
}

.touch .hidden-touch {
  display: none;
}

.no-touch .hidden-scroll {
  display: none;
}

.fluid-img {
  display: block;
  width: 100%;
  height: auto;
}

.cover-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.contain-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.l-wide {
  width: var(--w-wide);
  margin-inline: auto;
}

.l-full {
  width: 100dvw;
  max-width: 100dvw;
  margin-inline: calc(-50dvw + 50%);
}

@media (min-width:980px) {
  .l-column {
    box-sizing: content-box;
    width: calc(var(--w-layout) / 12 * 10 - var(--gap-base) / 12 * 2);
    padding-left: calc(var(--w-layout) / 12 * 1 - var(--gap-base) / 12 * 11 + var(--gap-base));
  }
}

.l-grid {
  display: grid;
  gap: var(--gap-h, var(--gap-base)) var(--gap-v, var(--gap-base));
  grid-template-columns: repeat(var(--grid-columns, 1), 1fr);
}
.l-grid--valign-top {
  align-items: start;
}
.l-grid--valign-center {
  align-items: center;
}
.l-grid--valign-bottom {
  align-items: end;
}
.l-grid--gap-s {
  --gap-h: var(--space-s);
}
.l-grid--gap-m {
  --gap-h: var(--space-m);
}
.l-grid\:xs-2 {
  --grid-columns: 2;
}
.l-grid\:xs-3 {
  --grid-columns: 3;
}
.l-grid\:xs-4 {
  --grid-columns: 4;
}

.l-grid__item--valign-top {
  align-items: start;
}
.l-grid__item--valign-center {
  align-items: center;
}
.l-grid__item--valign-bottom {
  align-items: end;
}

@media (min-width:480px) {
  .l-grid\:s-2 {
    --grid-columns: 2;
  }
  .l-grid\:s-3 {
    --grid-columns: 3;
  }
  .l-grid\:s-4 {
    --grid-columns: 4;
  }
}
@media (min-width:768px) {
  .l-grid\:m-2 {
    --grid-columns: 2;
  }
  .l-grid\:m-3 {
    --grid-columns: 3;
  }
  .l-grid\:m-4 {
    --grid-columns: 4;
  }
}
@media (min-width:980px) {
  .l-grid\:l-2 {
    --grid-columns: 2;
  }
  .l-grid\:l-3 {
    --grid-columns: 3;
  }
  .l-grid\:l-4 {
    --grid-columns: 4;
  }
}
@media (min-width:1200px) {
  .l-grid\:xl-2 {
    --grid-columns: 2;
  }
  .l-grid\:xl-3 {
    --grid-columns: 3;
  }
  .l-grid\:xl-4 {
    --grid-columns: 4;
  }
}
.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  transition: all 0.5s;
  opacity: 1;
}

:where(nav, .has-list-reset) ul,
:where(nav, .has-list-reset) ol,
:where(nav, .has-list-reset) li {
  margin: 0;
  padding: 0;
  list-style: none;
}

ul:where(.is-list-reset),
ul:where(.is-list-reset) li,
ol:where(.is-list-reset),
ol:where(.is-list-reset) li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.m-t-xs {
  margin-top: var(--space-xs);
}
.m-t-xxs {
  margin-top: var(--space-xxs);
}

.m-b-xs {
  margin-bottom: var(--space-xs);
}
.m-b-xxs {
  margin-bottom: var(--space-xxs);
}

.media-image img {
  display: block;
}

.media-image__wrapper {
  display: block;
  position: relative;
  background: var(--c-media);
}
.media-image__wrapper img {
  display: block;
  width: 100%;
  height: auto;
}

.media-image__placeholder {
  aspect-ratio: var(--aspect-ratio, 1);
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
}
.media-image__placeholder img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.media-image__footer {
  --lh: 1;
  mix-blend-mode: difference;
  opacity: 0.625;
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0.4em 0.6em;
  color: white;
  font-size: var(--fs-media-copyright);
  text-align: right;
}
.media-image__footer a {
  text-decoration: none;
}
.media-image__footer small {
  font-size: 1em;
}

.media-image__caption {
  margin: 0.625em 0 0 0;
  color: var(--c-media-caption, currentColor);
  text-align: left;
}

:root {
  --hamburger-padding-x: 0;
  --hamburger-padding-y: 0;
  --hamburger-layer-width: 1.625em;
  --hamburger-layer-height: .125em;
  --hamburger-layer-spacing: .625em;
  --hamburger-layer-color: currentColor;
  --hamburger-layer-border-radius: 1em;
  --hamburger-hover-opacity: 1;
  --hamburger-active-layer-color: currentColor;
  --hamburger-active-hover-opacity: var(--hamburger-hover-opacity);
}

.hamburger {
  aspect-ratio: 1;
  font: inherit;
  display: inline-block;
  overflow: visible;
  margin: 0;
  padding: var(--hamburger-padding-y) var(--hamburger-padding-x);
  cursor: pointer;
  transition-timing-function: linear;
  transition-duration: 0.15s;
  transition-property: opacity, filter;
  text-transform: none;
  color: inherit;
  border: 0;
  background-color: transparent;
}
.hamburger:focus-visible {
  opacity: var(--hamburger-hover-opacity);
}
@media (hover: hover) {
  .hamburger:hover, .hamburger:active {
    opacity: var(--hamburger-hover-opacity);
  }
}
.hamburger[aria-expanded=true]:focus-visible {
  opacity: var(--hamburger-active-hover-opacity);
}
@media (hover: hover) {
  .hamburger[aria-expanded=true]:hover, .hamburger[aria-expanded=true]:active {
    opacity: var(--hamburger-active-hover-opacity);
  }
}
.hamburger[aria-expanded=true] .hamburger__inner,
.hamburger[aria-expanded=true] .hamburger__inner::before,
.hamburger[aria-expanded=true] .hamburger__inner::after {
  background-color: var(--hamburger-active-layer-color);
}

.hamburger__box {
  position: relative;
  display: inline-block;
  width: var(--hamburger-layer-width);
  height: calc(var(--hamburger-layer-height) * 3 + var(--hamburger-layer-spacing) * 2);
  vertical-align: middle;
}

.hamburger__inner {
  top: 50%;
  display: block;
  margin-top: calc(var(--hamburger-layer-height) / -2);
}
.hamburger__inner, .hamburger__inner::before, .hamburger__inner::after {
  position: absolute;
  width: var(--hamburger-layer-width);
  height: var(--hamburger-layer-height);
  transition-timing-function: ease;
  transition-duration: 0.15s;
  transition-property: transform;
  border-radius: var(--hamburger-layer-border-radius);
  background-color: var(--hamburger-layer-color);
}
.hamburger__inner::before, .hamburger__inner::after {
  display: block;
  content: "";
}
.hamburger__inner::before {
  top: calc((var(--hamburger-layer-spacing) + var(--hamburger-layer-height)) * -1);
}
.hamburger__inner::after {
  bottom: calc((var(--hamburger-layer-spacing) + var(--hamburger-layer-height)) * -1);
}

.hamburger .hamburger__inner {
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 0.075s;
}
.hamburger .hamburger__inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger .hamburger__inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger[aria-expanded=true] .hamburger__inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(45deg);
}
.hamburger[aria-expanded=true] .hamburger__inner::before {
  top: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
  opacity: 0;
}
.hamburger[aria-expanded=true] .hamburger__inner::after {
  bottom: 0;
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(-90deg);
}

.preload * {
  transition: none !important;
}

.skip {
  margin-inline: auto;
  z-index: 1000000;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1em 2em;
  color: var(--c-text);
  font-size: var(--fs-body-s);
  background: var(--c-bg);
  transition: all 0.2s;
  transform: translateY(-100%);
}
.skip:focus {
  transform: translateY(0%);
}

/**
 * A repsonsive table with stacked layout on small screens
 *
 * Usefull for cookie description table in privacy policy
 *
 * Example markup:
 *
 * <table class="stack-table">
 *  <thead>
 *    <tr>
 *      <th>Name</th>
 *      <th>Anbieter</th>
 *      <th>Zweck</th>
 *      <th>Ablauf</th>
 *      <th>Typ</th>
 *    </tr>
 *  </thead>
 *  <tbody>
 *    <tr>
 *      <td data-label="Name"></td>
 *      <td data-label="Anbieter">}</td>
 *      <td data-label="Zweck"></td>
 *      <td data-label="Ablauf"></td>
 *      <td data-label="Typ"></td>
 *    </tr>
 *  </tbody>
 * </table>
 */
table.stack-table {
  border-collapse: collapse;
}
table.stack-table td,
table.stack-table th {
  text-align: left;
  vertical-align: top;
}
table.stack-table th {
  font-weight: var(--fw-bold);
}

@media (max-width:767px) {
  table.stack-table thead {
    display: none;
  }
  table.stack-table,
  table.stack-table tbody,
  table.stack-table tr {
    display: block;
  }
  table.stack-table tr {
    margin: 0 0 1em 0;
    border: 1px solid var(--c-table-border, #ccc);
  }
  table.stack-table td {
    display: flex;
    padding: 0.5em;
  }
  table.stack-table td:not(:last-child) {
    border-bottom: 1px dashed var(--c-table-border, #ccc);
  }
  table.stack-table td::before {
    font-weight: var(--fw-bold);
    display: block;
    flex: 0 0 25%;
    margin: -0.5em 0.5em -0.5em 0;
    padding: 0.5em 0.5em 0.5em 0;
    content: attr(data-label);
    word-wrap: break-word;
  }
}
@media (min-width:768px) {
  table.stack-table td,
  table.stack-table th {
    padding: 0.5em;
    border: 1px solid var(--c-table-border, #ccc);
  }
}
.t-wysiwyg p:not(:last-child),
.t-wysiwyg ul:not(:last-child),
.t-wysiwyg ol:not(:last-child),
.t-wysiwyg table:not(:last-child) {
  margin: 0 0 1em 0;
}

.t-center,
.has-text-align-center {
  text-align: center;
}

.t-h1 {
  --lh: var(--lh-h1);
  font-size: var(--fs-h1);
  font-family: var(--font-base);
  text-wrap: balance;
}

.t-h2,
.has-t-h-2-font-size {
  --lh: var(--lh-h2);
  font-size: var(--fs-h2);
  font-family: var(--font-base);
}

.t-h3,
.has-t-h-3-font-size {
  --lh: var(--lh-h3);
  font-size: var(--fs-h3);
  font-family: var(--font-base);
}

.t-body-l,
.has-t-body-l-font-size {
  --lh: var(--lh-body-l);
  font-size: var(--fs-body-l);
  font-family: var(--font-base);
}

.t-body-s,
.has-t-body-s-font-size {
  --lh: var(--lh-body-s);
  font-size: var(--fs-body-s);
  font-family: var(--font-base);
}

.is-root-container > :where(:not(.alignfull)) {
  width: var(--w-wide);
  margin-inline: auto;
}

.nav-global__item-inner {
  display: flex;
  gap: 0.625em;
}

.nav-global__item-toggle-label-close {
  display: none;
}

.nav-global__item-toggle {
  width: 0.625em;
  height: 1lh;
  position: relative;
}
.nav-global__item-toggle[aria-expanded=true] .nav-global__item-toggle-icon {
  transform: rotate(180deg);
}
.nav-global__item-toggle[aria-expanded=true] .nav-global__item-toggle-label-open {
  display: none;
}
.nav-global__item-toggle[aria-expanded=true] .nav-global__item-toggle-label-close {
  display: initial;
}

.nav-global__item-toggle-icon {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  fill: currentColor;
}

@media (max-width:1199px) {
  .nav-global-submenu[aria-hidden=true] {
    display: none;
  }
}
@media (min-width:1200px) {
  .nav-global__list {
    display: flex;
    gap: 1em;
  }
  .nav-global__item {
    position: relative;
  }
  .nav-global-submenu {
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 10;
    transition: all var(--speed-s);
    transform-origin: top center;
  }
  .nav-global-submenu[aria-hidden=true] {
    transform: scaleY(0);
    opacity: 0;
    visibility: hidden;
  }
  .nav-global-submenu[aria-hidden=false] {
    transition-delay: calc(var(--speed-s) / 2);
  }
}
.platforms {
  font-size: var(--size-platforms, 2em);
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 1em;
}

.platforms__item {
  position: relative;
  display: block;
  flex: 0 0 1em;
}

.platforms__link {
  display: block;
  width: 1em;
  height: 1em;
  transition: all 0.25s;
}

.platforms__icon {
  width: 1em;
  height: 1em;
}

.share {
  gap: 0.25em;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--size-share, 2em);
}

.share__item {
  display: block;
  position: relative;
  flex: 0 0 1em;
}

.share__link {
  display: block;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  box-shadow: 0 0 0 0.2rem currentColor;
  transition: all 0.25s;
}

.share__icon {
  width: 1em;
  height: 1em;
  padding: 25%;
}

.site {
  padding-top: var(--h-wp-admin-bar);
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  max-width: 100dvw;
  min-width: 320px;
  overflow: clip;
}
.site [id] {
  scroll-margin-top: var(--site-header-height, 0);
}

.site-footer {
  margin-top: auto;
}

@media (min-width:980px) {
  .site-header__menu-button {
    display: none;
  }
}