.if-only-screenreader {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.l-container {
  position: relative;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.hyphenate {
  hyphens: auto;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
}
.donthyphenate {
  hyphens: none;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
}
:root {
  --app-spacing-1: 0.375rem;
  --app-spacing-2: calc(2 * var(--app-spacing-1));
  --app-spacing-3: calc(3 * var(--app-spacing-1));
  --app-spacing-4: calc(4 * var(--app-spacing-1));
  --app-spacing-5: calc(5 * var(--app-spacing-1));
  --app-spacing-6: calc(6 * var(--app-spacing-1));
  --app-spacing-7: calc(7 * var(--app-spacing-1));
  --app-spacing-8: calc(8 * var(--app-spacing-1));
  --app-spacing-9: calc(9 * var(--app-spacing-1));
  --app-spacing-10: calc(10 * var(--app-spacing-1));
  --app-spacing-11: calc(11 * var(--app-spacing-1));
  --app-spacing-12: calc(12 * var(--app-spacing-1));
  --app-spacing-13: calc(13 * var(--app-spacing-1));
  --app-spacing-14: calc(14 * var(--app-spacing-1));
  --app-width-content: min(57rem, 90%);
  --app-width-content-fill: min(57rem, 100%);
}
:root {
  --app-color-gray: #807d7b;
  --app-color-gray-light: #c0bcb8;
  --app-color-gray-lighter: #eeedec;
  --app-color-gray-dark: #5a6258;
  --app-color-gray-darker: #282421;
  --app-color-black: black;
  --app-color-white: white;
  --app--color--primary-darker: #282828;
  --app--color--primary-dark: var(--app-color-gray);
  --app--color--primary: var(--app-color-gray-light);
  --app--color--primary-light: var(--app-color-gray-lighter);
  --app--color--primary-lighter: #f5f5f5;
  --app--color--secondary: var(--app--color--primary);
}
body {
  --app-color-accent: var(--app--color--primary);
  --app-color-bg: var(--app-color-white);
  --app-color-text: var(--app-color-gray-darker);
  --app-color--menu-selected: var(--app-color-text);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) body {
    --app-color-bg: var(--app-color-black);
    --app-color-text: var(--app-color-white);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) body {
  --app-color-bg: var(--app-color-black);
  --app-color-text: var(--app-color-white);
}
.theme-neutral {
  --app--color--primary-darker: #282828;
  --app--color--primary-dark: var(--app-color-gray);
  --app--color--primary: var(--app-color-gray-light);
  --app--color--primary-light: var(--app-color-gray-lighter);
  --app--color--primary-lighter: #f5f5f5;
  --app--color--secondary: var(--app--color--primary);
}
/* lato-100 - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 100;
  src: url('../../fonts/lato/lato-v23-latin-ext-100.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-100.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-100italic - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 100;
  src: url('../../fonts/lato/lato-v23-latin-ext-100italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-100italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-300 - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('../../fonts/lato/lato-v23-latin-ext-300.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-300.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-300italic - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('../../fonts/lato/lato-v23-latin-ext-300italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-300italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-regular - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('../../fonts/lato/lato-v23-latin-ext-regular.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-regular.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-italic - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('../../fonts/lato/lato-v23-latin-ext-italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-700 - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('../../fonts/lato/lato-v23-latin-ext-700.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-700.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-700italic - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('../../fonts/lato/lato-v23-latin-ext-700italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-700italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-900 - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url('../../fonts/lato/lato-v23-latin-ext-900.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-900.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* lato-900italic - latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 900;
  src: url('../../fonts/lato/lato-v23-latin-ext-900italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/lato/lato-v23-latin-ext-900italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-300 - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 300;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-300.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-300.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-300italic - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 300;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-300italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-300italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-regular - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-regular.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-regular.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-italic - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 400;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-700 - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-700.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-700.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-700italic - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 700;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-700italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-700italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-900 - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 900;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-900.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-900.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* merriweather-900italic - latin-ext_latin */
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 900;
  src: url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-900italic.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/merriweather/merriweather-v30-latin-ext_latin-900italic.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-200 - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 200;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-200.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-200.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-300 - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-300.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-300.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-regular - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-regular.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-regular.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-500 - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-500.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-500.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-600 - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-600.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-600.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* oswald-700 - latin-ext_latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  src: url('../../fonts/oswald/oswald-v49-latin-ext_latin-700.woff2?t=1756383046') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../../fonts/oswald/oswald-v49-latin-ext_latin-700.woff?t=1756383046') format('woff');
  
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
:root {
  --app-font-sans-1: 'Lato';
  --app-font-serif-1: 'Merriweather';
  --app-font-align-bottom: 0em;
  --app-font-align-top: 0em;
  --app-font-factor: 1;
}
.theme-year--2025 {
  --app--color--primary-darker: #c34e66;
  --app--color--primary-dark: #da516e;
  --app--color--primary: #e65f73;
  --app--color--primary-light: #ebcbd0;
  --app--color--primary-lighter: #f2e2e7;
  --app--color--secondary: #329678;
}
.theme-year--2024 {
  --app--color--primary-darker: #26a0bd;
  --app--color--primary-dark: #6ccae4;
  --app--color--primary: #7ed1e5;
  --app--color--primary-light: #e6f0f4;
  --app--color--primary-lighter: #f1f8fb;
  --app--color--secondary: #ff713d;
}
.theme-year--2023 {
  --app--color--primary-darker: #539f7d;
  --app--color--primary-dark: #92c6af;
  --app--color--primary: #a3cfbb;
  --app--color--primary-light: #cce3d8;
  --app--color--primary-lighter: #ebf5ef;
  --app--color--secondary: #e3929c;
}
.theme-year--2022 {
  --app--color--primary-darker: #764f91;
  --app--color--primary-dark: #a887be;
  --app--color--primary: #b498c7;
  --app--color--primary-light: #d9cbe2;
  --app--color--primary-lighter: #F1EAF4;
}
.theme-year--2021 {
  --app--color--primary-darker: #997022;
  --app--color--primary-dark: #d29c35;
  --app--color--primary: #d29c35;
  --app--color--primary-light: #e1b462;
  --app--color--primary-lighter: #f6e8d0;
}
@media (prefers-contrast: more) {
  html:not(.theme-dark):not(.theme-light) body {
    --app--color--primary-darker: #282828;
    --app--color--primary-dark: #4d4d4d;
    --app--color--primary: #646464;
    --app--color--primary-light: #b3b3b3;
    --app--color--primary-lighter: #e6e6e6;
    --app--color--secondary: var(--app--color--primary);
    --app-color-accent: #ffea00;
    --app-color--menu-selected: var(--app-color-accent);
  }
}
html.theme-highcontrast:not(.theme-dark):not(.theme-light) body {
  --app--color--primary-darker: #282828;
  --app--color--primary-dark: #4d4d4d;
  --app--color--primary: #646464;
  --app--color--primary-light: #b3b3b3;
  --app--color--primary-lighter: #e6e6e6;
  --app--color--secondary: var(--app--color--primary);
  --app-color-accent: #ffea00;
  --app-color--menu-selected: var(--app-color-accent);
}
/*
   Based on:
   http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
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,
hr,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
button,
input,
textarea,
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 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
menu,
nav,
section,
picture {
  display: block;
}
audio,
video {
  display: inline-block;
}
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-repeat: no-repeat;
}
body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
menu,
ul,
ol {
  list-style: none;
}
abbr[title] {
  text-decoration: none;
}
div:focus,
p:focus,
span:focus {
  outline: none;
}
em {
  font-style: italic;
}
small {
  font-size: smaller;
}
strong,
b {
  font-weight: bold;
}
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
  -webkit-text-decoration-skip: objects;
}
img,
svg {
  display: block;
}
sub,
sup {
  font-size: 0.75em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
input,
textarea,
button {
  font-family: inherit;
  font-size: 100%;
  border-radius: 0;
}
[hidden] {
  display: none !important;
}
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
  overflow-y: scroll;
}
body {
  --plyr-color-main: var(--app-color-accent);
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-serif-1);
  font-weight: 400;
  letter-spacing: 0.001em;
  line-height: 1.51;
  accent-color: var(--app-color-accent);
  background-color: var(--app-color-bg);
  height: 100%;
}
#BetterNavigator {
  margin-top: 10rem;
}
img.lazyload,
img.lazyloading {
  opacity: 0 !important;
  transition: opacity 400ms;
}
img.lazyloaded {
  opacity: 1;
  transition: opacity 400ms;
}
form {
  font-size: calc(clamp(0.9375rem, 3.75vw, 1rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
}
form input[type="text"],
form input[type="email"],
form input[type="password"],
form input[type="tel"],
form textarea,
form select {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  background-color: var(--app--color--primary-lighter);
  font-size: 1em;
  padding: var(--app-spacing-2);
  width: 100%;
}
form input[type="text"]::-ms-expand,
form input[type="email"]::-ms-expand,
form input[type="password"]::-ms-expand,
form input[type="tel"]::-ms-expand,
form textarea::-ms-expand,
form select::-ms-expand {
  display: none;
}
form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form input[type="tel"]:focus,
form textarea:focus,
form select:focus {
  outline: 2px solid var(--app--color--primary);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) form input[type="text"],
  html:not(.theme-highcontrast):not(.theme-light) form input[type="email"],
  html:not(.theme-highcontrast):not(.theme-light) form input[type="password"],
  html:not(.theme-highcontrast):not(.theme-light) form input[type="tel"],
  html:not(.theme-highcontrast):not(.theme-light) form textarea,
  html:not(.theme-highcontrast):not(.theme-light) form select {
    background-color: var(--app-color-gray-dark);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form input[type="text"],
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form input[type="email"],
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form input[type="password"],
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form input[type="tel"],
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form textarea,
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form select {
  background-color: var(--app-color-gray-dark);
}
form .dropdown .middleColumn {
  position: relative;
}
form .dropdown .middleColumn::after {
  color: var(--app--color--primary-dark);
  content: '▼';
  right: 1rem;
  pointer-events: none;
  position: absolute;
  top: 0.8rem;
}
form textarea {
  resize: vertical;
}
form input[type="submit"],
form button {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  font-family: var(--app-font-sans-1);
  border: 1px solid var(--app--color--primary);
  color: var(--app--color--primary-darker);
  display: inline-block;
  padding: 0.2em 1.4em;
  text-align: center;
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  height: 2.6em;
}
form input[type="submit"]::-ms-expand,
form button::-ms-expand {
  display: none;
}
form input[type="submit"]:focus,
form button:focus {
  outline: none;
}
form input[type="submit"]:hover,
form button:hover {
  background-color: var(--app--color--primary);
  color: var(--app-color-white);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) form input[type="submit"],
  html:not(.theme-highcontrast):not(.theme-light) form button {
    color: var(--app--color--primary-lighter);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form input[type="submit"],
html.theme-dark:not(.theme-highcontrast):not(.theme-light) form button {
  color: var(--app--color--primary-lighter);
}
form p {
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-serif-1);
  font-weight: 400;
  letter-spacing: 0.001em;
  line-height: 1.51;
}
form :not(.checkbox) > label {
  display: block;
  margin-bottom: var(--app-spacing-1);
}
form .message {
  background-color: var(--app--color--secondary);
  color: white !important;
  padding: var(--app-spacing-2) var(--app-spacing-3);
  margin: 0.3em 0;
}
form .formsection {
  display: flex;
  flex-wrap: wrap;
  margin: var(--app-spacing-3) calc(-1 * var(--app-spacing-1));
}
form .formsection > * {
  flex-shrink: 0;
  padding: var(--app-spacing-1);
  width: 100%;
}
form .formsection > .col-12 {
  flex-grow: 12;
  min-width: min(max(6rem, calc(3rem * 12)), 100%);
  width: 100%;
}
form .formsection > .col-11 {
  flex-grow: 11;
  min-width: min(max(6rem, calc(3rem * 11)), 100%);
  width: 91.66666667%;
}
form .formsection > .col-10 {
  flex-grow: 10;
  min-width: min(max(6rem, calc(3rem * 10)), 100%);
  width: 83.33333333%;
}
form .formsection > .col-9 {
  flex-grow: 9;
  min-width: min(max(6rem, calc(3rem * 9)), 100%);
  width: 75%;
}
form .formsection > .col-8 {
  flex-grow: 8;
  min-width: min(max(6rem, calc(3rem * 8)), 100%);
  width: 66.66666667%;
}
form .formsection > .col-7 {
  flex-grow: 7;
  min-width: min(max(6rem, calc(3rem * 7)), 100%);
  width: 58.33333333%;
}
form .formsection > .col-6 {
  flex-grow: 6;
  min-width: min(max(6rem, calc(3rem * 6)), 100%);
  width: 50%;
}
form .formsection > .col-5 {
  flex-grow: 5;
  min-width: min(max(6rem, calc(3rem * 5)), 100%);
  width: 41.66666667%;
}
form .formsection > .col-4 {
  flex-grow: 4;
  min-width: min(max(6rem, calc(3rem * 4)), 100%);
  width: 33.33333333%;
}
form .formsection > .col-3 {
  flex-grow: 3;
  min-width: min(max(6rem, calc(3rem * 3)), 100%);
  width: 25%;
}
form .formsection > .col-2 {
  flex-grow: 2;
  min-width: min(max(6rem, calc(3rem * 2)), 100%);
  width: 16.66666667%;
}
form .formsection > .col-1 {
  flex-grow: 1;
  min-width: min(max(6rem, calc(3rem * 1)), 100%);
  width: 8.33333333%;
}
form .formsection div.checkbox {
  align-items: baseline;
  display: flex;
  padding: calc(var(--app-spacing-1) + var(--app-spacing-2));
  position: relative;
}
form .formsection div.checkbox input[type="checkbox"] {
  margin-right: var(--app-spacing-2);
}
form .formsection div.checkbox::after {
  bottom: var(--app-spacing-1);
  left: var(--app-spacing-1);
  position: absolute;
  right: var(--app-spacing-1);
  top: var(--app-spacing-1);
  border: 2px solid var(--app--color--primary-light);
  content: '';
  pointer-events: none;
}
form .formsection div.checkbox label::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}
form .headerlabel {
  font-size: calc(clamp(1.25rem, 5vw, 1.5625rem) * var(--app-font-factor)) !important;
  font-family: var(--app-font-sans-1) !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
  margin-bottom: var(--app-spacing-2);
  margin-top: var(--app-spacing-3);
}
form .headerlabel::after {
  background-color: var(--app--color--secondary);
  border-radius: 7px;
  content: '';
  display: block;
  height: 7px;
  margin-top: 0.5rem;
  width: 2em;
}
.app-Page {
  display: flex;
  flex-direction: row;
}
@media (min-width: 1200px) {
  .app-Page {
    margin-right: 2rem;
  }
}
@media (min-width: 1300px) {
  .app-Page {
    margin-right: 0;
  }
}
.app-Page-content {
  flex-shrink: 1;
  width: 60rem;
  position: relative;
}
@media (min-width: 1200px) {
  .app-Page-content::after {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(100%);
    width: 3rem;
  }
  html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Page-content::after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  }
}
@media (min-width: 1200px) and (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Page-content::after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  }
}
.app-Page-content article {
  margin-top: -0.2em;
  padding: var(--app-spacing-5) var(--app-spacing-4);
}
@media (min-width: 58rem) {
  .app-Page-content article {
    padding: var(--app-spacing-10) clamp(1rem, 10%, 6rem);
  }
}
.app-Page-background {
  align-items: flex-end;
  display: none;
  flex-basis: 0px;
  flex-grow: 1;
  height: 100vh;
  justify-content: flex-start;
  overflow: hidden;
  position: sticky;
  top: 0;
}
@media (min-width: 1300px) {
  .app-Page-background {
    display: flex;
  }
}
.app-Page-logo {
  bottom: 0;
  height: auto;
  margin: -0.8%;
  margin-left: 5%;
  max-width: 35rem;
  position: absolute;
  width: 110%;
}
.app-Page-logo .st0 {
  fill: var(--app--color--primary-light);
}
.app-Page-logo .st1 {
  fill: var(--app--color--primary);
}
.app-Page-logo .st2 {
  fill: var(--app-color-gray-dark);
  transition: transform 100ms linear;
}
.app-Page-logo .st4 {
  fill: var(--app--color--primary-lighter);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st4 {
    fill: transparent !important;
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st4 {
  fill: transparent !important;
}
.app-Page-logo .st5 {
  fill: var(--app--color--primary-lighter);
}
.app-Page-logo .st3 {
  fill: transparent;
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st0 {
    fill: transparent !important;
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st0 {
  fill: transparent !important;
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st3 {
    fill: #ffea00;
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Page-logo .st3 {
  fill: #ffea00;
}
.app-Page-logo .bowtie {
  animation: pulse 10s ease-in-out 5s infinite normal forwards;
  transform-box: fill-box;
  transform-origin: 50% 50%;
}
@keyframes pulse {
  0% {
    animation-timing-function: ease-out;
    transform: scale(1);
  }
  1.1% {
    animation-timing-function: ease-in;
    transform: scale(1.05);
  }
  2.2% {
    animation-timing-function: ease-out;
    transform: scale(1);
  }
  3.3% {
    animation-timing-function: ease-in;
    transform: scale(1.05);
  }
  4.4% {
    animation-timing-function: ease-out;
    transform: scale(1);
  }
}
.app-Page-Sponsors {
  background-color: var(--app--color--primary-lighter);
  display: none;
  flex-direction: column;
  padding: var(--app-spacing-5) clamp(1rem, 10%, 2rem);
}
.app-Page-Sponsors--loaded {
  display: flex;
}
.app-Page-Sponsors-title {
  font-size: calc(clamp(1rem, 4vw, 1rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: var(--app-spacing-3);
  text-align: left;
}
.app-Page-Sponsors img {
  display: block;
  object-fit: contain;
  object-position: left center;
  height: auto;
  width: 20rem;
}
@media (min-width: 58rem) {
  .app-Page-Sponsors {
    display: none !important;
  }
}
.app-PageStruct {
  --app-PageStruct-height-header: 3rem;
  --app-PageStruct-width-menu: clamp(16rem, 18vw, 22rem);
}
.app-PageStruct-Layer--base {
  display: flex;
  flex-direction: column;
}
@media not all and (min-width: 58rem) {
  .app-PageStruct-Layer--base {
    padding-top: var(--app-PageStruct-height-header);
  }
}
@media (min-width: 58rem) {
  .app-PageStruct-Layer--base {
    margin-left: var(--app-PageStruct-width-menu);
    min-height: 100vh;
  }
}
.app-PageStruct-Layer--base > * {
  flex-grow: 1;
}
.app-PageStruct-Layer--header {
  height: var(--app-PageStruct-height-header);
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 3;
}
@media (min-width: 58rem) {
  .app-PageStruct-Layer--header {
    display: none;
  }
}
@media not all and (min-width: 58rem) {
  .app-PageStruct-Layer--menu {
    margin-top: var(--app-PageStruct-height-header);
    opacity: 0;
    position: absolute;
    transform: translateX(-100%);
    transition: transform 300ms, opacity 300ms;
    width: 100%;
    z-index: 2;
  }
  .app-PageStruct-Layer--menu.app-PageStruct-Layer--open {
    transform: translateX(0%);
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .app-PageStruct-Layer--menu {
    transition: none;
  }
}
@media (min-width: 58rem) {
  .app-PageStruct-Layer--menu {
    bottom: 0;
    display: block;
    left: 0;
    overflow: auto;
    position: fixed;
    top: 0;
    width: var(--app-PageStruct-width-menu);
  }
}
.app-PageStruct-Layer--overlay {
  bottom: 0;
  display: block;
  left: 0;
  opacity: 0;
  overflow: auto;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 9;
}
.app-PageStruct-Layer--overlay > * {
  height: 100%;
}
.app-PageStruct-Layer--overlay.app-PageStruct-Layer--open {
  backdrop-filter: saturate(0) blur(10px);
  opacity: 1;
}
.app-PageStruct-Layer--menuBG {
  background-color: var(--app--color--primary);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1;
  opacity: 0;
  transition: opacity 300ms;
}
@media not all and (min-width: 58rem) {
  .app-PageStruct-Layer--menuBG.app-PageStruct-Layer--open {
    opacity: 1;
  }
}
.app-PageStruct-Layer--overlayBG {
  background-color: var(--app-color-gray-darker);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 8;
  opacity: 0;
  transition: opacity 300ms;
}
.app-PageStruct-Layer--overlayBG.app-PageStruct-Layer--open {
  opacity: 0.8;
}
.app-BlockGrid-content {
  display: flex;
  flex-wrap: wrap;
  margin: calc(-1 * var(--app-spacing-1));
}
.app-BlockGrid-content > * {
  flex-grow: 1;
  margin: var(--app-spacing-1);
  width: 100%;
}
@media (min-width: 28.8rem) {
  .app-BlockGrid-content > * {
    min-width: 24rem;
    width: calc(50% - 2 * var(--app-spacing-1));
  }
}
.app-BlockGrid-Entry {
  background-color: var(--app-color-gray-light);
  display: flex;
  flex-direction: column;
}
.app-BlockGrid-Entry-imageContainer {
  --ratio: 0.66666667;
  position: relative;
}
.app-BlockGrid-Entry-imageContainer::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 66.66666667%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Entry-imageContainer::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 66.66666667%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Entry-imageContainer > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.app-BlockGrid-Entry-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8 !important;
  transition: opacity 250ms !important;
}
.app-BlockGrid-Entry-text {
  color: var(--app-color-white);
  flex-grow: 1;
  overflow: hidden;
  padding: 1.5rem 2rem;
  position: relative;
}
.app-BlockGrid-Entry-text > * {
  position: relative;
  z-index: 1;
}
.app-BlockGrid-Entry-text::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--app--color--primary-dark);
  content: '';
  z-index: 0;
}
.app-BlockGrid-Entry-headline {
  font-size: calc(clamp(1.125rem, 4.5vw, 1.5rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 0.3em;
}
.app-BlockGrid-Entry-description {
  font-size: calc(clamp(0.9375rem, 3.75vw, 0.9375rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.4;
}
.app-BlockGrid-Entry a {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
@media (hover: hover) {
  .app-BlockGrid-Entry:hover .app-BlockGrid-Entry-text::after {
    background-color: var(--app--color--secondary);
  }
  .app-BlockGrid-Entry:hover .app-BlockGrid-Entry-image {
    opacity: 1 !important;
  }
}
.app-BlockGrid--count-1 .app-BlockGrid-content > *:first-child,
.app-BlockGrid--count-3 .app-BlockGrid-content > *:first-child {
  width: 100%;
}
.app-BlockGrid--small .app-BlockGrid-content > * {
  min-width: 16rem;
}
.app-BlockGrid--smaller .app-BlockGrid-Entry-text {
  hyphens: auto;
  overflow: auto;
  max-height: 50%;
  padding: 1rem;
}
.app-BlockGrid--smaller .app-BlockGrid-Entry-description {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: calc(clamp(0.875rem, 3.5vw, 0.875rem) * var(--app-font-factor));
}
.app-BlockGrid--smaller .app-BlockGrid-content > * {
  min-width: 9rem;
  width: calc(50% - 2 * var(--app-spacing-1));
}
@media (min-width: 28.8rem) {
  .app-BlockGrid--smaller .app-BlockGrid-content > * {
    width: calc(33% - 2 * var(--app-spacing-1));
  }
}
.app-BlockGrid-Overlay {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.app-BlockGrid-Overlay-content {
  height: 100%;
  width: 100%;
}
.app-BlockGrid-Overlay-contentWrapper {
  display: flex;
  flex-direction: column;
  height: 100vh;
  padding-top: 4rem;
}
.app-BlockGrid-Overlay-slider {
  overflow: hidden;
  height: 100%;
  margin-bottom: 0.5rem;
  position: relative;
}
.app-BlockGrid-Overlay-stage {
  display: grid;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-tap-highlight-color: transparent;
  will-change: transform;
  height: 100%;
}
.app-BlockGrid-Overlay-stage.is-momentum {
  transition: transform 300ms !important;
}
.app-BlockGrid-Overlay-stage > * {
  grid-row: 1;
  grid-column: 1;
  opacity: 0.00001;
  width: 100%;
  will-change: transform;
}
.app-BlockGrid-Overlay-stage > .scm-scene-animated {
  transition: opacity 300ms;
}
.app-BlockGrid-Overlay-stage > .scm-scene-post {
  opacity: 0;
  z-index: 25;
}
.app-BlockGrid-Overlay-stage > .scm-scene-pre {
  opacity: 0;
  z-index: 20;
}
.app-BlockGrid-Overlay-stage > .scm-scene-current {
  opacity: 1;
  z-index: 29;
}
.app-BlockGrid-Overlay-stage.is-swiping > *,
.app-BlockGrid-Overlay-stage.is-momentum > * {
  transition: none !important;
}
.app-BlockGrid-Overlay-stage.is-swiping > .scm-scene-post {
  opacity: 1;
  transform: translateX(-100%);
}
.app-BlockGrid-Overlay-stage.is-swiping > .scm-scene-pre {
  opacity: 1;
  transform: translateX(100%);
}
.app-BlockGrid-Overlay-stage img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.app-BlockGrid-Overlay-slide.scm-scene-current .app-BlockGrid-Overlay-text {
  opacity: 1;
}
.app-BlockGrid-Overlay-imageContainer {
  flex-grow: 1;
  height: 1px;
  padding: 0 5% 2rem 5%;
  position: relative;
}
.app-BlockGrid-Overlay-position {
  font-size: calc(clamp(1.1875rem, 4.75vw, 1.5rem) * var(--app-font-factor));
  color: var(--app-color-white);
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  left: 0.7rem;
  position: absolute;
  top: 0.55rem;
  transform: none;
}
.app-BlockGrid-Overlay-text {
  font-size: calc(clamp(0.875rem, 3.5vw, 1.0625rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  background-color: var(--app--color--primary);
  color: var(--app-color-white);
  max-height: 15vh;
  overflow-y: auto;
  opacity: 0;
  padding: 1em max(1em, calc(50% - 24em));
  text-align: center;
  transition: opacity 300ms;
}
.app-BlockGrid-Overlay-Button {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  color: var(--app-color-white);
  position: absolute;
  top: calc(50% + 1rem);
  transform: translateY(-50%);
  width: 2rem;
  z-index: 50;
}
.app-BlockGrid-Overlay-Button::-ms-expand {
  display: none;
}
.app-BlockGrid-Overlay-Button:focus {
  outline: none;
}
.app-BlockGrid-Overlay-Button:focus {
  color: var(--app--color--primary);
}
@media (hover: hover) {
  .app-BlockGrid-Overlay-Button:hover {
    color: var(--app--color--primary);
  }
}
.app-BlockGrid-Overlay-Button--prev {
  --ratio: 1;
  position: relative;
  left: 0.5rem;
  position: absolute;
}
.app-BlockGrid-Overlay-Button--prev::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 100%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Overlay-Button--prev::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 100%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Overlay-Button--prev > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.app-BlockGrid-Overlay-Button--prev svg {
  transform: rotate(180deg);
}
.app-BlockGrid-Overlay-Button--next {
  --ratio: 1;
  position: relative;
  position: absolute;
  right: 0.5rem;
}
.app-BlockGrid-Overlay-Button--next::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 100%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Overlay-Button--next::before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  padding-bottom: 100%;
  padding-bottom: calc(var(--ratio) * 100%);
}
.app-BlockGrid-Overlay-Button--next > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.app-BlockGrid-Overlay-Button--next svg {
  transform: scaleY(-1);
}
.app-BlockGrid-Overlay-Button--close {
  height: 2rem;
  top: 0.5rem;
  right: 0.5rem;
  transform: none;
}
.app-BlockGrid-Overlay-Button--close::after,
.app-BlockGrid-Overlay-Button--close::before {
  content: '';
  background-color: currentColor;
  border-radius: 6px;
  height: 6px;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
}
.app-BlockGrid-Overlay-Button--close::after {
  transform: rotate(45deg);
}
.app-BlockGrid-Overlay-Button--close::before {
  transform: rotate(-45deg);
}
.app-BlockGrid-Overlay[data-slider-index-value="0"] .app-BlockGrid-Overlay-Button--prev,
.app-BlockGrid-Overlay[data-slider-reverse-index-value="0"] .app-BlockGrid-Overlay-Button--next {
  color: var(--app-color-black);
  cursor: not-allowed;
  opacity: 0.4;
  pointer-events: none;
}
.app-GridList {
  margin: 0;
  list-style: none;
  padding: 0;
}
.app-GridList-Link {
  font-size: calc(clamp(1.25rem, 5vw, 1.5625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1.2;
  display: block;
  background-color: var(--app--color--primary-lighter);
  color: var(--app-color-black);
  margin: var(--app-spacing-1) 0;
  padding: 0.6em 1.2em;
  text-align: center;
}
.app-GridList-Link:hover,
.app-GridList-Link :focus-visible {
  background-color: var(--app--color--primary-light);
}
.app-Header {
  align-items: center;
  background-color: var(--app--color--primary);
  color: var(--app-color-white);
  display: flex;
  justify-content: space-between;
  padding: var(--app-spacing-1) var(--app-spacing-4);
}
.app-Header--fillVertical {
  height: 100%;
}
.app-Header--fillVertical .app-Header-logoContainer {
  height: 65%;
}
.app-Header--fillVertical .app-Header-logo {
  height: 100%;
  width: auto;
}
.app-Header-CloseButton,
.app-Header-MenuButton {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  height: 2rem;
  width: 2rem;
}
.app-Header-CloseButton::-ms-expand,
.app-Header-MenuButton::-ms-expand {
  display: none;
}
.app-Header-CloseButton:focus,
.app-Header-MenuButton:focus {
  outline: none;
}
.app-Header-CloseButton svg,
.app-Header-MenuButton svg {
  height: 100%;
  width: 100%;
}
.app-Header-CloseButton {
  display: none;
}
.app-PageStruct--open-menu .app-Header-MenuButton {
  display: none;
}
.app-PageStruct--open-menu .app-Header-CloseButton {
  display: block;
}
.app-Intro {
  padding: var(--app-spacing-4) var(--app-spacing-4) 0;
  text-align: center;
}
@media (min-width: 58rem) {
  .app-Intro {
    padding: var(--app-spacing-6) var(--app-spacing-4) 0;
  }
}
.app-Intro-text {
  margin-left: auto;
  margin-right: auto;
  font-size: calc(clamp(1.25rem, 5vw, 1.875rem) * var(--app-font-factor));
  color: var(--app-color-gray-dark);
  font-family: var(--app-font-sans-1);
  font-weight: 700;
  line-height: 1.45;
  max-width: 35ch;
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Intro-text {
    color: var(--app-color-gray-light);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Intro-text {
  color: var(--app-color-gray-light);
}
.app-Intro-quicklinks {
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.5rem;
}
.app-Intro-quicklinks > * {
  margin: var(--app-spacing-1);
}
.app-Intro .app-Separator {
  width: 50%;
  margin: var(--app-spacing-2) auto;
}
@media (min-width: 58rem) {
  .app-Intro .app-Separator {
    margin: var(--app-spacing-4) auto;
  }
}
.app-Menu {
  display: flex;
  flex-direction: column;
}
@media (min-width: 58rem) {
  .app-Menu {
    background-color: var(--app--color--primary-dark);
    padding-bottom: var(--app-spacing-6);
  }
}
.app-Menu--fillVertical {
  min-height: 100%;
}
.app-Menu-content {
  color: var(--app-color-white);
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: space-between;
  min-height: 100%;
  padding: var(--app-spacing-10) var(--app-spacing-4) var(--app-spacing-5);
}
@media (min-width: 58rem) {
  .app-Menu-content {
    padding: var(--app-spacing-10) clamp(1rem, 10%, 2rem);
  }
}
.app-Menu-logoContainer {
  display: none;
  margin-bottom: 2rem;
}
@media (min-width: 58rem) {
  .app-Menu-logoContainer {
    display: block;
  }
}
.app-Menu-logo {
  height: auto;
  width: 100%;
}
.app-Menu-list {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: center;
}
.app-Menu-Sponsors {
  display: none;
}
@media (min-width: 58rem) {
  .app-Menu-Sponsors {
    justify-content: center;
    display: flex;
    flex-direction: column;
    min-height: 10rem;
    opacity: 0;
    transition: opacity 150ms;
    transition-delay: 300ms;
  }
}
.app-Menu-Sponsors-content {
  background-color: var(--app--color--primary-lighter);
  color: var(--app-color-black);
  display: flex;
  flex-direction: column;
  padding: var(--app-spacing-5) clamp(1rem, 10%, 2rem);
}
.app-Menu-Sponsors-title {
  font-size: calc(clamp(0.875rem, 3.5vw, 0.875rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: var(--app-spacing-4);
  text-align: center;
}
.app-Menu-Sponsors img {
  display: block;
  object-fit: contain;
  height: auto;
  width: 100%;
}
.app-Menu-Sponsors--loaded {
  opacity: 1;
}
.app-Menu-Entry {
  border-bottom: 3px solid var(--app--color--primary-light);
  padding: 0.2rem 0;
}
.app-Menu-Entry-subList::after {
  content: '';
  display: block;
  height: 1rem;
}
.app-Menu-Entry-Link {
  font-size: calc(clamp(1.1875rem, 4.75vw, 1.1875rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1.3;
  text-transform: uppercase;
  display: block;
  padding: 0.5rem 0.3rem;
}
.app-Menu-Entry-Link--section,
.app-Menu-Entry-Link--current {
  font-size: calc(clamp(1.1875rem, 4.75vw, 1.1875rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  line-height: 1.3;
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 0.02em;
  color: var(--app-color--menu-selected);
}
.app-Menu-Entry-Link:hover,
.app-Menu-Entry-Link:focus-visible {
  color: var(--app-color--menu-selected);
}
.app-Menu-Entry-SubLink {
  font-size: calc(clamp(1.125rem, 4.5vw, 1.0625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.3;
  display: flex;
  padding: 0.3rem 0.3rem;
}
@media (min-width: 58rem) {
  .app-Menu-Entry-SubLink {
    padding: 0.2rem 0.3rem;
  }
}
.app-Menu-Entry-SubLink--section,
.app-Menu-Entry-SubLink--current {
  font-size: calc(clamp(1.125rem, 4.5vw, 1.0625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.3;
  font-weight: 700;
  color: var(--app-color--menu-selected);
}
.app-Menu-Entry-SubLink:hover,
.app-Menu-Entry-SubLink:focus-visible {
  color: var(--app-color--menu-selected);
}
.app-Menu-Entry-SubLink--separated {
  margin-top: 0.6em;
}
.app-Menu-Entry-SubLink--back {
  font-size: calc(clamp(1.125rem, 4.5vw, 1.0625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  line-height: 1.3;
  font-size: calc(clamp(1rem, 4vw, 0.9375rem) * var(--app-font-factor));
  font-weight: 300;
  margin-bottom: 1em;
  margin-top: -0.4em;
}
.app-Menu-Entry-SubLink--back svg {
  transform: scaleX(-1) translateY(30%);
  height: 0.8em;
  margin-right: 0.2em;
  width: 0.8em;
}
.app-Menu-DisplayMode {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  padding: 0 clamp(1rem, 10%, 2rem) var(--app-spacing-5);
}
@media (min-width: 58rem) {
  .app-Menu-DisplayMode {
    justify-content: center;
    padding-bottom: 0;
    padding-top: var(--app-spacing-5);
  }
}
.app-Menu-DisplayMode > *:not(:first-child) {
  margin-left: 0.8rem;
}
@media (min-width: 58rem) {
  .app-Menu-DisplayMode > *:not(:first-child) {
    margin-left: 0.6rem;
  }
}
.app-Menu-DisplayMode > *:not(:last-child) {
  margin-right: 0.8rem;
}
@media (min-width: 58rem) {
  .app-Menu-DisplayMode > *:not(:last-child) {
    margin-right: 0.6rem;
  }
}
.app-Menu-DisplayMode-Button {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  opacity: 0.4;
  width: 1.4rem;
}
.app-Menu-DisplayMode-Button::-ms-expand {
  display: none;
}
.app-Menu-DisplayMode-Button:focus {
  outline: none;
}
.app-Menu-DisplayMode-Button:hover {
  opacity: 0.7;
}
@media (min-width: 58rem) {
  .app-Menu-DisplayMode-Button {
    width: 1.2rem;
  }
}
.app-Menu-DisplayMode-Button--active,
.app-Menu-DisplayMode-Button--active:hover {
  opacity: 1;
}
.app-Menu-DisplayMode-Button > img {
  height: auto;
  width: 100%;
}
@media (prefers-contrast: more) {
  html:not(.theme-dark):not(.theme-light) .app-Menu-DisplayMode-Button > img {
    filter: invert();
  }
}
html.theme-highcontrast:not(.theme-dark):not(.theme-light) .app-Menu-DisplayMode-Button > img {
  filter: invert();
}
.app-Typography {
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-serif-1);
  font-weight: 400;
  letter-spacing: 0.001em;
  line-height: 1.51;
}
.app-Typography p,
.app-Typography ol,
.app-Typography ul,
.app-Typography section,
.app-Typography table {
  hyphens: auto;
}
.app-Typography p:not(:last-child),
.app-Typography ol:not(:last-child),
.app-Typography ul:not(:last-child),
.app-Typography section:not(:last-child),
.app-Typography table:not(:last-child) {
  margin-bottom: var(--app-spacing-2);
}
.app-Typography section:not(:first-child) {
  margin-top: var(--app-spacing-7);
}
.app-Typography p + p {
  margin-top: var(--app-spacing-3);
}
.app-Typography ol,
.app-Typography ul {
  margin-bottom: var(--app-spacing-1);
  margin-top: var(--app-spacing-1);
}
.app-Typography ol:not(li > * ),
.app-Typography ul:not(li > * ) {
  padding-left: var(--app-spacing-4);
}
@media (min-width: 58rem) {
  .app-Typography ol:not(li > * ),
  .app-Typography ul:not(li > * ) {
    padding-left: var(--app-spacing-7);
  }
}
.app-Typography ol li,
.app-Typography ul li {
  margin-bottom: var(--app-spacing-1);
  list-style-position: outside;
}
.app-Typography ol {
  list-style: decimal;
}
.app-Typography ol li::marker {
  font-size: calc(clamp(1.25rem, 5vw, 1.5625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: var(--app--color--secondary);
  font-size: 1.05em;
  margin-right: 0.2em;
}
.app-Typography ul {
  list-style: square;
}
.app-Typography ul li::marker {
  color: var(--app--color--secondary);
}
.app-Typography h1,
.app-Typography h2 {
  color: var(--app-color-text);
  margin-bottom: var(--app-spacing-4);
}
.app-Typography h1:not(:first-child),
.app-Typography h2:not(:first-child) {
  margin-top: var(--app-spacing-7);
}
.app-Typography h1::after,
.app-Typography h2::after {
  background-color: var(--app--color--secondary);
  border-radius: 7px;
  content: '';
  display: block;
  height: 7px;
  margin-top: 0.4rem;
  width: 2em;
}
.app-Typography h1 {
  font-size: calc(clamp(1.625rem, 6.5vw, 2.375rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.01em;
  line-height: 1.2;
  hyphens: auto;
}
.app-Typography h2 {
  font-size: calc(clamp(1.25rem, 5vw, 1.5625rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1.2;
}
.app-Typography h2::after {
  margin-top: 0.5rem;
}
.app-Typography h3 {
  font-size: calc(clamp(1.125rem, 4.5vw, 1.25rem) * var(--app-font-factor));
  font-family: var(--app-font-sans-1);
  font-weight: 900;
  letter-spacing: 0.02em;
  margin-bottom: var(--app-spacing-1);
  margin-top: var(--app-spacing-3);
}
.app-Typography b,
.app-Typography strong {
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  font-family: var(--app-font-serif-1);
  font-weight: 400;
  letter-spacing: 0.001em;
  line-height: 1.51;
  color: var(--app-color-text);
  font-weight: 700;
}
.app-Typography a[href] {
  font-size: calc(clamp(1rem, 4vw, 1.125rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-serif-1);
  font-weight: 400;
  letter-spacing: 0.001em;
  line-height: 1.51;
  color: var(--app--color--primary-darker);
  font-weight: 600;
  font-style: italic;
  text-decoration: underline;
  text-decoration-thickness: 2px;
}
.app-Typography a[href]:hover,
.app-Typography a[href]:focus {
  color: var(--app--color--secondary);
}
.app-Typography .inverse {
  background-color: var(--app--color--primary-dark);
  color: white !important;
  display: inline-block;
  padding: 0.3em 0.5em;
  margin: 0.3em 0;
}
.app-Typography table {
  font-size: calc(clamp(0.875rem, 3.5vw, 1.0625rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  width: 100%;
}
.app-Typography table th,
.app-Typography table td {
  background-color: var(--app-color-bg);
  border: 1px solid var(--app-color-gray);
  padding: 0.5em 0.4em;
  text-align: left;
}
.app-Typography table th {
  font-size: calc(clamp(0.875rem, 3.5vw, 1.0625rem) * var(--app-font-factor));
  color: var(--app-color-text);
  font-family: var(--app-font-sans-1);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  font-weight: 700;
  background-color: var(--app--color--primary-light) !important;
}
.app-Typography table tr:nth-child(even) th,
.app-Typography table tr:nth-child(even) td {
  background-color: var(--app-color-gray-lighter);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Typography table tr:nth-child(even) th,
  html:not(.theme-highcontrast):not(.theme-light) .app-Typography table tr:nth-child(even) td {
    background-color: var(--app-color-gray-dark);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Typography table tr:nth-child(even) th,
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Typography table tr:nth-child(even) td {
  background-color: var(--app-color-gray-dark);
}
.app-Typography table a {
  font-family: inherit !important;
  font-size: inherit !important;
}
.app-Typography img {
  height: auto;
  max-width: 100%;
  object-fit: contain;
}
.app-Typography font[color] {
  color: inherit;
}
.app-Button {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.app-Button::-ms-expand {
  display: none;
}
.app-Button:focus {
  outline: none;
}
.app-Button--outline {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  font-family: var(--app-font-sans-1);
  border: 1px solid var(--app--color--primary);
  color: var(--app--color--primary-darker);
  display: inline-block;
  padding: 0.2em 1.4em;
  text-align: center;
}
.app-Button--outline::-ms-expand {
  display: none;
}
.app-Button--outline:focus {
  outline: none;
}
.app-Button--outline:hover {
  background-color: var(--app--color--primary);
  color: var(--app-color-white);
}
@media (prefers-color-scheme: dark) {
  html:not(.theme-highcontrast):not(.theme-light) .app-Button--outline {
    color: var(--app--color--primary-lighter);
  }
}
html.theme-dark:not(.theme-highcontrast):not(.theme-light) .app-Button--outline {
  color: var(--app--color--primary-lighter);
}
.app-Button--disabled {
  filter: saturate(0);
  opacity: 0.5;
  pointer-events: none;
}
.app-Separator .st1 {
  fill: var(--app--color--secondary);
}
