@charset "UTF-8";
/*
  ICONFONT
  please don't modify this file in config folder, it is automtically generated by grunt. Source of the file is in src/iconfont/_iconfont.template.scss and will copy a file in src/scss/config.
*/
html {
  --width-lg: 1600px ;
  --width-md: 1400px ;
  --width-sm: 1080px ;
  --width-text: 800px ;
  --width-split: 1200px ;
  --space-0: 0 ;
  --space-default: 1.25rem ;
  --space-10: 0.625rem ;
  --space-20: 1.25rem ;
  --space-30: 1.875rem ;
  --space-40: 2.5rem ;
  --space-50: 3.125rem ;
  --space-75: 4.6875rem ;
  --space-100: 6.25rem ;
  --color-body: #0F2C41 ;
  --color-surface: white ;
  --color-focus: #4443fe ;
  --color-valid: #019f72 ;
  --color-error: #df2a31 ;
  --color-gray: #E3E3E3 ;
  --color-dark: #0F2C41 ;
  --color-black: #000000 ;
  --color-white: #FFFFFF ;
  --color-highlight: #0600FF ;
  --aspect-21-9: 0.4285 ;
  --aspect-16-9: 0.5625 ;
  --aspect-4-3: 0.75 ;
  --aspect-3-4: 1.3333 ;
  --aspect-2-3: 1.5 ;
  --aspect-9-16: 1.7777 ;
  --aspect-1-1: 1 ;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "Sharp Sans", sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-body);
  text-align: left;
  background-color: var(--color-surface);
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

p {
  margin: 0;
}

address {
  margin: 0;
  font-style: normal;
  line-height: inherit;
}

ol,
ul {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: 900;
}

small {
  font-size: 80%;
}

a {
  background-color: transparent;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}


input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

progress {
  vertical-align: baseline;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

[hidden] {
  display: none !important;
}

body {
  -webkit-font-smoothing: antialiased;
}

@font-face {
  font-family: "Sharp Sans";
  src: url("/assets/fonts/sharp-sans/SharpSans-Medium.woff2") format("woff2"), url("/assets/fonts/sharp-sans/SharpSans-Medium.woff") format("woff"); /* Safari, Android, iOS */
  font-style: normal;
  font-weight: 400;
  text-rendering: optimizeLegibility;
  font-display: fallback;
}
@font-face {
  font-family: "Sharp Sans";
  src: url("/assets/fonts/sharp-sans/SharpSans-MediumItalic.woff2") format("woff2"), url("/assets/fonts/sharp-sans/SharpSans-MediumItalic.woff") format("woff"); /* Safari, Android, iOS */
  font-style: italic;
  font-weight: 400;
  text-rendering: optimizeLegibility;
  font-display: fallback;
}
@font-face {
  font-family: "Sharp Sans";
  src: url("/assets/fonts/sharp-sans/SharpSans-Extrabold.woff2") format("woff2"), url("/assets/fonts/sharp-sans/SharpSans-Extrabold.woff") format("woff"); /* Safari, Android, iOS */
  font-style: normal;
  font-weight: 900;
  text-rendering: optimizeLegibility;
  font-display: fallback;
}
@font-face {
  font-family: "Sharp Sans";
  src: url("/assets/fonts/sharp-sans/SharpSans-ExtraboldItalic.woff2") format("woff2"), url("/assets/fonts/sharp-sans/SharpSans-ExtraboldItalic.woff") format("woff"); /* Safari, Android, iOS */
  font-style: italic;
  font-weight: 900;
  text-rendering: optimizeLegibility;
  font-display: fallback;
}
[class*=ui-icon] {
  position: relative;
  line-height: 1;
}
[class*=ui-icon]::after {
  font-family: "UTUM UI Icons";
  font-size: 1em;
  line-height: 1;
  width: 1em;
  height: 1em;
}

.ui-icon-arrow-down::after {
  content: "\f101";
}

.ui-icon-arrow-left::after {
  content: "\f102";
}

.ui-icon-arrow-right::after {
  content: "\f103";
}

.ui-icon-arrow-up::after {
  content: "\f104";
}

.ui-icon-by-unternehmertum::after {
  content: "\f105";
}

.ui-icon-check::after {
  content: "\f106";
}

.ui-icon-checkbox-checked::after {
  content: "\f107";
}

.ui-icon-checkbox-unchecked::after {
  content: "\f108";
}

.ui-icon-chevron-down::after {
  content: "\f109";
}

.ui-icon-chevron-left::after {
  content: "\f10a";
}

.ui-icon-chevron-right::after {
  content: "\f10b";
}

.ui-icon-chevron-up::after {
  content: "\f10c";
}

.ui-icon-circle-minus::after {
  content: "\f10d";
}

.ui-icon-circle-plus::after {
  content: "\f10e";
}

.ui-icon-close::after {
  content: "\f10f";
}

.ui-icon-download::after {
  content: "\f110";
}

.ui-icon-facebook::after {
  content: "\f111";
}

.ui-icon-hamburger::after {
  content: "\f112";
}

.ui-icon-instagram::after {
  content: "\f113";
}

.ui-icon-linkedin::after {
  content: "\f114";
}

.ui-icon-loader::after {
  content: "\f115";
}

.ui-icon-mail::after {
  content: "\f116";
}

.ui-icon-minus::after {
  content: "\f117";
}

.ui-icon-phone::after {
  content: "\f118";
}

.ui-icon-plus::after {
  content: "\f119";
}

.ui-icon-radio-checked::after {
  content: "\f11a";
}

.ui-icon-radio-unchecked::after {
  content: "\f11b";
}

.ui-icon-search::after {
  content: "\f11c";
}

.ui-icon-twitter::after {
  content: "\f11d";
}

.ui-icon-utum-u::after {
  content: "\f11e";
}

.ui-icon-web::after {
  content: "\f11f";
}

/*
  General Icon Definitions
  - Icons inline
  - SVG Variants
  - Iconfont definitions are declared separately in _iconfonts.scss files
*/
.svg-icon,
svg.icon {
  display: block;
  width: 1em;
  height: 1em;
}
.svg-icon *[fill],
svg.icon *[fill] {
  fill: var(--color, currentColor);
}

svg.fill *[fill] {
  fill: var(--color, currentColor);
}

.sticker {
  --sticker-color: var(--background, var(--color-white));
  --sticker-background: var(--color, var(--color-black));
  position: relative;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  padding: 0.25em;
  color: var(--sticker-color);
}
.sticker > svg.icon {
  position: relative;
  z-index: 2;
  width: 1em;
  height: 1em;
  --color: var(--sticker-color);
}
.sticker::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: var(--sticker-background);
  text-align: center;
  line-height: 1;
  border-radius: 0.75em;
  transition: opacity 0.2s;
}

svg.fill {
  --fill-color: var(--color, currentColor);
  fill: var(--fill-color);
}
svg.fill path {
  fill: var(--fill-color);
}

svg.fill-color {
  --fill-color: currentColor;
}

.theme-dark {
  --color: var(--color-white);
  --muted: var(--color-white);
  --background: var(--color-dark);
  --highlight: var(--color-highlight);
}

.theme-dark-highlight {
  --color: var(--color-highlight);
  --muted: var(--color-white);
  --background: var(--color-dark);
  --highlight: var(--color-white);
}

.theme-light {
  --color: var(--color-dark);
  --muted: var(--color-dark);
  --background: var(--color-white);
  --highlight: var(--color-highlight);
}

.theme-light-highlight {
  --color: var(--color-highlight);
  --muted: var(--color-dark);
  --background: var(--color-white);
  --highlight: var(--color-dark);
}

.theme-gray {
  --color: var(--color-dark);
  --muted: var(--color-dark);
  --background: var(--color-gray);
  --highlight: var(--color-highlight);
}

.theme-gray-highlight {
  --color: var(--color-highlight);
  --muted: var(--color-dark);
  --background: var(--color-gray);
  --highlight: var(--color-dark);
}

.theme-highlight {
  --color: var(--color-white);
  --muted: var(--color-white);
  --background: var(--color-highlight);
  --highlight: var(--color-dark);
}

.c-highlight {
  color: var(--highlight);
}

.c-muted {
  color: var(--muted);
  opacity: 0.4;
}
hr {
  margin: 0;
  color: currentColor;
  background-color: currentColor;
  border: 0;
  opacity: 0.15;
}

hr:not([size]) {
  color: currentColor;
  background-color: currentColor;
  border: 0;
  opacity: 0.15;
  height: 1px;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-weight: 900;
  line-height: 1.15;
}
h1 em, .h1 em,
h2 em, .h2 em,
h3 em, .h3 em,
h4 em, .h4 em,
h5 em, .h5 em,
h6 em, .h6 em {
  font-style: normal;
  -webkit-text-stroke: 1px currentColor;
  -webkit-text-fill-color: transparent;
}
@media (min-width: 576px) {
  h1 em, .h1 em,
  h2 em, .h2 em,
  h3 em, .h3 em,
  h4 em, .h4 em,
  h5 em, .h5 em,
  h6 em, .h6 em {
    -webkit-text-stroke: 1.5px currentColor;
  }
}

a {
  color: inherit;
}

.lead {
  font-size: 1.5em;
}

.heading {
  max-width: 30em;
}

.prose p {
  margin-bottom: 0.75em;
}
.prose h1, .prose .h1,
.prose h2, .prose .h2,
.prose h3, .prose .h3,
.prose h4, .prose .h4,
.prose h5, .prose .h5,
.prose h6, .prose .h6 {
  margin-top: 1.25em;
  margin-bottom: 0.5em;
}
.prose ul,
.prose ol {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.prose table {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.prose *:last-child {
  margin-bottom: 0;
}
.cluster {
  display: flex;
  flex-wrap: wrap;
  margin: calc(var(--space, var(--space-default)) / -2);
}
.cluster > *,
.cluster .cluster-item {
  padding: calc(var(--space, var(--space-default)) / 2);
}

.container {
  --container-padding: var(--space, var(--space-default));
  --width: var(--width, 100%);
  position: relative;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 576px) {
  .container {
    --container-padding: var(--space, var(--space-30));
  }
}
@media (min-width: 768px) {
  .container {
    --container-padding: var(--space, var(--space-50));
  }
}
.container[class*=w-] {
  max-width: calc(var(--width) + var(--container-padding) + var(--container-padding));
}

/*
  GRID
*/
.grid {
  --grid-gap: var(--space, var(--space-default));
  margin: calc(var(--grid-gap) / -2);
  display: flex;
  flex-wrap: wrap;
}

.grid-center {
  align-items: center;
}

.col,
[class*=col-] {
  flex: 0 0 var(--col-width, auto);
  max-width: var(--col-width, auto);
  padding: calc(var(--grid-gap) / 2);
}

.col {
  flex: 1 1 var(--col-width, auto);
}

.col-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col-6 {
  --col-width: 50%;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col {
  flex: 1 1 1rem;
}

.col-12 {
  --col-width: 100%;
}

.col {
  flex: 1 1 1rem;
}

@media (min-width: 576px) {
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-2 {
    --col-width: 16.6666666667%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-4 {
    --col-width: 33.3333333333%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-5 {
    --col-width: 41.6666666667%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-6 {
    --col-width: 50%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-7 {
    --col-width: 58.3333333333%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-8 {
    --col-width: 66.6666666667%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col-10 {
    --col-width: 83.3333333333%;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
  .sm\:col {
    flex: 1 1 1rem;
  }
}
@media (min-width: 768px) {
  .md\:col-3 {
    --col-width: 25%;
  }
  .md\:col-6 {
    --col-width: 50%;
  }
}
@media (min-width: 992px) {
  .lg\:col-2 {
    --col-width: 16.6666666667%;
  }
  .lg\:col-3 {
    --col-width: 25%;
  }
  .lg\:col-4 {
    --col-width: 33.3333333333%;
  }
  .lg\:col-6 {
    --col-width: 50%;
  }
}
@media (min-width: 1200px) {
  .xl\:col-2 {
    --col-width: 16.6666666667%;
  }
  .xl\:col-3 {
    --col-width: 25%;
  }
}
/*
  Hidden Elements
*/
@media (max-width: 575.98px) {
  /*
    HIDDEN – xs
  */
  .xs\:hidden {
    display: none !important;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  /*
    HIDDEN – sm
  */
}
@media (min-width: 768px) and (max-width: 991.98px) {
  /*
    HIDDEN – md
  */
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  /*
    HIDDEN – lg
  */
}
@media (min-width: 1200px) and (max-width: 1599.98px) {
  /*
    HIDDEN – xl
  */
}
@media (min-width: 1600px) {
  /*
    HIDDEN – xxl
  */
}
.hidden {
  display: none !important;
}

/* Margin – xs */

.mt-default {
  margin-top: 1.25rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.mt-5 {
  margin-top: 0.3125rem;
}

.my-5 {
  margin-top: 0.3125rem;
  margin-bottom: 0.3125rem;
}

.mt-10 {
  margin-top: 0.625rem;
}

.mb-10 {
  margin-bottom: 0.625rem;
}

.my-10 {
  margin-top: 0.625rem;
  margin-bottom: 0.625rem;
}

.mt-15 {
  margin-top: 0.9375rem;
}

.mt-25 {
  margin-top: 1.5625rem;
}

.my-30 {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}

/* Margin – sm */
/* Margin – md */
@media (min-width: 768px) {
  .md\:mt-30 {
    margin-top: 1.875rem;
  }
}
/* Margin – lg */
@media (min-width: 992px) {
  .lg\:my-15 {
    margin-top: 0.9375rem;
    margin-bottom: 0.9375rem;
  }
  .lg\:m-25 {
    margin: 1.5625rem;
  }
  .lg\:mt-30 {
    margin-top: 1.875rem;
  }
}
/* Margin – xl */
/* Margin – xxl */
/* padding – xs */

.px-default {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.py-default {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.p-default {
  padding: 1.25rem;
}

.pt-default {
  padding-top: 1.25rem;
}

.p-10 {
  padding: 0.625rem;
}

.p-15 {
  padding: 0.9375rem;
}

.pt-15 {
  padding-top: 0.9375rem;
}

.py-25 {
  padding-top: 1.5625rem;
  padding-bottom: 1.5625rem;
}

.p-25 {
  padding: 1.5625rem;
}

.pb-25 {
  padding-bottom: 1.5625rem;
}

.px-30 {
  padding-left: 1.875rem;
  padding-right: 1.875rem;
}

.py-50 {
  padding-top: 3.125rem;
  padding-bottom: 3.125rem;
}

.pb-50 {
  padding-bottom: 3.125rem;
}

.py-75 {
  padding-top: 4.6875rem;
  padding-bottom: 4.6875rem;
}

/* padding – sm */
@media (min-width: 576px) {
  .sm\:py-0 {
    padding-top: 0;
    padding-bottom: 0;
  }
  .sm\:py-50 {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
  .sm\:p-50 {
    padding: 3.125rem;
  }
}
/* padding – md */
@media (min-width: 768px) {
  .md\:p-default {
    padding: 1.25rem;
  }
  .md\:p-25 {
    padding: 1.5625rem;
  }
  .md\:px-30 {
    padding-left: 1.875rem;
    padding-right: 1.875rem;
  }
  .md\:py-30 {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
  .md\:p-30 {
    padding: 1.875rem;
  }
  .md\:py-50 {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
  .md\:py-75 {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem;
  }
}
/* padding – lg */
@media (min-width: 992px) {
  .lg\:py-30 {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
  .lg\:px-50 {
    padding-left: 3.125rem;
    padding-right: 3.125rem;
  }
  .lg\:py-50 {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
  .lg\:p-50 {
    padding: 3.125rem;
  }
  .lg\:py-75 {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem;
  }
  .lg\:py-100 {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
}
/* padding – xl */
@media (min-width: 1200px) {
  .xl\:py-50 {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
  .xl\:p-50 {
    padding: 3.125rem;
  }
  .xl\:py-75 {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem;
  }
  .xl\:py-100 {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
}
/* padding – xxl */
@media (min-width: 1600px) {
  .xxl\:pl-0 {
    padding-left: 0;
  }
  .xxl\:p-100 {
    padding: 6.25rem;
  }
  .xxl\:pr-100 {
    padding-right: 6.25rem;
  }
}
.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: calc(100% * var(--ratio));
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Ratio – xs */

.ratio-1-1 {
  --ratio: 1;
}

/* Ratio – sm */
@media (min-width: 576px) {
  .sm\:ratio-21-9 {
    --ratio: 0.4285;
  }
}
/* Ratio – md */
@media (min-width: 768px) {
  .md\:ratio-4-3 {
    --ratio: 0.75;
  }
}
/* Ratio – lg */
@media (min-width: 992px) {
  .lg\:ratio-16-9 {
    --ratio: 0.5625;
  }
}
/* Ratio – xl */
@media (min-width: 1200px) {
  .xl\:ratio-21-9 {
    --ratio: 0.4285;
  }
}
/* Ratio – xxl */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Margin – xs */
.space-0 {
  --space: var(--space-0) ;
}

.space-default {
  --space: var(--space-default) ;
}

.space-10 {
  --space: var(--space-10) ;
}

.space-20 {
  --space: var(--space-20) ;
}

.space-30 {
  --space: var(--space-30) ;
}

.space-50 {
  --space: var(--space-50) ;
}

/* Margin – sm */
/* Margin – md */
@media (min-width: 768px) {
  .md\:space-default {
    --space: var(--space-default) ;
  }
  .md\:space-10 {
    --space: var(--space-10) ;
  }
  .md\:space-20 {
    --space: var(--space-20) ;
  }
  .md\:space-30 {
    --space: var(--space-30) ;
  }
  .md\:space-50 {
    --space: var(--space-50) ;
  }
}
/* Margin – lg */
@media (min-width: 992px) {
  .lg\:space-30 {
    --space: var(--space-30) ;
  }
  .lg\:space-50 {
    --space: var(--space-50) ;
  }
  .lg\:space-75 {
    --space: var(--space-75) ;
  }
}
/* Margin – xl */
@media (min-width: 1200px) {
  .xl\:space-default {
    --space: var(--space-default) ;
  }
  .xl\:space-50 {
    --space: var(--space-50) ;
  }
  .xl\:space-75 {
    --space: var(--space-75) ;
  }
}
/* Margin – xxl */
.stack {
  --stack-gap: var(--space, var(--space-default));
  display: flex;
  flex-direction: column;
}
.stack > * + * {
  margin-top: var(--stack-gap);
}
.stack > * + .grid {
  position: relative;
  top: calc(var(--grid-gap) * -0.5);
}
.stack > * + .cluster {
  position: relative;
  top: calc(var(--cluster-gap) * -0.5);
}

.stack-table > * + * {
  border-top: 2px solid var(--color, color(black));
}

.stretched-link-container {
  position: relative;
}

.stretched-link-overlay {
  position: relative;
  z-index: 1010;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  content: "";
}

/*
  Font Sizes
*/
/* Font Size – xs */
.fs-body {
  font-size: 1.25rem;
}

.fs-10 {
  font-size: 0.625rem;
}

.fs-12 {
  font-size: 0.75rem;
}

.fs-15 {
  font-size: 0.9375rem;
}

.fs-20 {
  font-size: 1.25rem;
}

.fs-25 {
  font-size: 1.5625rem;
}

.fs-30 {
  font-size: 1.875rem;
}

/* Helpers */
.tt-uppercase {
  text-transform: uppercase;
}

/* Font Size – sm */
@media (min-width: 576px) {
  .sm\:fs-15 {
    font-size: 0.9375rem;
  }
  .sm\:fs-20 {
    font-size: 1.25rem;
  }
  .sm\:fs-40 {
    font-size: 2.5rem;
  }
}
/* Helpers */
/* Font Size – md */
@media (min-width: 768px) {
  .md\:fs-12 {
    font-size: 0.75rem;
  }
  .md\:fs-15 {
    font-size: 0.9375rem;
  }
  .md\:fs-17 {
    font-size: 1.0625rem;
  }
  .md\:fs-20 {
    font-size: 1.25rem;
  }
  .md\:fs-25 {
    font-size: 1.5625rem;
  }
  .md\:fs-30 {
    font-size: 1.875rem;
  }
  .md\:fs-50 {
    font-size: 3.125rem;
  }
}
/* Helpers */
/* Font Size – lg */
@media (min-width: 992px) {
  .lg\:fs-15 {
    font-size: 0.9375rem;
  }
  .lg\:fs-20 {
    font-size: 1.25rem;
  }
  .lg\:fs-25 {
    font-size: 1.5625rem;
  }
  .lg\:fs-30 {
    font-size: 1.875rem;
  }
  .lg\:fs-40 {
    font-size: 2.5rem;
  }
  .lg\:fs-50 {
    font-size: 3.125rem;
  }
}
/* Helpers */
/* Font Size – xl */
@media (min-width: 1200px) {
  .xl\:fs-body {
    font-size: 1.25rem;
  }
  .xl\:fs-15 {
    font-size: 0.9375rem;
  }
  .xl\:fs-20 {
    font-size: 1.25rem;
  }
  .xl\:fs-40 {
    font-size: 2.5rem;
  }
  .xl\:fs-50 {
    font-size: 3.125rem;
  }
  .xl\:fs-75 {
    font-size: 4.6875rem;
  }
}
/* Helpers */
/* Font Size – xxl */
@media (min-width: 1600px) {
  .xxl\:fs-50 {
    font-size: 3.125rem;
  }
  .xxl\:fs-75 {
    font-size: 4.6875rem;
  }
}
/* Helpers */
/*
  Font Families
*/

/*
  Font Weights
*/

.fw-bold {
  font-weight: 900;
}

/*
  Headings
*/
h1, .h1 {
  font-size: 1.875rem;
}
@media (min-width: 768px) {
  h1, .h1 {
    font-size: 3.125rem;
  }
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 4.6875rem;
  }
}

h2, .h2 {
  font-size: 1.5625rem;
}
@media (min-width: 768px) {
  h2, .h2 {
    font-size: 3.125rem;
  }
}

h3, .h3 {
  font-size: 1.5625rem;
}
@media (min-width: 768px) {
  h3, .h3 {
    font-size: 2.5rem;
  }
}

h4, .h4 {
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  h4, .h4 {
    font-size: 1.875rem;
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 0.9375rem;
}

.w-lg {
  --width: 100%;
  width: 100%;
  max-width: var(--width);
}
@media (min-width: 1600px) {
  .w-lg {
    --width: var(--width-lg);
  }
}

.w-md {
  --width: 100%;
  width: 100%;
  max-width: var(--width);
}
@media (min-width: 1400px) {
  .w-md {
    --width: var(--width-md);
  }
}

.w-sm {
  --width: 100%;
  width: 100%;
  max-width: var(--width);
}
@media (min-width: 1080px) {
  .w-sm {
    --width: var(--width-sm);
  }
}

.w-text {
  --width: 100%;
  width: 100%;
  max-width: var(--width);
}
@media (min-width: 800px) {
  .w-text {
    --width: var(--width-text);
  }
}

.w-split {
  --width: 100%;
  width: 100%;
  max-width: var(--width);
}
@media (min-width: 1200px) {
  .w-split {
    --width: var(--width-split);
  }
}

.article {
  --article-gap: var(--space, var(--space-default));
  --aside-width: 160px;
  max-width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto auto auto;
  grid-template-areas: "header" "aside-left" "main" "aside-right";
  column-gap: var(--article-gap);
  row-gap: var(--article-gap);
}
@media (min-width: 768px) {
  .article {
    grid-template-columns: 1fr var(--aside-width);
    grid-template-rows: auto auto auto;
    grid-template-areas: "header header" "main aside-left" "main aside-right";
  }
}
@media (min-width: 992px) {
  .article {
    --aside-width: 240px;
  }
}
@media (min-width: 1200px) {
  .article {
    --aside-width: 320px;
    grid-template-columns: var(--aside-width) 1fr var(--aside-width);
    grid-template-rows: auto auto;
    grid-template-areas: "header header header" "aside-left main aside-right";
  }
}
.article .header {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: header;
}
.article .aside-left {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  position: relative;
  z-index: 1;
  grid-area: aside-left;
}
.article .aside-left > .container {
  position: -webkit-sticky;
  position: sticky;
  top: var(--navbar-height, 3rem);
}
.article .main {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  position: relative;
  z-index: 2;
  grid-area: main;
}
.article .aside-right {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  grid-area: aside-right;
}
.article .aside-right > .container {
  position: -webkit-sticky;
  position: sticky;
  top: var(--navbar-height, 3rem);
}

.btn {
  display: flex;
  align-items: center;
  color: var(--btn-color);
  font-weight: 900;
  padding: 0;
}
.btn > * + * {
  margin-left: 0.625em;
}
.btn .text {
  display: inline-block;
  padding-top: 0.25em;
}
.btn .icon {
  width: 1.5em;
  height: 1.5em;
}
.btn .sticker {
  font-weight: normal;
  font-size: 1.333333333em;
  transition: transform 0.25s ease-out;
}

.tile:hover .btn .sticker,
.btn:hover .sticker {
  transform: scale(1.1);
}
.tile:hover .btn .text,
.btn:hover .text {
  text-decoration: underline;
}

a.btn {
  text-decoration: none;
}

button.btn {
  display: inline-flex;
  align-items: center;
  border: 0;
  background: transparent;
}
button.btn .sticker {
  display: inline-block;
}
button.btn .text {
  display: inline-block;
}
button.btn .icon {
  text-align: left;
  display: block;
}

.btn .sticker {
  --sticker-color: var(--btn-background, var(--color-white));
  --sticker-background: var(--btn-color, var(--color-black));
}

.btn {
  --btn-color: var(--color, var(--color-black));
  --btn-background: var(--background, var(--color-white));
}

.btn-muted .sticker {
  --sticker-color: var(--btn-color, var(--color-white));
  --sticker-background: var(--muted, var(--color-black));
}
.btn-muted .sticker::before {
  opacity: 0.1;
}

.btn-muted:hover .text {
  opacity: 1;
}
.btn-muted:hover .sticker::before {
  opacity: 0.2;
}

.btn-icon .sticker {
  --sticker-color: var(--btn-color, var(--color-white));
  --sticker-background: var(--btn-color, var(--color-black));
}
.btn-icon .sticker::before {
  opacity: 0;
}

.btn-icon:hover .sticker::before {
  opacity: 0.1;
}

.btn:disabled,
.btn.disabled {
  opacity: 0.25;
  cursor: not-allowed;
}

.card {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: calc(100% * var(--card-ratio, 0.5));
  overflow: hidden;
  --card-ratio: var(--ratio-xs, var(--ratio, 0.5));
  color: var(--color);
  background: var(--background);
}
@media (min-width: 576px) {
  .card {
    --card-ratio: var(--ratio-sm, var(--ratio, 0.5));
  }
}
@media (min-width: 768px) {
  .card {
    --card-ratio: var(--ratio-md, var(--ratio, 0.5));
  }
}
@media (min-width: 992px) {
  .card {
    --card-ratio: var(--ratio-lg, var(--ratio, 0.5));
  }
}
@media (min-width: 1200px) {
  .card {
    --card-ratio: var(--ratio-xl, var(--ratio, 0.5));
  }
}
@media (min-width: 1600px) {
  .card {
    --card-ratio: var(--ratio-xxl, var(--ratio, 0.5));
  }
}

.card-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease-out;
}

.card-body {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.card-body .card-cta {
  margin-top: auto;
}

.collapse:not(.show) {
  display: none;
}

.collapse-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.collapse-list .collapse-toggle {
  display: block;
  position: relative;
  text-decoration: none;
}
.collapse-list .collapse-toggle .icon {
  position: absolute;
  left: 0;
  font-size: 1.5em;
  line-height: 1em;
  transition: transform 0.3s, opacity 0.1s;
}
.collapse-list .collapse-toggle-icons {
  position: absolute;
  left: 0;
}
.collapse-list .collapse-toggle.collapsed .icon {
  transform: rotate(0);
}
.collapse-list .collapse-toggle.collapsed .icon-collapse {
  opacity: 0;
}
.collapse-list .collapse-toggle.collapsed .icon-expand {
  opacity: 1;
}
.collapse-list .collapse-toggle:not(.collapsed) .icon {
  transform: rotate(180deg);
}
.collapse-list .collapse-toggle:not(.collapsed) .icon-collapse {
  opacity: 1;
}
.collapse-list .collapse-toggle:not(.collapsed) .icon-expand {
  opacity: 0;
}
.collapse-list .collapse-toggle,
.collapse-list .collapse-body {
  padding-left: 2.5em;
}

/*
  Dropdown
*/
@keyframes dropdown-open {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  100% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
}
@keyframes dropdown-leave {
  0% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  100% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
}

.dropend,
.dropdown {
  position: relative;
}

.dropend.show .dropdown-menu,
.dropdown.show .dropdown-menu {
  display: flex;
  flex-direction: column;
  animation-name: dropdown-open;
}

.dropend.show .dropdown-link:after,
.dropdown.show .dropdown-link:after {
  transform: scaleY(-1);
}

.dropdown-link {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: center;
  animation-duration: 0.25s;
  font-weight: 400;
}

.dropdown-menu {
  position: absolute;
  left: 0;
  display: none;
  width: auto;
  min-width: 280px;
  max-height: 450px;
  z-index: 2020;
  overflow-y: auto;
  animation-duration: 0.2s;
  animation-name: dropdown-leave;
}

.dropdown-toggle {
  position: relative;
  padding-right: 2.75em;
}
.dropdown-toggle .icon-close,
.dropdown-toggle .icon-open {
  --color: currentColor;
  position: absolute;
  right: 1em;
  transition: opacity 0.5s ease;
}
.dropdown-toggle .icon-close {
  opacity: 0;
}
.dropdown-toggle .icon-open {
  opacity: 1;
}
.dropdown-toggle .icon {
  width: 1em;
  height: 1em;
  opacity: 0.75;
}

.dropdown-toggle.show .icon-close,
.show .dropdown-toggle .icon-close {
  opacity: 1;
}
.dropdown-toggle.show .icon-open,
.show .dropdown-toggle .icon-open {
  opacity: 0;
}


.dropend,
.dropdown {
  --dropdown-color: var(--background, var(--color-surface));
  --dropdown-background: var(--color, var(--color-body));
  color: var(--dropdown-color);
}

.dropend .dropdown-menu,
.dropdown .dropdown-menu {
  color: var(--dropdown-color);
  background: var(--dropdown-background);
}

.dropend:hover > .nav-link,
.dropend > .nav-link:focus,
.dropdown:hover > .nav-link,
.dropdown > .nav-link:focus {
  color: var(--dropdown-color);
  background: var(--dropdown-background);
}

.dropend.show > .dropdown-link,
.dropdown.show > .dropdown-link {
  color: var(--dropdown-color);
  background: var(--dropdown-background);
}

.dropend .dropdown-menu .btn,
.dropdown .dropdown-menu .btn {
  --btn-color: var(--dropdown-color);
  --btn-background: var(--dropdown-background);
}


.dropend,
.dropdown {
  position: relative;
}

.fact {
  border-top: 2px solid currentColor;
}
.fact > * {
  line-height: 1;
}
.filters .dropdown-toggle {
  padding-right: 2.75em;
}

.filters .nav-title {
  display: flex;
  align-items: center;
}

.filter-title {
  padding-top: 0.25em;
}

.js .filter-apply {
  display: none;
}

.loader {
  display: none;
  border: 0.3rem solid lightgray; /* Light grey */
  border-top: 0.3rem solid black; /* Black */
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  animation: spin 2s linear infinite;
}

.sprig-loading .loader {
  display: block;
}
.sprig-loading .content {
  display: none;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.footer .footer-heading {
  padding: 0.5em 1em;
}
.footer .footer-item {
  padding: 0.5em 1em;
  opacity: 0.6;
}
.footer .nav .footer-item {
  padding: 0.5em 1em;
  transition: opacity 0.5s;
}
.footer .nav .footer-item:hover {
  opacity: 1;
}
.footer .footer-wrapper {
  position: relative;
  display: flex;
  align-items: stretch;
}
.footer .footer-brand {
  flex: 0 0 auto;
}
.footer .footer-brand .icon {
  width: auto;
  padding: 0.5em 0;
  height: 2.25em;
}
.footer .footer-grid {
  flex: 1 1 auto;
}
.footer .footer-top {
  position: relative;
  flex: 0 0 3em;
  padding: 0.5em;
}

.btn-top {
  position: -webkit-sticky;
  position: sticky;
  display: block;
  top: 0;
  right: 0;
  transform-origin: 100% 100%;
  transform: rotate(-90deg);
}
.btn-top .text {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  padding-right: 3em;
  white-space: nowrap;
}
.btn-top .sticker {
  position: absolute;
  right: 0;
  top: 0;
}
body .fui-i {
  --form-color: var(--color, var(--color-body));
  --form-highlight: var(--highlight, var(--color-highlight));
  --form-background: var(--background, var(--color-surface));
  --form-spacing: var(--space, var(--space-default));
  font-family: inherit;
  font-size: 1em;
  color: var(--form-color);
}
body .fui-i *, body .fui-i :after, body .fui-i :before {
  border-color: var(--form-color);
}
body .fui-i .fui-label,
body .fui-i .fui-legend {
  font-weight: 900;
  color: var(--form-color);
}
body .fui-i .fui-legend {
  font-size: 1em;
  margin-bottom: 1em;
}
body .fui-i .fui-label {
  font-size: 0.75em;
  padding-left: 0.25em;
  padding-right: 0.25em;
}
body .fui-i .fui-instructions {
  color: var(--form-color);
  font-size: 0.75em;
  padding-left: 0.25em;
  padding-right: 0.25em;
}
body .fui-i .fui-input,
body .fui-i .fui-select {
  font-size: 1em;
  font-weight: 900;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0.5em;
  border: 2px solid var(--form-color);
  border-radius: 2px;
  color: var(--form-color);
  background-color: var(--form-background);
}
body .fui-i .fui-input:hover, body .fui-i .fui-input:focus,
body .fui-i .fui-select:hover,
body .fui-i .fui-select:focus {
  color: var(--form-background);
  background-color: var(--form-color);
}
body .fui-i .fui-input::placeholder,
body .fui-i .fui-select::placeholder {
  color: currentColor;
  opacity: 0.5;
  font-weight: 400;
}
body .fui-i .fui-group {
  border-width: 2px;
}
body .fui-i .fui-group > .fui-fieldset > .fui-legend {
  font-size: 1.5em;
}
body .fui-i .fui-checkbox,
body .fui-i .fui-radio {
  position: relative;
  font-size: 1em;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
body .fui-i .fui-checkbox .fui-radio-label,
body .fui-i .fui-checkbox .fui-checkbox-label,
body .fui-i .fui-radio .fui-radio-label,
body .fui-i .fui-radio .fui-checkbox-label {
  display: block;
  width: 100%;
  padding: 0.5em 0.5em 0.5em 2em;
  line-height: 1.5;
}
body .fui-i .fui-checkbox:after,
body .fui-i .fui-radio:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color);
  opacity: 0;
  border-radius: 2px;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
body .fui-i .fui-checkbox:hover:after,
body .fui-i .fui-radio:hover:after {
  opacity: 0.1;
}
body .fui-i .fui-checkbox input + label:before,
body .fui-i .fui-radio input + label:before {
  font-family: "UTUM UI Icons";
  font-weight: normal;
  font-size: 1em;
  line-height: 1;
  width: 1em;
  height: 1em;
  content: "\f11b";
  font-size: 1.5em;
  line-height: 1;
  margin-right: 0.25em;
  vertical-align: middle;
  background: none;
  border: none;
  position: absolute;
  top: 0.375em;
}
body .fui-i .fui-radio input + label:before {
  content: "\f11b";
}
body .fui-i .fui-radio input:checked + label:before {
  content: "\f11a";
}
body .fui-i .fui-checkbox input + label:before {
  content: "\f108";
}
body .fui-i .fui-checkbox input:checked + label:before {
  content: "\f107";
}
body .fui-i .fui-btn {
  font-size: 1em;
  font-weight: 900;
  padding: 0.5em 0.75em;
  border-radius: 2px;
  color: var(--form-background);
  background: var(--form-color);
}
body .fui-i .fui-repeater-add-btn {
  padding-left: 2.5em;
}
body .fui-i .fui-repeater-add-btn:after {
  top: 0.375em;
  background: none;
  border: none;
  font-family: "UTUM UI Icons";
  font-weight: normal;
  font-size: 1em;
  line-height: 1;
  width: 1em;
  height: 1em;
  content: "\f119";
  font-size: 1.5em;
  line-height: 1;
  color: var(--form-background);
}
body .fui-i .fui-alert {
  background: var(--form-background);
  color: var(--form-color);
  font-size: 1em;
  padding: 1em;
  margin-bottom: 2em;
  border-radius: 2px;
}
body .fui-i .fui-alert-error {
  background: var(--color-error);
  color: var(--form-color);
}
body .fui-i .fui-alert-success {
  background: var(--form-background);
  color: var(--form-color);
}
body .fui-i .fui-error-message {
  color: var(--color-error);
  font-size: 0.75em;
  font-weight: 900;
  padding: 0 0.25em;
}
body .fui-i .fui-row {
  margin-left: calc(var(--form-spacing) * -0.5);
  margin-right: calc(var(--form-spacing) * -0.5);
}
body .fui-i .fui-field {
  padding-left: calc(var(--form-spacing) * 0.5);
  padding-right: calc(var(--form-spacing) * 0.5);
}
input[type=text],
input[type=search] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.input-label {
  font-size: 0.75em;
  padding: 0.5em;
  pointer-events: none;
  white-space: nowrap;
}

.input-field {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  width: 100%;
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
  font-size: 1em;
  font-weight: 900;
  line-height: 1.5;
  padding: 0.5em 0.75em;
  color: currentColor;
  background: transparent;
  border-radius: 2px;
  border: 2px solid currentColor;
  box-shadow: none;
  transition: color 0.2s, background 0.2s, border 0.2s;
}
.input-field::-ms-expand {
  background-color: transparent;
  border: 0;
}
.input-field::placeholder {
  color: currentColor;
  opacity: 0.5;
}
.input-field:-webkit-autofill {
  color: black;
  border-color: transparent;
  background: white;
}

.borderless .input-field {
  border-color: transparent;
}

.input-field:hover {
  color: black;
  background: white;
  border-color: white;
}
.input-field:hover:-webkit-autofill {
  border-color: white !important;
}

.input-field:focus {
  color: black;
  background: white;
  border-color: white;
}
.input-field:focus:-webkit-autofill {
  border-color: white !important;
}

.input-group {
  width: 100%;
  position: relative;
}
.input-group .input-label {
  position: absolute;
  top: 0;
  padding-left: 0.75em;
}
.input-group .input-field {
  height: calc(3em + 2px + 2px);
  padding-top: 1.25em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.25em;
}
.input-group:hover .input-label,
.input-group:hover .input-icon {
  color: var(--color-highlight);
}
.input-group .input-field:focus ~ .input-label, .input-group .input-field:focus ~ .input-icon,
.input-group .input-field:active ~ .input-label,
.input-group .input-field:active ~ .input-icon {
  color: var(--color-highlight);
}
.input-group .input-field:-webkit-autofill ~ .input-label, .input-group .input-field:-webkit-autofill ~ .input-icon {
  color: black;
}
.input-group .input-icon {
  position: absolute;
  top: 50%;
  left: 0.25em;
  transform: translateY(-50%);
  font-size: 1.5em;
  width: 1em;
  height: 1em;
  pointer-events: none;
}
.input-group .input-icon .ui-icon {
  display: block;
}
.input-group.has-icon .input-field {
  padding-left: 2em;
}
.input-group.has-icon .input-label {
  padding-left: 2.75em;
}

.input-check {
  cursor: pointer;
  position: relative;
  display: inline-flex;
  align-items: center;
  border-radius: 2px;
  transition: color 0.2s, background 0.2s, border 0.2s;
}

.input-check.block {
  width: 100%;
}

.input-check:hover {
  background: rgba(255, 255, 255, 0.1);
}

.check-field {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  clip: rect(0 0 0 0);
}

.check-label {
  position: relative;
  width: 100%;
  font-size: 1em;
  font-weight: 900;
  line-height: 1.5;
  padding: 0.75em;
  padding-left: 3em;
}

.check-field:focus ~ .check-label,
.check-field:active ~ .check-label {
  background: rgba(255, 255, 255, 0.15);
}

.check-field:checked ~ .check-icon > svg {
  transform: translateX(-33.3333%);
}

.check-field:indeterminate ~ .check-icon > svg {
  transform: translateX(-66.6666%);
}

.check-icon {
  position: absolute;
  left: 0.75em;
  line-height: 1;
  margin-right: 0.25em;
  vertical-align: middle;
  width: 1.5em;
  height: 1.5em;
  overflow-x: hidden;
  pointer-events: none;
}
.check-icon > .icon,
.check-icon > svg {
  display: block;
  position: absolute;
  left: 0;
  height: 1.5em;
  width: auto;
}
.check-icon .icon *[fill] {
  fill: currentColor;
}
.check-icon *[fill] {
  fill: currentColor;
}
.header {
  position: relative;
  overflow: hidden;
}
.header .navigation {
  z-index: 3;
}
.header .heading {
  z-index: 2;
}
.header .by-unternehmertum {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 4;
}
.header .by-unternehmertum .icon {
  width: 40px;
  height: 40px;
}
@media (min-width: 768px) {
  .header .by-unternehmertum .icon {
    width: 80px;
    height: 80px;
  }
}

.header-cover .image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.header-curtain {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
  text-align: center;
}
.header-curtain .scroll-indicator {
  display: inline-block;
}
.header-curtain .curtain-image {
  flex: 1 1 auto;
  position: relative;
  min-height: 30vh;
  overflow: hidden;
}
.header-curtain .btn {
  margin-left: auto;
  margin-right: auto;
}
.header-curtain .curtain-image > .frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  display: flex;
}
.header-curtain .curtain-image > .frame > .img {
  object-fit: cover;
}
.header-curtain .curtain-body {
  flex: 0 0 auto;
}

.header-split {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: 100vw 100vw;
  grid-template-areas: "header" "image";
}
.header-split .navigation {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.header-split .heading {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: header;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
}
.header-split .image {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: image;
}
@media (min-width: 768px){
  .article .header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .article .aside-left {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .article .main {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .article .aside-right {
    -ms-grid-row: 3;
    -ms-grid-column: 2;
  }
  .header-split .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
}
@media (min-width: 1200px){
  .article .header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .article .aside-left {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .article .main {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
  }
  .article .aside-right {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
  .header-split .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
}
.header-split .image.frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  display: flex;
}
.header-split .image .frame > .img {
  object-fit: cover;
}
@media (min-width: 576px) {
  .header-split {
    grid-template-columns: 100%;
    grid-template-rows: minmax(50vh, -webkit-min-content) 100vw;
    grid-template-rows: minmax(50vh, min-content) 100vw;
    grid-template-areas: "header" "image";
  }
  .header-split > .header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .header-split > .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .header-split .image {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}
@media (min-width: 992px) {
  .header-split {
    grid-template-columns: 50% 50%;
    grid-template-rows: minmax(50vw, -webkit-min-content);
    grid-template-rows: minmax(50vw, min-content);
    grid-template-areas: "header image";
  }
  .header-split > .header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .header-split > .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .header-split .image {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
@media (min-width: 1600px) {
  .header-split {
    grid-template-columns: 1fr 800px 800px 1fr;
    grid-template-rows: minmax(50vw, -webkit-min-content);
    grid-template-rows: minmax(50vw, min-content);
    grid-template-areas: ". header image image";
  }
  .header-split > .header {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
  }
  .header-split > .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
  }
  .header-split .image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
}
.img {
  display: block;
}

.img-w100 {
  width: 100%;
  height: auto;
}

.frame {
  display: block;
  width: 100%;
}

.frame {
  --frame-ratio: var(--ratio, 0.5625);
  --frame-background: transparent;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: calc(100% * var(--frame-ratio));
  /* ☝️ image height / width * 100% */
  background: var(--frame-background);
  pointer-events: none;
  overflow: hidden;
  --frame-ratio: var(--ratio-xs, var(--ratio, 0.5625));
}
.frame > * {
  pointer-events: auto;
}
.frame > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 576px) {
  .frame {
    --frame-ratio: var(--ratio-sm, var(--ratio, 0.5625));
  }
}
@media (min-width: 768px) {
  .frame {
    --frame-ratio: var(--ratio-md, var(--ratio, 0.5625));
  }
}
@media (min-width: 992px) {
  .frame {
    --frame-ratio: var(--ratio-lg, var(--ratio, 0.5625));
  }
}
@media (min-width: 1200px) {
  .frame {
    --frame-ratio: var(--ratio-xl, var(--ratio, 0.5625));
  }
}
@media (min-width: 1600px) {
  .frame {
    --frame-ratio: var(--ratio-xxl, var(--ratio, 0.5625));
  }
}

img:not([src]):not([srcset]) {
  visibility: hidden;
}

.img.js-lazyload,
.media.js-lazyload {
  opacity: 0;
  transition: opacity 0.5s ease-out;
}

.img.js-lazyload.loaded,
.media.js-lazyload.loaded {
  opacity: 1;
}

video[autoplay]::-webkit-media-controls {
  display: none !important;
}

.frame-cover {
  display: flex;
  width: 100%;
  height: 100%;
  padding-bottom: 0;
  --cover-shade: var(--shade, .5);
}
.frame-cover > .img,
.frame-cover > .cover,
.frame-cover > iframe {
  object-fit: cover;
}
.frame-cover:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-black);
  opacity: var(--cover-shade);
}
.job-list {
  display: flex;
  flex-direction: column;
}

.job-item {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto auto auto auto;
  grid-template-areas: "job-employer" "job-title" "job-details" "job-apply" "job-keywords";
  padding: 0.5rem 0;
  border-top: 2px solid var(--color, currentColor);
  color: var(--color, currentColor);
  background-color: var(--color-surface, transparent);
  transition: background-color 0.2s ease, color 0.2s ease;
}
@media (min-width: 768px) {
  .job-item {
    grid-template-columns: auto auto auto;
    grid-template-rows: auto auto auto;
    align-items: center;
    grid-template-areas: "job-employer job-employer job-employer" "job-title job-title job-apply" "job-details job-details job-keywords";
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-item {
    grid-template-columns: 3fr 1fr 2fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    grid-template-areas: "job-title job-employer job-details job-apply" "job-keywords job-employer job-details job-apply";
    padding: 0.75rem;
  }
}

.job-item:first-child {
  border-top-color: transparent;
}

.job-employer {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: job-employer;
  padding: 0.25rem 0;
  font-weight: bold;
}
@media (min-width: 768px) {
  .job-employer {
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-employer {
    padding: 0.75rem;
  }
}

.job-title {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: job-title;
  padding: 0.25rem 0;
}
@media (min-width: 768px) {
  .job-title {
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-title {
    padding: 0.75rem;
    padding-bottom: 0.25rem;
  }
}

.job-details {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: job-details;
  padding: 0.25rem 0;
}
@media (min-width: 768px) {
  .job-details {
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-details {
    padding: 0.75rem;
  }
}

.job-keywords {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: job-keywords;
  padding: 0.25rem 0;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .job-keywords {
    justify-self: flex-end;
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-keywords {
    justify-self: flex-start;
    padding: 0.75rem;
    padding-top: 0.25rem;
  }
}

.job-apply {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
  grid-area: job-apply;
  padding: 0.25rem 0;
}

@media (min-width: 768px){
  .job-employer {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .job-title {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .job-details {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .job-keywords {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .job-apply {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
}

@media (min-width: 992px){
  .job-employer {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
  }
  .job-title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .job-details {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
  .job-keywords {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .job-apply {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
}
@media (min-width: 768px) {
  .job-apply {
    justify-self: flex-end;
    padding: 0.5rem;
  }
}
@media (min-width: 992px) {
  .job-apply {
    padding: 0.75rem;
  }
}

.job-item:hover {
  color: var(--background);
  background-color: var(--color);
}
.job-item:hover .job-keywords {
  color: var(--background);
}
.job-item:hover .btn {
  --btn-color: var(--background);
  --btn-background: var(--color);
}
.job-item:hover .sticker {
  --sticker-color: var(--color);
  --sticker-background: var(--background);
}

.list {
  margin: 0;
}
.list > *:last-child {
  padding-bottom: 0;
}

.list-ordered {
  padding-left: 1.5em;
}
.list-ordered > * {
  padding-left: 0.5em;
}

.table-list {
  margin: 0;
}
.table-list > * + * {
  border-top: 2px solid var(--color);
}
.table-list > [js-href] {
  cursor: pointer;
  transition: color 0.5s, background 0.5s;
}

.list-ordered {
  padding-left: 1.5em;
}
.list-ordered > * {
  padding-left: 0.5em;
}

.list-checkmarks {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.list-checkmarks .list-item {
  display: flex;
  position: relative;
  padding-bottom: 1em;
}
.list-checkmarks .list-icon {
  padding-top: 0.25em;
  padding-right: 0.5em;
  padding-bottom: 0.25em;
}

.list-rail {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.list-rail > * {
  display: block;
  position: relative;
  padding-left: 1.5em;
  padding-bottom: 1em;
  text-decoration: none;
}
.list-rail > *:before {
  position: absolute;
  left: 0;
  top: 0.25em;
  content: "";
  width: 1em;
  height: 1em;
  border-radius: 9999px;
  background: currentColor;
}
.list-rail > *:after {
  position: absolute;
  left: calc(0.5em - 1px);
  top: 1.25em;
  content: "";
  width: 2px;
  height: calc(100% - 1em);
  background: currentColor;
}
.list-rail > *:last-child:after {
  display: none;
}

.list-rail.progress > *:not(.active):before {
  border: 2px solid currentColor;
  background: transparent;
  opacity: 0.4;
}
.list-rail.progress > *:not(.active):after {
  opacity: 0.4;
}

.nag-show {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  z-index: 2050;
  transform: translateY(0);
}

/*
  Nav
*/
.nav {
  display: flex;
  align-items: stretch;
}
.nav .is-active {
  font-weight: 900;
}

.nav-divider {
  display: block;
  margin: 1em 0.5em;
  height: 1.5em;
  border: 0;
  border-left: 2px solid currentColor;
  transform: rotate(20deg);
}

.nav-link {
  display: block;
  padding: 1em;
  text-decoration: none;
}
.nav-link [class*=ui-icon] {
  padding: 0;
  vertical-align: middle;
}

.nav-v {
  flex-direction: column;
}

ul.nav {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.nav > li {
  display: block;
}

/*
  Navbar
*/
.navbar-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2040;
}

.navbar-wrapper + .header:before,
.navbar-wrapper + .section:before {
  content: "";
  display: block;
  padding-top: var(--navbar-height, 140px);
}

.navbar-wrapper .navigation {
  will-change: background;
  background-color: transparent;
  transition: background 1s ease;
}

.navbar-wrapper.js-scrolled .navigation {
  background-color: var(--background, var(--color-surface));
}

@keyframes nav-dropdown-open {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  100% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
}
@keyframes nav-dropdown-leave {
  0% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  100% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
}
body.navbar-open {
  overflow: hidden;
}
body.navbar-open .navbar {
  overflow-x: hidden;
  overflow-y: auto;
}

.navbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  color: var(--color, var(--color-body));
}
.navbar .navbar-brand {
  display: block;
  margin-right: auto;
  max-width: 190px;
  max-height: 90px;
}
@media (max-width: 991px) {
  .navbar .navbar-brand {
    width: 120px;
    height: auto;
  }
}
.navbar .navbar-brand .brand {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}
.navbar .is-active {
  font-weight: 900;
}

/*
  Desktop Behavior
*/
@media (min-width: 768px) {
  body {
    --navbar-height: 90px;
  }
  .navbar-wrapper .navigation {
    will-change: padding;
    padding-top: 1em;
    padding-bottom: 1em;
    transition: padding 0.5s ease;
  }
  .navbar-wrapper.js-scrolled .navigation {
    padding-top: 0;
    padding-bottom: 0;
  }
  .navbar .navbar-toggle,
  .navbar .search-toggle {
    display: none;
  }
  .navbar .nav-link .nav-interactive-text {
    position: relative;
  }
  .navbar .nav-link .nav-interactive-text:after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background: currentColor;
    transition: transform 0.15s;
    transform-origin: 100% 100%;
    transform: scaleX(0);
  }
  .navbar .nav-link:hover .nav-interactive-text:after {
    transform: scaleX(1);
    transform-origin: 0 0;
  }
  .navbar .nav-dropdown {
    position: relative;
  }
  .navbar .nav-dropdown > .nav-link {
    --color: currentColor;
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    animation-duration: 0.25s;
  }
  .navbar .nav-dropdown > .nav-link .nav-link-icon {
    width: 1.5em;
    height: 1.5em;
    padding: 0.25em;
    margin-left: 0.25em;
    opacity: 0.75;
    transition: transform 0.25s ease-out;
  }
  .navbar .nav-dropdown .nav-dropdown-menu {
    position: absolute;
    right: 0;
    display: none;
    width: auto;
    min-width: 280px;
    max-height: 480px;
    z-index: 2020;
    overflow-y: auto;
    animation-duration: 0.2s;
    animation-name: dropdown-leave;
  }
  .navbar .nav-dropdown .nav-dropdown-item {
    display: block;
    position: relative;
    padding: 0.625rem 0.9375rem;
    text-decoration: none;
    transition: padding 0.1s ease-out, background 0.2s ease-in-out;
  }
  .navbar .nav-dropdown .nav-dropdown-item:not(label):hover {
    padding-left: 1.25rem;
  }
  .navbar .nav-dropdown:hover .nav-dropdown-menu,
  .navbar .nav-dropdown > .nav-link:focus + .nav-dropdown-menu {
    display: flex;
    flex-direction: column;
    animation-name: dropdown-open;
  }
  .navbar .nav-dropdown:hover .nav-link-icon,
  .navbar .nav-dropdown > .nav-link:focus .nav-link-icon {
    transform: scaleY(-1);
  }
  .nav-dropdown {
    --dropdown-color: var(--background, var(--color-surface));
    --dropdown-background: var(--color, var(--color-body));
  }
  .nav-dropdown .nav-dropdown-menu {
    color: var(--dropdown-color);
    background: var(--dropdown-background);
  }
  .nav-dropdown:hover > .nav-link, .nav-dropdown > .nav-link:focus {
    color: var(--dropdown-color);
    background: var(--dropdown-background);
  }
  .nav-dropdown .nav-dropdown-item:hover:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--dropdown-color);
    opacity: 0.1;
  }
}
/*
  Mobile Behavior
*/
@media (max-width: 767px) {
  body {
    --navbar-height: 70px;
  }
  .navbar {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: padding 0.2s, color 0.2s, background-color 0.2s;
  }
  .navbar .navbar-brand {
    order: 1;
  }
  .navbar .search-toggle {
    order: 2;
  }
  .navbar .navbar-toggle {
    order: 3;
  }
  .navbar .navbar-nav {
    order: 4;
  }
  .navbar .nav {
    flex-direction: column;
    align-items: stretch;
    padding: 1em 0;
  }
  .navbar .nav-item > .nav {
    padding-top: 0;
  }
  .navbar .navbar-toggle {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
  .navbar .navbar-toggle,
  .navbar .search-toggle {
    padding: 0.25em;
  }
  .navbar .nav-divider {
    display: block;
    margin: 1em 0;
    height: 2px;
    border: 0;
    border-top: 2px solid currentColor;
    transform: none;
  }
  .navbar .nav-dropdown-item,
  .navbar .nav-link {
    padding: 0.5em 0;
  }
  .navbar .nav-dropdown-item {
    font-size: 0.9375rem;
    opacity: 0.6;
  }
  .navbar .nav-dropdown-item:hover,
  .navbar .nav-dropdown-item.is-active {
    opacity: 1;
  }
  .navbar.navbar-open {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 2rem 1rem 0 1rem;
    color: var(--color-white);
    background: var(--color-black);
    align-items: flex-start;
  }
  .navbar .navbar-nav {
    width: 100%;
    display: none;
  }
  .navbar.navbar-open .navbar-nav {
    display: flex;
  }
  .navbar.navbar-open .search-toggle {
    display: none;
  }
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.pagination > * {
  flex: 0 0 auto;
}
.pagination .sprig-loading {
  outline: 0;
}

.pill {
  display: inline-flex;
  align-items: center;
  padding: 0.25em 0.75em;
  border-radius: 9999px;
  color: var(--pill-color);
  background: var(--pill-background);
}
.pill .icon {
  margin-right: 0.25em;
  --color: var(--pill-color);
}

a.pill {
  text-decoration: none;
  transition: color 0.2s, background 0.2s;
}

.pill {
  --pill-color: var(--background, var(--color-white));
  --pill-background: var(--color, var(--color-black));
}

.pill-muted {
  --pill-color: var(--background, var(--color-white));
  --pill-background: var(--muted, var(--color-highlight));
}

.quote .blockquote {
  position: relative;
}
@media (min-width: 768px) {
  .quote .blockquote {
    padding-left: 1.5em;
    padding-right: 1.5em;
    margin-left: -1.5em;
    margin-right: -1.5em;
  }
}
.quote .blockquote:before,
.quote .blockquote:after {
  font-size: 2em;
}
.quote .blockquote:before {
  content: "„";
  margin-bottom: 0.25em;
}
@media (min-width: 768px) {
  .quote .blockquote:before {
    position: absolute;
    top: 0;
    left: 0;
    margin-bottom: 0;
    line-height: 0.5em;
  }
}
@media (min-width: 768px) {
  .quote .blockquote:after {
    position: absolute;
    right: 0.2em;
    bottom: 0;
    content: "“";
    line-height: 0.5em;
  }
}
.quote .cite {
  display: block;
  text-align: left;
}

@keyframes scroll-indicator {
  0% {
    transform: translateY(-15%);
  }
  50% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-15%);
  }
}
.scroll-indicator .sticker {
  animation-name: scroll-indicator;
  animation-duration: 1.5s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@keyframes search-open {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
  }
  75% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
  }
  100% {
    box-shadow: 0 0 1rem 2rem rgba(0, 0, 0, 0.1);
  }
}
@keyframes search-leave {
  0% {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
    box-shadow: 0 0 1rem 2rem rgba(0, 0, 0, 0.1);
  }
  100% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
  }
}
body.search-open {
  overflow: hidden;
}
body.search-open .search {
  overflow-x: hidden;
  overflow-y: auto;
}

.search {
  display: none;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100%;
  max-height: 100vh;
  color: black;
  background: white;
  box-shadow: 0 0 1rem 2rem rgba(0, 0, 0, 0.1);
  animation-duration: 0.2s;
  animation-name: dropdown-leave;
}
.search.search-open {
  width: 100%;
  display: flex;
  animation-name: dropdown-open;
}
.search .search-header {
  flex: 0 0 auto;
  align-items: center;
  width: 100%;
  display: flex;
  padding-top: 1em;
  padding-bottom: 1em;
}
.search .search-input {
  flex: 1 1 auto;
}
.search .input-field:focus {
  outline: 0;
}
.search .search-toggle {
  flex: 0 0 auto;
}
.search .search-results {
  flex: 1 1 auto;
  color: white;
  background: black;
  overflow-y: auto;
  transition: height 0.1s;
}
.section {
  position: relative;
  color: var(--color, var(--color-body));
  background: var(--background, var(--color-surface));
}

.section:not(.unbordered):after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 1px;
  background: var(--color, var(--color-body));
  opacity: 0.2;
}

.section-cover {
  position: relative;
}
.section-cover .cover-content {
  position: relative;
  z-index: 2;
}
.section-cover .cover-media {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.section-split {
  display: grid;
  grid-template-columns: 100vw;
  grid-template-rows: auto auto;
}
.section-split > .section:after {
  content: none;
}
.section-split .section-content,
.section-split .cover-content {
  position: -webkit-sticky;
  position: sticky;
  top: calc(var(--navbar-height) + 2rem);
}
@media (min-width: 768px) {
  .section-split {
    grid-template-columns: 50% 50%;
    grid-template-rows: auto;
    grid-template-areas: "left right";
  }
  .section-split.split-35-65 {
    grid-template-columns: 35% 65%;
  }
  .section-split.split-65-35 {
    grid-template-columns: 65% 35%;
  }
  .section-split .cover-media {
    min-height: initial;
  }
  .section-split .section:first-child {
    grid-area: left;
  }
  .section-split .section:last-child {
    grid-area: right;
  }
}
@media (min-width: 1600px) {
  .section-split {
    grid-template-rows: auto;
    grid-template-areas: "left left right right";
  }
  .section-split.split-50-50 {
    grid-template-columns: 1fr 800px 800px 1fr;
  }
  .section-split.split-25-75 {
    grid-template-columns: 1fr 400px 1200px 1fr;
  }
  .section-split.split-75-25 {
    grid-template-columns: 1fr 1200px 400px 1fr;
  }
  .section-split.split-35-65 {
    grid-template-columns: 1fr 600px 1000px 1fr;
  }
  .section-split.split-65-35 {
    grid-template-columns: 1fr 1000px 600px 1fr;
  }
  .section-split .cover-media {
    min-height: initial;
  }
  .section-split .section:first-child {
    grid-area: left;
    padding-left: calc((100vw - 1600px) / 2);
  }
  .section-split .section:last-child {
    grid-area: right;
    padding-right: calc((100vw - 1600px) / 2);
  }
  .section-split .section:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .section-split .section:last-child {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
}
@media (min-width: 768px){
  .section-split .section:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .section-split .section:last-child {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .section-split .section:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .section-split .section:last-child {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
@media (min-width: 1600px){
  .section-split .section:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .section-split .section:last-child {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
}
.tns-outer {
  padding: 0;
}
.tns-outer [hidden] {
  display: none !important;
}

.tns-slider {
  transition: all 0s;
}
.tns-slider > .tns-item {
  box-sizing: border-box;
}

.tns-horizontal.tns-subpixel {
  white-space: nowrap;
}
.tns-horizontal.tns-subpixel > .tns-item {
  display: inline-block;
  vertical-align: top;
  white-space: normal;
}
.tns-horizontal.tns-no-subpixel:after {
  content: "";
  display: table;
  clear: both;
}
.tns-horizontal.tns-no-subpixel > .tns-item {
  float: left;
}
.tns-horizontal.tns-carousel.tns-no-subpixel > .tns-item {
  margin-right: -100%;
}

.tns-no-calc {
  position: relative;
  left: 0;
}

.tns-gallery {
  position: relative;
  left: 0;
  min-height: 1px;
}
.tns-gallery > .tns-item {
  position: absolute;
  left: -100%;
  transition: transform 0s, opacity 0s;
}
.tns-gallery > .tns-slide-active {
  position: relative;
  left: auto !important;
}
.tns-gallery > .tns-moving {
  transition: all 0.25s;
}

.tns-autowidth {
  display: inline-block;
}

.tns-lazy-img {
  transition: opacity 0.6s;
  opacity: 0.6;
}
.tns-lazy-img.tns-complete {
  opacity: 1;
}

.tns-ah {
  transition: height 0s;
}

.tns-ovh {
  overflow: hidden;
}

.tns-visually-hidden {
  position: absolute;
  left: -10000em;
}

.tns-transparent {
  opacity: 0;
  visibility: hidden;
}

.tns-fadeIn {
  opacity: 1;
  filter: alpha(opacity=100);
  z-index: 0;
}

.tns-normal, .tns-fadeOut {
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: -1;
}

.tns-vpfix {
  white-space: nowrap;
}
.tns-vpfix > div, .tns-vpfix > li {
  display: inline-block;
}

.tns-t-subp2 {
  margin: 0 auto;
  width: 310px;
  position: relative;
  height: 10px;
  overflow: hidden;
}
.tns-t-ct {
  width: 2333.3333333333%;
  position: absolute;
  right: 0;
}
.tns-t-ct:after {
  content: "";
  display: table;
  clear: both;
}
.tns-t-ct > div {
  width: calc(100% / 70);
  height: 10px;
  float: left;
}

.js-slider {
  overflow: hidden;
}
.js-slider .js-slider-track {
  overflow: hidden;
}
.js-slider .js-slider-slide {
  display: inline-block;
  vertical-align: top;
  white-space: normal;
}
.js-slider[data-fullscreen] {
  overflow: visible;
}
.js-slider[data-fullscreen] .tns-outer {
  overflow: hidden;
}
.js-slider[data-fullscreen] .tns-ovh {
  overflow: visible;
}

.tns-visually-hidden {
  position: absolute;
  left: -10000em;
}

.spacer {
  display: block;
  height: 0px;
  padding-top: var(--space);
}

.table {
  --table-gap: var(--space, var(--space-default));
  width: 100%;
}
.table th,
.table td {
  padding: var(--table-gap);
  vertical-align: top;
}
.table thead th {
  font-weight: 900;
  vertical-align: bottom;
  border-bottom: 2px solid var(--color);
  text-transform: uppercase;
}
.table tbody td {
  border-top: 1px solid var(--muted);
}
.table tbody + tbody {
  border-top: 2px solid var(--color);
}

.tile {
  overflow: hidden;
}
.tile .frame > .img {
  transition: transform 0.5s ease-out;
}


.tile[href]:hover {
  cursor: pointer;
}

.tile[href]:hover .frame > .img {
  transform: scale(1.1);
}

.tile-icon > svg {
  width: var(--icon-width, 128px);
  height: auto;
  max-width: 100%;
}

.tile-columns-6 {
  --icon-width: 96px;
}

.no-touch .hideButton {
  display: none !important;
}

a.tile {
  text-decoration: none;
}

.tile-icon-center .tile-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.tile-icon-center .tile-body {
  text-align: center;
}

.tocAnchor {
  position: relative;
  margin: 0;
}

utum-video-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

utum-video-cover iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--width, 100vw);
  height: calc(var(--width, 100vw) * var(--ratio));
  transform: translate(-50%, -50%);
}
