/* Source common/css/styles/screen/accessibility.scss */

.visible_for_screen_reader {
  border: 0;
  clip: rect(0.0625rem, 0.0625rem, 0.0625rem, 0.0625rem);
  height: 0.0625rem;
  left: -624.9375rem;
  overflow: hidden;
  padding: 0;
  position: absolute;
  top: -624.9375rem;
  width: 0.0625rem;
}

abbr {
  text-decoration: none;
}

address {
  font-style: normal;
}

/* Source common/css/styles/screen/address.scss */

.contact_wrapper {
  display: flex;
  flex-wrap: wrap;
}
.contact_wrapper address {
  display: flex;
  flex-wrap: wrap;
}
.contact_wrapper p {
  margin-right: 2.25em;
  margin-bottom: 0;
}
.contact_wrapper .postal_address, .contact_wrapper .contacts {
  margin-bottom: 0.75em;
}
.contact_wrapper .postal_address > span {
  display: block;
}

.contact {
  display: flex;
}
.contact p {
  margin-bottom: 0;
}
.contact > span {
  margin-right: 0.25em;
}

.address_vcard_button {
  margin: 0.75em 0;
}

.address_call_button {
  margin: 0.75em 0;
}

/* Source common/css/styles/screen/aside.scss */

aside.aside {
  margin-bottom: 3em;
}
@media (min-width: 20rem) {
  aside.aside {
    margin-bottom: calc(3em + 3 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  aside.aside {
    margin-bottom: 6em;
  }
}
@media (max-width: 61.8125rem) {
  aside.aside {
    padding-top: 1.5em;
  }
}

/* Source common/css/styles/screen/atikon_address.scss */

.atikon_logo {
  height: 100%;
}

/* Source common/css/styles/screen/author.scss */

.author_rotate {
  transform-origin: bottom right;
  transform: rotate(-90deg);
}

.author {
  display: block;
  fill: #fff;
  height: 0.8125rem;
  line-height: 0.8125rem;
  transition: fill 300ms;
  width: 4.625rem;
}
.author:focus, .author:hover {
  fill: rgba(255, 255, 255, 0.75);
}

/* Source common/css/styles/screen/breadcrumbs.scss */

.breadcrumbs {
  display: none;
}

/* Source common/css/styles/screen/button.scss */

.button {
  border-radius: 0;
  padding: 0 1.5em;
  cursor: pointer;
  background: #982e2e;
  border: 0.0625rem solid #982e2e;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
}
.button > span {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  .button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .button > span {
    min-height: 3.125rem;
  }
}
.button .icon {
  fill: #fff;
  flex-shrink: 0;
  height: 1.5rem;
  transition: fill 300ms;
  width: 1.5rem;
}
.button .text {
  font-weight: 400;
  padding: 0.375em 0;
}
.button .icon + .text {
  padding-left: 0.4995em;
}
.button:focus-visible {
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
  outline: 0.125rem solid #000000;
  outline-offset: 0.125rem;
  box-shadow: 0 0 0 0.375rem #fff;
}
.button:focus-visible .icon {
  fill: #181716;
}
.button:hover {
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
}
.button:hover .icon {
  fill: #181716;
}
.button:active, .button.active {
  background: #181716;
  border: 0.0625rem solid #181716;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
}
.button:active > span, .button.active > span {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  .button:active > span, .button.active > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .button:active > span, .button.active > span {
    min-height: 3.125rem;
  }
}
.button:active .icon, .button.active .icon {
  fill: #fff;
  flex-shrink: 0;
  height: 1.5rem;
  transition: fill 300ms;
  width: 1.5rem;
}
.button:active .text, .button.active .text {
  font-weight: 400;
  padding: 0.375em 0;
}
.button:active .icon + .text, .button.active .icon + .text {
  padding-left: 0.4995em;
}
.button.bottom_spacing {
  margin-bottom: 0.75em;
}

.button_overview {
  display: flex;
  flex-wrap: wrap;
  padding-top: 0.75em;
}
.button_overview .button {
  margin: 0 0.75em 0.75em 0;
}

/* Source common/css/styles/screen/bypass_links.scss */

.bypass_links {
  left: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  position: fixed;
  top: 0;
  z-index: 6000;
}
.bypass_links li {
  display: block;
  width: 20rem;
}
.bypass_links a {
  background: #000000;
  color: #fff;
  display: inline-block;
  font-size: 88.889%;
  height: 0.0625rem;
  left: -624.9375rem;
  overflow: hidden;
  padding: 0.375em;
  position: absolute;
  text-decoration: underline;
  top: -624.9375rem;
  width: 0.0625rem;
}
.bypass_links a:focus {
  color: #fff;
  height: auto;
  left: 0.375em;
  top: 0.375em;
  width: auto;
}

/* Source common/css/styles/screen/company_logo.scss */

.company_logo {
  display: block;
  position: relative;
  z-index: 1;
  width: 11.875rem;
}
@media (min-width: 20rem) {
  .company_logo {
    width: calc(11.875rem + 11.875 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .company_logo {
    width: 23.75rem;
  }
}
@media (min-width: 75rem) {
  .company_logo {
    width: calc(23.75rem + 8.4375 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .company_logo {
    width: 32.1875rem;
  }
}

/* Source common/css/styles/screen/cookie_banner.scss */

.cookie_banner {
  display: grid;
  position: fixed;
  max-height: 100vh;
  overflow-y: auto;
  background: #f0f0f0;
  row-gap: 0.75em;
  border-top: 0.0625rem solid #d6d6d6;
  padding: 0.75em;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9000;
  text-align: center;
  grid-template-areas: "cb_text_policy" "cb_link_privacy" "cb_button_confirm";
}
@media (min-width: 47.5rem) {
  .cookie_banner {
    align-items: center;
    column-gap: 0.3em;
    grid-template-columns: 1fr;
    grid-template-areas: "cb_text_policy cb_button_confirm" "cb_link_privacy cb_button_confirm";
  }
  .cookie_banner .cb_text_policy {
    text-align: left;
  }
  .cookie_banner .cb_link_privacy {
    justify-self: flex-start;
  }
}
.cookie_banner .cb_title_with_svg {
  display: none;
  grid-area: cb_title_with_svg;
}
.cookie_banner .cb_text_policy {
  grid-area: cb_text_policy;
}
.cookie_banner .cb_link_privacy {
  grid-area: cb_link_privacy;
}
.cookie_banner .cb_button_confirm {
  grid-area: cb_button_confirm;
}
.cookie_banner p {
  font-size: 88.889%;
  margin: 0;
  width: 100%;
}
.cookie_banner .close {
  flex: 0 0 auto;
}

/* Source common/css/styles/screen/debug_show_grid.scss */

.debug_show_grid {
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 9999;
}
.debug_show_grid .container {
  height: 100%;
}
.debug_show_grid .container .row {
  height: 100%;
}
@media (min-width: 30rem) {
  .debug_show_grid .container .span3_xsmall {
    display: none;
  }
}
.debug_show_grid .container .span2_small {
  display: none;
}
@media (min-width: 30rem) {
  .debug_show_grid .container .span2_small {
    display: block;
  }
}
@media (min-width: 47.5rem) {
  .debug_show_grid .container .span2_small {
    display: none;
  }
}
.debug_show_grid .container .span1_large {
  display: none;
}
@media (min-width: 47.5rem) {
  .debug_show_grid .container .span1_large {
    display: block;
  }
}
.debug_show_grid .debug_bg_grid {
  background: rgba(255, 0, 0, 0.1);
  height: 100%;
}
.debug_show_grid .debug_page_max_width {
  bottom: 0;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 160rem;
}
.debug_show_grid .debug_page_max_width:before, .debug_show_grid .debug_page_max_width:after {
  background: #f00;
  bottom: 0;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 0.0625rem;
}
.debug_show_grid .debug_page_max_width:before {
  left: 0;
}
.debug_show_grid .debug_page_max_width:after {
  right: 0;
}

/* Source common/css/styles/screen/disclaimer.scss */

.disclaimer {
  background: #f0f0f0;
  border-radius: 0;
  color: #000000;
  font-size: 88.889%;
  margin: 1.5em 0;
  padding: 0.999em 1.5em;
}
.disclaimer a {
  display: inline;
}

/* Source common/css/styles/screen/down_arrow.scss */

.down_arrow {
  align-items: center;
  border: 0.1875rem solid #982e2e;
  bottom: 1.5em;
  display: flex;
  justify-content: center;
  left: 50%;
  line-height: 0;
  position: absolute;
  transform: translateX(-50%);
  z-index: 10;
  border-radius: 1.875rem;
  height: 2.8125rem;
  width: 1.875rem;
}
@media (min-width: 20rem) {
  .down_arrow {
    border-radius: calc(1.875rem + 1.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .down_arrow {
    border-radius: 3.125rem;
  }
}
@media (min-width: 20rem) {
  .down_arrow {
    height: calc(2.8125rem + 1.875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .down_arrow {
    height: 4.6875rem;
  }
}
@media (min-width: 20rem) {
  .down_arrow {
    width: calc(1.875rem + 1.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .down_arrow {
    width: 3.125rem;
  }
}
.down_arrow:before {
  animation: bounce 1.8s infinite;
  background: #982e2e;
  content: "";
  display: block;
  transform: translateY(-70%);
  transition: 300ms;
  width: 0.1875rem;
  height: 0.625rem;
}
@media (min-width: 20rem) {
  .down_arrow:before {
    height: calc(0.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .down_arrow:before {
    height: 1.125rem;
  }
}
.down_arrow:focus:before, .down_arrow:hover:before {
  transform: translateY(90%);
}

/* Source common/css/styles/screen/dropdown_menu.scss */

.dropdown_menu {
  display: none;
}
@media (min-width: 75rem) {
  .dropdown_menu {
    align-items: center;
    background: #982e2e;
    display: flex;
    margin-right: 1.5em;
    padding: 0 1.3125em;
  }
}
.dropdown_menu > ul {
  display: flex;
  position: relative;
}
.dropdown_menu > ul li {
  position: relative;
}
.dropdown_menu > ul li:hover > a:after, .dropdown_menu > ul li.hover > a:after {
  opacity: 1;
  width: 100%;
}
.dropdown_menu > ul li:hover > ul, .dropdown_menu > ul li.hover > ul {
  margin-top: 0.625rem;
  opacity: 1;
  transform: scaleY(1);
  visibility: visible;
}
.dropdown_menu > ul > li {
  align-items: center;
  margin-right: 3.75rem;
}
@media (min-width: 75rem) {
  .dropdown_menu > ul > li {
    margin-right: calc(3.75rem + 2.109375 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .dropdown_menu > ul > li {
    margin-right: 5.859375rem;
  }
}
.dropdown_menu > ul > li:last-child {
  margin: 0;
}
.dropdown_menu > ul > li > a {
  align-items: center;
  color: #fff;
  display: flex;
  font-size: 111.111%;
  font-weight: 600;
  hyphens: none;
  padding: 0.375em 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}
.dropdown_menu > ul > li > a:after {
  background: #982e2e;
  bottom: -0.8125rem;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  opacity: 0;
  position: absolute;
  transition: opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 0;
}
.dropdown_menu > ul > li > a.active:after, .dropdown_menu > ul > li > a:focus:after, .dropdown_menu > ul > li > a:hover:after {
  opacity: 1;
  width: 100%;
}
.dropdown_menu > ul > li ul {
  background: #982e2e;
  margin: 0 0 0 -1.3125em;
  opacity: 0;
  padding: 0.375em 1.5em;
  position: absolute;
  transform: scaleY(0.75);
  transform-origin: 0 0;
  transition: margin-top 300ms, opacity 300ms, transform 300ms, visibility 300ms;
  visibility: hidden;
  z-index: 1000;
}
.dropdown_menu > ul > li ul:target {
  margin-top: 0.625rem;
  opacity: 1;
  transform: scaleY(1);
  visibility: visible;
}
.dropdown_menu > ul > li ul li {
  margin: 0.75em 0;
}
.dropdown_menu > ul > li ul a {
  hyphens: none;
  justify-content: space-between;
  outline-color: #fff;
  white-space: nowrap;
  color: #fff;
  display: inline-block;
  font-size: 111.111%;
  font-weight: 600;
  padding: 0.125rem 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
}
.dropdown_menu > ul > li ul a:before {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  transition: background 300ms, opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 50%;
}
.dropdown_menu > ul > li ul a:before {
  opacity: 0;
  width: 0;
}
.dropdown_menu > ul > li ul a:focus, .dropdown_menu > ul > li ul a:hover {
  color: #fff;
}
.dropdown_menu > ul > li ul a:focus:before, .dropdown_menu > ul > li ul a:hover:before {
  background: #fff;
  width: 100%;
}
.dropdown_menu > ul > li ul a:focus:before, .dropdown_menu > ul > li ul a:hover:before {
  opacity: 1;
}
.dropdown_menu > ul > li ul a:active, .dropdown_menu > ul > li ul a.active {
  color: #fff;
}
.dropdown_menu > ul > li ul a:active:before, .dropdown_menu > ul > li ul a.active:before {
  background: #fff;
  width: 100%;
}
.dropdown_menu > ul > li ul a:active:before, .dropdown_menu > ul > li ul a.active:before {
  opacity: 1;
  width: 100%;
}

/* Source common/css/styles/screen/footer.scss */

footer {
  position: relative;
}
footer .wrap-top .container {
  position: relative;
}
footer .wrap-top .logo_element {
  display: block;
  position: absolute;
  transform: scaleX(-1);
  z-index: 1;
  bottom: -1rem;
  right: 0.9375rem;
  height: 5.875rem;
  width: 9.6875rem;
}
@media (min-width: 20rem) {
  footer .wrap-top .logo_element {
    bottom: calc(-1rem + -2.125 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .wrap-top .logo_element {
    bottom: -3.125rem;
  }
}
@media (min-width: 20rem) {
  footer .wrap-top .logo_element {
    right: calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .wrap-top .logo_element {
    right: 3.125rem;
  }
}
@media (min-width: 20rem) {
  footer .wrap-top .logo_element {
    height: calc(5.875rem + 11.875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .wrap-top .logo_element {
    height: 17.75rem;
  }
}
@media (min-width: 20rem) {
  footer .wrap-top .logo_element {
    width: calc(9.6875rem + 19.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .wrap-top .logo_element {
    width: 29.1875rem;
  }
}
footer .wrap-top .logo_element svg {
  display: block;
}
footer .wrap-bottom {
  background: #982e2e;
  padding: 4.5em 0;
  position: relative;
}
footer .wrap-bottom .bg-hexagon {
  display: none;
}
footer a,
footer p,
footer .style_h3 {
  color: #fff;
}
footer a {
  outline-color: #fff !important;
}
footer .modular_address {
  margin-bottom: 1.5em;
}
footer .modular_address .company_name {
  color: #fff;
  padding: 0;
}
footer .modular_address .company_name_addition {
  display: block;
}
footer .modular_address p {
  margin: 0;
}
footer .modular_address .entry {
  align-items: center;
  display: flex;
  flex-grow: 1;
  margin-bottom: 0.75em;
}
footer .modular_address .entry .icon {
  display: block;
  fill: #982e2e;
  height: 2.75rem;
  margin-right: 0.9375em;
  padding: 0.625rem;
  position: relative;
  width: 2.75rem;
}
footer .modular_address .entry .icon:before {
  background-color: #fff;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
footer .modular_address .entry .icon svg {
  display: block;
}
footer .modular_address .entry.has_link:hover .icon:before {
  background-color: rgba(255, 255, 255, 0.65);
}
footer .modular_address.first {
  margin: 0 0 0.75em;
}
footer .modular_address.last {
  margin-bottom: 3em;
}
@media (min-width: 20rem) {
  footer .modular_address.last {
    margin-bottom: calc(3em + 1.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .modular_address.last {
    margin-bottom: 4.5em;
  }
}
footer .wrap-related {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
footer .related_links ul {
  display: flex;
}
footer .related_links ul li {
  margin-right: 0.9375rem;
}
@media (min-width: 20rem) {
  footer .related_links ul li {
    margin-right: calc(0.9375rem + 1.40625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  footer .related_links ul li {
    margin-right: 2.34375rem;
  }
}
footer .related_links ul li:last-child {
  margin: 0;
}
footer .related_links a.active {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}
footer .related_links a:active {
  color: #fff;
  text-decoration: none;
}

body.startpage .wrap-top .logo_element {
  opacity: 0.25;
  right: auto;
  transform: scaleX(1);
  bottom: -1.875rem;
  left: 0.9375rem;
  margin-left: -0.46875rem;
}
@media (min-width: 20rem) {
  body.startpage .wrap-top .logo_element {
    bottom: calc(-1.875rem + -3.3125 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .wrap-top .logo_element {
    bottom: -5.1875rem;
  }
}
@media (min-width: 20rem) {
  body.startpage .wrap-top .logo_element {
    left: calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .wrap-top .logo_element {
    left: 3.125rem;
  }
}
@media (min-width: 20rem) {
  body.startpage .wrap-top .logo_element {
    margin-left: calc(-0.46875rem + -1.40625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .wrap-top .logo_element {
    margin-left: -1.875rem;
  }
}
@media (min-width: 57.5rem) {
  body.startpage .wrap-top .logo_element {
    opacity: 1;
  }
}

/* Source common/css/styles/screen/form.scss */

.file {
  display: flex;
  flex-basis: 65%;
  margin: 0 0 0.999em;
  position: relative;
  height: 2.75rem;
}
@media (min-width: 20rem) {
  .file {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file {
    height: 3.25rem;
  }
}
.file.error .file_name {
  border-color: #982e2e;
}
.file .file_name {
  background: #fff;
  border: 0.0625rem solid #d6d6d6;
  border-radius: 0 0 0 0;
  color: #000000;
  flex: 0 1 100%;
  overflow: hidden;
  padding: 0 0.75em;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 8.125rem;
  line-height: 2.625rem;
  height: 2.75rem;
}
@media (min-width: 20rem) {
  .file .file_name {
    line-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file .file_name {
    line-height: 3.125rem;
  }
}
@media (min-width: 20rem) {
  .file .file_name {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file .file_name {
    height: 3.25rem;
  }
}
.file .file_button {
  border-radius: 0 0 0 0;
  flex: 1 0 auto;
  padding: 0 1.5em;
  z-index: 10;
  background: #982e2e;
  border: 0.0625rem solid #982e2e;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
}
.file .file_button > span {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  .file .file_button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file .file_button > span {
    min-height: 3.125rem;
  }
}
.file .file_button .icon {
  fill: #fff;
  flex-shrink: 0;
  height: 1.5rem;
  transition: fill 300ms;
  width: 1.5rem;
}
.file .file_button .text {
  font-weight: 400;
  padding: 0.375em 0;
}
.file .file_button .icon + .text {
  padding-left: 0.4995em;
}
.file .file_button > span {
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  .file .file_button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file .file_button > span {
    min-height: 3.125rem;
  }
}
.file .file_button.focus {
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
}
.file .file_button.focus .icon {
  fill: #181716;
}
.file [type=file] {
  bottom: 0;
  color: transparent;
  cursor: pointer;
  display: block;
  left: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 20;
  height: 2.75rem;
}
@media (min-width: 20rem) {
  .file [type=file] {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file [type=file] {
    height: 3.25rem;
  }
}
.file [type=file]:hover ~ .file_button {
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
}
.file [type=file]:hover ~ .file_button .icon {
  fill: #181716;
}
.file [type=file]:active ~ .file_button {
  background: #181716;
  border: 0.0625rem solid #181716;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
}
.file [type=file]:active ~ .file_button > span {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  .file [type=file]:active ~ .file_button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .file [type=file]:active ~ .file_button > span {
    min-height: 3.125rem;
  }
}
.file [type=file]:active ~ .file_button .icon {
  fill: #fff;
  flex-shrink: 0;
  height: 1.5rem;
  transition: fill 300ms;
  width: 1.5rem;
}
.file [type=file]:active ~ .file_button .text {
  font-weight: 400;
  padding: 0.375em 0;
}
.file [type=file]:active ~ .file_button .icon + .text {
  padding-left: 0.4995em;
}

@media (min-width: 35rem) {
  .formular .button_wrapper {
    text-align: right;
  }
}

button {
  cursor: pointer;
  margin: 0.75em 0;
  outline: 0;
  overflow: hidden;
  padding: 0 1.5em;
  width: 100%;
  height: 2.75rem;
}
@media (min-width: 20rem) {
  button {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  button {
    height: 3.25rem;
  }
}
@media (min-width: 35rem) {
  button {
    width: auto;
  }
}
button::-moz-focus-inner {
  border: 0;
}

/* Source common/css/styles/screen/grid.scss */

.container {
  margin: 0 auto;
  max-width: 100rem;
  min-width: 20rem;
  padding: 0 0.9375rem;
}
@media (min-width: 20rem) {
  .container {
    padding: 0 calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .container {
    padding: 0 3.125rem;
  }
}

.row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: -0.46875rem;
  margin-right: -0.46875rem;
}
@media (min-width: 20rem) {
  .row {
    margin: 0 calc((-0.9375rem / 2) - (2.1875 / 2) * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .row {
    margin: 0 -1.5625rem;
  }
}
.row.no_column_margin {
  margin-left: 0;
  margin-right: 0;
}
.row.no_column_margin > [class*=span] {
  padding-left: 0;
  padding-right: 0;
}
.row.half_column_margin {
  margin-left: -0.234375rem;
  margin-right: -0.234375rem;
}
@media (min-width: 20rem) {
  .row.half_column_margin {
    margin: 0 calc((-0.9375rem / 4) - (2.1875 / 4) * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .row.half_column_margin {
    margin: 0 -0.78125rem;
  }
}
.row.half_column_margin > [class*=span] {
  padding-left: 0.234375rem;
  padding-right: 0.234375rem;
}
@media (min-width: 20rem) {
  .row.half_column_margin > [class*=span] {
    padding: 0 calc((0.9375rem / 4) + (2.1875 / 4) * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .row.half_column_margin > [class*=span] {
    padding: 0 0.78125rem;
  }
}

@media (min-width: 20rem) {
  .row.around_xsmall {
    justify-content: space-around;
  }
  .row.between_xsmall {
    justify-content: space-between;
  }
  .row.start_xsmall {
    justify-content: flex-start;
  }
  .row.center_xsmall {
    justify-content: center;
  }
  .row.end_xsmall {
    justify-content: flex-end;
  }
  .row.top_xsmall {
    align-items: flex-start;
  }
  .row.middle_xsmall {
    align-items: center;
  }
  .row.bottom_xsmall {
    align-items: flex-end;
  }
  .row.baseline_xsmall {
    align-items: baseline;
  }
  .row.reverse_xsmall {
    flex-direction: row-reverse;
  }
}
@media (min-width: 30rem) {
  .row.around_small {
    justify-content: space-around;
  }
  .row.between_small {
    justify-content: space-between;
  }
  .row.start_small {
    justify-content: flex-start;
  }
  .row.center_small {
    justify-content: center;
  }
  .row.end_small {
    justify-content: flex-end;
  }
  .row.top_small {
    align-items: flex-start;
  }
  .row.middle_small {
    align-items: center;
  }
  .row.bottom_small {
    align-items: flex-end;
  }
  .row.baseline_small {
    align-items: baseline;
  }
  .row.reverse_small {
    flex-direction: row-reverse;
  }
}
@media (min-width: 35rem) {
  .row.around_medium {
    justify-content: space-around;
  }
  .row.between_medium {
    justify-content: space-between;
  }
  .row.start_medium {
    justify-content: flex-start;
  }
  .row.center_medium {
    justify-content: center;
  }
  .row.end_medium {
    justify-content: flex-end;
  }
  .row.top_medium {
    align-items: flex-start;
  }
  .row.middle_medium {
    align-items: center;
  }
  .row.bottom_medium {
    align-items: flex-end;
  }
  .row.baseline_medium {
    align-items: baseline;
  }
  .row.reverse_medium {
    flex-direction: row-reverse;
  }
}
@media (min-width: 47.5rem) {
  .row.around_large {
    justify-content: space-around;
  }
  .row.between_large {
    justify-content: space-between;
  }
  .row.start_large {
    justify-content: flex-start;
  }
  .row.center_large {
    justify-content: center;
  }
  .row.end_large {
    justify-content: flex-end;
  }
  .row.top_large {
    align-items: flex-start;
  }
  .row.middle_large {
    align-items: center;
  }
  .row.bottom_large {
    align-items: flex-end;
  }
  .row.baseline_large {
    align-items: baseline;
  }
  .row.reverse_large {
    flex-direction: row-reverse;
  }
}
@media (min-width: 61.875rem) {
  .row.around_xlarge {
    justify-content: space-around;
  }
  .row.between_xlarge {
    justify-content: space-between;
  }
  .row.start_xlarge {
    justify-content: flex-start;
  }
  .row.center_xlarge {
    justify-content: center;
  }
  .row.end_xlarge {
    justify-content: flex-end;
  }
  .row.top_xlarge {
    align-items: flex-start;
  }
  .row.middle_xlarge {
    align-items: center;
  }
  .row.bottom_xlarge {
    align-items: flex-end;
  }
  .row.baseline_xlarge {
    align-items: baseline;
  }
  .row.reverse_xlarge {
    flex-direction: row-reverse;
  }
}
@media (min-width: 75rem) {
  .row.around_xxlarge {
    justify-content: space-around;
  }
  .row.between_xxlarge {
    justify-content: space-between;
  }
  .row.start_xxlarge {
    justify-content: flex-start;
  }
  .row.center_xxlarge {
    justify-content: center;
  }
  .row.end_xxlarge {
    justify-content: flex-end;
  }
  .row.top_xxlarge {
    align-items: flex-start;
  }
  .row.middle_xxlarge {
    align-items: center;
  }
  .row.bottom_xxlarge {
    align-items: flex-end;
  }
  .row.baseline_xxlarge {
    align-items: baseline;
  }
  .row.reverse_xxlarge {
    flex-direction: row-reverse;
  }
}
@media (min-width: 93.75rem) {
  .row.around_xxxlarge {
    justify-content: space-around;
  }
  .row.between_xxxlarge {
    justify-content: space-between;
  }
  .row.start_xxxlarge {
    justify-content: flex-start;
  }
  .row.center_xxxlarge {
    justify-content: center;
  }
  .row.end_xxxlarge {
    justify-content: flex-end;
  }
  .row.top_xxxlarge {
    align-items: flex-start;
  }
  .row.middle_xxxlarge {
    align-items: center;
  }
  .row.bottom_xxxlarge {
    align-items: flex-end;
  }
  .row.baseline_xxxlarge {
    align-items: baseline;
  }
  .row.reverse_xxxlarge {
    flex-direction: row-reverse;
  }
}
[class*=span] {
  flex-basis: 100%;
  max-width: 100%;
  padding-left: 0.46875rem;
  padding-right: 0.46875rem;
}
@media (min-width: 20rem) {
  [class*=span] {
    padding: 0 calc((0.9375rem / 2) + (2.1875 / 2) * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  [class*=span] {
    padding: 0 1.5625rem;
  }
}
[class*=span].span_column {
  display: flex;
  flex-direction: column;
}

@media (min-width: 20rem) {
  .span1_xsmall {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_xsmall {
    order: 1;
  }
}
@media (min-width: 20rem) {
  .span2_xsmall {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_xsmall {
    order: 2;
  }
}
@media (min-width: 20rem) {
  .span3_xsmall {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_xsmall {
    order: 3;
  }
}
@media (min-width: 20rem) {
  .span4_xsmall {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_xsmall {
    order: 4;
  }
}
@media (min-width: 20rem) {
  .span5_xsmall {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_xsmall {
    order: 5;
  }
}
@media (min-width: 20rem) {
  .span6_xsmall {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_xsmall {
    order: 6;
  }
}
@media (min-width: 20rem) {
  .span7_xsmall {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_xsmall {
    order: 7;
  }
}
@media (min-width: 20rem) {
  .span8_xsmall {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_xsmall {
    order: 8;
  }
}
@media (min-width: 20rem) {
  .span9_xsmall {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_xsmall {
    order: 9;
  }
}
@media (min-width: 20rem) {
  .span10_xsmall {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_xsmall {
    order: 10;
  }
}
@media (min-width: 20rem) {
  .span11_xsmall {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_xsmall {
    order: 11;
  }
}
@media (min-width: 20rem) {
  .span12_xsmall {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_xsmall {
    order: 12;
  }
}
@media (min-width: 30rem) {
  .span1_small {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_small {
    order: 1;
  }
}
@media (min-width: 30rem) {
  .span2_small {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_small {
    order: 2;
  }
}
@media (min-width: 30rem) {
  .span3_small {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_small {
    order: 3;
  }
}
@media (min-width: 30rem) {
  .span4_small {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_small {
    order: 4;
  }
}
@media (min-width: 30rem) {
  .span5_small {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_small {
    order: 5;
  }
}
@media (min-width: 30rem) {
  .span6_small {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_small {
    order: 6;
  }
}
@media (min-width: 30rem) {
  .span7_small {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_small {
    order: 7;
  }
}
@media (min-width: 30rem) {
  .span8_small {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_small {
    order: 8;
  }
}
@media (min-width: 30rem) {
  .span9_small {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_small {
    order: 9;
  }
}
@media (min-width: 30rem) {
  .span10_small {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_small {
    order: 10;
  }
}
@media (min-width: 30rem) {
  .span11_small {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_small {
    order: 11;
  }
}
@media (min-width: 30rem) {
  .span12_small {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_small {
    order: 12;
  }
}
@media (min-width: 35rem) {
  .span1_medium {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_medium {
    order: 1;
  }
}
@media (min-width: 35rem) {
  .span2_medium {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_medium {
    order: 2;
  }
}
@media (min-width: 35rem) {
  .span3_medium {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_medium {
    order: 3;
  }
}
@media (min-width: 35rem) {
  .span4_medium {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_medium {
    order: 4;
  }
}
@media (min-width: 35rem) {
  .span5_medium {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_medium {
    order: 5;
  }
}
@media (min-width: 35rem) {
  .span6_medium {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_medium {
    order: 6;
  }
}
@media (min-width: 35rem) {
  .span7_medium {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_medium {
    order: 7;
  }
}
@media (min-width: 35rem) {
  .span8_medium {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_medium {
    order: 8;
  }
}
@media (min-width: 35rem) {
  .span9_medium {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_medium {
    order: 9;
  }
}
@media (min-width: 35rem) {
  .span10_medium {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_medium {
    order: 10;
  }
}
@media (min-width: 35rem) {
  .span11_medium {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_medium {
    order: 11;
  }
}
@media (min-width: 35rem) {
  .span12_medium {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_medium {
    order: 12;
  }
}
@media (min-width: 47.5rem) {
  .span1_large {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_large {
    order: 1;
  }
}
@media (min-width: 47.5rem) {
  .span2_large {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_large {
    order: 2;
  }
}
@media (min-width: 47.5rem) {
  .span3_large {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_large {
    order: 3;
  }
}
@media (min-width: 47.5rem) {
  .span4_large {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_large {
    order: 4;
  }
}
@media (min-width: 47.5rem) {
  .span5_large {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_large {
    order: 5;
  }
}
@media (min-width: 47.5rem) {
  .span6_large {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_large {
    order: 6;
  }
}
@media (min-width: 47.5rem) {
  .span7_large {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_large {
    order: 7;
  }
}
@media (min-width: 47.5rem) {
  .span8_large {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_large {
    order: 8;
  }
}
@media (min-width: 47.5rem) {
  .span9_large {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_large {
    order: 9;
  }
}
@media (min-width: 47.5rem) {
  .span10_large {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_large {
    order: 10;
  }
}
@media (min-width: 47.5rem) {
  .span11_large {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_large {
    order: 11;
  }
}
@media (min-width: 47.5rem) {
  .span12_large {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_large {
    order: 12;
  }
}
@media (min-width: 61.875rem) {
  .span1_xlarge {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_xlarge {
    order: 1;
  }
}
@media (min-width: 61.875rem) {
  .span2_xlarge {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_xlarge {
    order: 2;
  }
}
@media (min-width: 61.875rem) {
  .span3_xlarge {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_xlarge {
    order: 3;
  }
}
@media (min-width: 61.875rem) {
  .span4_xlarge {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_xlarge {
    order: 4;
  }
}
@media (min-width: 61.875rem) {
  .span5_xlarge {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_xlarge {
    order: 5;
  }
}
@media (min-width: 61.875rem) {
  .span6_xlarge {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_xlarge {
    order: 6;
  }
}
@media (min-width: 61.875rem) {
  .span7_xlarge {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_xlarge {
    order: 7;
  }
}
@media (min-width: 61.875rem) {
  .span8_xlarge {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_xlarge {
    order: 8;
  }
}
@media (min-width: 61.875rem) {
  .span9_xlarge {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_xlarge {
    order: 9;
  }
}
@media (min-width: 61.875rem) {
  .span10_xlarge {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_xlarge {
    order: 10;
  }
}
@media (min-width: 61.875rem) {
  .span11_xlarge {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_xlarge {
    order: 11;
  }
}
@media (min-width: 61.875rem) {
  .span12_xlarge {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_xlarge {
    order: 12;
  }
}
@media (min-width: 75rem) {
  .span1_xxlarge {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_xxlarge {
    order: 1;
  }
}
@media (min-width: 75rem) {
  .span2_xxlarge {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_xxlarge {
    order: 2;
  }
}
@media (min-width: 75rem) {
  .span3_xxlarge {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_xxlarge {
    order: 3;
  }
}
@media (min-width: 75rem) {
  .span4_xxlarge {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_xxlarge {
    order: 4;
  }
}
@media (min-width: 75rem) {
  .span5_xxlarge {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_xxlarge {
    order: 5;
  }
}
@media (min-width: 75rem) {
  .span6_xxlarge {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_xxlarge {
    order: 6;
  }
}
@media (min-width: 75rem) {
  .span7_xxlarge {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_xxlarge {
    order: 7;
  }
}
@media (min-width: 75rem) {
  .span8_xxlarge {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_xxlarge {
    order: 8;
  }
}
@media (min-width: 75rem) {
  .span9_xxlarge {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_xxlarge {
    order: 9;
  }
}
@media (min-width: 75rem) {
  .span10_xxlarge {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_xxlarge {
    order: 10;
  }
}
@media (min-width: 75rem) {
  .span11_xxlarge {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_xxlarge {
    order: 11;
  }
}
@media (min-width: 75rem) {
  .span12_xxlarge {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_xxlarge {
    order: 12;
  }
}
@media (min-width: 93.75rem) {
  .span1_xxxlarge {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    min-width: 8.3333333333%;
  }

  .order1_xxxlarge {
    order: 1;
  }
}
@media (min-width: 93.75rem) {
  .span2_xxxlarge {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    min-width: 16.6666666667%;
  }

  .order2_xxxlarge {
    order: 2;
  }
}
@media (min-width: 93.75rem) {
  .span3_xxxlarge {
    flex-basis: 25%;
    max-width: 25%;
    min-width: 25%;
  }

  .order3_xxxlarge {
    order: 3;
  }
}
@media (min-width: 93.75rem) {
  .span4_xxxlarge {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    min-width: 33.3333333333%;
  }

  .order4_xxxlarge {
    order: 4;
  }
}
@media (min-width: 93.75rem) {
  .span5_xxxlarge {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    min-width: 41.6666666667%;
  }

  .order5_xxxlarge {
    order: 5;
  }
}
@media (min-width: 93.75rem) {
  .span6_xxxlarge {
    flex-basis: 50%;
    max-width: 50%;
    min-width: 50%;
  }

  .order6_xxxlarge {
    order: 6;
  }
}
@media (min-width: 93.75rem) {
  .span7_xxxlarge {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    min-width: 58.3333333333%;
  }

  .order7_xxxlarge {
    order: 7;
  }
}
@media (min-width: 93.75rem) {
  .span8_xxxlarge {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    min-width: 66.6666666667%;
  }

  .order8_xxxlarge {
    order: 8;
  }
}
@media (min-width: 93.75rem) {
  .span9_xxxlarge {
    flex-basis: 75%;
    max-width: 75%;
    min-width: 75%;
  }

  .order9_xxxlarge {
    order: 9;
  }
}
@media (min-width: 93.75rem) {
  .span10_xxxlarge {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    min-width: 83.3333333333%;
  }

  .order10_xxxlarge {
    order: 10;
  }
}
@media (min-width: 93.75rem) {
  .span11_xxxlarge {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    min-width: 91.6666666667%;
  }

  .order11_xxxlarge {
    order: 11;
  }
}
@media (min-width: 93.75rem) {
  .span12_xxxlarge {
    flex-basis: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .order12_xxxlarge {
    order: 12;
  }
}

/* Source common/css/styles/screen/header.scss */

header {
  position: relative;
  z-index: 100;
  margin-bottom: 2.25em;
}
@media (min-width: 20rem) {
  header {
    margin-bottom: calc(2.25em + 2.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  header {
    margin-bottom: 4.5em;
  }
}
header .wrap-menu {
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 3;
  padding-top: 1.5em;
}
@media (min-width: 20rem) {
  header .wrap-menu {
    padding-top: calc(1.5em + 0.75 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  header .wrap-menu {
    padding-top: 2.25em;
  }
}
header .wrap-menu .wrap-flex {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}
header .wrap-menu .container.fixed {
  left: 0;
  position: absolute;
  right: 0;
  top: 1.5em;
}
@media (min-width: 20rem) {
  header .wrap-menu .container.fixed {
    top: calc(1.5em + 0.75 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  header .wrap-menu .container.fixed {
    top: 2.25em;
  }
}
header .wrap-menu .menu {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  padding-top: 0rem;
}
@media (min-width: 20rem) {
  header .wrap-menu .menu {
    margin-right: calc(-0.125rem + -0.125 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  header .wrap-menu .menu {
    margin-right: -0.25rem;
  }
}
@media (min-width: 75rem) {
  header .wrap-menu .menu {
    margin-right: calc(-0.1875rem + 0.0625 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  header .wrap-menu .menu {
    margin-right: -0.125rem;
  }
}
@media (min-width: 20rem) {
  header .wrap-menu .menu {
    padding-top: calc(0rem + 1.5625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  header .wrap-menu .menu {
    padding-top: 1.5625rem;
  }
}
header .wrap-sitetitle {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}
header .wrap-sitetitle .container,
header .wrap-sitetitle .wrap-flex {
  height: 100%;
}
header .wrap-sitetitle .wrap-flex {
  align-items: flex-end;
  display: flex;
}

body:not(.startpage) header .wrap-menu .container.fixed {
  position: fixed;
  transition: top 300ms;
}
body:not(.startpage).scrolled_down header .wrap-menu .container.fixed {
  top: 0.75em;
}
@media (min-width: 20rem) {
  body:not(.startpage).scrolled_down header .wrap-menu .container.fixed {
    top: calc(0.75em + 0.375 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body:not(.startpage).scrolled_down header .wrap-menu .container.fixed {
    top: 1.125em;
  }
}

/* Source common/css/styles/screen/header_background.scss */

.header_background {
  background-color: #f0f0f0;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  height: 87dvh;
  position: relative;
  min-height: 30rem;
}
@media (min-width: 20rem) {
  .header_background {
    min-height: calc(30rem + 20 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .header_background {
    min-height: 50rem;
  }
}
.header_background:after, .header_background:before {
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.header_background:after {
  background: linear-gradient(299deg, rgba(255, 255, 255, 0) 57.96%, rgba(255, 255, 255, 0.8) 72.93%, #fff 100.13%);
}
@media (min-width: 61.875rem) {
  .header_background:after {
    background: linear-gradient(282deg, rgba(255, 255, 255, 0) 57.96%, rgba(255, 255, 255, 0.8) 72.93%, #fff 100.13%);
  }
}
.header_background:before {
  background: linear-gradient(30deg, white 0%, rgba(255, 255, 255, 0.85) 35%, rgba(255, 255, 255, 0) 75%);
}
@media (min-width: 61.875rem) {
  .header_background:before {
    background: linear-gradient(181deg, rgba(255, 255, 255, 0) 54.69%, #fff 101.45%);
  }
}
.header_background .logo_element {
  bottom: 0;
  opacity: 0.25;
  position: absolute;
  transform: scaleX(-1);
  z-index: 1;
  bottom: -0.9375rem;
  height: 10rem;
  right: -0.9375rem;
  width: 16.4375rem;
}
@media (min-width: 20rem) {
  .header_background .logo_element {
    bottom: calc(-0.9375rem + -2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .header_background .logo_element {
    bottom: -3.125rem;
  }
}
@media (min-width: 20rem) {
  .header_background .logo_element {
    height: calc(10rem + 20 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .header_background .logo_element {
    height: 30rem;
  }
}
@media (min-width: 20rem) {
  .header_background .logo_element {
    right: calc(-0.9375rem + -0.9375 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .header_background .logo_element {
    right: -1.875rem;
  }
}
@media (min-width: 20rem) {
  .header_background .logo_element {
    width: calc(16.4375rem + 32.9375 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .header_background .logo_element {
    width: 49.375rem;
  }
}

body.startpage .header_background {
  height: 100dvh;
  min-height: 38.4375rem;
}
@media (min-width: 20rem) {
  body.startpage .header_background {
    min-height: calc(38.4375rem + 11.5625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .header_background {
    min-height: 50rem;
  }
}
body.startpage .header_background .logo_element {
  right: auto;
  transform: scaleX(1);
  height: 12.5625rem;
  left: -0.9375rem;
  right: -0.9375rem;
  width: 20.625rem;
}
@media (min-width: 20rem) {
  body.startpage .header_background .logo_element {
    height: calc(12.5625rem + 25.0625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .header_background .logo_element {
    height: 37.625rem;
  }
}
@media (min-width: 20rem) {
  body.startpage .header_background .logo_element {
    left: calc(-0.9375rem + -0.9375 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .header_background .logo_element {
    left: -1.875rem;
  }
}
@media (min-width: 20rem) {
  body.startpage .header_background .logo_element {
    right: calc(-0.9375rem + -0.9375 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .header_background .logo_element {
    right: -1.875rem;
  }
}
@media (min-width: 20rem) {
  body.startpage .header_background .logo_element {
    width: calc(20.625rem + 41.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .header_background .logo_element {
    width: 61.875rem;
  }
}

/* Source common/css/styles/screen/infolist_download_pdf.scss */

.infolist_download {
  align-items: baseline;
  background: #f0f0f0;
  border-radius: 0;
  color: #000000;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 1.5em;
  padding: 1.5em;
}
.infolist_download .infolist_title {
  font-weight: 700;
}
.infolist_download p {
  margin-right: 1.5em;
}

/* Source common/css/styles/screen/infolist_top_link.scss */

.infolist_top_link {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin: 0.75em 0;
}
.infolist_top_link a {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.infolist_top_link .icon {
  display: block;
  fill: #982e2e;
  height: 1.25rem;
  transform: rotate(-90deg);
  width: 1.25rem;
}
.infolist_top_link .text {
  font-size: 88.889%;
}

/* Source common/css/styles/screen/infolist_unternehmen_online.scss */

.img_container.infolist_graphic_u_online_graphic_small {
  margin-bottom: 3em;
  width: 18.125rem;
}
@media (min-width: 47.5rem) {
  .img_container.infolist_graphic_u_online_graphic_small {
    display: none;
  }
}
.img_container.infolist_graphic_u_online_graphic_large {
  margin: 1.5em 0 3em;
  max-width: 34.375rem;
}
@media (min-width: 47.5rem) {
  .img_container.infolist_graphic_u_online_graphic_large {
    display: block;
  }
}

.infolist_graphic_u_online_graphic_small {
  display: block;
  margin: 1.5em auto;
}

.infolist_graphic_u_online_graphic_large {
  display: none;
}

.u_online_2_headline {
  fill: #000000;
  font-family: "Roboto", sans-serif;
  font-size: 90%;
  text-anchor: middle;
}
@media (min-width: 47.5rem) {
  .u_online_2_headline {
    font-size: 70%;
  }
}
.u_online_2_headline .strong {
  fill: #000000;
  font-weight: 700;
}

.u_online_text {
  fill: #000000;
  font-family: "Roboto", sans-serif;
  font-size: 90%;
  text-anchor: middle;
}
@media (min-width: 47.5rem) {
  .u_online_text {
    font-size: 70%;
  }
}

.u_online_company_logo {
  fill: #000000;
}

.u_online_warning_icon {
  fill: #000000;
  transition: 300ms;
}

.u_online_euro_icon,
.u_online_check_icon {
  fill: #000000;
  transition: 300ms;
}

.u_online_icon {
  fill: #982e2e;
  transition: 300ms;
}

.u_online_button .normal {
  display: block;
}
.u_online_button .hover {
  display: none;
}
.u_online_button:hover .normal {
  display: none;
}
.u_online_button:hover .hover {
  display: block;
}
.u_online_button:hover .u_online_euro_icon,
.u_online_button:hover .u_online_warning_icon,
.u_online_button:hover .u_online_check_icon {
  fill: #982e2e;
}
.u_online_button:hover .u_online_icon {
  fill: #000000;
}

.u_online_lines {
  fill: #982e2e;
}

/* Source common/css/styles/screen/infolists.scss */

.amount {
  display: block;
  text-align: right;
  white-space: nowrap;
}

.steuerlexikon .amount {
  display: table-cell;
}

.multi_columns li {
  break-inside: avoid;
}
@media (min-width: 47.5rem) {
  .multi_columns {
    column-count: 2;
    column-gap: 3em;
  }
}

.infolist_container_stand_haftung > div {
  margin-top: 3em;
}

.infolist_text_container,
.infolist_object {
  margin-bottom: 1.5em;
}

.infolist_text {
  transition: all 300ms;
}
.infolist_text:focus {
  outline: 0;
}

.infolist_cta_style, .infolist_cta {
  align-items: center;
  background: #982e2e;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 3em 0;
  padding: 3em;
  text-align: center;
  text-decoration: none;
  transition: all 300ms;
}
.infolist_cta_style > *, .infolist_cta > * {
  color: #fff;
  max-width: 50rem;
  transition: color 300ms;
}
.infolist_cta_style:hover, .infolist_cta:hover, .infolist_cta_style:focus, .infolist_cta:focus {
  background: #a3a3a3;
}
.infolist_cta_style:hover > *, .infolist_cta:hover > *, .infolist_cta_style:focus > *, .infolist_cta:focus > * {
  color: #181716;
}

.infolist_teaser_style, .infolist_text_fader_style, .infolist_text_container_boxit_nutzen_fuer_klienten {
  display: flex;
  flex-direction: column;
}
.infolist_teaser_style .infolist_text, .infolist_text_fader_style .infolist_text, .infolist_text_container_boxit_nutzen_fuer_klienten .infolist_text {
  background: #f0f0f0;
  margin-bottom: 1.5em;
  padding: 1.5em;
}
@media (min-width: 61.875rem) {
  .infolist_teaser_style, .infolist_text_fader_style, .infolist_text_container_boxit_nutzen_fuer_klienten {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .infolist_teaser_style .infolist_text, .infolist_text_fader_style .infolist_text, .infolist_text_container_boxit_nutzen_fuer_klienten .infolist_text {
    width: calc(50% - (1.5em / 2));
  }
}

.infolist_text_list_style:not(:has(div > ul)) {
  list-style: url("../../common/images/list-styles/hexagon.svg");
  margin: 0 0 0.75em;
  padding-left: 1.125em;
}
.infolist_text_list_style:not(:has(div > ul)) > .infolist_text {
  display: list-item;
  padding-left: 0.375em;
}

@supports (-moz-appearance: none) {
  .infolist_text_list_style {
    list-style: url("../../common/images/list-styles/hexagon.svg");
    margin: 0 0 0.75em;
    padding-left: 1.125em;
  }
  .infolist_text_list_style > .infolist_text {
    display: list-item;
    padding-left: 0.375em;
  }
}
.infolist_accordion_style .infolist_text, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text {
  background: none;
  margin-bottom: 1.5em;
  padding: 0;
}
.infolist_accordion_style .infolist_text > h3, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h3,
.infolist_accordion_style .infolist_text > h2,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h2 {
  background: #f0f0f0;
  color: #982e2e;
  cursor: pointer;
  margin-bottom: 0;
  padding: 0.75em;
  user-select: none;
  transition: all 300ms;
}
.infolist_accordion_style .infolist_text > h3::before, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h3::before,
.infolist_accordion_style .infolist_text > h2::before,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h2::before {
  -webkit-mask: url("../../common/images/icons/arrow.svg") no-repeat 50% 50%;
  -webkit-mask-size: cover;
  background-color: #982e2e;
  content: "";
  display: inline-block;
  height: 1.25rem;
  margin-bottom: -0.1875rem;
  margin-right: 0.75em;
  mask: url("../../common/images/icons/arrow.svg") no-repeat 50% 50%;
  mask-size: cover;
  position: relative;
  transform: rotate(90deg);
  transition: all 300ms;
  width: 1.25rem;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .infolist_accordion_style .infolist_text > h3, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h3,
.infolist_accordion_style .infolist_text > h2,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h2 {
    text-decoration: underline;
  }
  .infolist_accordion_style .infolist_text > h3::before, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h3::before,
.infolist_accordion_style .infolist_text > h2::before,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > h2::before {
    display: none;
  }
}
.infolist_accordion_style .infolist_text:hover > h3, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:hover > h3,
.infolist_accordion_style .infolist_text:hover > h2,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:hover > h2, .infolist_accordion_style .infolist_text:focus > h3, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > h3,
.infolist_accordion_style .infolist_text:focus > h2,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > h2 {
  background: #e8e8e8;
}
.infolist_accordion_style .infolist_text:focus > *:not(h2):not(h3), .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > *:not(h2):not(h3) {
  letter-spacing: calc((0.875rem + 0.25 * (100vw - 20rem) / (73.75)) * 0);
  font-size: 0.875rem;
}
@media (min-width: 93.75rem) {
  .infolist_accordion_style .infolist_text:focus > *:not(h2):not(h3), .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > *:not(h2):not(h3) {
    letter-spacing: calc(1.125rem * 0);
  }
}
@media (min-width: 20rem) {
  .infolist_accordion_style .infolist_text:focus > *:not(h2):not(h3), .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > *:not(h2):not(h3) {
    font-size: calc(0.875rem + 0.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .infolist_accordion_style .infolist_text:focus > *:not(h2):not(h3), .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > *:not(h2):not(h3) {
    font-size: 1.125rem;
  }
}
.infolist_accordion_style .infolist_text:focus > h3::before, .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > h3::before,
.infolist_accordion_style .infolist_text:focus > h2::before,
.infolist:not(.infolist_boxit) .infolist_text_container .infolist_text:focus > h2::before {
  transform: rotate(0);
}
.infolist_accordion_style .infolist_text > *:not(h2):not(h3), .infolist:not(.infolist_boxit) .infolist_text_container .infolist_text > *:not(h2):not(h3) {
  font-size: 0;
  overflow: hidden;
  padding-top: 0.75em;
  transform-origin: top;
  transition: all 300ms;
}

.infolist_text_fader_style .infolist_text {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: default;
}
.infolist_text_fader_style .infolist_text > h2,
.infolist_text_fader_style .infolist_text > h3 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 1;
  padding: 0 3em;
  transition: all 300ms;
  transform: translateY(0);
  text-align: center;
}
.infolist_text_fader_style .infolist_text > *:not(h2):not(h3) {
  margin: 0;
  padding: 3em;
  opacity: 0;
  transition: all 300ms;
  transform: translateY(1.875rem);
}
.infolist_text_fader_style .infolist_text:hover, .infolist_text_fader_style .infolist_text:focus {
  background: rgba(152, 46, 46, 0.3);
}
.infolist_text_fader_style .infolist_text:hover > h2,
.infolist_text_fader_style .infolist_text:hover > h3, .infolist_text_fader_style .infolist_text:focus > h2,
.infolist_text_fader_style .infolist_text:focus > h3 {
  bottom: 50%;
  opacity: 0;
}
.infolist_text_fader_style .infolist_text:hover > *:not(h2):not(h3), .infolist_text_fader_style .infolist_text:focus > *:not(h2):not(h3) {
  transform: translateY(0);
  opacity: 1;
}

/* Source common/css/styles/screen/iphone_safe_area.scss */

@supports (padding-left: env(safe-area-inset-left)) {
  html.iphone .container {
    padding-left: "max(0.9375rem, env(safe-area-inset-left))";
    padding-right: "max(0.9375rem, env(safe-area-inset-right))";
  }
}
@media (min-width: 20rem) {
  @supports (padding-left: env(safe-area-inset-left)) {
    html.iphone .container {
      padding-left: "max(calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75)), env(safe-area-inset-left))";
      padding-right: "max(calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75)), env(safe-area-inset-right))";
    }
  }
}

/* Source common/css/styles/screen/legal_notice_font_overview.scss */

.legal_notice_font_overview p {
  margin-bottom: 0;
}
.legal_notice_font_overview li {
  margin-bottom: 0.75em;
}

/* Source common/css/styles/screen/main.scss */

.page_wrapper {
  overflow-x: hidden;
}

.wrap-content {
  position: relative;
  z-index: 10;
  margin-bottom: 3em;
}
@media (min-width: 20rem) {
  .wrap-content {
    margin-bottom: calc(3em + 3 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .wrap-content {
    margin-bottom: 6em;
  }
}

body.news .wrap-content {
  margin-bottom: 4.5em;
}
@media (min-width: 20rem) {
  body.news .wrap-content {
    margin-bottom: calc(4.5em + 4.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.news .wrap-content {
    margin-bottom: 9em;
  }
}

body.confirmpage h1 {
  max-width: 12ch;
}
body.anfahrt h1 {
  max-width: 8ch;
}
body.impressum h1 {
  max-width: 9ch;
}
body.digitalisierung h1,
body.digitalisierung .style_h1, body.news h1,
body.news .style_h1 {
  max-width: 15ch;
}
body.sitetitle_hyphens h1 {
  hyphens: auto;
}

.line-link {
  color: #181716;
  display: inline-block;
  font-size: 111.111%;
  font-weight: 600;
  padding: 0.125rem 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
}
.line-link:before {
  background: #181716;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  transition: background 300ms, opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 50%;
}
.line-link:focus, .line-link:hover {
  color: #181716;
}
.line-link:focus:before, .line-link:hover:before {
  background: #982e2e;
  width: 100%;
}
.line-link:active, .line-link.active {
  color: #982e2e;
}
.line-link:active:before, .line-link.active:before {
  background: #982e2e;
  width: 100%;
}

body.startpage .wrap-content {
  margin: 0;
}

.content_image {
  background-color: #f0f0f0;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: -2;
  height: 10rem;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
}
@media (min-width: 20rem) {
  .content_image {
    height: calc(10rem + 7.5 * (100vw - 20rem) / (27.5));
  }
}
@media (min-width: 47.5rem) {
  .content_image {
    height: 17.5rem;
  }
}
@media (min-width: 20rem) {
  .content_image {
    margin-left: calc(-0.9375rem + -2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .content_image {
    margin-left: -3.125rem;
  }
}
@media (min-width: 20rem) {
  .content_image {
    margin-right: calc(-0.9375rem + -2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .content_image {
    margin-right: -3.125rem;
  }
}
@media (min-width: 47.5rem) {
  .content_image {
    height: 100%;
  }
}

.swiper {
  background: #fff;
  position: relative;
}
.swiper .swiper-pagination {
  display: none;
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination {
    align-items: center;
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    right: 2.34375rem;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 75rem) {
  .swiper .swiper-pagination {
    right: calc(2.34375rem + 3.125 * (100vw - 75rem) / (37.5));
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 112.5rem) {
  .swiper .swiper-pagination {
    right: 5.46875rem;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet {
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: 0.9375rem;
    position: relative;
    transition: 300ms;
    width: 0.9375rem;
    margin-bottom: 0.25rem;
    margin-top: 0.25rem;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 20rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet {
    margin-bottom: calc(0.25rem + 0.3125 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 93.75rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet {
    margin-bottom: 0.5625rem;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 20rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet {
    margin-top: calc(0.25rem + 0.3125 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 75rem) and (min-height: 50rem) and (min-width: 93.75rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet {
    margin-top: 0.5625rem;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet:hover {
    background: #982e2e;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination .swiper-pagination-bullet-active {
    background: transparent;
    height: 1.375rem;
    width: 1.375rem;
  }
  .swiper .swiper-pagination .swiper-pagination-bullet-active:before {
    background-color: #982e2e;
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    content: "";
    display: block;
    height: 100%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    transition: background-color 300ms;
    width: 90%;
  }
  .swiper .swiper-pagination .swiper-pagination-bullet-active:hover {
    background: transparent;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination.bullet-page-2 .swiper-pagination-bullet, .swiper .swiper-pagination.bullet-page-3 .swiper-pagination-bullet, .swiper .swiper-pagination.bullet-page-4 .swiper-pagination-bullet {
    background: #a3a3a3;
  }
  .swiper .swiper-pagination.bullet-page-2 .swiper-pagination-bullet:hover, .swiper .swiper-pagination.bullet-page-3 .swiper-pagination-bullet:hover, .swiper .swiper-pagination.bullet-page-4 .swiper-pagination-bullet:hover {
    background: #982e2e;
  }
  .swiper .swiper-pagination.bullet-page-2 .swiper-pagination-bullet-active, .swiper .swiper-pagination.bullet-page-3 .swiper-pagination-bullet-active, .swiper .swiper-pagination.bullet-page-4 .swiper-pagination-bullet-active {
    background: transparent;
  }
  .swiper .swiper-pagination.bullet-page-2 .swiper-pagination-bullet-active:hover, .swiper .swiper-pagination.bullet-page-3 .swiper-pagination-bullet-active:hover, .swiper .swiper-pagination.bullet-page-4 .swiper-pagination-bullet-active:hover {
    background: transparent;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper .swiper-pagination.bullet-page-5 .swiper-pagination-bullet {
    background: #a3a3a3;
  }
  .swiper .swiper-pagination.bullet-page-5 .swiper-pagination-bullet:hover {
    background: #fff;
  }
  .swiper .swiper-pagination.bullet-page-5 .swiper-pagination-bullet-active {
    background: transparent;
  }
  .swiper .swiper-pagination.bullet-page-5 .swiper-pagination-bullet-active:before {
    background-color: #fff;
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    content: "";
    display: block;
    height: 100%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    transition: background-color 300ms;
    width: 90%;
  }
  .swiper .swiper-pagination.bullet-page-5 .swiper-pagination-bullet-active:hover {
    background: transparent;
  }
}

.start_slide_1,
.start_slide_2,
.start_slide_3,
.start_slide_4,
.start_slide_5 {
  position: relative;
}
.start_slide_1 .bg-hexagon,
.start_slide_2 .bg-hexagon,
.start_slide_3 .bg-hexagon,
.start_slide_4 .bg-hexagon,
.start_slide_5 .bg-hexagon {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.start_slide_1 .bg-hexagon .hexagon,
.start_slide_2 .bg-hexagon .hexagon,
.start_slide_3 .bg-hexagon .hexagon,
.start_slide_4 .bg-hexagon .hexagon,
.start_slide_5 .bg-hexagon .hexagon {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 20rem;
  width: 20rem;
}
@media (min-width: 20rem) {
  .start_slide_1 .bg-hexagon .hexagon,
.start_slide_2 .bg-hexagon .hexagon,
.start_slide_3 .bg-hexagon .hexagon,
.start_slide_4 .bg-hexagon .hexagon,
.start_slide_5 .bg-hexagon .hexagon {
    height: calc(20rem + 47.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 .bg-hexagon .hexagon,
.start_slide_2 .bg-hexagon .hexagon,
.start_slide_3 .bg-hexagon .hexagon,
.start_slide_4 .bg-hexagon .hexagon,
.start_slide_5 .bg-hexagon .hexagon {
    height: 67.5rem;
  }
}
@media (min-width: 20rem) {
  .start_slide_1 .bg-hexagon .hexagon,
.start_slide_2 .bg-hexagon .hexagon,
.start_slide_3 .bg-hexagon .hexagon,
.start_slide_4 .bg-hexagon .hexagon,
.start_slide_5 .bg-hexagon .hexagon {
    width: calc(20rem + 47.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 .bg-hexagon .hexagon,
.start_slide_2 .bg-hexagon .hexagon,
.start_slide_3 .bg-hexagon .hexagon,
.start_slide_4 .bg-hexagon .hexagon,
.start_slide_5 .bg-hexagon .hexagon {
    width: 67.5rem;
  }
}
.start_slide_1 .bg-hexagon .hexagon:before,
.start_slide_2 .bg-hexagon .hexagon:before,
.start_slide_3 .bg-hexagon .hexagon:before,
.start_slide_4 .bg-hexagon .hexagon:before,
.start_slide_5 .bg-hexagon .hexagon:before {
  background-color: #f6f6f6;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
.start_slide_1 .bg-hexagon .hexagon.left,
.start_slide_2 .bg-hexagon .hexagon.left,
.start_slide_3 .bg-hexagon .hexagon.left,
.start_slide_4 .bg-hexagon .hexagon.left,
.start_slide_5 .bg-hexagon .hexagon.left {
  left: 0;
  margin-left: -14.0625rem;
}
@media (min-width: 20rem) {
  .start_slide_1 .bg-hexagon .hexagon.left,
.start_slide_2 .bg-hexagon .hexagon.left,
.start_slide_3 .bg-hexagon .hexagon.left,
.start_slide_4 .bg-hexagon .hexagon.left,
.start_slide_5 .bg-hexagon .hexagon.left {
    margin-left: calc(-14.0625rem + 16.40625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 .bg-hexagon .hexagon.left,
.start_slide_2 .bg-hexagon .hexagon.left,
.start_slide_3 .bg-hexagon .hexagon.left,
.start_slide_4 .bg-hexagon .hexagon.left,
.start_slide_5 .bg-hexagon .hexagon.left {
    margin-left: 2.34375rem;
  }
}
.start_slide_1 .bg-hexagon .hexagon.right,
.start_slide_2 .bg-hexagon .hexagon.right,
.start_slide_3 .bg-hexagon .hexagon.right,
.start_slide_4 .bg-hexagon .hexagon.right,
.start_slide_5 .bg-hexagon .hexagon.right {
  right: 0;
  margin-right: -14.0625rem;
}
@media (min-width: 20rem) {
  .start_slide_1 .bg-hexagon .hexagon.right,
.start_slide_2 .bg-hexagon .hexagon.right,
.start_slide_3 .bg-hexagon .hexagon.right,
.start_slide_4 .bg-hexagon .hexagon.right,
.start_slide_5 .bg-hexagon .hexagon.right {
    margin-right: calc(-14.0625rem + 16.40625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 .bg-hexagon .hexagon.right,
.start_slide_2 .bg-hexagon .hexagon.right,
.start_slide_3 .bg-hexagon .hexagon.right,
.start_slide_4 .bg-hexagon .hexagon.right,
.start_slide_5 .bg-hexagon .hexagon.right {
    margin-right: 2.34375rem;
  }
}
.start_slide_1 .inner,
.start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner,
.start_slide_5 .inner {
  position: relative;
  z-index: 1;
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .start_slide_1 .inner,
.start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner,
.start_slide_5 .inner {
    height: 100%;
  }
}
.start_slide_1 .container,
.start_slide_2 .container,
.start_slide_3 .container,
.start_slide_4 .container,
.start_slide_5 .container {
  height: 100%;
  position: relative;
}
.start_slide_1 .container .row,
.start_slide_2 .container .row,
.start_slide_3 .container .row,
.start_slide_4 .container .row,
.start_slide_5 .container .row {
  height: 100%;
}
.start_slide_1 .slide-content,
.start_slide_2 .slide-content,
.start_slide_3 .slide-content,
.start_slide_4 .slide-content,
.start_slide_5 .slide-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
}
.start_slide_1 h2,
.start_slide_2 h2,
.start_slide_3 h2,
.start_slide_4 h2,
.start_slide_5 h2 {
  position: relative;
}
.start_slide_1 h2:before,
.start_slide_2 h2:before,
.start_slide_3 h2:before,
.start_slide_4 h2:before,
.start_slide_5 h2:before {
  background-color: #f0e0e0;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: -1;
  height: 6.25rem;
  width: 5.625rem;
}
@media (min-width: 20rem) {
  .start_slide_1 h2:before,
.start_slide_2 h2:before,
.start_slide_3 h2:before,
.start_slide_4 h2:before,
.start_slide_5 h2:before {
    height: calc(6.25rem + 6.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 h2:before,
.start_slide_2 h2:before,
.start_slide_3 h2:before,
.start_slide_4 h2:before,
.start_slide_5 h2:before {
    height: 12.5rem;
  }
}
@media (min-width: 20rem) {
  .start_slide_1 h2:before,
.start_slide_2 h2:before,
.start_slide_3 h2:before,
.start_slide_4 h2:before,
.start_slide_5 h2:before {
    width: calc(5.625rem + 5.625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 h2:before,
.start_slide_2 h2:before,
.start_slide_3 h2:before,
.start_slide_4 h2:before,
.start_slide_5 h2:before {
    width: 11.25rem;
  }
}

.start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner {
  padding-bottom: 3em;
}
@media (min-width: 20rem) {
  .start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner {
    padding-bottom: calc(3em + 3 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner {
    padding-bottom: 6em;
  }
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .start_slide_2 .inner,
.start_slide_3 .inner,
.start_slide_4 .inner {
    padding: 0;
  }
}

.start_slide_1 {
  z-index: 1;
}
.start_slide_1 .bg-hexagon .hexagon {
  bottom: -40px;
  top: auto;
  transform: translateY(0);
}
.start_slide_1 .inner {
  height: auto;
}
.start_slide_1 .wrap-sitetitle h1 {
  margin: 0 0 0.46875rem;
  max-width: 20ch;
}
.start_slide_1 .wrap-sitetitle .line-link {
  margin-bottom: 6em;
}
@media (min-width: 20rem) {
  .start_slide_1 .wrap-sitetitle .line-link {
    margin-bottom: calc(6em + 3 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_1 .wrap-sitetitle .line-link {
    margin-bottom: 9em;
  }
}

.start_slide_2 .wrap-team h2,
.start_slide_2 .wrap-digital h2 {
  padding: 0;
}
@media (min-width: 47.5rem) {
  .start_slide_2 .wrap-team .content_image,
.start_slide_2 .wrap-digital .content_image {
    height: calc(17.5rem + 7.5 * (100vw - 47.5rem) / (46.25));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_2 .wrap-team .content_image,
.start_slide_2 .wrap-digital .content_image {
    height: 25rem;
  }
}
.start_slide_2 .wrap-team .wrap-text,
.start_slide_2 .wrap-digital .wrap-text {
  margin-bottom: 1.5em;
  padding: 1.5em 0;
}
@media (min-width: 47.5rem) {
  .start_slide_2 .wrap-team .wrap-text,
.start_slide_2 .wrap-digital .wrap-text {
    margin: 0;
    padding: 0;
  }
}
.start_slide_2 .wrap-team {
  margin-bottom: 1.5em;
}
@media (min-width: 20rem) {
  .start_slide_2 .wrap-team {
    margin-bottom: calc(1.5em + 0.75 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_2 .wrap-team {
    margin-bottom: 2.25em;
  }
}
@media (min-width: 47.5rem) {
  .start_slide_2 .wrap-team .content_image {
    margin-left: 0;
  }
}
@media (min-width: 100rem) {
  .start_slide_2 .wrap-team .content_image {
    margin-right: calc(-3.125rem + -10.625 * (100vw - 100rem) / (20));
  }
}
@media (min-width: 120rem) {
  .start_slide_2 .wrap-team .content_image {
    margin-right: -13.75rem;
  }
}
@media (min-width: 120rem) {
  .start_slide_2 .wrap-team .content_image {
    margin-right: calc(-13.75rem + -20 * (100vw - 120rem) / (40));
  }
}
@media (min-width: 160rem) {
  .start_slide_2 .wrap-team .content_image {
    margin-right: -33.75rem;
  }
}
@media (min-width: 47.5rem) {
  .start_slide_2 .wrap-digital .content_image {
    margin-right: 0;
  }
}
@media (min-width: 100rem) {
  .start_slide_2 .wrap-digital .content_image {
    margin-left: calc(-3.125rem + -10.625 * (100vw - 100rem) / (20));
  }
}
@media (min-width: 120rem) {
  .start_slide_2 .wrap-digital .content_image {
    margin-left: -13.75rem;
  }
}
@media (min-width: 120rem) {
  .start_slide_2 .wrap-digital .content_image {
    margin-left: calc(-13.75rem + -20 * (100vw - 120rem) / (40));
  }
}
@media (min-width: 160rem) {
  .start_slide_2 .wrap-digital .content_image {
    margin-left: -33.75rem;
  }
}

@media (min-width: 75rem) {
  .start_slide_3 .teaser_overview .teaser_4,
.start_slide_3 .teaser_overview .teaser_5,
.start_slide_3 .teaser_overview .teaser_6 {
    margin: 0;
  }
  .start_slide_3 .teaser_overview .teaser_4 .title,
.start_slide_3 .teaser_overview .teaser_5 .title,
.start_slide_3 .teaser_overview .teaser_6 .title {
    hyphens: auto;
  }
}

.start_slide_4 {
  z-index: 1;
}
.start_slide_4 .headline h2 {
  margin: 0 0 0.703125rem;
  padding: 0;
}
.start_slide_4 .btn {
  margin-bottom: 2.25em;
}
@media (min-width: 75rem) {
  .start_slide_4 .steuernews_preview .entry {
    margin: 0;
  }
}
@media (min-width: 47.5rem) {
  .start_slide_4 .steuernews_preview .entry.last {
    display: none;
  }
}
@media (min-width: 75rem) {
  .start_slide_4 .steuernews_preview .entry.last {
    display: flex;
  }
}

.start_slide_5 .bg-hexagon {
  display: block !important;
  overflow: hidden;
  top: -100%;
  z-index: -2;
}
.start_slide_5 .bg-hexagon .hexagon {
  top: 0;
  transform: translateY(0);
  margin-top: 14.0625rem;
}
@media (min-width: 20rem) {
  .start_slide_5 .bg-hexagon .hexagon {
    margin-top: calc(14.0625rem + -3.125 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_5 .bg-hexagon .hexagon {
    margin-top: 10.9375rem;
  }
}
.start_slide_5 .slide-content {
  justify-content: flex-end;
}
.start_slide_5 .wrap-top h2 {
  text-align: right;
  margin-right: 0.9375rem;
}
@media (min-width: 20rem) {
  .start_slide_5 .wrap-top h2 {
    margin-right: calc(0.9375rem + 2.1875 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .start_slide_5 .wrap-top h2 {
    margin-right: 3.125rem;
  }
}
.start_slide_5 .wrap-top h2:before {
  display: none;
}

/* Source common/css/styles/screen/offcanvas_menu.scss */

.toggle_offcanvas_menu {
  display: block;
  position: relative;
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu {
    display: none;
  }
}
.toggle_offcanvas_menu .open_btn {
  align-items: center;
  background: none;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  padding: 0;
  position: relative;
  user-select: none;
  z-index: 10;
  height: 2.75rem;
  margin-right: 0.9375rem;
  width: 2.75rem;
}
@media (min-width: 20rem) {
  .toggle_offcanvas_menu .open_btn {
    height: calc(2.75rem + 1.5 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu .open_btn {
    height: 4.25rem;
  }
}
@media (min-width: 20rem) {
  .toggle_offcanvas_menu .open_btn {
    margin-right: calc(0.9375rem + 0.46875 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu .open_btn {
    margin-right: 1.40625rem;
  }
}
@media (min-width: 20rem) {
  .toggle_offcanvas_menu .open_btn {
    width: calc(2.75rem + 1.5 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu .open_btn {
    width: 4.25rem;
  }
}
.toggle_offcanvas_menu .open_btn:before {
  background-color: #982e2e;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
.toggle_offcanvas_menu .open_btn .sr_open {
  display: block;
}
.toggle_offcanvas_menu .open_btn .sr_close {
  display: none;
}
.toggle_offcanvas_menu .open_btn .icon {
  position: relative;
  height: 1rem;
  width: 1.125rem;
}
@media (min-width: 20rem) {
  .toggle_offcanvas_menu .open_btn .icon {
    height: calc(1rem + 0.5625 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu .open_btn .icon {
    height: 1.5625rem;
  }
}
@media (min-width: 20rem) {
  .toggle_offcanvas_menu .open_btn .icon {
    width: calc(1.125rem + 0.625 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_offcanvas_menu .open_btn .icon {
    width: 1.75rem;
  }
}
.toggle_offcanvas_menu .open_btn .icon .line {
  background: #fff;
  border-radius: 0.1875rem;
  display: block;
  height: 0.1875rem;
  position: absolute;
  transition: top 300ms, transform 300ms;
  width: 100%;
}
.toggle_offcanvas_menu .open_btn .icon .line_1 {
  top: 0;
}
.toggle_offcanvas_menu .open_btn .icon .line_2 {
  top: 50%;
  transform: translateY(-50%);
}
.toggle_offcanvas_menu .open_btn .icon .line_3 {
  top: 100%;
  transform: translateY(-100%);
}
.toggle_offcanvas_menu .open_btn.open .icon .line_1 {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition-delay: 150ms;
}
.toggle_offcanvas_menu .open_btn.open .icon .line_2 {
  transform: translateY(-50%) scaleX(0);
}
.toggle_offcanvas_menu .open_btn.open .icon .line_3 {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition-delay: 150ms;
}
.toggle_offcanvas_menu .open_btn.open .sr_open {
  display: none;
}
.toggle_offcanvas_menu .open_btn.open .sr_close {
  display: block;
}

.offcanvas_menu {
  border: none;
  display: flex;
  height: 100%;
  margin: 0;
  max-height: 100%;
  min-height: 100%;
  opacity: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: fixed;
  top: 0;
  transition: all 300ms ease-in-out;
  visibility: hidden;
  z-index: 1000;
  -webkit-backdrop-filter: blur(0.125rem);
  backdrop-filter: blur(0.125rem);
  background: rgba(0, 0, 0, 0.65);
  min-width: 100%;
}
.offcanvas_menu .menu_wrapper {
  align-items: flex-start;
  background-color: #982e2e;
  border-top: 0.3125rem solid #792525;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 0.75em 0;
  position: absolute;
  transition: all 300ms ease-in-out;
  width: 15.625rem;
  left: 0;
  transform-origin: left;
  transform: translateX(-100%);
}
@media (min-width: 30rem) {
  .offcanvas_menu .menu_wrapper {
    width: 21.875rem;
  }
}
.offcanvas_menu[open] {
  opacity: 1;
  visibility: visible;
}
.offcanvas_menu[open] .menu_wrapper {
  transform: translateX(0);
}
.offcanvas_menu .wrap-btn {
  border-bottom: 0.3125rem solid #792525;
  margin-bottom: 0.75em;
  width: 100%;
}
.offcanvas_menu .close_btn {
  display: inline-flex;
  margin: 0.375em 0 1.125em 1.125em;
  outline-color: #fff;
  color: #fff;
  display: inline-block;
  font-size: 111.111%;
  font-weight: 600;
  padding: 0.125rem 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
}
.offcanvas_menu .close_btn:before {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  transition: background 300ms, opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 50%;
}
.offcanvas_menu .close_btn:focus, .offcanvas_menu .close_btn:hover {
  color: #fff;
}
.offcanvas_menu .close_btn:focus:before, .offcanvas_menu .close_btn:hover:before {
  background: #fff;
  width: 100%;
}
.offcanvas_menu .navigation {
  width: 100%;
}
.offcanvas_menu .navigation > ul ul {
  max-height: 0;
  margin-bottom: 0;
  overflow: hidden;
  transition: max-height 600ms;
}
.offcanvas_menu .navigation > ul {
  width: 100%;
}
.offcanvas_menu .navigation > ul > li {
  padding: 0.375em 0;
}
.offcanvas_menu .navigation > ul > li > a {
  color: #fff;
  display: inline-block;
  font-size: 111.111%;
  font-weight: 600;
  padding: 0.125rem 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  display: inline-block;
  flex-direction: row;
  outline-color: #fff;
  margin: 0.25em 1.125em;
}
.offcanvas_menu .navigation > ul > li > a:before {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  transition: background 300ms, opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 50%;
}
.offcanvas_menu .navigation > ul > li > a:before {
  bottom: 0;
  opacity: 0;
  width: 0;
}
.offcanvas_menu .navigation > ul > li > a.active:before, .offcanvas_menu .navigation > ul > li > a:focus:before, .offcanvas_menu .navigation > ul > li > a:hover:before {
  opacity: 1;
  width: 100%;
}
.offcanvas_menu .navigation > ul li.expanded > ul {
  display: block;
}
.offcanvas_menu .navigation > ul ul {
  background: #792525;
  padding: 0 1.3125em;
}
.offcanvas_menu .navigation > ul ul li {
  padding: 0.3em 0;
}
.offcanvas_menu .navigation > ul ul li:first-child {
  padding-top: 1.125em;
}
.offcanvas_menu .navigation > ul ul li:last-child {
  margin-bottom: 1.125em;
}
.offcanvas_menu .navigation > ul ul a {
  color: #fff;
  display: inline-block;
  font-size: 111.111%;
  font-weight: 600;
  padding: 0.125rem 0;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  display: inline-block;
  outline-color: #fff;
}
.offcanvas_menu .navigation > ul ul a:before {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  transition: background 300ms, opacity 300ms, width 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  width: 50%;
}
.offcanvas_menu .navigation > ul ul a:before {
  opacity: 0;
  width: 0;
}
.offcanvas_menu .navigation > ul ul a.active:before, .offcanvas_menu .navigation > ul ul a:focus:before, .offcanvas_menu .navigation > ul ul a:hover:before {
  opacity: 1;
  width: 100%;
}

/* Source common/css/styles/screen/open_street_map.scss */

.open_street_map .map {
  height: 21.875rem;
  background-color: #f0f0f0;
  cursor: move;
  position: relative;
  width: 100%;
}
@media (min-width: 20rem) {
  .open_street_map .map {
    height: calc(21.875rem + 12.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .open_street_map .map {
    height: 34.375rem;
  }
}
.open_street_map .map_overlay {
  align-items: center;
  background-color: rgba(240, 240, 240, 0.85);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity 300ms;
  z-index: 1;
}
.open_street_map .map_overlay.show {
  opacity: 1;
  transition-delay: 0;
}
.open_street_map .map_overlay.show p {
  font-size: 120%;
  margin: 1.5em 3em;
  text-align: center;
}
.open_street_map .required_description {
  margin: 1.5em 0 0 0;
}
.open_street_map .plan_route {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin: 1.5em 0;
  position: relative;
}
@media (min-width: 47.5rem) {
  .open_street_map .plan_route {
    align-items: flex-end;
    flex-direction: row;
  }
}
.open_street_map .plan_route .saddr {
  flex-grow: 1;
  flex-shrink: 1;
}
@media (min-width: 47.5rem) {
  .open_street_map .plan_route .saddr {
    margin: 0 1.5em 0 0;
    max-width: 40.625rem;
  }
  .open_street_map .plan_route .saddr input {
    margin-bottom: 0;
  }
}
.open_street_map .plan_route .select_wrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  flex-shrink: 1;
  margin-top: 0.75em;
}
@media (min-width: 47.5rem) {
  .open_street_map .plan_route .select_wrapper {
    margin: 0 1.5em 0 0;
  }
}
@media (min-width: 47.5rem) {
  .open_street_map .plan_route .select_wrapper .select {
    margin-bottom: 0;
  }
}
@media (min-width: 47.5rem) {
  .open_street_map .plan_route .button_wrapper button {
    margin-bottom: 0;
  }
}
.open_street_map .ol-viewport {
  touch-action: pan-y !important;
}
.open_street_map .ol-overlaycontainer-stopevent button {
  align-items: center;
  background: #982e2e;
  border: 0.0625rem solid #982e2e;
  border-radius: 0;
  color: #fff;
  display: inline-flex;
  font-weight: 700;
  height: 2.75rem;
  justify-content: center;
  margin: 0;
  padding: 0;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
  width: 2.75rem;
}
.open_street_map .ol-overlaycontainer-stopevent button:focus {
  background: #a3a3a3;
  border: 0.0625rem solid #a3a3a3;
  color: #181716;
  outline: 0;
}
.open_street_map .ol-overlaycontainer-stopevent button:hover {
  background: #a3a3a3;
  border: 0.0625rem solid #a3a3a3;
  color: #181716;
}
.open_street_map .ol-overlaycontainer-stopevent button.disabled {
  cursor: default;
  opacity: 0.6;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution,
.open_street_map .ol-overlaycontainer-stopevent .ol-zoom-in,
.open_street_map .ol-overlaycontainer-stopevent .ol-zoom-out,
.open_street_map .ol-overlaycontainer-stopevent .ol-zoomslider {
  position: absolute;
  right: 0.3125rem;
  z-index: 99;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-zoom-in {
  line-height: 1;
  top: 0.3125rem;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-zoom-out {
  line-height: 1;
  top: 3.375rem;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-rotate-reset {
  display: none;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution {
  align-items: center;
  bottom: 0;
  cursor: default;
  display: flex;
  justify-content: flex-end;
  right: 0;
  text-align: right;
  user-select: none;
  z-index: 99;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution ul {
  align-items: center;
  background: rgba(255, 255, 255, 0.85);
  color: black;
  display: flex;
  height: 2.875rem;
  justify-content: flex-end;
  list-style: none;
  margin: 0;
  padding: 0;
  text-shadow: 0 0 0.125rem rgba(0, 0, 0, 0.15);
  transform-origin: center right;
  transition: transform 300ms, opacity 300ms;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution ul li {
  align-items: center;
  background-image: none;
  display: flex;
  font-size: 88.889%;
  margin: 0 0.75em;
  padding: 0;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution ul li a {
  align-items: center;
  display: inline-flex;
  margin: 0 0.3125rem;
}
.open_street_map .ol-overlaycontainer-stopevent .ol-attribution button {
  display: none;
}
.open_street_map.disable_ui .ol-overlaycontainer-stopevent .ol-zoom-in,
.open_street_map.disable_ui .ol-overlaycontainer-stopevent .ol-zoom-out {
  display: none;
}

/* Source common/css/styles/screen/opening_times.scss */

.opening_times .entries {
  column-gap: 2.25em;
  display: flex;
  flex-wrap: wrap;
}

/* Source common/css/styles/screen/preloader.scss */

.preloader {
  display: block;
  position: relative;
}
.preloader .icon_spin {
  animation: preloader_rotate 900ms linear infinite;
  display: block;
  fill: #d6d6d6;
  height: 3rem;
  left: 50%;
  margin: -1.5rem 0 0 -1.5rem;
  opacity: 1;
  position: absolute;
  top: 50%;
  transition: 300ms;
  visibility: visible;
  width: 3rem;
}
.preloader .icon_spin.hide {
  opacity: 0;
  visibility: hidden;
}

/* Source common/css/styles/screen/search.scss */

form[role=search] {
  display: flex;
}
form[role=search] button {
  border-radius: 0 0 0 0;
  flex-grow: 0;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  background: #982e2e;
  border: 0.0625rem solid #982e2e;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: background 300ms, border 300ms, color 300ms;
  user-select: none;
  height: 2.75rem;
  width: 2.75rem;
}
form[role=search] button > span {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  form[role=search] button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  form[role=search] button > span {
    min-height: 3.125rem;
  }
}
form[role=search] button .icon {
  fill: #fff;
  flex-shrink: 0;
  height: 1.5rem;
  transition: fill 300ms;
  width: 1.5rem;
}
form[role=search] button .text {
  font-weight: 400;
  padding: 0.375em 0;
}
form[role=search] button .icon + .text {
  padding-left: 0.4995em;
}
@media (min-width: 20rem) {
  form[role=search] button {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  form[role=search] button {
    height: 3.25rem;
  }
}
@media (min-width: 20rem) {
  form[role=search] button {
    width: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  form[role=search] button {
    width: 3.25rem;
  }
}
form[role=search] button > span {
  min-height: 2.625rem;
}
@media (min-width: 20rem) {
  form[role=search] button > span {
    min-height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  form[role=search] button > span {
    min-height: 3.125rem;
  }
}
form[role=search] button[disabled] {
  background-color: #f0f0f0;
  border-color: #e3e3e3;
  color: gray;
}
form[role=search] button[disabled] .icon {
  fill: #000000;
}
form[role=search] button > span {
  width: 100%;
}
form[role=search] button:focus {
  position: relative;
  z-index: 10;
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
}
form[role=search] button:focus .icon {
  fill: #181716;
}
form[role=search] button .icon {
  height: 2.625rem;
}
@media (min-width: 20rem) {
  form[role=search] button .icon {
    height: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  form[role=search] button .icon {
    height: 3.125rem;
  }
}

input[type=search] {
  -moz-appearance: none;
  -webkit-appearance: none;
  background: #fff;
  border: 0.0625rem solid #d6d6d6;
  border-radius: 0 0 0 0;
  color: #000000;
  flex-basis: 100%;
  margin: 0;
  padding: 0 0.75em;
  transition: background 300ms, border-color 300ms, box-shadow 300ms, color 300ms, outline 300ms, z-index 300ms;
  height: 2.75rem;
}
@media (min-width: 20rem) {
  input[type=search] {
    height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  input[type=search] {
    height: 3.25rem;
  }
}
input[type=search]:focus {
  background: #fff;
  border-color: #982e2e;
  box-shadow: 0 0 0 0.1875rem rgba(152, 46, 46, 0.2);
  color: #000000;
  outline: 0;
  position: relative;
  z-index: 10;
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

.search dl {
  margin: 0 0 0.75em;
  padding-top: 0.375em;
}
.search dl br,
.search dl em,
.search dl img {
  display: none;
}
.search dd {
  margin: 0;
}
.search .count + .pages {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.search .count + .pages a {
  text-decoration: none;
  width: 2.75rem;
  height: 2.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0.375em 0.375em 0.375em 0;
  background: #181716;
  white-space: nowrap;
  color: #fff;
  border-radius: 0;
}
.search .count + .pages a:first-of-type {
  margin-left: 0.75em;
  padding: 0 0.75em;
  width: auto;
}
.search .count + .pages a:last-of-type {
  width: auto;
  padding: 0 0.75em;
}
.search .count + .pages a[href] {
  background: #982e2e;
  color: #fff;
  transition: all 300ms;
}
.search .count + .pages a[href]:hover {
  background: #a3a3a3;
  color: #181716;
}

/* Source common/css/styles/screen/search_box.scss */

.toggle_search_box {
  display: block;
  position: relative;
  height: 2.75rem;
  width: 2.75rem;
}
@media (min-width: 20rem) {
  .toggle_search_box {
    height: calc(2.75rem + 1.5 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_search_box {
    height: 4.25rem;
  }
}
@media (min-width: 20rem) {
  .toggle_search_box {
    width: calc(2.75rem + 1.5 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_search_box {
    width: 4.25rem;
  }
}
@media (min-width: 75rem) {
  .toggle_search_box {
    height: calc(2.6875rem + 0.125 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .toggle_search_box {
    height: 2.8125rem;
  }
}
@media (min-width: 75rem) {
  .toggle_search_box {
    width: calc(2.6875rem + 0.125 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .toggle_search_box {
    width: 2.8125rem;
  }
}
.toggle_search_box label {
  bottom: 0;
  cursor: pointer;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}
.toggle_search_box label:hover ~ a:before {
  background-color: #181716;
}
.toggle_search_box a {
  fill: #fff;
}
.toggle_search_box a:before {
  background-color: #982e2e;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
.toggle_search_box a .icon {
  display: block;
  transition: fill 300ms;
  padding: 0.6875rem;
}
@media (min-width: 20rem) {
  .toggle_search_box a .icon {
    padding: calc(0.6875rem + 0.4375 * (100vw - 20rem) / (55));
  }
}
@media (min-width: 75rem) {
  .toggle_search_box a .icon {
    padding: 1.125rem;
  }
}
@media (min-width: 75rem) {
  .toggle_search_box a .icon {
    padding: calc(0.6875rem + 0.0625 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .toggle_search_box a .icon {
    padding: 0.75rem;
  }
}
.toggle_search_box a .icon svg {
  display: block;
}
.toggle_search_box .open_search_box {
  display: block;
}
.toggle_search_box .close_search_box {
  display: none;
}

.search_box {
  -webkit-backdrop-filter: blur(0.125rem);
  backdrop-filter: blur(0.125rem);
  align-items: center;
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 0.75em;
  position: fixed;
  right: 0;
  top: 0;
  transition: opacity 300ms;
  visibility: hidden;
  z-index: 9999;
}
.search_box .close_search_box_wrapper {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.search_box .close_search_box_wrapper label {
  background: rgba(0, 0, 0, 0.65);
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity 300ms, visibility 300ms;
  visibility: hidden;
}
.search_box .close_search_box_wrapper .close_search_box {
  min-width: 2.625rem;
  padding: 0;
  position: absolute;
  right: 1.5em;
  top: 1.5em;
}
@media (min-width: 20rem) {
  .search_box .close_search_box_wrapper .close_search_box {
    min-width: calc(2.625rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .search_box .close_search_box_wrapper .close_search_box {
    min-width: 3.125rem;
  }
}
.search_box .close_search_box_wrapper .close_search_box:hover, .search_box .close_search_box_wrapper .close_search_box:focus {
  background: #a3a3a3;
  border-color: #a3a3a3;
  color: #181716;
}
.search_box .close_search_box_wrapper .close_search_box:hover .icon, .search_box .close_search_box_wrapper .close_search_box:focus .icon {
  fill: #181716;
}
.search_box form[role=search] {
  background: #fff;
  border: 0.625rem solid #fff;
  border-radius: 0;
  box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.4);
  display: flex;
  opacity: 0;
  position: relative;
  transform: translateY(-6.25rem);
  transition: 300ms;
  visibility: hidden;
  width: 37.5rem;
  z-index: 1000;
}
.search_box form[role=search] button {
  width: 2.75rem;
  flex-grow: 0;
  flex-shrink: 0;
}
@media (min-width: 20rem) {
  .search_box form[role=search] button {
    width: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .search_box form[role=search] button {
    width: 3.25rem;
  }
}
.search_box input[type=search] {
  flex: 1 1 auto;
  font-size: 115%;
  user-select: text;
}

.search_box_state {
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  visibility: hidden;
}
.search_box_state:checked ~ .search_box, .search_box_state:target ~ .search_box {
  opacity: 1;
  visibility: visible;
}
.search_box_state:checked ~ .search_box .close_search_box_wrapper label, .search_box_state:target ~ .search_box .close_search_box_wrapper label {
  opacity: 1;
  visibility: visible;
}
.search_box_state:checked ~ .search_box form[role=search], .search_box_state:target ~ .search_box form[role=search] {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}
.search_box_state:checked ~ .page_wrapper .toggle_search_box .open_search_box, .search_box_state:target ~ .page_wrapper .toggle_search_box .open_search_box {
  display: none;
}
.search_box_state:checked ~ .page_wrapper .toggle_search_box .close_search_box, .search_box_state:target ~ .page_wrapper .toggle_search_box .close_search_box {
  display: flex;
}

/* Source common/css/styles/screen/social_media_share.scss */

.social_media_share ul {
  margin: 0;
  padding: 1.5em 0 0 0;
}
.social_media_share li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.social_media_share li .icon,
.social_media_share li .icon img {
  display: block;
  height: 2.75rem;
}
.social_media_share li .print_link > span {
  align-items: center;
  display: flex;
}
.social_media_share li .print_link > span .text {
  margin-left: 0.9375em;
}
.social_media_share li .print_link .icon {
  display: block;
  fill: #fff;
  height: 2.75rem;
  padding: 0.625rem;
  position: relative;
  width: 2.75rem;
}
.social_media_share li .print_link .icon:before {
  background-color: #982e2e;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
.social_media_share li .print_link .icon svg {
  display: block;
}
.social_media_share li .print_link .text {
  color: #982e2e;
  font-weight: 500;
  text-decoration: underline;
  transition: color 300ms;
}
.social_media_share a {
  display: inline-block;
  text-decoration: none;
}
.social_media_share a:focus .icon:before, .social_media_share a:hover .icon:before {
  background-color: #181716;
}
.social_media_share a:focus .text, .social_media_share a:hover .text {
  color: #000000;
  text-decoration: none;
}

/* Source common/css/styles/screen/steuernews.scss */

.steuernews_preview .entry {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  position: relative;
  text-decoration: none;
  margin-bottom: 2.25em;
}
@media (min-width: 20rem) {
  .steuernews_preview .entry {
    margin-bottom: calc(2.25em + 0.75 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .steuernews_preview .entry {
    margin-bottom: 3em;
  }
}
.steuernews_preview .entry .bg_image {
  background-color: rgba(152, 46, 46, 0.15);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
  aspect-ratio: 1/1;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  flex-shrink: 0;
  height: auto;
  left: auto;
  margin: 0 auto;
  position: relative;
  top: auto;
  transform: translateX(0) translateY(0);
  width: 18.125rem;
}
@media (min-width: 20rem) {
  .steuernews_preview .entry .bg_image {
    min-height: calc(20.9375rem + 2.125 * (100vw - 20rem) / (10));
  }
}
@media (min-width: 30rem) {
  .steuernews_preview .entry .bg_image {
    min-height: 23.0625rem;
  }
}
@media (min-width: 30rem) {
  .steuernews_preview .entry .bg_image {
    min-height: calc(15.125rem + 9.1875 * (100vw - 30rem) / (17.5));
  }
}
@media (min-width: 47.5rem) {
  .steuernews_preview .entry .bg_image {
    min-height: 24.3125rem;
  }
}
@media (min-width: 47.5rem) {
  .steuernews_preview .entry .bg_image {
    min-height: calc(15.5625rem + 9.3125 * (100vw - 47.5rem) / (27.5));
  }
}
@media (min-width: 75rem) {
  .steuernews_preview .entry .bg_image {
    min-height: 24.875rem;
  }
}
@media (min-width: 75rem) {
  .steuernews_preview .entry .bg_image {
    min-height: calc(17.9375rem + 6.4375 * (100vw - 75rem) / (18.75));
  }
}
@media (min-width: 93.75rem) {
  .steuernews_preview .entry .bg_image {
    min-height: 24.375rem;
  }
}
@media (min-width: 20rem) {
  .steuernews_preview .entry .bg_image {
    width: calc(18.125rem + 1.875 * (100vw - 20rem) / (10));
  }
}
@media (min-width: 30rem) {
  .steuernews_preview .entry .bg_image {
    width: 20rem;
  }
}
@media (min-width: 30rem) {
  .steuernews_preview .entry .bg_image {
    width: 100%;
  }
}
.steuernews_preview .entry .bg_image:before {
  background: rgba(152, 46, 46, 0.5);
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform-origin: 50% 0;
  transition: 300ms;
}
.steuernews_preview .entry .teaser_text {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  text-align: center;
}
.steuernews_preview .entry .title {
  word-wrap: break-word;
}
.steuernews_preview .entry .wrap-link {
  margin-top: auto;
}
.steuernews_preview .entry:focus .bg_image:before, .steuernews_preview .entry:hover .bg_image:before {
  opacity: 0;
  transform: rotate(-180deg);
}
.steuernews_preview .entry:focus .line-link, .steuernews_preview .entry:hover .line-link {
  color: #181716;
}
.steuernews_preview .entry:focus .line-link:before, .steuernews_preview .entry:hover .line-link:before {
  background: #982e2e;
  width: 100%;
}

.news_entity .hide_image_author,
.news_entity .hide_creation_date {
  display: none;
}
.news_entity h1 {
  max-width: none !important;
  padding: 0;
}
.news_entity aside.aside {
  display: none;
}
@media (min-width: 61.875rem) {
  .news_entity aside.aside {
    display: block;
  }
}

.news_image figcaption {
  color: #a3a3a3;
  padding: 0.5em 0;
  text-align: right;
}

.steuernews_issues ul,
.steuernews_navigation ul,
.blog_issues ul,
.blog_tags ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
}
.steuernews_issues ul li,
.steuernews_navigation ul li,
.blog_issues ul li,
.blog_tags ul li {
  padding-left: 0;
}
.steuernews_issues a,
.steuernews_navigation a,
.blog_issues a,
.blog_tags a {
  background: #f0f0f0;
  color: #000000;
  border-radius: 0;
  display: flex;
  align-items: center;
  margin: 0 0.75em 0.75em 0;
  padding: 0 1.5em;
  text-decoration: none;
  white-space: nowrap;
  line-height: 2.75rem;
  transition: all 300ms;
}
@media (min-width: 20rem) {
  .steuernews_issues a,
.steuernews_navigation a,
.blog_issues a,
.blog_tags a {
    line-height: calc(2.75rem + 0.5 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .steuernews_issues a,
.steuernews_navigation a,
.blog_issues a,
.blog_tags a {
    line-height: 3.25rem;
  }
}
.steuernews_issues a.active, .steuernews_issues a:hover, .steuernews_issues a:focus,
.steuernews_navigation a.active,
.steuernews_navigation a:hover,
.steuernews_navigation a:focus,
.blog_issues a.active,
.blog_issues a:hover,
.blog_issues a:focus,
.blog_tags a.active,
.blog_tags a:hover,
.blog_tags a:focus {
  background: #982e2e;
  color: #fff;
}

.steuernews_disclaimer {
  clear: both;
}

.steuernews_current_issue a.active {
  font-weight: 600;
  text-decoration: none;
}

@media (min-width: 47.5rem) {
  .steuernews_more_articles_overview .entry.last {
    display: none;
  }
}
@media (min-width: 75rem) {
  .steuernews_more_articles_overview .entry.last {
    display: flex;
  }
}

/* Source common/css/styles/screen/swiper.scss */

.section_wrapper {
  overflow: hidden;
}

/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */
:root {
  --swiper-theme-color: #982e2e;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}
@media (min-width: 75rem) and (min-height: 50rem) {
  .swiper {
    width: 100dvw;
    height: 100dvh;
  }
}
@media (min-width: 75rem) {
  .swiper {
    overflow: hidden;
  }
}
@media (max-height: 50rem) {
  .swiper {
    overflow: inherit;
  }
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  z-index: 1;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
@media (min-width: 75rem) {
  .swiper-wrapper {
    display: flex;
    height: 100%;
  }
}
@media (max-height: 50rem) {
  .swiper-wrapper {
    display: block;
    height: auto;
  }
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */

/* Source common/css/styles/screen/team.scss */

.team_overview {
  padding-top: 1.5em;
}
.team_overview .team_entry {
  margin-bottom: 1.5em;
  background: #f0f0f0;
  padding: 1.5em;
}
.team_overview .team_entry .title {
  margin: 0;
  padding: 0;
}
.team_overview .team_entry .photo {
  display: block;
  margin: 0 0 1.5em;
  padding-top: 0.375em;
}
.team_overview .team_entry .photo img {
  display: block;
}

/* Source common/css/styles/screen/teaser.scss */

.teaser {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  text-align: center;
  text-decoration: none;
}
.teaser .icon {
  display: block;
  fill: #982e2e;
  flex-shrink: 0;
  margin-bottom: 0.375em;
  position: relative;
  height: 3rem;
  width: 3rem;
}
@media (min-width: 20rem) {
  .teaser .icon {
    height: calc(3rem + 3.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .teaser .icon {
    height: 6.25rem;
  }
}
@media (min-width: 20rem) {
  .teaser .icon {
    width: calc(3rem + 3.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .teaser .icon {
    width: 6.25rem;
  }
}
.teaser .icon:before {
  background-color: rgba(152, 46, 46, 0.15);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
  opacity: 0;
  transform: translateX(-50%) translateY(-50%) scale(0);
  transform-origin: 50% 50%;
  transition: opacity 300ms, transform 300ms;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  height: 6.25rem;
  width: 5.625rem;
}
@media (min-width: 20rem) {
  .teaser .icon:before {
    height: calc(6.25rem + 6.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .teaser .icon:before {
    height: 12.5rem;
  }
}
@media (min-width: 20rem) {
  .teaser .icon:before {
    width: calc(5.625rem + 5.625 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  .teaser .icon:before {
    width: 11.25rem;
  }
}
.teaser .icon svg {
  display: block;
}
.teaser .title,
.teaser .description,
.teaser .line-link {
  position: relative;
  z-index: 1;
}
.teaser:focus .line-link, .teaser:hover .line-link {
  color: #181716;
}
.teaser:focus .line-link:before, .teaser:hover .line-link:before {
  background: #982e2e;
  width: 100%;
}

body.startpage .teaser {
  margin-bottom: 2.25em;
}
@media (min-width: 20rem) {
  body.startpage .teaser {
    margin-bottom: calc(2.25em + 2.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  body.startpage .teaser {
    margin-bottom: 4.5em;
  }
}
body.startpage .teaser:hover .icon:before {
  opacity: 1;
  transform: translateX(-50%) translateY(-50%) scale(1);
}

aside.aside .teaser {
  align-items: flex-end;
  justify-content: center;
  position: relative;
  text-align: right;
  margin-bottom: 3em;
  min-height: 12.5rem;
}
@media (min-width: 20rem) {
  aside.aside .teaser {
    margin-bottom: calc(3em + 3 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  aside.aside .teaser {
    margin-bottom: 6em;
  }
}
@media (min-width: 20rem) {
  aside.aside .teaser {
    min-height: calc(12.5rem + 6.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  aside.aside .teaser {
    min-height: 18.75rem;
  }
}
aside.aside .teaser .hexagon {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateX(50%) translateY(-50%);
  z-index: -1;
  height: 12.5rem;
  width: 12.5rem;
}
@media (min-width: 20rem) {
  aside.aside .teaser .hexagon {
    height: calc(12.5rem + 6.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  aside.aside .teaser .hexagon {
    height: 18.75rem;
  }
}
@media (min-width: 20rem) {
  aside.aside .teaser .hexagon {
    width: calc(12.5rem + 6.25 * (100vw - 20rem) / (73.75));
  }
}
@media (min-width: 93.75rem) {
  aside.aside .teaser .hexagon {
    width: 18.75rem;
  }
}
aside.aside .teaser .hexagon:before {
  background-color: rgba(152, 46, 46, 0.15);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: background-color 300ms;
  width: 90%;
}
aside.aside .teaser .title {
  max-width: 20ch;
  padding: 0;
}
aside.aside .teaser .description {
  max-width: 35ch;
}
aside.aside .teaser:hover .hexagon:before {
  background-color: rgba(24, 23, 22, 0.15);
}

/* Source common/css/styles/screen/tooltip.scss */

.tooltip_wrapper {
  display: block;
  position: relative;
  z-index: 1;
}
.checkbox .tooltip_wrapper {
  position: static;
}

[role=tooltip] {
  background: #982e2e;
  border: 0.0625rem solid #982e2e;
  border-radius: 0;
  bottom: 100%;
  color: #fff;
  font-size: 88.889%;
  font-weight: 400;
  line-height: 1.5;
  opacity: 1;
  padding: 0.75em;
  position: absolute;
  right: 0;
  text-align: center;
  transform: translateY(-0.3125rem);
  transition: opacity 300ms, transform 300ms, visibility 300ms;
  visibility: visible;
  z-index: 50;
}
[role=tooltip]:after {
  border: 0.625rem solid transparent;
  border-top-color: #982e2e;
  bottom: -1.25rem;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  margin-left: -0.625rem;
  position: absolute;
  width: 0;
}
[role=tooltip]:before {
  border: 0.6875rem solid transparent;
  border-top-color: #982e2e;
  bottom: -1.375rem;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  margin-left: -0.6875rem;
  position: absolute;
  width: 0;
}
[role=tooltip][aria-hidden=true] {
  opacity: 0;
  transform: translateY(-0.9375rem);
  visibility: hidden;
}

