@charset "UTF-8";
@font-face {
  font-family: "Figtree";
  src: url("../fonts/Figtree[wght].woff2") format("woff2 supports variations"), url("../fonts/Figtree[wght].woff2") format("woff2-variations");
  font-weight: 100 1000;
  font-stretch: 25% 151%;
}
@font-face {
  font-family: "Figtree Italic";
  src: url("../fonts/Figtree-Italic[wght].woff2") format("woff2 supports variations"), url("../fonts/Figtree-Italic[wght].woff2") format("woff2-variations");
  font-weight: 100 1000;
  font-stretch: 25% 151%;
}
:root {
  --font-fallback-default: BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  --neutral-000: hsl(0, 0%, 100%);
  --neutral-050: hsl(0, 0%, 98%);
  --neutral-100: hsl(0, 0%, 96%);
  --neutral-200: hsl(0, 0%, 93%);
  --neutral-300: hsl(0, 0%, 88%);
  --neutral-400: hsl(0, 0%, 74%);
  --neutral-500: hsl(0, 0%, 62%);
  --neutral-600: hsl(0, 0%, 46%);
  --neutral-700: hsl(0, 0%, 38%);
  --neutral-800: hsl(0, 0%, 26%);
  --neutral-900: hsl(0, 0%, 13%);
  --neutral-1000: hsl(0, 0%, 0%);
  --primary-100: hsl(96, 75%, 95%);
  --primary-200: hsl(96, 75%, 82.5%);
  --primary-300: hsl(96, 75%, 70%);
  --primary-400: hsl(96, 75%, 60%);
  --primary-500: hsl(96, 75%, 50%);
  --primary-600: hsl(96, 75%, 40%);
  --primary-700: hsl(96, 75%, 30%);
  --primary-800: hsl(96, 75%, 17.5%);
  --primary-900: hsl(96, 75%, 7.5%);
  --accent-100: hsl(336, 75%, 95%);
  --accent-200: hsl(336, 75%, 82.5%);
  --accent-300: hsl(336, 75%, 70%);
  --accent-400: hsl(336, 75%, 60%);
  --accent-500: hsl(336, 75%, 50%);
  --accent-600: hsl(336, 75%, 40%);
  --accent-700: hsl(336, 75%, 30%);
  --accent-800: hsl(336, 75%, 17.5%);
  --accent-900: hsl(336, 75%, 7.5%);
}

@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  figure,
  dl,
  dd {
    margin: 0;
  }
  ul:where([class]),
  ol:where([class]) {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  img,
  picture,
  svg {
    display: block;
    max-width: 100%;
    height: auto;
  }
  figure:has(a.cboxElement) {
    width: fit-content;
  }
  button,
  input,
  optgroup,
  select,
  textarea {
    font: inherit;
  }
  html {
    scroll-behavior: smooth;
  }
  a {
    color: inherit;
  }
}
.mce-content-body {
  margin: 0;
  padding: 0.5rem;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--neutral-700);
}
.mce-content-body > * + * {
  margin-block-start: 1em;
}
.mce-content-body p {
  max-width: unset;
}

html {
  height: 100%;
  font-size: 100%;
  overflow-y: scroll;
}

body {
  min-height: 100vh;
  background-color: var(--neutral-000);
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 1rem;
  color: var(--neutral-700);
  line-height: 1.5;
}

a {
  color: var(--neutral-700);
}

a:is(:hover, :focus) {
  color: var(--accent-500);
}

p {
  max-width: 65ch;
  overflow-wrap: break-word;
}
.text-center p {
  margin-inline: auto;
}
p.info, p.more {
  margin-block: 0.5em;
  font-size: 0.875rem;
}
p.back a {
  display: inline-block;
  margin-block: 0.25em;
  padding: 0.25rem 0.75rem;
  background-color: var(--neutral-100);
  border-radius: 0.125rem;
  font-size: 0.875rem;
  text-decoration: none;
}
p.back a:is(:hover, :focus) {
  background-color: var(--neutral-800);
  color: var(--neutral-000);
}
p.error {
  font-weight: 800;
  color: crimson;
}

:where(.content-text) ul,
:where(.content-text) ol {
  padding-inline-start: 1rem;
  line-height: 1.5;
}
:where(.content-text) ul li,
:where(.content-text) ol li {
  max-width: 65ch;
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  text-wrap: balance;
}

:where(h4, h5, h6) {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  text-wrap: balance;
}

h1 {
  font-size: clamp(2rem, 1.222rem + 2.778vw, 3rem);
  color: var(--neutral-900);
  line-height: 1;
}

h2 {
  font-size: clamp(1.5rem, 1.111rem + 1.389vw, 2rem);
  color: var(--neutral-900);
  line-height: 1.2;
}

h3 {
  font-size: clamp(1.125rem, 1.028rem + 0.347vw, 1.25rem);
  color: var(--neutral-700);
  line-height: 1.2;
}

h4, h5, h6 {
  line-height: 1.2;
}

.headline {
  margin-block-end: 1em;
}

.rte :where(h1, h2, h3, h4, h5, h6),
[class^=content-] > .headline,
[class^=ce_rsce_] > .headline {
  margin-block-end: 0.75em;
}

.mod_customnav.service :where(h1, h2, h3, h4, h5, h6) {
  margin-block-end: 0.75em;
}

.rte p + p {
  margin-block-start: 0.625em;
}
.rte p + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: 1.5em;
}
.rte p.link-button-style {
  margin-block-start: 1em;
}

.intro {
  font-size: 1.125rem;
}

.alert {
  font-weight: 800;
  color: crimson;
}

b,
strong {
  font-weight: 800;
}

i,
em {
  font-family: "Figtree italic", var(--font-fallback-default);
  font-style: normal;
}

small {
  font-size: 0.75rem;
}

figcaption {
  font-size: 0.75rem;
  font-family: "Figtree italic", var(--font-fallback-default);
  font-style: normal;
}
.image_container figcaption {
  position: absolute;
  color: var(--neutral-100);
  text-shadow: 0.0625em 0.0625em 0.0625em hsla(0, 0%, 13%, 0.3), 0.1875em 0.1875em 0.4375em hsla(0, 0%, 13%, 0.8);
  transform: translate(0.5rem, -1.375rem);
}

hr {
  height: 1px;
  margin: 2em auto;
  margin-block-start: 2em;
  border: 0;
  background: var(--neutral-200);
}

sub,
sup {
  display: inline-block;
  line-height: 1;
  font-size: 0.625em;
}

sub {
  transform: translateY(0.25ex);
}

sup {
  transform: translateY(-0.25ex);
}

::selection {
  background-color: var(--primary-500);
  color: var(--primary-900);
}

blockquote {
  position: relative;
  margin-block: 2em;
  margin-inline: 0.5rem;
  padding-inline-start: 1.5rem;
}
blockquote::before {
  content: "❝";
  position: absolute;
  inset-block-start: -1rem;
  inset-inline-start: 0;
  font-size: 3em;
  color: var(--neutral-200);
}
blockquote p {
  margin-block-end: 0.25em;
  font-size: 1.125rem;
}
blockquote cite {
  font-family: "Figtree italic", var(--font-fallback-default);
  font-style: normal;
  font-size: 0.875rem;
}

.button,
.submit {
  display: inline-flex;
  justify-content: center;
  padding: 0.75em 2em;
  border: 0;
  border-radius: 0.25rem;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  font-size: 1rem;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: 275ms ease;
  background-color: var(--accent-500);
  color: var(--neutral-000);
}
.button:is(:hover, :focus),
.submit:is(:hover, :focus) {
  background-color: var(--accent-600);
  color: var(--accent-100);
}
.button.primary,
.submit.primary {
  background-color: var(--primary-700);
  color: var(--neutral-100);
}
.button.primary:is(:hover, :focus),
.submit.primary:is(:hover, :focus) {
  background-color: var(--primary-800);
  color: var(--neutral-100);
}
.button.accent,
.submit.accent {
  background-color: var(--accent-400);
  color: var(--neutral-100);
}
.button.accent:is(:hover, :focus),
.submit.accent:is(:hover, :focus) {
  background-color: var(--accent-500);
  color: var(--neutral-100);
}
.button.outline,
.submit.outline {
  background-color: transparent;
  outline: 0.125rem solid var(--neutral-900);
  outline-offset: -0.125rem;
  color: var(--neutral-900);
}
.button.outline:is(:hover, :focus),
.submit.outline:is(:hover, :focus) {
  background-color: var(--primary-200);
  color: var(--neutral-900);
}

.link-button-style a,
.content-hyperlink a,
.mce-content-body .link-button-style a {
  display: inline-flex;
  justify-content: center;
  padding: 0.25rem 0.75rem;
  border: 0;
  border-radius: 0.125rem;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  cursor: pointer;
  transition: 275ms ease;
  background-color: var(--neutral-100);
  color: var(--neutral-700);
}
.link-button-style a:is(:hover, :focus),
.content-hyperlink a:is(:hover, :focus),
.mce-content-body .link-button-style a:is(:hover, :focus) {
  background-color: var(--neutral-800);
  color: var(--neutral-000);
}

footer {
  padding-block: 1.5rem;
  background-color: var(--primary-900);
  font-size: 0.875rem;
  color: var(--neutral-000);
}
footer .inside {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
}
footer p {
  text-align: center;
}
footer a {
  color: var(--neutral-000);
  text-decoration: none;
}
footer a:is(:hover, :focus) {
  color: var(--neutral-000);
}
footer .flex {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
footer .nav_footer {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0;
}
footer .nav_footer .level_1 {
  display: flex;
  gap: 1rem;
  width: fit-content;
}
footer .nav_footer a,
footer .nav_footer strong {
  color: var(--neutral-000);
  text-decoration: none;
  display: inline-block;
  padding: 0.875rem 0.75rem;
}
@media screen and (min-width: 62em) {
  footer .nav_footer a,
  footer .nav_footer strong {
    display: unset;
    padding: unset;
  }
}
footer .nav_footer a:is(:hover, :focus, .active),
footer .nav_footer strong:is(:hover, :focus, .active) {
  color: var(--neutral-000);
}

.formbody {
  width: min(100%, 40rem);
  padding: 1rem;
  background-color: var(--neutral-100);
}
.formbody > *:where(:not(:nth-child(3))) {
  margin-block-start: 1.5rem;
}

label {
  display: block;
  margin-block-end: 0.375rem;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 1rem;
  color: var(--neutral-700);
}

label.select {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  font-size: 1rem;
  color: var(--neutral-700);
}

input,
textarea,
select {
  padding-block: 0.25em;
  padding-inline: 0.4375em;
  background-color: var(--neutral-000);
  border: 1px solid var(--neutral-300);
  border-radius: 0.125rem;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 1rem;
  color: var(--neutral-700);
}

input.text,
textarea {
  width: 100%;
  margin: 0;
}

.widget-wrapper select {
  width: 100%;
}

[placeholder=placeholder] {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 400;
  font-size: 1rem;
  color: var(--neutral-400);
}

fieldset {
  margin: unset;
  padding: unset;
  border: none;
}
fieldset.styled, fieldset.styled fieldset {
  padding: 0;
  border: none;
  border-radius: none;
}
fieldset legend {
  margin-block-end: 0.5rem;
  padding-inline: 0;
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  font-size: 1rem;
  color: var(--neutral-700);
  line-height: 1.1;
}
fieldset > *:not(:first-of-type) {
  margin-block-start: var(--paragraph-space, 0.625em);
}

.widget-captcha label {
  color: crimson;
}
.widget-captcha span.captcha_text {
  display: block;
  margin-top: 0.5em;
}

.widget-explanation > *:where(:not(:first-child)) {
  margin-top: var(--paragraph-space, 0.625em);
}

@media (min-width: 30em) {
  .widget-wrapper {
    display: flex;
    justify-content: space-between;
    gap: 5%;
  }
  .widget-wrapper > * {
    width: 100%;
  }
}
@media (max-width: 29.9375em) {
  .widget-wrapper > * + * {
    margin-top: 2rem;
  }
}

input[type=checkbox] + label,
input[type=radio] + label {
  display: inline;
}

.formbody span:not(.mandatory) {
  display: block;
}

.checkbox-single span {
  display: inline;
}

.checkbox-mandatory-agb span:not(.mandatory) {
  margin-block-start: -0.0625em;
  display: flex;
  align-items: flex-start;
}
.checkbox-mandatory-agb span:not(.mandatory) input {
  margin-block-start: 0.375em;
  margin-right: 0.5rem;
}
.checkbox-mandatory-agb span:not(.mandatory) label {
  margin-block-end: unset;
}
.checkbox-mandatory-agb span:not(.mandatory) .content-text {
  margin-block-end: unset;
}

.form-confirmation {
  width: fit-content;
  padding: 1.5rem;
  background-color: var(--neutral-100);
  border-inline-start: 3px solid var(--primary-400);
}
.form-confirmation h3 {
  margin-block-end: 0.75em;
}
.form-confirmation p:not(:last-of-type) {
  margin-block-end: 0.625em;
}

header {
  padding-block: 1rem;
  background-color: var(--neutral-000);
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  color: var(--neutral-700);
}
header .inside {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
}
@media screen and (min-width: 62em) {
  header .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.list.short > *:where(:not(:first-child)) {
  margin-top: var(--list-space, 1.5rem);
}
.list.short .teaser h2 {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  line-height: 1;
}
.list.short .teaser h3 {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  line-height: 1.2;
}
.list.short .teaser h2 a,
.list.short .teaser h3 a {
  text-decoration: none;
  line-height: 1.2;
}
.list.short.box {
  padding: 1rem;
  border: 1px solid var(--neutral-100);
  box-shadow: 0px 6px 5px rgba(0, 0, 0, 0.016), 0px 22px 18px rgba(0, 0, 0, 0.024), 0px 100px 80px rgba(0, 0, 0, 0.04);
}

.list.simple > *:where(:not(:first-child)) {
  margin-top: var(--paragraph-space, 0.625em);
}

table {
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 0.875rem;
}

thead {
  background-color: var(--neutral-000);
  border-top: 2px solid currentColor;
  border-bottom: 1px solid var(--neutral-700);
}

tfoot {
  background-color: var(--neutral-000);
  border-top: 2px solid var(--neutral-700);
  border-bottom: 2px solid currentColor;
}

td, th {
  padding: 1em 1rem;
  font-size: 1em;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}

tbody tr:nth-of-type(2n + 1) th,
tbody tr:nth-of-type(2n + 1) td {
  background-color: var(--neutral-100);
}

tbody tr:not(:last-of-type) {
  border-bottom: 1px solid var(--neutral-400);
}

caption {
  padding: 1em;
  background-color: var(--neutral-000);
}

@media (max-width: 48em) {
  table {
    display: block;
    overflow-x: scroll;
    border-bottom: 0;
  }
}
table.calendar {
  width: 100%;
  background-color: var(--neutral-100);
}
table.calendar a {
  text-decoration: none;
}
table.calendar a:hover {
  background-color: unset;
}
table.calendar thead {
  border-top: unset;
}
table.calendar thead .head.previous {
  padding-inline-start: unset;
  text-align: left;
}
table.calendar thead .head.current {
  font-size: 1.125rem;
  text-align: center;
}
table.calendar thead .head.next {
  padding-inline-end: unset;
  text-align: right;
}
table.calendar thead .head a {
  padding: 0.5rem 1rem 0.6875rem 1rem;
  background-color: var(--neutral-300);
}
table.calendar tbody td {
  width: 14.3%;
  border-right: 1px solid var(--neutral-600);
}
table.calendar tbody td:first-of-type {
  border-left: 1px solid var(--neutral-600);
}
table.calendar tbody td.empty {
  background-color: white;
}
table.calendar tbody td:not(.empty):hover {
  background-color: white;
}
table.calendar tbody td.today {
  background-color: var(--neutral-050);
}
table.calendar tbody td:has(.event:not(.bygone)) {
  background-color: var(--accent-200);
  color: var(--neutral-900);
}
table.calendar tbody td:has(.event:not(.bygone)):hover {
  background-color: var(--accent-400);
}
table.calendar tbody td:has(.event:not(.bygone)) a {
  color: var(--neutral-900);
}
table.calendar tbody td.active .header {
  display: inline;
  margin-inline-end: 0.5rem;
}
table.calendar tbody td.active .event {
  display: inline;
}
table.calendar tbody td.active .event a {
  font-weight: 800;
}
table.calendar tbody td.active .event a:hover {
  background-color: unset;
}
table.calendar tbody td.active .event.bygone a {
  font-weight: unset;
  color: var(--neutral-500);
}
table.calendar tbody td.active .event.bygone a:hover {
  background-color: unset;
}
table.calendar tbody tr {
  border-top: 1px solid var(--neutral-300);
}
table.calendar tbody tr:last-of-type {
  border-bottom: 1px solid var(--neutral-300);
}

@media (width > 62.0625em) {
  .mod_mobile_menu {
    display: none;
    position: relative;
  }
}
@media (width < 62em) {
  .nav_main,
  .nav_service {
    display: none;
  }
  .mobile_menu_trigger {
    display: block;
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 10;
    cursor: pointer;
  }
  .mobile_menu_trigger button {
    all: unset;
    padding-inline-start: 0.25rem;
    font-size: 1.125rem;
  }
  .mobile_menu_trigger button svg {
    width: 2rem;
    height: 2rem;
  }
}
.mobile_menu .inner {
  position: relative;
}
.mobile_menu .inner .closeLink {
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}
.mobile_menu .inner .closeLink a {
  display: flex;
  align-items: center;
}
.mobile_menu .inner .closeLink a span {
  padding-inline-start: 0.25rem;
  font-size: 1.125rem;
}

.mobile_menu .inner {
  background-color: white;
  padding: 3rem 2rem;
}
.mobile_menu .inner .logo {
  width: 75%;
  margin-bottom: 1.5em;
}
.mobile_menu .inner .nav_main_mobile ul.level_1 li {
  padding-block: 1rem;
  border-top: 1px solid var(--neutral-200);
}
.mobile_menu .inner .nav_main_mobile ul.level_1 li > a,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > span,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > strong {
  color: var(--neutral-700);
  text-decoration: none;
}
.mobile_menu .inner .nav_main_mobile ul.level_1 li > a:hover, .mobile_menu .inner .nav_main_mobile ul.level_1 li > a.active,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > span:hover,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > span.active,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > strong:hover,
.mobile_menu .inner .nav_main_mobile ul.level_1 li > strong.active {
  color: var(--accent-400);
}
.mobile_menu .inner .nav_main_mobile ul.level_1 li ul.level_2 {
  padding-top: 1em;
  padding-left: 1em;
  font-size: inherit;
}
.mobile_menu .inner .nav_main_mobile ul.level_1 li ul.level_2 ul.level_3 {
  padding-top: 0.5em;
  padding-left: 1em;
}
.mobile_menu .inner .nav_service_mobile li {
  padding-block: 1rem;
  border-top: 1px solid var(--neutral-200);
}
.mobile_menu .inner .nav_service_mobile li > a,
.mobile_menu .inner .nav_service_mobile li > span,
.mobile_menu .inner .nav_service_mobile li > strong {
  color: var(--neutral-700);
  text-decoration: none;
}
.mobile_menu .inner .nav_service_mobile li > a:hover, .mobile_menu .inner .nav_service_mobile li > a.active,
.mobile_menu .inner .nav_service_mobile li > span:hover,
.mobile_menu .inner .nav_service_mobile li > span.active,
.mobile_menu .inner .nav_service_mobile li > strong:hover,
.mobile_menu .inner .nav_service_mobile li > strong.active {
  color: var(--accent-400);
}
.mobile_menu .inner .nav_service_mobile li li.active strong {
  font-weight: inherit;
  color: var(--accent-400);
  cursor: default;
}
.mobile_menu .inner .nav_service_mobile li a:hover,
.mobile_menu .inner .nav_service_mobile li a:hover span {
  color: var(--accent-400);
}
.mobile_menu .inner .nav_service_mobile li:last-of-type {
  border-bottom: 1px solid var(--neutral-200);
}

.nav_main {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0;
}
.nav_main .level_1 {
  width: fit-content;
  display: flex;
  gap: 1.75rem;
}
.nav_main a,
.nav_main strong {
  color: var(--neutral-700);
  text-decoration: none;
}
.nav_main a:is(:hover, :focus, .trail, .active),
.nav_main strong:is(:hover, :focus, .trail, .active) {
  font-weight: 800;
  color: var(--primary-700);
}
.nav_main li.oesv::before {
  content: "»";
  padding-inline-end: 0.125rem;
}
.nav_main li.oesv:hover::before {
  color: var(--primary-700);
}

.nav_main .level_2 {
  width: auto;
  box-shadow: 0px 6px 5px rgba(0, 0, 0, 0.012), 0px 22px 18px rgba(0, 0, 0, 0.018), 0px 100px 80px rgba(0, 0, 0, 0.03);
}
.nav_main .submenu {
  position: relative;
}
.nav_main .submenu .level_2 {
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.nav_main .submenu:focus-within > .level_2, .nav_main .submenu:hover .level_2 {
  clip: inherit;
  clip-path: inherit;
  height: auto;
  overflow: inherit;
  position: relative;
  white-space: inherit;
  width: inherit;
  z-index: 1;
  position: absolute;
}
.nav_main .submenu:last-of-type .level_2 {
  right: 0;
}
.nav_main .submenu:nth-last-of-type(2) .level_2 {
  right: 0;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  nav.nav_main ul.level_2 {
    display: none;
  }
  nav.nav_main li:hover ul.level_2 {
    display: block;
  }
}
.nav_main .level_2 {
  width: auto;
  padding-inline-start: unset;
  background-color: var(--neutral-100);
}
.nav_main .level_2 > li {
  padding: 1rem 0 0 0;
  white-space: nowrap;
}
.nav_main .level_2 > li:last-of-type {
  padding-bottom: 1rem;
}
.nav_main .level_2 > li a,
.nav_main .level_2 > li strong {
  display: block;
  margin: 0;
  padding-right: 1rem;
  padding-left: 1rem;
}
.nav_main .level_3 a,
.nav_main .level_3 strong {
  padding-inline-start: 2rem;
  padding-inline-end: 1rem;
}

.pagination {
  margin-top: 3em;
}
.pagination p {
  white-space: nowrap;
}
.pagination ul {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.pagination ul li {
  list-style-type: none;
}
.pagination ul li a,
.pagination ul li strong {
  display: inline-block;
  padding: 0.5em 1rem;
  text-decoration: none;
  background-color: var(--primary-900);
  color: var(--neutral-000);
}
.pagination ul li a:hover,
.pagination ul li strong:hover {
  cursor: pointer;
}
.pagination ul li strong.active {
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

.layout_latest .teaser > *:where(:not(:first-child)) {
  margin-top: var(--paragraph-space, 0.625em);
}
.layout_latest .teaser h2 {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  line-height: 1;
}
.layout_latest .teaser h3 {
  font-family: Figtree, var(--font-fallback-default);
  font-weight: 800;
  line-height: 1.2;
}
.layout_latest .teaser h2 a,
.layout_latest .teaser h3 a {
  text-decoration: none;
  line-height: 1.2;
}

.content-accordion h1:has(+ h2), .content-accordion h2:has(+ h3), .content-accordion h3:has(+ h4), .content-accordion h4:has(+ h5), .content-accordion h5:has(+ h6) {
  margin-block-end: 0.75em;
}
.content-accordion .handorgel__header svg {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  vertical-align: sub;
  stroke-width: 2;
  transition: transform 0.125s ease-out;
}
.content-accordion .handorgel__header--open svg {
  transition: transform 0.125s ease-out;
  transform: rotate(90deg);
}
.content-accordion .handorgel__content__inner h1, .content-accordion .handorgel__content__inner h2, .content-accordion .handorgel__content__inner h3, .content-accordion .handorgel__content__inner h4, .content-accordion .handorgel__content__inner h5, .content-accordion .handorgel__content__inner h6 {
  margin-block-start: unset;
}
.content-accordion .handorgel__content__inner .content-text {
  margin-block-end: unset;
}

.content-code code {
  max-width: 80ch;
}

dl {
  padding-left: 0.5rem;
  border-left: 5px solid var(--neutral-200);
}
dl dt {
  font-weight: 800;
}
dl dd a {
  color: currentColor;
}
dl dd:not(:last-of-type) {
  margin-block-end: 1rem;
}

.content-download a,
.content-downloads a {
  min-inline-size: fit-content;
  display: inline flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5em 0.5rem;
  background-color: var(--primary-700);
  border-radius: 0.25rem;
  font-size: 0.875rem;
  color: var(--neutral-100);
  text-decoration: none;
}
.content-download a svg,
.content-downloads a svg {
  flex-shrink: 0;
  stroke-width: 1.5;
  stroke: currentColor;
}
.content-download a:hover,
.content-downloads a:hover {
  background-color: var(--primary-800);
  color: var(--neutral-100);
}
.content-download a:hover svg,
.content-downloads a:hover svg {
  stroke: var(--neutral-100);
}

.content-downloads ul {
  padding-inline-start: unset;
  list-style-type: none;
}
.content-downloads ul li + li {
  margin-block-start: var(--flow-spacer, 1rem);
}

.content-gallery--cols-5 ul {
  list-style-type: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 0.375rem;
}
@media screen and (max-width: 53.625em) {
  .content-gallery--cols-5 ul {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  }
}
@media screen and (max-width: 33.375em) {
  .content-gallery--cols-5 ul {
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
  }
}
.content-gallery--cols-5 ul img {
  width: 100%;
}
.content-gallery--cols-5 ul figcaption {
  display: none;
}

.content-gallery--cols-1 ul,
.content-gallery--cols-2 ul,
.content-gallery--cols-3 ul,
.content-gallery--cols-4 ul {
  list-style-type: none;
  padding: 0;
  display: flex;
  gap: 0.5rem 0.5em;
}

@media screen and (max-width: 25em) {
  .content-gallery--cols-4 ul {
    flex-wrap: wrap;
    gap: 0.375em 2%;
  }
  .content-gallery--cols-4 ul li {
    flex: 0 1 48%;
  }
}

.content-toplink {
  border-block-end: 1px solid var(--neutral-200);
  display: flex;
  justify-content: flex-end;
}
.content-toplink a {
  color: var(--neutral-700);
  text-decoration: none;
  cursor: pointer;
}
.content-toplink a svg {
  display: inline-block;
  width: 1.75rem;
  height: 1.75rem;
  padding-inline-end: 0.5rem;
  transform: translateY(0.375rem);
}
.content-toplink a:hover svg {
  stroke: var(--accent-500);
}

.content-player audio {
  max-width: 100%;
}
.content-player video {
  width: min(100%, 60rem);
  height: auto;
}

.content-youtube,
.content-vimeo {
  margin-block-end: 3rem;
}
.content-youtube figure.aspect,
.content-vimeo figure.aspect {
  position: relative;
  width: min(100%, 60rem);
  height: auto;
}
.content-youtube figure.aspect.aspect--16\:9,
.content-vimeo figure.aspect.aspect--16\:9 {
  aspect-ratio: 16/9;
}
.content-youtube figure.aspect.aspect--16\:10,
.content-vimeo figure.aspect.aspect--16\:10 {
  aspect-ratio: 16/10;
}
.content-youtube figure.aspect.aspect--21\:9,
.content-vimeo figure.aspect.aspect--21\:9 {
  aspect-ratio: 21/9;
}
.content-youtube figure.aspect.aspect--4\:3,
.content-vimeo figure.aspect.aspect--4\:3 {
  aspect-ratio: 4/3;
}
.content-youtube figure.aspect.aspect--2\:3,
.content-vimeo figure.aspect.aspect--2\:3 {
  aspect-ratio: 2/3;
}
.content-youtube figure.aspect iframe,
.content-vimeo figure.aspect iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--neutral-200);
  background-color: var(--neutral-100);
}
.content-youtube figure.aspect figcaption,
.content-vimeo figure.aspect figcaption {
  margin-block-start: unset;
  position: absolute;
  left: 0.25rem;
  bottom: -1.5rem;
}

.content-swiper {
  width: min(400px, 100%);
}
.content-swiper .content-image {
  margin-block-end: unset;
}
.content-swiper .swiper-button-prev,
.content-swiper .swiper-button-next {
  background: none;
  color: white !important;
}
.content-swiper .swiper-pagination-bullets {
  bottom: 0 !important;
}
.content-swiper .swiper-pagination-bullet-active {
  background: var(--accent-500) !important;
}

.content-text.media .contentwrapper {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  column-gap: 1.5rem;
}
@media screen and (min-width: 48em) {
  .content-text.media--left .contentwrapper, .content-text.media--right .contentwrapper {
    flex-direction: row;
  }
  .content-text.media--left .contentwrapper figure, .content-text.media--right .contentwrapper figure {
    flex: 0 0 auto;
  }
  .content-text.media--left .contentwrapper .rte, .content-text.media--right .contentwrapper .rte {
    flex: 0 1 auto;
  }
}
@media (min-width: 48em) {
  .content-text.media--right .contentwrapper {
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
}

.content-text.box {
  height: fit-content;
  padding: 1rem;
  background-color: var(--neutral-200);
  border-radius: 0.125rem;
  box-shadow: 0px 6px 5px rgba(0, 0, 0, 0.012), 0px 22px 18px rgba(0, 0, 0, 0.018), 0px 100px 80px rgba(0, 0, 0, 0.03);
}

.call-out {
  width: fit-content;
  padding: 1rem;
  background-color: var(--primary-100);
}

.content-rsce-bild-bild .content {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4%;
}
.content-rsce-bild-bild .content figure {
  width: 48%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.content-rsce-bild-bild .content figure figcaption {
  display: none;
}
.content-rsce-bild-bild .content.gap_small figure {
  width: unset;
}
.content-rsce-bild-bild .content.gap_zero {
  gap: unset;
}
.content-rsce-bild-bild .content.gap_zero figure {
  width: unset;
}
@media screen and (max-width: 30em) {
  .content-rsce-bild-bild .content {
    flex-direction: column;
  }
  .content-rsce-bild-bild .content figure {
    all: unset;
  }
}

.mod_article.hero.default .inside .content-rsce-hero-default {
  display: grid;
  isolation: isolate;
  grid-template-columns: 1fr minmax(auto, 64rem) 1fr;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_image {
  grid-row: 1/2;
  grid-column: 1/4;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_image img {
  width: 100%;
  height: 70vh;
  object-fit: cover;
  background-color: var(--neutral-100);
}
@media (max-width: 40em) {
  .mod_article.hero.default .inside .content-rsce-hero-default .hero_image img {
    height: 50vh;
  }
}
@media (max-width: 30em) {
  .mod_article.hero.default .inside .content-rsce-hero-default .hero_image img {
    height: 40vh;
  }
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_image figcaption {
  display: none;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text {
  padding-inline: 1rem;
  grid-row: 1/2;
  grid-column: 2/3;
  margin-block-end: clamp(1.5rem, 0.333rem + 4.167vw, 3rem);
  color: var(--neutral-000);
  text-shadow: 0px 6px 5px rgba(0, 0, 0, 0.012), 0px 22px 18px rgba(0, 0, 0, 0.018), 0px 100px 80px rgba(0, 0, 0, 0.03);
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text.left {
  justify-self: start;
  align-self: flex-end;
  text-align: left;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text.center {
  justify-self: center;
  align-self: flex-end;
  text-align: center;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text.right {
  justify-self: end;
  align-self: flex-end;
  text-align: right;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text.center-vh {
  justify-self: center;
  align-self: center;
  text-align: center;
  margin-block-end: unset;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text h1 {
  margin-block-end: unset;
  font-size: clamp(3rem, 1.444rem + 5.556vw, 5rem);
  font-weight: 800;
  color: var(--neutral-000);
  line-height: 1.1;
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text p {
  margin-block-end: unset;
  max-width: unset;
  font-weight: 800;
  font-size: clamp(1rem, 0.611rem + 1.389vw, 1.5rem);
}
@supports (text-wrap: balance) {
  .mod_article.hero.default .inside .content-rsce-hero-default .hero_text p {
    text-wrap: balance;
  }
}

.mod_article.hero.default.slim .inside .hero_image img {
  height: 40vh;
}

.mod_article.hero.default .inside .content-rsce-hero-default::after {
  grid-row: 1/2;
  grid-column: 1/4;
  content: "";
  background: linear-gradient(hsla(0, 0%, 13%, 0.3), hsla(0, 0%, 13%, 0.3));
}
.mod_article.hero.default .inside .content-rsce-hero-default .hero_text {
  z-index: 1;
}

.content-rsce-text-bild {
  --flex-gap: 1rem;
  display: flex;
  flex-direction: column;
  gap: var(--flex-gap, clamp(2rem, 1.6273rem + 1.3311vw, 3rem));
}
@media screen and (min-width: 48em) {
  .content-rsce-text-bild.media--left, .content-rsce-text-bild.media--right {
    flex-direction: row;
  }
  .content-rsce-text-bild.media--left figure,
  .content-rsce-text-bild.media--left .textblock, .content-rsce-text-bild.media--right figure,
  .content-rsce-text-bild.media--right .textblock {
    margin-block-end: unset;
  }
  .content-rsce-text-bild.media--left.image-start figure, .content-rsce-text-bild.media--right.image-start figure {
    align-self: start;
  }
  .content-rsce-text-bild.media--left.image-center figure, .content-rsce-text-bild.media--right.image-center figure {
    align-self: center;
  }
  .content-rsce-text-bild.media--left.image-end figure, .content-rsce-text-bild.media--right.image-end figure {
    align-self: end;
  }
  .content-rsce-text-bild.media--left.text-start .textblock, .content-rsce-text-bild.media--right.text-start .textblock {
    align-self: start;
  }
  .content-rsce-text-bild.media--left.text-center .textblock, .content-rsce-text-bild.media--right.text-center .textblock {
    align-self: center;
  }
  .content-rsce-text-bild.media--left.text-end .textblock, .content-rsce-text-bild.media--right.text-end .textblock {
    align-self: end;
  }
}

.ce_rsce_text_download {
  --flow-space: 1rem;
  max-inline-size: 15rem;
  padding: 0.75rem;
  background-color: var(--neutral-100);
  border-radius: 0.25rem;
}

.content-rsce-text-text h1, .content-rsce-text-text h2, .content-rsce-text-text h3, .content-rsce-text-text h4, .content-rsce-text-text h5, .content-rsce-text-text h6 {
  margin: unset;
  margin-block-end: clamp(1rem, 0.6957rem + 1.087vw, 2rem);
  width: fit-content;
}
.content-rsce-text-text .text_2c {
  display: grid;
  grid-template-columns: repeat(2, 48%);
  column-gap: 4%;
}
.content-rsce-text-text .text_2c.flow-reset > * + * {
  margin-block-start: unset;
}
@media screen and (max-width: 40em) {
  .content-rsce-text-text .text_2c {
    grid-template-columns: 1fr;
    column-gap: unset;
  }
}
.content-rsce-text-text .text_2c .rte h1, .content-rsce-text-text .text_2c .rte h2, .content-rsce-text-text .text_2c .rte h3, .content-rsce-text-text .text_2c .rte h4, .content-rsce-text-text .text_2c .rte h5, .content-rsce-text-text .text_2c .rte h6 {
  margin: unset;
  width: fit-content;
}
.content-rsce-text-text .text_2c .rte p {
  text-align: left;
}
.content-rsce-text-text .text_2c .rte ul li {
  font-size: clamp(1rem, 0.962rem + 0.1359vw, 1.125rem);
}

.center-button-on-image {
  display: grid;
  grid-template-columns: 1fr fit-content 1fr;
  grid-template-rows: 1fr fit-content 1fr;
}
.center-button-on-image :first-child {
  grid-column: 1/4;
  grid-row: 1/4;
}
.center-button-on-image :last-child {
  grid-column: 2/3;
  grid-row: 2/3;
}

.mod_article.container {
  container-type: inline-size;
  container-name: modArticle;
}

@container modArticle (max-inline-size: 1100px) {}
.mod_article.even-columns .inside,
.content-element-group.even-columns .group-inside {
  display: grid;
  gap: var(--grid-gap, 1.5rem);
}
@media screen and (min-width: 48em) {
  .mod_article.even-columns .inside,
  .content-element-group.even-columns .group-inside {
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
  }
}

.content-element-group.text-bild-1-1 {
  display: grid;
  gap: var(--grid-gap, 1.5rem);
}
@media screen and (min-width: 48em) {
  .content-element-group.text-bild-1-1 {
    grid-template-columns: 1fr 1fr;
  }
  .content-element-group.text-bild-1-1 .content-text.text-center {
    align-content: center;
    justify-items: center;
    text-align: center;
  }
}

.flex-fit .inside,
.content-element-group.flex-fit .group-inside {
  display: flex;
  flex-direction: column;
  gap: var(--flex-gap, clamp(2rem, 1.6273rem + 1.3311vw, 3rem));
}
@media screen and (min-width: 48em) {
  .flex-fit .inside,
  .content-element-group.flex-fit .group-inside {
    flex-direction: row;
  }
}

.flex-even-columns,
.flex-even-columns .inside,
.content-element-group.flex-even-columns .group-inside {
  display: flex;
  flex-direction: column;
  gap: var(--flex-gap, clamp(2rem, 1.6273rem + 1.3311vw, 3rem));
}
@media screen and (min-width: 48em) {
  .flex-even-columns,
  .flex-even-columns .inside,
  .content-element-group.flex-even-columns .group-inside {
    flex-direction: row;
  }
  .flex-even-columns > *,
  .flex-even-columns .inside > *,
  .content-element-group.flex-even-columns .group-inside > * {
    flex: 100%;
  }
}

.content-element-group.flex-75-25 .group-inside {
  display: flex;
  flex-direction: column;
  row-gap: 2.5rem;
  column-gap: 4%;
}
@media (min-width: 48em) {
  .content-element-group.flex-75-25 .group-inside {
    flex-direction: row;
  }
  .content-element-group.flex-75-25 .group-inside .flex-75 {
    width: 71%;
  }
  .content-element-group.flex-75-25 .group-inside .flex-25 {
    width: 25%;
    height: fit-content;
  }
}

.grid-3c .gridcontainer {
  display: grid;
  gap: 1.5rem;
}
@media screen and (min-width: 40em) {
  .grid-3c .gridcontainer {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 53em) {
  .grid-3c .gridcontainer {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.mod_article.grid-auto-fit .inside,
.content-element-group.grid-auto-fit .group-inside {
  display: grid;
  gap: var(--grid-gap, 1.5rem);
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
}

.mod_article:not(.hero) {
  padding-block: clamp(3rem, 2.2546rem + 2.6622vw, 5rem);
}

.mod_article:not(.hero, .full-bleed) .inside {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
}

.mod_article.background-color {
  background-color: var(--accent-500);
}
.mod_article.background-color .inside {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
  color: var(--neutral-000);
}
.mod_article.background-color .inside .headline {
  color: inherit;
}

.mod_article.background-color-inside {
  margin-block: 2rem;
  padding-block: unset;
}
.mod_article.background-color-inside .inside {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
  padding-block: clamp(2rem, 1.6273rem + 1.3311vw, 3rem);
  padding-inline: 1rem;
  background-color: var(--primary-100);
  color: var(--neutral-800);
}
.mod_article.background-color-inside .inside .headline {
  color: inherit;
}

.mod_article.full-bleed {
  background-color: var(--primary-200);
}
.mod_article.full-bleed .inside {
  --padding: 1rem * 2;
  width: min(100% - var(--padding));
  margin-inline: auto;
  color: var(--neutral-800);
}
.mod_article.full-bleed .inside .headline {
  color: inherit;
}

.mod_article.flow .inside > *:where(:not(:first-child)) {
  margin-top: var(--flow-space, 2.5rem);
}
.mod_article.flow-x .inside > *:where(:not(:first-child)) {
  --flow-space: x;
  margin-top: var(--flow-space, 2.5rem);
}

[id=wrapper] {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

[id=container] {
  flex: 1 0 auto;
}

.mod_article.two-in-a-row .inside {
  display: flex;
  flex-direction: column;
  gap: var(--flex-gap, clamp(2rem, 1.6273rem + 1.3311vw, 3rem));
}
@media screen and (min-width: 45em) {
  .mod_article.two-in-a-row .inside {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .mod_article.two-in-a-row .inside > * {
    max-width: calc((100% - var(--flex-gap, clamp(2rem, 1.6273rem + 1.3311vw, 3rem))) / 2);
  }
}

.invisible,
.sr-only {
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

*:focus:not(:focus-visible) {
  outline: none;
}

*:focus-visible {
  outline: 2px solid var(--primary-400);
  outline-offset: 1px;
}

a[href*="#main"].invisible:focus,
a[href*="#skip"].invisible:focus {
  clip: inherit;
  clip-path: inherit;
  height: auto;
  overflow: inherit;
  position: relative;
  white-space: inherit;
  width: inherit;
  z-index: 1;
  background-color: white;
  color: black;
  font-weight: 700;
}

.skip-to-main {
  position: absolute;
  left: 0.5rem;
  padding: 0.5rem 1.5rem;
  background-color: var(--neutral-900);
  border-radius: 0 0 0.25rem 0.25rem;
  color: var(--neutral-000);
  text-decoration: none;
  transform: translateY(calc(-100% - 1rem));
  transition: 325ms ease-in;
}
.skip-to-main:focus {
  color: var(--neutral-000);
  text-decoration: none;
  transform: translateY(-1rem);
  transition: 325ms ease-in;
}

.text-center {
  text-align: center;
}

.center-block {
  align-content: center;
  justify-items: center;
}

.color-neutral-000 {
  color: var(--neutral-000);
}

.background-neutral-000 {
  background-color: var(--neutral-000);
}

.color-neutral-050 {
  color: var(--neutral-050);
}

.background-neutral-050 {
  background-color: var(--neutral-050);
}

.color-neutral-100 {
  color: var(--neutral-100);
}

.background-neutral-100 {
  background-color: var(--neutral-100);
}

.color-neutral-200 {
  color: var(--neutral-200);
}

.background-neutral-200 {
  background-color: var(--neutral-200);
}

.color-neutral-300 {
  color: var(--neutral-300);
}

.background-neutral-300 {
  background-color: var(--neutral-300);
}

.color-neutral-400 {
  color: var(--neutral-400);
}

.background-neutral-400 {
  background-color: var(--neutral-400);
}

.color-neutral-500 {
  color: var(--neutral-500);
}

.background-neutral-500 {
  background-color: var(--neutral-500);
}

.color-neutral-600 {
  color: var(--neutral-600);
}

.background-neutral-600 {
  background-color: var(--neutral-600);
}

.color-neutral-700 {
  color: var(--neutral-700);
}

.background-neutral-700 {
  background-color: var(--neutral-700);
}

.color-neutral-800 {
  color: var(--neutral-800);
}

.background-neutral-800 {
  background-color: var(--neutral-800);
}

.color-neutral-900 {
  color: var(--neutral-900);
}

.background-neutral-900 {
  background-color: var(--neutral-900);
}

.color-neutral-1000 {
  color: var(--neutral-1000);
}

.background-neutral-1000 {
  background-color: var(--neutral-1000);
}

.color-primary-100 {
  color: var(--primary-100);
}

.background-primary-100 {
  background-color: var(--primary-100);
}

.color-primary-200 {
  color: var(--primary-200);
}

.background-primary-200 {
  background-color: var(--primary-200);
}

.color-primary-300 {
  color: var(--primary-300);
}

.background-primary-300 {
  background-color: var(--primary-300);
}

.color-primary-400 {
  color: var(--primary-400);
}

.background-primary-400 {
  background-color: var(--primary-400);
}

.color-primary-500 {
  color: var(--primary-500);
}

.background-primary-500 {
  background-color: var(--primary-500);
}

.color-primary-600 {
  color: var(--primary-600);
}

.background-primary-600 {
  background-color: var(--primary-600);
}

.color-primary-700 {
  color: var(--primary-700);
}

.background-primary-700 {
  background-color: var(--primary-700);
}

.color-primary-800 {
  color: var(--primary-800);
}

.background-primary-800 {
  background-color: var(--primary-800);
}

.color-primary-900 {
  color: var(--primary-900);
}

.background-primary-900 {
  background-color: var(--primary-900);
}

.color-accent-100 {
  color: var(--accent-100);
}

.background-accent-100 {
  background-color: var(--accent-100);
}

.color-accent-200 {
  color: var(--accent-200);
}

.background-accent-200 {
  background-color: var(--accent-200);
}

.color-accent-300 {
  color: var(--accent-300);
}

.background-accent-300 {
  background-color: var(--accent-300);
}

.color-accent-400 {
  color: var(--accent-400);
}

.background-accent-400 {
  background-color: var(--accent-400);
}

.color-accent-500 {
  color: var(--accent-500);
}

.background-accent-500 {
  background-color: var(--accent-500);
}

.color-accent-600 {
  color: var(--accent-600);
}

.background-accent-600 {
  background-color: var(--accent-600);
}

.color-accent-700 {
  color: var(--accent-700);
}

.background-accent-700 {
  background-color: var(--accent-700);
}

.color-accent-800 {
  color: var(--accent-800);
}

.background-accent-800 {
  background-color: var(--accent-800);
}

.color-accent-900 {
  color: var(--accent-900);
}

.background-accent-900 {
  background-color: var(--accent-900);
}

.flex-group {
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--flex-column-gap, 0.25rem);
  row-gap: var(--flex-row-gap, 0.25rem);
  width: fit-content;
}

.flex-group.mx-auto {
  justify-content: center;
}

.font-size-200 {
  font-size: var(--fs-200);
}

.font-size-300 {
  font-size: var(--fs-300);
}

.font-size-400 {
  font-size: var(--fs-400);
}

.font-size-500 {
  font-size: var(--fs-500);
}

.font-size-700 {
  font-size: var(--fs-700);
}

.font-size-800 {
  font-size: var(--fs-800);
}

.font-size-900 {
  font-size: var(--fs-900);
}

.small {
  font-size: 0.75rem;
}

.flow > *:where(:not(:first-child)) {
  margin-top: var(--flow-space, 2.5rem);
}

.content-element-flow > *:where(:not(:first-child)) {
  margin-top: var(--content-element-flow, 1rem);
}

.mx-auto {
  margin-inline: auto;
}

.margin-1 {
  margin: 0.0625rem;
}
.margin-block-1 {
  margin: 0.0625rem;
}
.margin-block-start-1 {
  margin-block-start: 0.0625rem;
}
.margin-block-end-1 {
  margin-block-end: 0.0625rem;
}
.margin-inline-1 {
  margin: 0.0625rem;
}
.margin-inline-start-1 {
  margin-inline-start: 0.0625rem;
}
.margin-inline-end-1 {
  margin-inline-end: 0.0625rem;
}

.margin-2 {
  margin: 0.125rem;
}
.margin-block-2 {
  margin: 0.125rem;
}
.margin-block-start-2 {
  margin-block-start: 0.125rem;
}
.margin-block-end-2 {
  margin-block-end: 0.125rem;
}
.margin-inline-2 {
  margin: 0.125rem;
}
.margin-inline-start-2 {
  margin-inline-start: 0.125rem;
}
.margin-inline-end-2 {
  margin-inline-end: 0.125rem;
}

.margin-3 {
  margin: 0.1875rem;
}
.margin-block-3 {
  margin: 0.1875rem;
}
.margin-block-start-3 {
  margin-block-start: 0.1875rem;
}
.margin-block-end-3 {
  margin-block-end: 0.1875rem;
}
.margin-inline-3 {
  margin: 0.1875rem;
}
.margin-inline-start-3 {
  margin-inline-start: 0.1875rem;
}
.margin-inline-end-3 {
  margin-inline-end: 0.1875rem;
}

.margin-4 {
  margin: 0.25rem;
}
.margin-block-4 {
  margin: 0.25rem;
}
.margin-block-start-4 {
  margin-block-start: 0.25rem;
}
.margin-block-end-4 {
  margin-block-end: 0.25rem;
}
.margin-inline-4 {
  margin: 0.25rem;
}
.margin-inline-start-4 {
  margin-inline-start: 0.25rem;
}
.margin-inline-end-4 {
  margin-inline-end: 0.25rem;
}

.margin-5 {
  margin: 0.3125rem;
}
.margin-block-5 {
  margin: 0.3125rem;
}
.margin-block-start-5 {
  margin-block-start: 0.3125rem;
}
.margin-block-end-5 {
  margin-block-end: 0.3125rem;
}
.margin-inline-5 {
  margin: 0.3125rem;
}
.margin-inline-start-5 {
  margin-inline-start: 0.3125rem;
}
.margin-inline-end-5 {
  margin-inline-end: 0.3125rem;
}

.margin-6 {
  margin: 0.375rem;
}
.margin-block-6 {
  margin: 0.375rem;
}
.margin-block-start-6 {
  margin-block-start: 0.375rem;
}
.margin-block-end-6 {
  margin-block-end: 0.375rem;
}
.margin-inline-6 {
  margin: 0.375rem;
}
.margin-inline-start-6 {
  margin-inline-start: 0.375rem;
}
.margin-inline-end-6 {
  margin-inline-end: 0.375rem;
}

.margin-7 {
  margin: 0.4375rem;
}
.margin-block-7 {
  margin: 0.4375rem;
}
.margin-block-start-7 {
  margin-block-start: 0.4375rem;
}
.margin-block-end-7 {
  margin-block-end: 0.4375rem;
}
.margin-inline-7 {
  margin: 0.4375rem;
}
.margin-inline-start-7 {
  margin-inline-start: 0.4375rem;
}
.margin-inline-end-7 {
  margin-inline-end: 0.4375rem;
}

.margin-8 {
  margin: 0.5rem;
}
.margin-block-8 {
  margin: 0.5rem;
}
.margin-block-start-8 {
  margin-block-start: 0.5rem;
}
.margin-block-end-8 {
  margin-block-end: 0.5rem;
}
.margin-inline-8 {
  margin: 0.5rem;
}
.margin-inline-start-8 {
  margin-inline-start: 0.5rem;
}
.margin-inline-end-8 {
  margin-inline-end: 0.5rem;
}

.margin-9 {
  margin: 0.5625rem;
}
.margin-block-9 {
  margin: 0.5625rem;
}
.margin-block-start-9 {
  margin-block-start: 0.5625rem;
}
.margin-block-end-9 {
  margin-block-end: 0.5625rem;
}
.margin-inline-9 {
  margin: 0.5625rem;
}
.margin-inline-start-9 {
  margin-inline-start: 0.5625rem;
}
.margin-inline-end-9 {
  margin-inline-end: 0.5625rem;
}

.margin-10 {
  margin: 0.625rem;
}
.margin-block-10 {
  margin: 0.625rem;
}
.margin-block-start-10 {
  margin-block-start: 0.625rem;
}
.margin-block-end-10 {
  margin-block-end: 0.625rem;
}
.margin-inline-10 {
  margin: 0.625rem;
}
.margin-inline-start-10 {
  margin-inline-start: 0.625rem;
}
.margin-inline-end-10 {
  margin-inline-end: 0.625rem;
}

.margin-11 {
  margin: 0.6875rem;
}
.margin-block-11 {
  margin: 0.6875rem;
}
.margin-block-start-11 {
  margin-block-start: 0.6875rem;
}
.margin-block-end-11 {
  margin-block-end: 0.6875rem;
}
.margin-inline-11 {
  margin: 0.6875rem;
}
.margin-inline-start-11 {
  margin-inline-start: 0.6875rem;
}
.margin-inline-end-11 {
  margin-inline-end: 0.6875rem;
}

.margin-12 {
  margin: 0.75rem;
}
.margin-block-12 {
  margin: 0.75rem;
}
.margin-block-start-12 {
  margin-block-start: 0.75rem;
}
.margin-block-end-12 {
  margin-block-end: 0.75rem;
}
.margin-inline-12 {
  margin: 0.75rem;
}
.margin-inline-start-12 {
  margin-inline-start: 0.75rem;
}
.margin-inline-end-12 {
  margin-inline-end: 0.75rem;
}

.margin-13 {
  margin: 0.8125rem;
}
.margin-block-13 {
  margin: 0.8125rem;
}
.margin-block-start-13 {
  margin-block-start: 0.8125rem;
}
.margin-block-end-13 {
  margin-block-end: 0.8125rem;
}
.margin-inline-13 {
  margin: 0.8125rem;
}
.margin-inline-start-13 {
  margin-inline-start: 0.8125rem;
}
.margin-inline-end-13 {
  margin-inline-end: 0.8125rem;
}

.margin-14 {
  margin: 0.875rem;
}
.margin-block-14 {
  margin: 0.875rem;
}
.margin-block-start-14 {
  margin-block-start: 0.875rem;
}
.margin-block-end-14 {
  margin-block-end: 0.875rem;
}
.margin-inline-14 {
  margin: 0.875rem;
}
.margin-inline-start-14 {
  margin-inline-start: 0.875rem;
}
.margin-inline-end-14 {
  margin-inline-end: 0.875rem;
}

.margin-15 {
  margin: 0.9375rem;
}
.margin-block-15 {
  margin: 0.9375rem;
}
.margin-block-start-15 {
  margin-block-start: 0.9375rem;
}
.margin-block-end-15 {
  margin-block-end: 0.9375rem;
}
.margin-inline-15 {
  margin: 0.9375rem;
}
.margin-inline-start-15 {
  margin-inline-start: 0.9375rem;
}
.margin-inline-end-15 {
  margin-inline-end: 0.9375rem;
}

.margin-16 {
  margin: 1rem;
}
.margin-block-16 {
  margin: 1rem;
}
.margin-block-start-16 {
  margin-block-start: 1rem;
}
.margin-block-end-16 {
  margin-block-end: 1rem;
}
.margin-inline-16 {
  margin: 1rem;
}
.margin-inline-start-16 {
  margin-inline-start: 1rem;
}
.margin-inline-end-16 {
  margin-inline-end: 1rem;
}

.margin-20 {
  margin: 1.25rem;
}
.margin-block-20 {
  margin: 1.25rem;
}
.margin-block-start-20 {
  margin-block-start: 1.25rem;
}
.margin-block-end-20 {
  margin-block-end: 1.25rem;
}
.margin-inline-20 {
  margin: 1.25rem;
}
.margin-inline-start-20 {
  margin-inline-start: 1.25rem;
}
.margin-inline-end-20 {
  margin-inline-end: 1.25rem;
}

.margin-24 {
  margin: 1.5rem;
}
.margin-block-24 {
  margin: 1.5rem;
}
.margin-block-start-24 {
  margin-block-start: 1.5rem;
}
.margin-block-end-24 {
  margin-block-end: 1.5rem;
}
.margin-inline-24 {
  margin: 1.5rem;
}
.margin-inline-start-24 {
  margin-inline-start: 1.5rem;
}
.margin-inline-end-24 {
  margin-inline-end: 1.5rem;
}

.margin-28 {
  margin: 1.75rem;
}
.margin-block-28 {
  margin: 1.75rem;
}
.margin-block-start-28 {
  margin-block-start: 1.75rem;
}
.margin-block-end-28 {
  margin-block-end: 1.75rem;
}
.margin-inline-28 {
  margin: 1.75rem;
}
.margin-inline-start-28 {
  margin-inline-start: 1.75rem;
}
.margin-inline-end-28 {
  margin-inline-end: 1.75rem;
}

.margin-32 {
  margin: 2rem;
}
.margin-block-32 {
  margin: 2rem;
}
.margin-block-start-32 {
  margin-block-start: 2rem;
}
.margin-block-end-32 {
  margin-block-end: 2rem;
}
.margin-inline-32 {
  margin: 2rem;
}
.margin-inline-start-32 {
  margin-inline-start: 2rem;
}
.margin-inline-end-32 {
  margin-inline-end: 2rem;
}

.margin-40 {
  margin: 2.5rem;
}
.margin-block-40 {
  margin: 2.5rem;
}
.margin-block-start-40 {
  margin-block-start: 2.5rem;
}
.margin-block-end-40 {
  margin-block-end: 2.5rem;
}
.margin-inline-40 {
  margin: 2.5rem;
}
.margin-inline-start-40 {
  margin-inline-start: 2.5rem;
}
.margin-inline-end-40 {
  margin-inline-end: 2.5rem;
}

.margin-48 {
  margin: 3rem;
}
.margin-block-48 {
  margin: 3rem;
}
.margin-block-start-48 {
  margin-block-start: 3rem;
}
.margin-block-end-48 {
  margin-block-end: 3rem;
}
.margin-inline-48 {
  margin: 3rem;
}
.margin-inline-start-48 {
  margin-inline-start: 3rem;
}
.margin-inline-end-48 {
  margin-inline-end: 3rem;
}

.margin-56 {
  margin: 3.5rem;
}
.margin-block-56 {
  margin: 3.5rem;
}
.margin-block-start-56 {
  margin-block-start: 3.5rem;
}
.margin-block-end-56 {
  margin-block-end: 3.5rem;
}
.margin-inline-56 {
  margin: 3.5rem;
}
.margin-inline-start-56 {
  margin-inline-start: 3.5rem;
}
.margin-inline-end-56 {
  margin-inline-end: 3.5rem;
}

.margin-64 {
  margin: 4rem;
}
.margin-block-64 {
  margin: 4rem;
}
.margin-block-start-64 {
  margin-block-start: 4rem;
}
.margin-block-end-64 {
  margin-block-end: 4rem;
}
.margin-inline-64 {
  margin: 4rem;
}
.margin-inline-start-64 {
  margin-inline-start: 4rem;
}
.margin-inline-end-64 {
  margin-inline-end: 4rem;
}

.margin-80 {
  margin: 5rem;
}
.margin-block-80 {
  margin: 5rem;
}
.margin-block-start-80 {
  margin-block-start: 5rem;
}
.margin-block-end-80 {
  margin-block-end: 5rem;
}
.margin-inline-80 {
  margin: 5rem;
}
.margin-inline-start-80 {
  margin-inline-start: 5rem;
}
.margin-inline-end-80 {
  margin-inline-end: 5rem;
}

.padding-1 {
  padding: 0.0625rem;
}
.padding-block-1 {
  padding: 0.0625rem;
}
.padding-block-start-1 {
  padding-block-start: 0.0625rem;
}
.padding-block-end-1 {
  padding-block-end: 0.0625rem;
}
.padding-inline-1 {
  padding: 0.0625rem;
}
.padding-inline-start-1 {
  padding-inline-start: 0.0625rem;
}
.padding-inline-end-1 {
  padding-inline-end: 0.0625rem;
}

.padding-2 {
  padding: 0.125rem;
}
.padding-block-2 {
  padding: 0.125rem;
}
.padding-block-start-2 {
  padding-block-start: 0.125rem;
}
.padding-block-end-2 {
  padding-block-end: 0.125rem;
}
.padding-inline-2 {
  padding: 0.125rem;
}
.padding-inline-start-2 {
  padding-inline-start: 0.125rem;
}
.padding-inline-end-2 {
  padding-inline-end: 0.125rem;
}

.padding-3 {
  padding: 0.1875rem;
}
.padding-block-3 {
  padding: 0.1875rem;
}
.padding-block-start-3 {
  padding-block-start: 0.1875rem;
}
.padding-block-end-3 {
  padding-block-end: 0.1875rem;
}
.padding-inline-3 {
  padding: 0.1875rem;
}
.padding-inline-start-3 {
  padding-inline-start: 0.1875rem;
}
.padding-inline-end-3 {
  padding-inline-end: 0.1875rem;
}

.padding-4 {
  padding: 0.25rem;
}
.padding-block-4 {
  padding: 0.25rem;
}
.padding-block-start-4 {
  padding-block-start: 0.25rem;
}
.padding-block-end-4 {
  padding-block-end: 0.25rem;
}
.padding-inline-4 {
  padding: 0.25rem;
}
.padding-inline-start-4 {
  padding-inline-start: 0.25rem;
}
.padding-inline-end-4 {
  padding-inline-end: 0.25rem;
}

.padding-5 {
  padding: 0.3125rem;
}
.padding-block-5 {
  padding: 0.3125rem;
}
.padding-block-start-5 {
  padding-block-start: 0.3125rem;
}
.padding-block-end-5 {
  padding-block-end: 0.3125rem;
}
.padding-inline-5 {
  padding: 0.3125rem;
}
.padding-inline-start-5 {
  padding-inline-start: 0.3125rem;
}
.padding-inline-end-5 {
  padding-inline-end: 0.3125rem;
}

.padding-6 {
  padding: 0.375rem;
}
.padding-block-6 {
  padding: 0.375rem;
}
.padding-block-start-6 {
  padding-block-start: 0.375rem;
}
.padding-block-end-6 {
  padding-block-end: 0.375rem;
}
.padding-inline-6 {
  padding: 0.375rem;
}
.padding-inline-start-6 {
  padding-inline-start: 0.375rem;
}
.padding-inline-end-6 {
  padding-inline-end: 0.375rem;
}

.padding-7 {
  padding: 0.4375rem;
}
.padding-block-7 {
  padding: 0.4375rem;
}
.padding-block-start-7 {
  padding-block-start: 0.4375rem;
}
.padding-block-end-7 {
  padding-block-end: 0.4375rem;
}
.padding-inline-7 {
  padding: 0.4375rem;
}
.padding-inline-start-7 {
  padding-inline-start: 0.4375rem;
}
.padding-inline-end-7 {
  padding-inline-end: 0.4375rem;
}

.padding-8 {
  padding: 0.5rem;
}
.padding-block-8 {
  padding: 0.5rem;
}
.padding-block-start-8 {
  padding-block-start: 0.5rem;
}
.padding-block-end-8 {
  padding-block-end: 0.5rem;
}
.padding-inline-8 {
  padding: 0.5rem;
}
.padding-inline-start-8 {
  padding-inline-start: 0.5rem;
}
.padding-inline-end-8 {
  padding-inline-end: 0.5rem;
}

.padding-9 {
  padding: 0.5625rem;
}
.padding-block-9 {
  padding: 0.5625rem;
}
.padding-block-start-9 {
  padding-block-start: 0.5625rem;
}
.padding-block-end-9 {
  padding-block-end: 0.5625rem;
}
.padding-inline-9 {
  padding: 0.5625rem;
}
.padding-inline-start-9 {
  padding-inline-start: 0.5625rem;
}
.padding-inline-end-9 {
  padding-inline-end: 0.5625rem;
}

.padding-10 {
  padding: 0.625rem;
}
.padding-block-10 {
  padding: 0.625rem;
}
.padding-block-start-10 {
  padding-block-start: 0.625rem;
}
.padding-block-end-10 {
  padding-block-end: 0.625rem;
}
.padding-inline-10 {
  padding: 0.625rem;
}
.padding-inline-start-10 {
  padding-inline-start: 0.625rem;
}
.padding-inline-end-10 {
  padding-inline-end: 0.625rem;
}

.padding-11 {
  padding: 0.6875rem;
}
.padding-block-11 {
  padding: 0.6875rem;
}
.padding-block-start-11 {
  padding-block-start: 0.6875rem;
}
.padding-block-end-11 {
  padding-block-end: 0.6875rem;
}
.padding-inline-11 {
  padding: 0.6875rem;
}
.padding-inline-start-11 {
  padding-inline-start: 0.6875rem;
}
.padding-inline-end-11 {
  padding-inline-end: 0.6875rem;
}

.padding-12 {
  padding: 0.75rem;
}
.padding-block-12 {
  padding: 0.75rem;
}
.padding-block-start-12 {
  padding-block-start: 0.75rem;
}
.padding-block-end-12 {
  padding-block-end: 0.75rem;
}
.padding-inline-12 {
  padding: 0.75rem;
}
.padding-inline-start-12 {
  padding-inline-start: 0.75rem;
}
.padding-inline-end-12 {
  padding-inline-end: 0.75rem;
}

.padding-13 {
  padding: 0.8125rem;
}
.padding-block-13 {
  padding: 0.8125rem;
}
.padding-block-start-13 {
  padding-block-start: 0.8125rem;
}
.padding-block-end-13 {
  padding-block-end: 0.8125rem;
}
.padding-inline-13 {
  padding: 0.8125rem;
}
.padding-inline-start-13 {
  padding-inline-start: 0.8125rem;
}
.padding-inline-end-13 {
  padding-inline-end: 0.8125rem;
}

.padding-14 {
  padding: 0.875rem;
}
.padding-block-14 {
  padding: 0.875rem;
}
.padding-block-start-14 {
  padding-block-start: 0.875rem;
}
.padding-block-end-14 {
  padding-block-end: 0.875rem;
}
.padding-inline-14 {
  padding: 0.875rem;
}
.padding-inline-start-14 {
  padding-inline-start: 0.875rem;
}
.padding-inline-end-14 {
  padding-inline-end: 0.875rem;
}

.padding-15 {
  padding: 0.9375rem;
}
.padding-block-15 {
  padding: 0.9375rem;
}
.padding-block-start-15 {
  padding-block-start: 0.9375rem;
}
.padding-block-end-15 {
  padding-block-end: 0.9375rem;
}
.padding-inline-15 {
  padding: 0.9375rem;
}
.padding-inline-start-15 {
  padding-inline-start: 0.9375rem;
}
.padding-inline-end-15 {
  padding-inline-end: 0.9375rem;
}

.padding-16 {
  padding: 1rem;
}
.padding-block-16 {
  padding: 1rem;
}
.padding-block-start-16 {
  padding-block-start: 1rem;
}
.padding-block-end-16 {
  padding-block-end: 1rem;
}
.padding-inline-16 {
  padding: 1rem;
}
.padding-inline-start-16 {
  padding-inline-start: 1rem;
}
.padding-inline-end-16 {
  padding-inline-end: 1rem;
}

.padding-20 {
  padding: 1.25rem;
}
.padding-block-20 {
  padding: 1.25rem;
}
.padding-block-start-20 {
  padding-block-start: 1.25rem;
}
.padding-block-end-20 {
  padding-block-end: 1.25rem;
}
.padding-inline-20 {
  padding: 1.25rem;
}
.padding-inline-start-20 {
  padding-inline-start: 1.25rem;
}
.padding-inline-end-20 {
  padding-inline-end: 1.25rem;
}

.padding-24 {
  padding: 1.5rem;
}
.padding-block-24 {
  padding: 1.5rem;
}
.padding-block-start-24 {
  padding-block-start: 1.5rem;
}
.padding-block-end-24 {
  padding-block-end: 1.5rem;
}
.padding-inline-24 {
  padding: 1.5rem;
}
.padding-inline-start-24 {
  padding-inline-start: 1.5rem;
}
.padding-inline-end-24 {
  padding-inline-end: 1.5rem;
}

.padding-28 {
  padding: 1.75rem;
}
.padding-block-28 {
  padding: 1.75rem;
}
.padding-block-start-28 {
  padding-block-start: 1.75rem;
}
.padding-block-end-28 {
  padding-block-end: 1.75rem;
}
.padding-inline-28 {
  padding: 1.75rem;
}
.padding-inline-start-28 {
  padding-inline-start: 1.75rem;
}
.padding-inline-end-28 {
  padding-inline-end: 1.75rem;
}

.padding-32 {
  padding: 2rem;
}
.padding-block-32 {
  padding: 2rem;
}
.padding-block-start-32 {
  padding-block-start: 2rem;
}
.padding-block-end-32 {
  padding-block-end: 2rem;
}
.padding-inline-32 {
  padding: 2rem;
}
.padding-inline-start-32 {
  padding-inline-start: 2rem;
}
.padding-inline-end-32 {
  padding-inline-end: 2rem;
}

.padding-40 {
  padding: 2.5rem;
}
.padding-block-40 {
  padding: 2.5rem;
}
.padding-block-start-40 {
  padding-block-start: 2.5rem;
}
.padding-block-end-40 {
  padding-block-end: 2.5rem;
}
.padding-inline-40 {
  padding: 2.5rem;
}
.padding-inline-start-40 {
  padding-inline-start: 2.5rem;
}
.padding-inline-end-40 {
  padding-inline-end: 2.5rem;
}

.padding-48 {
  padding: 3rem;
}
.padding-block-48 {
  padding: 3rem;
}
.padding-block-start-48 {
  padding-block-start: 3rem;
}
.padding-block-end-48 {
  padding-block-end: 3rem;
}
.padding-inline-48 {
  padding: 3rem;
}
.padding-inline-start-48 {
  padding-inline-start: 3rem;
}
.padding-inline-end-48 {
  padding-inline-end: 3rem;
}

.padding-56 {
  padding: 3.5rem;
}
.padding-block-56 {
  padding: 3.5rem;
}
.padding-block-start-56 {
  padding-block-start: 3.5rem;
}
.padding-block-end-56 {
  padding-block-end: 3.5rem;
}
.padding-inline-56 {
  padding: 3.5rem;
}
.padding-inline-start-56 {
  padding-inline-start: 3.5rem;
}
.padding-inline-end-56 {
  padding-inline-end: 3.5rem;
}

.padding-64 {
  padding: 4rem;
}
.padding-block-64 {
  padding: 4rem;
}
.padding-block-start-64 {
  padding-block-start: 4rem;
}
.padding-block-end-64 {
  padding-block-end: 4rem;
}
.padding-inline-64 {
  padding: 4rem;
}
.padding-inline-start-64 {
  padding-inline-start: 4rem;
}
.padding-inline-end-64 {
  padding-inline-end: 4rem;
}

.padding-80 {
  padding: 5rem;
}
.padding-block-80 {
  padding: 5rem;
}
.padding-block-start-80 {
  padding-block-start: 5rem;
}
.padding-block-end-80 {
  padding-block-end: 5rem;
}
.padding-inline-80 {
  padding: 5rem;
}
.padding-inline-start-80 {
  padding-inline-start: 5rem;
}
.padding-inline-end-80 {
  padding-inline-end: 5rem;
}

.wrapper {
  --padding: 1rem * 2;
  --max-width: 64rem;
  width: min(100% - var(--padding), var(--max-width));
  margin-inline: auto;
}

.wrapper[data-type=narrow] {
  --max-width: 40rem;
}

.wrapper[data-type=wide] {
  --max-width: 75rem;
}

.wrapper[data-type=full-bleed] {
  --max-width: 100%;
}

@layer reset, defaults, theme;

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