@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, dialog {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

strong, b {
  font-weight: 700;
}

i, em {
  font-style: italic;
}

input, select, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-border-radius: 0;
  border-radius: 0;
}

.invisible {
  display: none;
}

button, input.submit {
  cursor: pointer;
  -webkit-border-radius: 0;
  border-radius: 0;
}

sub, sup {
  font-size: 70%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.4em;
}

sub {
  bottom: -0.25em;
}

* {
  box-sizing: border-box;
}

/* roboto-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/roboto-v47-latin-100.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 100;
  src: url("../fonts/roboto-v47-latin-100italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/roboto-v47-latin-200.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 200;
  src: url("../fonts/roboto-v47-latin-200italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/roboto-v47-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/roboto-v47-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/roboto-v47-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/roboto-v47-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/roboto-v47-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/roboto-v47-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/roboto-v47-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/roboto-v47-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/roboto-v47-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/roboto-v47-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/roboto-v47-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/roboto-v47-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/roboto-v47-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/roboto-v47-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/roboto-condensed-v30-latin-100.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 100;
  src: url("../fonts/roboto-condensed-v30-latin-100italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/roboto-condensed-v30-latin-200.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 200;
  src: url("../fonts/roboto-condensed-v30-latin-200italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/roboto-condensed-v30-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/roboto-condensed-v30-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/roboto-condensed-v30-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/roboto-condensed-v30-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/roboto-condensed-v30-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/roboto-condensed-v30-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/roboto-condensed-v30-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/roboto-condensed-v30-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/roboto-condensed-v30-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/roboto-condensed-v30-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/roboto-condensed-v30-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/roboto-condensed-v30-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/roboto-condensed-v30-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-condensed-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/roboto-condensed-v30-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/cinzel-v25-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/cinzel-v25-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/cinzel-v25-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/cinzel-v25-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/cinzel-v25-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cinzel-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/cinzel-v25-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
:root {
  --col-text: #5E5F60;
  --col-text--rgb: 94, 95, 96;
  --col-primary-400: #673989;
  --col-primary-400--rgb: 103, 57, 137;
  --col-gray-100: #f8f8f8;
  --col-gray-100--rgb: 248, 248, 248;
  --col-red: #C91417;
  --col-red--rgb: 201, 20, 23;
  --col-gold: #ba9d74;
  --col-gold--rgb: 186, 157, 116;
  --col-white: #ffffff;
  --col-white--rgb: 255, 255, 255;
  --col-black: #000000;
  --col-black--rgb: 0, 0, 0;
  --filter-text: brightness(0) invert(37%) sepia(6%) saturate(94%) hue-rotate(169deg) brightness(98%) contrast(96%);
  --gap-col: 40px;
  --gap-row: 60px;
  --gap-lines: 0.75rem;
  --nav-width: clamp(280px, 70vw, 320px);
  --ci-color: var(--col-primary-400);
  --ci-color--rgb: var(--col-primary-400--rgb);
}
@media (max-width: 500px) {
  :root {
    --gap-row: 60px;
  }
}

html {
  font-size: 18px;
  scroll-padding-top: 120px;
}
@media (max-width: 500px) {
  html {
    font-size: 13.5px;
  }
}
@media (max-width: 1170px), (pointer: coarse) {
  html #wrapper > *, html #wrapper header .mod_navigation ul, html body #wrapper > *, html body #wrapper header .mod_navigation ul {
    transition: transform 0.5s;
  }
  html:has(header button.nav-toggle[aria-pressed=true]), html body:has(header button.nav-toggle[aria-pressed=true]) {
    overflow: hidden;
  }
  html:has(header button.nav-toggle[aria-pressed=true]) #wrapper > *, html body:has(header button.nav-toggle[aria-pressed=true]) #wrapper > * {
    transform: translateX(calc(var(--nav-width) * -1));
  }
}

body {
  font-family: "Roboto", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  font-weight: 400;
  color: var(--col-text);
  min-height: 100dvh;
}
body img {
  display: block;
  max-width: 100%;
  height: auto;
}
body a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s;
}
body #wrapper {
  display: flex;
  min-height: 100dvh;
  flex-direction: column;
}
body:has(dialog[open]) {
  overflow: hidden;
}
body:has(header + #container main:nth-child(1)) {
  padding-top: 100px;
}

.block,
.widget {
  display: block;
  flex-basis: 100%;
  padding: calc(var(--gap-col) * 0.5);
}
.block.span16,
.widget.span16 {
  flex-grow: 1;
  flex-basis: 16%;
  flex-basis: 16.6%;
}
.block.span20,
.widget.span20 {
  flex-grow: 1;
  flex-basis: 20%;
}
.block.span25,
.widget.span25 {
  flex-grow: 1;
  flex-basis: 25%;
}
.block.span30,
.widget.span30 {
  flex-grow: 1;
  flex-basis: 30%;
}
.block.span33,
.widget.span33 {
  flex-grow: 1;
  flex-basis: 33%;
  flex-basis: 33.3333333333%;
}
.block.span35,
.widget.span35 {
  flex-grow: 1;
  flex-basis: 35%;
}
.block.span40,
.widget.span40 {
  flex-grow: 1;
  flex-basis: 40%;
}
.block.span45,
.widget.span45 {
  flex-grow: 1;
  flex-basis: 45%;
}
.block.span50,
.widget.span50 {
  flex-grow: 1;
  flex-basis: 50%;
}
@media (max-width: 768px) {
  .block.span50,
  .widget.span50 {
    flex-basis: 100%;
  }
}
.block.span55,
.widget.span55 {
  flex-grow: 1;
  flex-basis: 55%;
}
.block.span60,
.widget.span60 {
  flex-grow: 1;
  flex-basis: 60%;
}
.block.span65,
.widget.span65 {
  flex-grow: 1;
  flex-basis: 65%;
}
.block.span66,
.widget.span66 {
  flex-grow: 1;
  flex-basis: 66%;
  flex-basis: 66.6666666667%;
}
.block.span70,
.widget.span70 {
  flex-grow: 1;
  flex-basis: 70%;
}
.block.span75,
.widget.span75 {
  flex-grow: 1;
  flex-basis: 75%;
}
.block.span80,
.widget.span80 {
  flex-grow: 1;
  flex-basis: 80%;
}

header .inside,
footer .inside,
.mod_article .inside {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: calc(1200px + var(--gap-col) * 2);
  margin-inline: auto;
  padding-block: calc(var(--gap-row) * 1);
  padding-inline: calc(var(--gap-col) * 0.5);
}
@media (max-width: 500px) {
  header .inside,
  footer .inside,
  .mod_article .inside {
    padding-inline: unset;
  }
}

header {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(180deg, rgba(var(--col-black--rgb), 0.65) 0%, rgba(var(--col-black--rgb), 0) 100%);
  color: var(--col-white);
  transition: background 0.2s, color 0.2s;
}
header:is(.hero-passed header) {
  color: var(--col-text);
  background: var(--col-white);
}
header > .inside {
  padding-block: unset;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
header a.logo {
  flex-basis: auto;
}
@media (min-width: 1170px) and (pointer: fine) {
  header nav {
    flex-basis: 0;
    flex-grow: 1;
  }
  header nav .nav-toggle, header nav button {
    display: none;
  }
  header nav ul.level_1 {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1em;
  }
  header nav ul.level_1 > li {
    position: relative;
  }
  header nav ul.level_1 > li:not(.nav--main) {
    display: none;
  }
  header nav ul.level_1 > li.button a {
    border: 1px solid currentColor;
    padding: 0.5em 0.75em;
    white-space: nowrap;
  }
  header nav ul.level_1 > li.button a:hover, header nav ul.level_1 > li.button a:focus {
    background: var(--col-gold);
    color: var(--col-white);
    text-decoration: none;
  }
  header nav ul.level_1 > li.trail > a, header nav ul.level_1 > li.active > a {
    font-weight: 600;
  }
  header nav ul.level_1 > li:hover > a, header nav ul.level_1 > li:focus-within > a {
    text-decoration: underline;
  }
  header nav ul.level_1 > li:hover ul.level_2, header nav ul.level_1 > li:focus-within ul.level_2 {
    display: block;
  }
  header nav ul.level_1 > li ul.level_2 {
    display: none;
    padding-block: 10px;
    min-width: 100%;
    position: absolute;
    z-index: 2;
    top: calc(100% + 1rem);
    left: 50%;
    transform: translateX(-50%);
    font-size: 0.8888888889rem;
    font-weight: 400;
    color: var(--col-text);
    background: var(--col-white);
    border: 1px solid var(--col-gray-300);
    border-radius: 6px;
    box-shadow: 0 4px 7px rgba(var(--col-black--rgb), 0.05);
  }
  header nav ul.level_1 > li ul.level_2:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    display: block;
    width: 100%;
    height: 1rem;
    opacity: 0;
  }
  header nav ul.level_1 > li ul.level_2:after {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    height: 0;
    width: 0;
    margin-left: -8px;
    pointer-events: none;
    border: solid transparent;
    border-color: rgba(255, 255, 255, 0);
    border-bottom-color: var(--col-white);
    border-width: 8px;
  }
  header nav ul.level_1 > li ul.level_2 li a {
    display: block;
    white-space: nowrap;
    padding: 0.5em 1em;
    transition: color 0.2s;
  }
  header nav ul.level_1 > li ul.level_2 li a:hover, header nav ul.level_1 > li ul.level_2 li a:focus {
    color: var(--col-gold);
  }
  header nav ul.level_1 > li ul.level_2 li.trail a, header nav ul.level_1 > li ul.level_2 li.active a {
    font-weight: 500;
  }
  header nav ul.level_1 > li ul.level_2 li + li {
    border-top: 1px solid var(--col-gray-300);
  }
  header nav a[href*=skipNavigation] {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 50%;
    display: block !important;
    padding: 0.5em 1em;
    transform: translate(-50%, -100%);
    background: var(--col-primary-400);
    color: var(--col-white);
    border-radius: 0 0 0.5rem 0.5rem;
    font-size: 1rem;
    line-height: 1;
    letter-spacing: normal;
    box-shadow: 0px 4px 2rem 0px rgba(var(--col-black--rgb), 0.1);
    transition: all 0.2s ease;
  }
  header nav a[href*=skipNavigation]:focus {
    transform: translate(-50%, 0);
  }
}
@media (max-width: 1170px), (pointer: coarse) {
  header nav.block {
    margin-left: auto;
    flex-basis: auto;
  }
  header nav:is(.hero-passed nav) div.nav-toggle button svg path {
    stroke: var(--col-black);
  }
  header nav div.nav-toggle button {
    padding: unset;
    margin: unset;
    border: unset;
    background: transparent;
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
  }
  header nav div.nav-toggle button svg {
    width: 30px;
    transform: scale(2.2);
    transition: transform 400ms;
  }
  header nav div.nav-toggle button svg path {
    fill: none;
    transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
    stroke: var(--col-white);
    stroke-width: 5.5;
    stroke-linecap: round;
  }
  header nav div.nav-toggle button svg path:nth-of-type(1) {
    stroke-dasharray: 40 139;
  }
  header nav div.nav-toggle button svg path:nth-of-type(3) {
    stroke-dasharray: 40 180;
  }
  header nav div.nav-toggle button[aria-pressed=true] svg {
    transform: scale(2.2) rotate(45deg);
  }
  header nav div.nav-toggle button[aria-pressed=true] svg path:nth-of-type(1) {
    stroke-dashoffset: -98px;
  }
  header nav div.nav-toggle button[aria-pressed=true] svg path:nth-of-type(3) {
    stroke-dashoffset: -138px;
  }
  header nav ul.level_1 {
    visibility: hidden;
    position: fixed;
    z-index: 10;
    right: 0;
    top: 0;
    display: flex;
    flex-direction: column;
    width: var(--nav-width);
    height: 100dvh;
    font-size: 1.2222222222rem;
    color: var(--col-black);
    box-shadow: inset 7px 0 9px -7px rgba(var(--col-black--rgb), 0.4);
    background: var(--col-white);
    transform: translateX(var(--nav-width));
    overflow: auto;
    scrollbar-width: none;
  }
  header nav ul.level_1 > li:not(.nav--main) {
    display: none;
  }
  header nav ul.level_1 > li.button {
    padding: 1em;
  }
  header nav ul.level_1 > li.button > a {
    padding: 0.5em 0.75em;
    white-space: nowrap;
    justify-content: center;
    background: var(--col-gold);
    color: var(--col-white);
  }
  header nav ul.level_1 > li.button > a:hover, header nav ul.level_1 > li.button > a:focus {
    text-decoration: none;
    background: var(--col-primary-400);
  }
  header nav ul.level_1 li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    border-top: 1px solid rgba(var(--col-black--rgb), 0.15);
  }
  header nav ul.level_1 li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.75ch;
    width: 100%;
    white-space: nowrap;
    line-height: 1.5 !important;
    padding: 1em 1.5em;
    text-wrap: wrap;
    min-height: 4.3rem;
  }
  header nav ul.level_1 li:has(> a + button) a {
    width: unset;
    flex-basis: auto;
    flex-grow: 1;
  }
  header nav ul.level_1 li button {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    width: 3rem;
    padding: 0.5rem;
    background: transparent;
    border: unset;
  }
  header nav ul.level_1 li button:after {
    content: "";
    flex-shrink: 0;
    display: block;
    background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
    width: 1.25rem;
    height: 1.25rem;
    background-position: -1.25rem -1.25rem;
    background-size: auto 6.25rem;
    transition: transform 0.2s;
  }
  header nav ul.level_1 li button[aria-pressed=true]:after {
    transform: rotate(-90deg);
  }
  header nav ul.level_1 li button[aria-pressed=false] ~ ul {
    visibility: hidden;
    display: none;
  }
  header nav ul.level_1 li ul {
    flex-basis: 100%;
    flex-shrink: 0;
    font-size: 0.85em;
  }
  header nav ul.level_1 li ul li a {
    padding-left: 2.5rem;
  }
  header nav ul.level_1 a.active, header nav ul.level_1 a.trail {
    color: var(--col-gold);
  }
}

footer {
  --background: rgba(var(--col-primary-400--rgb),0.75);
  background: var(--background);
  color: var(--col-white);
  font-size: 18px;
}
footer .upper > .inside {
  column-gap: calc(var(--gap-col) * 1);
}
footer .upper .logo {
  flex-basis: 25%;
}
footer .upper .logo svg {
  width: 100%;
  height: auto;
  transform: translateX(-7.4%);
}
footer .upper .logo svg .st0 {
  fill: transparent;
}
footer .upper nav {
  flex-basis: 0;
  flex-grow: 1;
}
footer .upper nav button {
  display: none;
}
footer .upper nav ul.level_1 {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(var(--gap-col) * 1);
}
footer .upper nav ul.level_1 > li {
  flex-basis: 0;
  flex-grow: 1;
  margin-top: 0.5em;
}
footer .upper nav ul.level_1 > li:not(.nav--footer) {
  display: none;
}
footer .upper nav ul.level_1 > li > a {
  font-weight: 600;
}
footer .upper nav ul.level_1 > li.social ul.level_2 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.5em;
}
footer .upper nav ul.level_1 > li.social ul.level_2 li + li {
  margin-top: unset;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a {
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a span {
  display: none;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a:before {
  content: "";
  display: block;
  filter: brightness(0) invert(1);
  font-size: 3em;
  transition: transform 0.4s;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a:hover:before, footer .upper nav ul.level_1 > li.social ul.level_2 a:focus:before {
  transform: translateY(-3px);
}
footer .upper nav ul.level_1 > li.social ul.level_2 a[href*=instagram]:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -0em -0em;
  background-size: auto 5em;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a[href*=facebook]:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -0em -1em;
  background-size: auto 5em;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a[href*=youtube]:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -0em -2em;
  background-size: auto 5em;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a[href*="x.com"]:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -0em -3em;
  background-size: auto 5em;
}
footer .upper nav ul.level_1 > li.social ul.level_2 a[href*=linkedin]:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -0em -4em;
  background-size: auto 5em;
}
footer .upper nav ul.level_1 > li ul.level_2 {
  margin-top: calc(var(--gap-col) * 0.5);
  font-size: 14.4px;
  font-weight: 300;
}
footer .upper nav ul.level_1 > li ul.level_2 > li a:hover, footer .upper nav ul.level_1 > li ul.level_2 > li a:focus {
  text-decoration: underline;
}
footer .upper nav ul.level_1 > li ul.level_2 > li + li {
  margin-top: 0.25em;
}
@media (max-width: 768px) {
  footer .upper .logo {
    flex-basis: 270px;
    margin-inline: auto;
  }
  footer .upper .logo svg {
    transform: unset;
  }
  footer .upper nav {
    flex-basis: 100%;
  }
  footer .upper nav ul.level_1 {
    flex-wrap: wrap;
    column-gap: unset;
  }
  footer .upper nav ul.level_1 > li {
    flex-basis: 50%;
  }
}
footer .lower {
  font-size: 14.4px;
  font-weight: 300;
  background: color-mix(in srgb, var(--background) 85%, black);
}
footer .lower > .inside {
  padding-block: unset;
}
footer .lower .copy {
  flex-basis: auto;
}
footer .lower nav {
  flex-basis: 0;
  flex-grow: 1;
}
footer .lower nav ul.level_1 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
footer .lower nav ul.level_1 > li a:hover, footer .lower nav ul.level_1 > li a:focus {
  text-decoration: underline;
}
footer .lower nav ul.level_1 > li:not(.nav--legal) {
  display: none;
}
footer .lower nav ul.level_1 > li.nav--legal ~ li.nav--legal:before {
  content: "|";
  margin-inline: 0.5ch;
}
@media (max-width: 500px) {
  footer .lower > .inside {
    flex-direction: column;
  }
  footer .lower .copy {
    order: 2;
    text-align: center;
    padding-top: unset;
  }
  footer .lower nav ul.level_1 {
    justify-content: center;
  }
}

#hero .mod_article > .inside {
  padding: unset;
  max-width: unset;
}
#hero .mod_article .block {
  padding: unset;
}
#hero:is(.school #hero):has(.content-image + .content-image) .mod_article > .inside {
  display: grid;
  grid-template-columns: auto clamp(300px, 85vw, 750px) auto;
  grid-template-rows: 1fr 1fr auto auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  height: 100%;
  height: clamp(400px, 100vh, 1000px);
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image {
  overflow: hidden;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(1 of .content-image) {
  grid-area: 1/1/4/4;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(1 of .content-image) div, #hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(1 of .content-image) figure, #hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(1 of .content-image) img {
  height: 100%;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(1 of .content-image) img {
  width: 100%;
  object-fit: cover;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(2 of .content-image) {
  grid-area: 3/2/5/3;
  background: var(--col-white);
  padding: calc(var(--gap-col) * 1);
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(2 of .content-image) img {
  width: 100%;
  height: 150px;
  object-fit: contain;
  object-position: 50% 50%;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(2 of .content-image) figcaption {
  position: relative;
  display: block;
  text-align: center;
  font-size: 1.3333333333rem;
  font-weight: 500;
}
#hero:is(.school #hero):has(.content-image + .content-image) .content-image:nth-child(2 of .content-image) figcaption:before {
  content: "";
  display: block;
  height: 2px;
  width: 90%;
  margin-inline: auto;
  margin-block: calc(var(--gap-col) * 1);
  background: var(--col-text);
}
#hero:not(:is(.school #hero)) {
  /*
  .content-image:not(.swiper-slide .content-image) {

      position: relative;

      figure {

          position: absolute;
          top: 0;
          left: 0;

          width: 100%;
          height: 100%;
      }
  }
  */
}
#hero:not(:is(.school #hero)):has(.content-text + .content-image) .mod_article > .inside, #hero:not(:is(.school #hero)):has(.content-text + .content-swiper) .mod_article > .inside {
  position: relative;
  overflow: hidden;
}
#hero:not(:is(.school #hero)):has(.content-text + .content-image) .content-text, #hero:not(:is(.school #hero)):has(.content-text + .content-swiper) .content-text {
  position: relative;
  z-index: 2;
  pointer-events: none;
}
#hero:not(:is(.school #hero)):has(.content-text + .content-image) .content-image,
#hero:not(:is(.school #hero)):has(.content-text + .content-image) .content-swiper, #hero:not(:is(.school #hero)):has(.content-text + .content-swiper) .content-image,
#hero:not(:is(.school #hero)):has(.content-text + .content-swiper) .content-swiper {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#hero:not(:is(.school #hero)) .content-swiper > div, #hero:not(:is(.school #hero)) .content-swiper .swiper {
  height: 100%;
}
#hero:not(:is(.school #hero)) .content-swiper .swiper {
  padding-bottom: unset;
}
#hero:not(:is(.school #hero)) .content-image > div, #hero:not(:is(.school #hero)) .content-image figure, #hero:not(:is(.school #hero)) .content-image img {
  height: 100%;
}
#hero:not(:is(.school #hero)) .content-image img {
  max-width: unset;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
}

h1, h2 {
  font-family: "Cinzel", Helvetica, Arial, sans-serif;
  font-size: 35px;
  font-weight: 500;
  color: var(--col-primary-400);
}

h3, h4 {
  font-size: 24px;
  font-weight: 400;
}

.block.limited {
  max-width: 900px;
  margin-inline: auto;
}
.block.hl-center.hl, .block.hl-center .hl {
  text-align: center;
}

.mod_article.background-primary {
  background: var(--col-primary-400);
  color: var(--col-white);
  padding-block: calc(var(--gap-row));
}
.mod_article.background-light {
  background: rgba(var(--col-gold--rgb), 0.05);
  padding-block: calc(var(--gap-row));
}
.mod_article.disturber {
  position: relative;
  color: var(--col-white);
}
.mod_article.disturber h1, .mod_article.disturber h2 {
  color: currentColor;
}
.mod_article.disturber > .inside {
  padding-block: calc(var(--gap-row) * 2);
}
.mod_article.disturber > .inside > .block {
  position: relative;
  z-index: 2;
}
.mod_article.disturber .content-image:nth-child(1 of .content-image) {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}
.mod_article.disturber .content-image:nth-child(1 of .content-image) > div {
  width: 100%;
  height: 100%;
}
.mod_article.disturber .content-image:nth-child(1 of .content-image).block {
  padding: unset;
}
.mod_article.disturber .content-image:nth-child(1 of .content-image) figure {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--col-black);
}
.mod_article.disturber .content-image:nth-child(1 of .content-image) img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  height: 100%;
  max-width: unset;
  object-fit: cover;
  opacity: 0.25;
}

.content-text ul,
.content-list ul {
  list-style-type: disc;
}
.content-text ol,
.content-list ol {
  list-style-type: decimal;
}
.content-text ul, .content-text ol,
.content-list ul,
.content-list ol {
  list-style-position: outside;
  margin-left: 1em;
}
.content-text ul li + li, .content-text ol li + li,
.content-list ul li + li,
.content-list ol li + li {
  margin-top: 0.5em;
}

.content-text .content a {
  text-decoration: underline;
}
.content-text .content > * + * {
  margin-top: var(--gap-lines);
}
.content-text:not(.no-button) .content p:last-child:has(a) {
  padding-top: calc(var(--gap-lines) * 2);
}
.content-text:not(.no-button) .content p:last-child:has(a):has(a + a) {
  margin: -0.5rem;
}
.content-text:not(.no-button) .content p:last-child:has(a):has(a + a) a {
  margin: 0.5rem;
}
.content-text:not(.no-button) .content p:last-child:has(a) a {
  --color: var(--button-color, var(--col-white));
  --background: var(--button-background, var(--col-gold));
  position: relative;
  overflow: hidden;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.74em 2em;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  color: var(--color);
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer !important;
  background: var(--background);
  border: 1px solid var(--background);
  border-radius: 4px;
  transition: border-color 0.2s;
}
.content-text:not(.no-button) .content p:last-child:has(a) a:before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -55%;
  right: calc(100% + 20px);
  width: 80px;
  height: 200%;
  background: linear-gradient(transparent 0%, rgba(255, 255, 255, 0.6) 50%, transparent 100%);
  transform: rotate(-70deg);
  transition: 0.6s ease-in-out right;
}
.content-text:not(.no-button) .content p:last-child:has(a) a:hover, .content-text:not(.no-button) .content p:last-child:has(a) a:focus {
  border-color: color-mix(in srgb, var(--background) 85%, black);
}
.content-text:not(.no-button) .content p:last-child:has(a) a:hover:before, .content-text:not(.no-button) .content p:last-child:has(a) a:focus:before {
  right: -100%;
}
.content-text:not(.no-button) .content p:last-child:has(a) a + a {
  --button-color: var(--col-gold);
  --button-background: var(--col-white);
  border-color: var(--button-color);
}
.content-text:is(#hero .content-text) > div {
  display: grid;
  overflow: hidden;
}
.content-text:is(#hero .content-text) > div figure, .content-text:is(#hero .content-text) > div .content {
  grid-area: 1/1;
  height: 100%;
  height: clamp(400px, 90vh, 1000px);
}
.content-text:is(#hero .content-text) figure {
  z-index: 1;
}
.content-text:is(#hero .content-text) figure img {
  max-width: unset;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.content-text:is(#hero .content-text) .content {
  z-index: 2;
  background: rgba(var(--col-black--rgb), 0.25);
  color: var(--col-white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.content-text:is(#hero .content-text) .content h1,
.content-text:is(#hero .content-text) .content p:nth-child(1) {
  text-transform: uppercase;
  font-family: "Cinzel", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: clamp(30px, 7vw, 70px);
  line-height: 1.2;
}
.content-text:is(#hero .content-text) .content h1 + p,
.content-text:is(#hero .content-text) .content p + p {
  font-weight: 500;
  font-size: clamp(24px, 7vw, 32px);
}
.content-text:has(.content h2:nth-child(2)) .content *:nth-child(2), .content-text:has(.content h3:nth-child(2)) .content *:nth-child(2) {
  margin-top: unset;
}
.content-text.media--left, .content-text.media--right {
  padding: unset;
}
.content-text.media--left > div, .content-text.media--right > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.content-text.media--left > div > *, .content-text.media--right > div > * {
  padding: calc(var(--gap-col) * 0.5);
}
.content-text.media--left > div .content, .content-text.media--right > div .content {
  flex-basis: 0;
  flex-grow: 1;
}
.content-text.media--right > div > figure {
  order: 2;
}
.content-text.media--above > div {
  display: flex;
  flex-direction: column;
  gap: calc(var(--gap-col) * 0.5);
}
.content-text.media--below figure {
  margin-top: calc(var(--gap-col) * 1);
}
.content-text[class*=span]:has(figure):has(.content p:last-child > a) > div {
  height: 100%;
}
.content-text[class*=span]:has(figure):has(.content p:last-child > a) > div .content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.content-text[class*=span]:has(figure):has(.content p:last-child > a) > div .content p:last-child {
  margin-top: auto;
}
.content-text.location > div {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.content-text.location > div:before {
  content: "";
  flex-shrink: 0;
  display: block;
  margin-right: 1em;
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 3em;
  height: 3em;
  background-position: -3em -0em;
  background-size: auto 15em;
  filter: var(--filter-text);
}
.content-text.quote > div {
  flex-direction: column;
  align-items: center;
  gap: calc(var(--gap-col) * 1);
}
.content-text.quote > div figure img {
  max-width: 175px;
  border: 3px solid var(--col-gold);
  border-radius: 50%;
}
.content-text.quote > div .content {
  text-align: center;
  max-width: 600px;
  margin-inline: auto;
}
.content-text.quote > div .content p:nth-of-type(1):before {
  content: "„";
}
.content-text.quote > div .content p:nth-of-type(1):after {
  content: "”";
}
.content-text.quote > div .content .hl {
  font-weight: 500;
}
.content-text.content-limited .content {
  max-width: 600px;
}
.content-text.boxed > div {
  background: rgba(var(--col-gold--rgb), 0.05);
  padding: calc(var(--gap-col) * 1);
}
.content-text.boxed .content .hl {
  display: block;
  margin-left: calc(var(--gap-col) * -1);
  margin-bottom: calc(var(--gap-col) * 1);
  padding: 0.5em;
  padding-left: calc(var(--gap-col) * 1);
  font-size: 1.2222222222rem;
  line-height: 1.2;
  color: var(--col-white);
  text-transform: uppercase;
  background: var(--col-primary-400);
}
.content-text.boxed[class*=icon--] .content .hl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.content-text.boxed[class*=icon--] .content .hl:before {
  content: "";
  flex-shrink: 0;
  margin-right: 1ch;
  filter: brightness(0) invert(1);
}
.content-text.boxed[class*=icon--].icon--social-instagram .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -0em -0em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--social-facebook .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -0em -1.5em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--social-youtube .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -0em -3em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--social-twitter .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -0em -4.5em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--social-linkedin .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -0em -6em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--pin .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -1.5em -0em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--chevron .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -1.5em -1.5em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--quote .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -1.5em -3em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--checklist .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -1.5em -4.5em;
  background-size: auto 7.5em;
}
.content-text.boxed[class*=icon--].icon--zoom .content .hl:before {
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1.5em;
  height: 1.5em;
  background-position: -1.5em -6em;
  background-size: auto 7.5em;
}
.content-text.boxed.keyfacts .content {
  container-type: inline-size;
}
@container ( min-width: 500px ) {
  .content-text.boxed.keyfacts .content ul {
    column-count: 2;
  }
}
.content-text.centered {
  text-align: center;
}
.content-text.profile.media--above > div {
  row-gap: unset;
}
.content-text.profile figure img {
  width: 100%;
  max-width: unset;
}
.content-text.profile .content {
  background: var(--col-primary-400);
  color: var(--col-white);
  padding: calc(var(--gap-col) * 0.5);
  font-size: 0.8888888889rem;
}
.content-text.profile .content p:nth-child(1) {
  font-weight: 500;
  font-size: 1rem;
}
.content-text.profile .content > * + * {
  margin-top: calc(var(--gap-lines) * 0.5);
}

.content-text:not(#hero .block) figure,
.content-image:not(#hero .block) figure {
  position: relative;
}
.content-text:not(#hero .block) figure figcaption,
.content-image:not(#hero .block) figure figcaption {
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
  display: inline-block;
  padding: 0.5em;
  background: rgba(var(--col-black--rgb), 0.5);
  font-size: 0.75rem;
  line-height: 1.2;
  color: var(--col-white);
}

.content-swiper {
  max-width: 100%;
  --swiper-pagination-top: unset;
  --swiper-pagination-bottom: 0px;
  --swiper-pagination-color: var(--col-gold);
}
.content-swiper .swiper {
  padding-bottom: calc(var(--gap-col) * 1);
}
.content-swiper .swiper button {
  border: none;
  background: none;
}
.content-swiper .swiper button:after {
  content: "";
  flex-shrink: 0;
  display: block;
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -1em -1em;
  background-size: auto 5em;
  filter: var(--filter-text);
}
.content-swiper .swiper button.swiper-button-prev:after {
  transform: scaleX(-1);
}
.content-swiper .swiper .swiper-pagination .swiper-pagination-bullet {
  transition: transform 0.2s;
}
.content-swiper .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  transform: scale(1.5);
}
.content-swiper:has(.content-text.quote) > div {
  position: relative;
}
.content-swiper:has(.content-text.quote) > div:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  font-size: clamp(50px, 15vw, 250px);
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 1em;
  height: 1em;
  background-position: -1em -2em;
  background-size: auto 5em;
  filter: var(--filter-text);
  transform: translateX(-15%) translateY(-30%);
  opacity: 0.1;
}

.content-hyperlink:not(:has(figure)) a {
  --color: var(--button-color, var(--col-white));
  --background: var(--button-background, var(--col-gold));
  position: relative;
  overflow: hidden;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.74em 2em;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  color: var(--color);
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer !important;
  background: var(--background);
  border: 1px solid var(--background);
  border-radius: 4px;
  transition: border-color 0.2s;
}
.content-hyperlink:not(:has(figure)) a:before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -55%;
  right: calc(100% + 20px);
  width: 80px;
  height: 200%;
  background: linear-gradient(transparent 0%, rgba(255, 255, 255, 0.6) 50%, transparent 100%);
  transform: rotate(-70deg);
  transition: 0.6s ease-in-out right;
}
.content-hyperlink:not(:has(figure)) a:hover, .content-hyperlink:not(:has(figure)) a:focus {
  border-color: color-mix(in srgb, var(--background) 85%, black);
}
.content-hyperlink:not(:has(figure)) a:hover:before, .content-hyperlink:not(:has(figure)) a:focus:before {
  right: -100%;
}
.content-hyperlink.image-box figure {
  display: grid;
  container-type: inline-size;
}
.content-hyperlink.image-box figure > a, .content-hyperlink.image-box figure > figcaption {
  grid-area: 1/1;
}
.content-hyperlink.image-box figure picture {
  overflow: hidden;
  display: block;
}
.content-hyperlink.image-box figure img {
  max-width: unset;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.content-hyperlink.image-box figure > figcaption {
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  text-align: center;
  background: rgba(var(--col-black--rgb), 0.35);
  color: var(--col-white);
  font-size: 10cqw;
  text-transform: uppercase;
  font-weight: 500;
  overflow: hidden;
  transition: all 0.4s;
}
.content-hyperlink.image-box figure:hover img, .content-hyperlink.image-box figure:focus-within img {
  transform: scale(1.1);
}
.content-hyperlink.image-box figure:hover > figcaption, .content-hyperlink.image-box figure:focus-within > figcaption {
  background: transparent;
  backdrop-filter: none;
  letter-spacing: 0.2em;
  opacity: 0.75;
}
.content-hyperlink.image-box.span33 {
  flex-grow: 0;
}
@media (max-width: 760px) {
  .content-hyperlink.image-box.span33 {
    flex-basis: 50%;
  }
}
.content-hyperlink.center {
  text-align: center;
}

.content-gallery .hl {
  margin-bottom: calc(var(--gap-col) * 1);
}
.content-gallery.content-gallery--cols-1 ul {
  --columns: 1;
}
.content-gallery.content-gallery--cols-2 ul {
  --columns: 2;
}
.content-gallery.content-gallery--cols-3 ul {
  --columns: 3;
}
.content-gallery.content-gallery--cols-4 ul {
  --columns: 4;
}
.content-gallery.content-gallery--cols-5 ul {
  --columns: 5;
}
.content-gallery.content-gallery--cols-6 ul {
  --columns: 6;
}
.content-gallery.content-gallery--cols-7 ul {
  --columns: 7;
}
.content-gallery.content-gallery--cols-8 ul {
  --columns: 8;
}
.content-gallery.content-gallery--cols-9 ul {
  --columns: 9;
}
.content-gallery.content-gallery--cols-10 ul {
  --columns: 10;
}
.content-gallery.content-gallery--cols-11 ul {
  --columns: 11;
}
.content-gallery.content-gallery--cols-12 ul {
  --columns: 12;
}
.content-gallery ul {
  --columns: 1;
  --gap: calc(var(--gap-col) * 1);
  --gap-count: calc( var(--columns) - 1 );
  column-gap: var(--gap);
  display: flex;
  justify-content: center;
  align-items: center;
}
.content-gallery ul li {
  flex-basis: calc(100% / var(--columns) - var(--gap) / var(--columns) * var(--gap-count));
}
.content-gallery.carousel {
  --num-logos-visible: 1;
  --speed-per-slides: 10s;
}
.content-gallery.carousel:hover > div ul {
  animation-play-state: paused;
}
.content-gallery.carousel.content-gallery--cols-1 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 1;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 1 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-1 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-2 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 2;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 2 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-2 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-3 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 3;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 3 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-3 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-4 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 4;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 4 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-4 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-5 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 5;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 5 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-5 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-6 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 6;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 6 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-6 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-7 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 7;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 7 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-7 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-8 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 8;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 8 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-8 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-9 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 9;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 9 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-9 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-10 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 10;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 10 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-10 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-11 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 11;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 11 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-11 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel.content-gallery--cols-12 ul {
  column-gap: unset;
  row-gap: unset;
  --num-logos-visible: 12;
  --logo-width: calc((100 / var(--num-logos-visible)) * 1cqw);
  --scroll-speed: calc( var(--speed-per-slides) / 12 * var(--num) );
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(var(--logo-width) * -1 * var(--num)));
  }
}
@media (max-width: 600px) {
  .content-gallery.carousel.content-gallery--cols-12 ul {
    --num-logos-visible: 2;
  }
}
.content-gallery.carousel > div {
  container-type: inline-size;
  overflow: hidden;
  width: auto;
  mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 10%, rgb(0, 0, 0) 90%, transparent 100%);
}
.content-gallery.carousel > div ul {
  animation: scroll var(--scroll-speed) linear infinite;
  width: calc(var(--logo-width) * var(--num-logos-visible) * 2);
  flex-wrap: nowrap;
}
.content-gallery.carousel > div ul li {
  flex-basis: var(--logo-width) !important;
  flex-shrink: 0;
  flex-grow: 0;
}
.content-gallery.carousel > div ul li img {
  max-width: calc(100% - var(--gap-col));
}
.content-gallery.carousel ul {
  justify-content: space-between;
}
.content-gallery.carousel ul li img {
  filter: contrast(40%) grayscale(1) brightness(200%);
  height: 100px;
  object-fit: contain;
}
.content-gallery.collage[class*=span] {
  align-self: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.content-gallery.collage ul {
  position: relative;
  display: block;
  --gap: calc(var(--gap-col) * 2.5);
}
.content-gallery.collage ul li {
  width: 65%;
}
.content-gallery.collage ul li:nth-of-type(1) {
  margin-left: auto;
}
.content-gallery.collage ul li:nth-of-type(2) {
  z-index: 2;
  margin-top: -20%;
  width: 55%;
}
.content-gallery.collage ul li:nth-of-type(n+3) {
  display: none;
}
.content-gallery figure a[data-lightbox] {
  position: relative;
  overflow: hidden;
  display: block;
}
.content-gallery figure a[data-lightbox]:before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  background: url("../img/sprite-icons.svg?uvkv5zt") no-repeat scroll;
  width: 4rem;
  height: 4rem;
  background-position: -4rem -16rem;
  background-size: auto 20rem;
  filter: brightness(0) invert(1);
  opacity: 0;
  transition: all 0.4s;
}
.content-gallery figure a[data-lightbox] img {
  transition: all 0.4s;
}
.content-gallery figure a[data-lightbox]:hover:before, .content-gallery figure a[data-lightbox]:focus:before {
  opacity: 1;
  transform: translateX(-50%) translateY(-50%) scale(0.9);
}
.content-gallery figure a[data-lightbox]:hover img, .content-gallery figure a[data-lightbox]:focus img {
  transform: scale(1.1);
  filter: blur(3px);
}

.content-youtube .hl,
.content-vimeo .hl,
.content-video .hl {
  margin-bottom: calc(var(--gap-col) * 1);
}
.content-youtube iframe, .content-youtube video, .content-youtube figure,
.content-vimeo iframe,
.content-vimeo video,
.content-vimeo figure,
.content-video iframe,
.content-video video,
.content-video figure {
  width: 100%;
  max-width: 930px;
  aspect-ratio: 16/9;
  margin-inline: auto;
}

.mod_newslist > div > .hl {
  text-align: center;
  margin-bottom: calc(var(--gap-col) * 1);
}
.mod_newslist .content-text {
  position: relative;
}
.mod_newslist .content-text figure {
  padding-left: unset;
  padding-bottom: unset;
}
.mod_newslist .content-text figure figcaption {
  display: none;
}
.mod_newslist .content-text .content {
  align-self: center;
}
.mod_newslist .content-text .content time {
  display: block;
  margin-bottom: 0.5em;
}
.mod_newslist .content-text .content .hl {
  font-size: 1rem;
  font-weight: 700;
}
.mod_newslist .content-text .content .hl a {
  transition: color 0.2s;
  text-decoration: none;
}
.mod_newslist .content-text .content .hl a:hover, .mod_newslist .content-text .content .hl a:focus {
  color: var(--col-gold);
}
.mod_newslist .content-text + .block {
  margin-top: calc(var(--gap-col) * 1);
}
.mod_newslist.no-caption figcaption {
  display: none !important;
}

.formbody {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.formbody .widget > label, .formbody .widget fieldset > legend {
  display: block;
  font-size: 0.7777777778rem;
  margin-bottom: 0.5em;
}
.formbody .widget input[type=text], .formbody .widget input[type=email] {
  display: block;
  width: 100%;
  padding: 0.75em 1em;
  font-family: inherit;
  font-size: inherit;
  font-weight: 300;
  color: var(--col-black);
  border: 1px solid rgba(var(--col-text--rgb), 0.25);
  border-radius: 4px;
}
.formbody .widget.widget-checkbox fieldset:has(span:nth-of-type(n+3)), .formbody .widget.widget-submit fieldset:has(span:nth-of-type(n+3)) {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.formbody .widget.widget-checkbox fieldset:has(span:nth-of-type(n+3)) span, .formbody .widget.widget-submit fieldset:has(span:nth-of-type(n+3)) span {
  flex-basis: 33.3333333333%;
}
.formbody .widget.widget-checkbox span, .formbody .widget.widget-submit span {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 1rem;
}
.formbody .widget.widget-checkbox span input, .formbody .widget.widget-submit span input {
  flex-shrink: 0;
  display: block;
  width: 1.5em;
  height: 1.5em;
  margin: unset;
  padding: unset;
  cursor: pointer;
  accent-color: var(--col-primary-400);
}
.formbody .widget.widget-checkbox span label, .formbody .widget.widget-submit span label {
  cursor: pointer;
}
.formbody .widget.widget-checkbox span label a, .formbody .widget.widget-submit span label a {
  text-decoration: underline;
  color: var(--col-gold);
}
.formbody .widget.widget-submit button {
  --color: var(--button-color, var(--col-white));
  --background: var(--button-background, var(--col-gold));
  position: relative;
  overflow: hidden;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.74em 2em;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  color: var(--color);
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer !important;
  background: var(--background);
  border: 1px solid var(--background);
  border-radius: 4px;
  transition: border-color 0.2s;
}
.formbody .widget.widget-submit button:before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -55%;
  right: calc(100% + 20px);
  width: 80px;
  height: 200%;
  background: linear-gradient(transparent 0%, rgba(255, 255, 255, 0.6) 50%, transparent 100%);
  transform: rotate(-70deg);
  transition: 0.6s ease-in-out right;
}
.formbody .widget.widget-submit button:hover, .formbody .widget.widget-submit button:focus {
  border-color: color-mix(in srgb, var(--background) 85%, black);
}
.formbody .widget.widget-submit button:hover:before, .formbody .widget.widget-submit button:focus:before {
  right: -100%;
}

.ce_form.block {
  padding: unset;
}
.ce_form.limited .formbody {
  border: 1px solid var(--col-gray-100);
}

.divider:before {
  content: "";
  display: block;
  margin-inline: auto;
  margin-block: calc(var(--gap-col) * 0.5);
  width: calc(100% - var(--gap-col));
  height: 2px;
  background: #d0c9d0;
}

.avalex-container h2 {
  margin-top: calc(var(--gap-col) * 1);
  text-transform: none;
}
.avalex-container > * + *,
.avalex-container > div > * + * {
  margin-top: var(--gap-lines);
}
.avalex-container a {
  text-decoration: underline;
}
.avalex-container a:hover, .avalex-container a:focus {
  color: var(--col-gold);
}

nav.pagination {
  text-align: center;
  margin-top: calc(var(--gap-col) * 0.5);
}
nav.pagination > p {
  font-size: 0.7777777778rem;
  margin-bottom: 1em;
}
nav.pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
nav.pagination ul a {
  transition: color 0.2s;
  text-decoration: none;
}
nav.pagination ul a:hover, nav.pagination ul a:focus {
  color: var(--col-gold);
}

body.school {
  --button-background: var(--ci-secondary);
  /*
  footer {

      --background: var(--ci-primary);

      .upper .logo svg .st0 {
          fill: var(--ci-primary);
      }
  }
  */
}
body.school header {
  position: absolute;
}
body.school header a.logo svg .st0 {
  fill: transparent;
}
body.school header nav {
  display: none;
}
body.school #hero .content-image:nth-child(2 of .content-image) figcaption,
body.school h1, body.school h2 {
  color: var(--ci-primary);
}
body.school .content-text.boxed .content .hl {
  background: var(--ci-primary);
}
body.school .mod_article.background-light,
body.school .content-text.boxed > div {
  background: rgba(var(--ci-secondary--rgb), 0.05);
}

cms-accept-tags {
  --btn-reject-bg-color: var(--col-gold);
  --btn-accept-bg-color: var(--btn-reject-bg-color);
  --btn-reject-text-color: var(--col-white);
  --btn-accept-text-color: var(--btn-reject-text-color);
  --main-bg-overlay-color: rgba(var(--col-white--rgb), 0.20);
  backdrop-filter: blur(3px);
}
cms-accept-tags .disclaimer a {
  text-decoration: underline;
}
cms-accept-tags .disclaimer a:hover, cms-accept-tags .disclaimer a:focus {
  color: var(--col-gold);
}
cms-accept-tags cms-buttons cms-button > span:before {
  border-radius: 3px;
}

body.cookie-bar-visible {
  overflow: hidden;
}

/*# sourceMappingURL=style.css.map */