/**
 * CLICKPRESS CSS-Grid
 * @author: Stefan Schulz-Lauterbach
 *
 * thanks to Dinko Skopljak for co-working
 */
.justify-items-start {
  justify-items: start;
}

.justify-items-center {
  justify-items: center;
}

.justify-items-end {
  justify-items: end;
}

.justify-items-stretch {
  justify-items: stretch;
}

.content-start {
  align-content: start;
}

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

.content-end {
  align-content: end;
}

.items-start {
  align-items: start;
}

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

.items-end {
  align-items: end;
}

.items-stretch {
  align-items: stretch;
}

.items-baseline {
  align-items: baseline;
}

[class*=grid_] {
  display: grid;
  grid-gap: 1rem;
}
[class*=grid_] > .block {
  margin-bottom: 0;
}

@media (min-width: 576px) {
  .grid_mobile_100 {
    grid-template-columns: 1fr;
  }
  .grid_mobile_50_50 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid_mobile_33_33_33 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid_mobile_25_25_25_25 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid_mobile_75_25 {
    grid-template-columns: 3fr 1fr;
  }
  .grid_mobile_25_75 {
    grid-template-columns: 1fr 3fr;
  }
  .grid_mobile_66_33 {
    grid-template-columns: 2fr 1fr;
  }
  .grid_mobile_33_66 {
    grid-template-columns: 1fr 2fr;
  }
  .grid_mobile_60_40 {
    grid-template-columns: 3fr 2fr;
  }
  .grid_mobile_40_60 {
    grid-template-columns: 2fr 3fr;
  }
  .grid_mobile_50_25_25 {
    grid-template-columns: 2fr 1fr 1fr;
  }
  .grid_mobile_25_50_25 {
    grid-template-columns: 1fr 2fr 1fr;
  }
  .grid_mobile_25_25_50 {
    grid-template-columns: 1fr 1fr 2fr;
  }
  .grid_mobile_40_30_30 {
    grid-template-columns: 4fr 3fr 3fr;
  }
  .grid_mobile_30_40_30 {
    grid-template-columns: 3fr 4fr 3fr;
  }
  .grid_mobile_30_30_40 {
    grid-template-columns: 3fr 3fr 4fr;
  }
  .gap_mobile_0 {
    grid-gap: 0;
  }
  .gap_mobile_1 {
    grid-gap: 1rem;
  }
  .gap_mobile_2 {
    grid-gap: 2rem;
  }
  .gap_mobile_3 {
    grid-gap: 3rem;
  }
  .gap_mobile_4 {
    grid-gap: 4rem;
  }
  .gap_mobile_5 {
    grid-gap: 5rem;
  }
  .gap_mobile_6 {
    grid-gap: 6rem;
  }
  .gap_mobile_7 {
    grid-gap: 7rem;
  }
  .gap_mobile_8 {
    grid-gap: 8rem;
  }
  .gap_mobile_9 {
    grid-gap: 9rem;
  }
  .gap_mobile_10 {
    grid-gap: 10rem;
  }
  .gap_mobile_11 {
    grid-gap: 11rem;
  }
  .gap_mobile_12 {
    grid-gap: 12rem;
  }
}
@media (min-width: 768px) {
  .grid_tablet_100 {
    grid-template-columns: 1fr;
  }
  .grid_tablet_50_50 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid_tablet_33_33_33 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid_tablet_25_25_25_25 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid_tablet_75_25 {
    grid-template-columns: 3fr 1fr;
  }
  .grid_tablet_25_75 {
    grid-template-columns: 1fr 3fr;
  }
  .grid_tablet_66_33 {
    grid-template-columns: 2fr 1fr;
  }
  .grid_tablet_33_66 {
    grid-template-columns: 1fr 2fr;
  }
  .grid_tablet_60_40 {
    grid-template-columns: 3fr 2fr;
  }
  .grid_tablet_40_60 {
    grid-template-columns: 2fr 3fr;
  }
  .grid_tablet_50_25_25 {
    grid-template-columns: 2fr 1fr 1fr;
  }
  .grid_tablet_25_50_25 {
    grid-template-columns: 1fr 2fr 1fr;
  }
  .grid_tablet_25_25_50 {
    grid-template-columns: 1fr 1fr 2fr;
  }
  .grid_tablet_40_30_30 {
    grid-template-columns: 4fr 3fr 3fr;
  }
  .grid_tablet_30_40_30 {
    grid-template-columns: 3fr 4fr 3fr;
  }
  .grid_tablet_30_30_40 {
    grid-template-columns: 3fr 3fr 4fr;
  }
  .grid_tablet_20_40_40 {
    grid-template-columns: 1fr 2fr 2fr;
  }
  .grid_tablet_40_20_40 {
    grid-template-columns: 2fr 1fr 2fr;
  }
  .grid_tablet_40_40_20 {
    grid-template-columns: 2fr 2fr 1fr;
  }
  .gap_tablet_0 {
    grid-gap: 0;
  }
  .gap_tablet_1 {
    grid-gap: 1rem;
  }
  .gap_tablet_2 {
    grid-gap: 2rem;
  }
  .gap_tablet_3 {
    grid-gap: 3rem;
  }
  .gap_tablet_4 {
    grid-gap: 4rem;
  }
  .gap_tablet_5 {
    grid-gap: 5rem;
  }
  .gap_tablet_6 {
    grid-gap: 6rem;
  }
  .gap_tablet_7 {
    grid-gap: 7rem;
  }
  .gap_tablet_8 {
    grid-gap: 8rem;
  }
  .gap_tablet_9 {
    grid-gap: 9rem;
  }
  .gap_tablet_10 {
    grid-gap: 10rem;
  }
  .gap_tablet_11 {
    grid-gap: 11rem;
  }
  .gap_tablet_12 {
    grid-gap: 12rem;
  }
}
@media (min-width: 992px) {
  .grid_desktop_100 {
    grid-template-columns: 1fr;
  }
  .grid_desktop_50_50 {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid_desktop_50_25_25 {
    grid-template-columns: 2fr 1fr 1fr;
  }
  .grid_desktop_33_33_33 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid_desktop_75_25 {
    grid-template-columns: 3fr 1fr;
  }
  .grid_desktop_25_75 {
    grid-template-columns: 1fr 3fr;
  }
  .grid_desktop_66_33 {
    grid-template-columns: 2fr 1fr;
  }
  .grid_desktop_60_40 {
    grid-template-columns: 3fr 2fr;
  }
  .grid_desktop_40_60 {
    grid-template-columns: 2fr 3fr;
  }
  .grid_desktop_33_66 {
    grid-template-columns: 1fr 2fr;
  }
  .grid_desktop_50_25_25 {
    grid-template-columns: 2fr 1fr 1fr;
  }
  .grid_desktop_40_30_30 {
    grid-template-columns: 4fr 3fr 3fr;
  }
  .grid_desktop_50_25_25 {
    grid-template-columns: 2fr 1fr 1fr;
  }
  .grid_desktop_25_50_25 {
    grid-template-columns: 1fr 2fr 1fr;
  }
  .grid_desktop_25_25_50 {
    grid-template-columns: 1fr 1fr 2fr;
  }
  .grid_desktop_40_30_30 {
    grid-template-columns: 4fr 3fr 3fr;
  }
  .grid_desktop_30_40_30 {
    grid-template-columns: 3fr 4fr 3fr;
  }
  .grid_desktop_30_30_40 {
    grid-template-columns: 3fr 3fr 4fr;
  }
  .grid_desktop_20_40_40 {
    grid-template-columns: 1fr 2fr 2fr;
  }
  .grid_desktop_40_20_40 {
    grid-template-columns: 2fr 1fr 2fr;
  }
  .grid_desktop_40_40_20 {
    grid-template-columns: 2fr 2fr 1fr;
  }
  .grid_desktop_25_25_25_25 {
    grid-template-columns: repeat(4, 1fr);
  }
  .grid_desktop_40_20_20_20 {
    grid-template-columns: 2fr 1fr 1fr 1fr;
  }
  .grid_desktop_20_40_20_20 {
    grid-template-columns: 1fr 2fr 1fr 1fr;
  }
  .grid_desktop_20_20_40_20 {
    grid-template-columns: 1fr 1fr 2fr 1fr;
  }
  .grid_desktop_20_20_20_40 {
    grid-template-columns: 1fr 1fr 1fr 2fr;
  }
  .grid_desktop_20_20_20_20_20 {
    grid-template-columns: repeat(5, 1fr);
  }
  .gap_desktop_0 {
    grid-gap: 0;
  }
  .gap_desktop_1 {
    grid-gap: 1rem;
  }
  .gap_desktop_2 {
    grid-gap: 2rem;
  }
  .gap_desktop_3 {
    grid-gap: 3rem;
  }
  .gap_desktop_4 {
    grid-gap: 4rem;
  }
  .gap_desktop_5 {
    grid-gap: 5rem;
  }
  .gap_desktop_6 {
    grid-gap: 6rem;
  }
  .gap_desktop_7 {
    grid-gap: 7rem;
  }
  .gap_desktop_8 {
    grid-gap: 8rem;
  }
  .gap_desktop_9 {
    grid-gap: 9rem;
  }
  .gap_desktop_10 {
    grid-gap: 10rem;
  }
  .gap_desktop_11 {
    grid-gap: 11rem;
  }
  .gap_desktop_12 {
    grid-gap: 12rem;
  }
}

/*# sourceMappingURL=clickpress-grid.css.map */

@charset "UTF-8";
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}

/* barlow-condensed-regular - latin */
@font-face {
  font-family: "Barlow Condensed";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Barlow Condensed Regular"), local("BarlowCondensed-Regular"), url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.eot?#iefix") format("embedded-opentype"), url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.woff2") format("woff2"), url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.woff") format("woff"), url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.ttf") format("truetype"), url("/files/theme57/fonts/barlow-condensed-v3-latin-regular.svg#BarlowCondensed") format("svg"); /* Legacy iOS */
}
/* barlow-condensed-600 - latin */
@font-face {
  font-family: "Barlow Condensed";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/files/theme57/fonts/barlow-condensed-v3-latin-600.eot"); /* IE9 Compat Modes */
  src: local("Barlow Condensed SemiBold"), local("BarlowCondensed-SemiBold"), url("/files/theme57/fonts/barlow-condensed-v3-latin-600.eot?#iefix") format("embedded-opentype"), url("/files/theme57/fonts/barlow-condensed-v3-latin-600.woff2") format("woff2"), url("/files/theme57/fonts/barlow-condensed-v3-latin-600.woff") format("woff"), url("/files/theme57/fonts/barlow-condensed-v3-latin-600.ttf") format("truetype"), url("/files/theme57/fonts/barlow-condensed-v3-latin-600.svg#BarlowCondensed") format("svg"); /* Legacy iOS */
}
/* barlow-regular - latin */
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/files/theme57/fonts/barlow-v3-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Barlow Regular"), local("Barlow-Regular"), url("/files/theme57/fonts/barlow-v3-latin-regular.eot?#iefix") format("embedded-opentype"), url("/files/theme57/fonts/barlow-v3-latin-regular.woff2") format("woff2"), url("/files/theme57/fonts/barlow-v3-latin-regular.woff") format("woff"), url("/files/theme57/fonts/barlow-v3-latin-regular.ttf") format("truetype"), url("/files/theme57/fonts/barlow-v3-latin-regular.svg#Barlow") format("svg"); /* Legacy iOS */
}
/* barlow-italic - latin */
@font-face {
  font-family: "Barlow";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/files/theme57/fonts/barlow-v3-latin-italic.eot"); /* IE9 Compat Modes */
  src: local("Barlow Italic"), local("Barlow-Italic"), url("/files/theme57/fonts/barlow-v3-latin-italic.eot?#iefix") format("embedded-opentype"), url("/files/theme57/fonts/barlow-v3-latin-italic.woff2") format("woff2"), url("/files/theme57/fonts/barlow-v3-latin-italic.woff") format("woff"), url("/files/theme57/fonts/barlow-v3-latin-italic.ttf") format("truetype"), url("/files/theme57/fonts/barlow-v3-latin-italic.svg#Barlow") format("svg"); /* Legacy iOS */
}
/* barlow-600 - latin */
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/files/theme57/fonts/barlow-v3-latin-600.eot"); /* IE9 Compat Modes */
  src: local("Barlow SemiBold"), local("Barlow-SemiBold"), url("/files/theme57/fonts/barlow-v3-latin-600.eot?#iefix") format("embedded-opentype"), url("/files/theme57/fonts/barlow-v3-latin-600.woff2") format("woff2"), url("/files/theme57/fonts/barlow-v3-latin-600.woff") format("woff"), url("/files/theme57/fonts/barlow-v3-latin-600.ttf") format("truetype"), url("/files/theme57/fonts/barlow-v3-latin-600.svg#Barlow") format("svg"); /* Legacy iOS */
}
.boxshadow, .content-text.cf, .ktformbox, .klicktippform .basic, aside.left .article-wrapper > *, .ce_rsce_fall {
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.15), inset 0px 1px 0 #ededed;
}

.bg-verlauf-hellgrau {
  background: linear-gradient(to bottom, rgb(237, 237, 237) 0%, rgb(218, 218, 218) 100%);
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.invisible, .ce_form .basic .widget-radio .radio_container > span input, .ce_form .basic .widget-checkbox .checkbox_container > span input {
  border: 0 none;
  clip: rect(0px, 0px, 0px, 0px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.invisibleAccessible, .rating-microdata .ratingText,
.rating-microdata .rating-microdata-name, .sr-only {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.centered {
  text-align: center;
  margin: 0 auto;
}

/*Make Contao Elements visble at all*/
* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background-repeat: no-repeat;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html, body {
  font-size: 16px;
  font-family: "Barlow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1.5;
  color: #343434;
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
}

p {
  font-size: 16px;
  font-size: 1rem;
  color: #343434;
  margin: 0 0 0.5em 0;
}

::-moz-selection {
  background: #343434;
  color: #fff;
  text-shadow: none;
}

::selection {
  background: #343434;
  color: #fff;
  text-shadow: none;
}

html {
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

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

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  text-wrap: balance;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none;
  color: inherit;
}

h1, .h1 {
  font-size: calc(30px + (48 - 30) * (100vw - 320px) / (1900 - 320));
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #53565A;
  margin: 0 0 0.5em 0;
}

h2, .h2 {
  font-size: calc(26px + (34 - 26) * (100vw - 320px) / (1900 - 320));
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #004094;
  margin: 0 0 0.5em 0;
}

h3, .h3 {
  font-size: calc(22px + (28 - 22) * (100vw - 320px) / (1900 - 320));
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #004094;
  margin: 0 0 0.5em 0;
}

h4 {
  font-size: 22px;
  font-size: 1.375rem;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #53565A;
  margin: 0 0 0.5em 0;
}

h5 {
  font-size: 18px;
  font-size: 1.125rem;
  font-family: "Barlow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #004094;
  margin: 0 0 0.5em 0;
}

h6 {
  font-size: 16px;
  font-size: 1rem;
  font-family: "Barlow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #004094;
  margin: 0 0 0.5em 0;
}

p + h2,
p + h3,
p + h4,
p + h5,
p + h6 {
  margin-top: 1em;
}

.syndication + h1 {
  padding-right: 4rem;
}

.headline-grau {
  color: #53565A;
}

img, picture {
  max-width: 100%;
  height: auto;
  line-height: 0;
}

figure {
  line-height: 0;
  margin: 0;
}

figcaption {
  line-height: 1.2;
}

.image_container + h2,
.image_container + h3,
.image_container + h4,
.image_container + h5,
.image_container + p {
  margin-top: 1rem;
}

a {
  color: #004094;
  text-decoration: underline;
}
a:hover, a:focus {
  color: #343434;
}
a:has(img) {
  display: inline-block;
}

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

*:focus-visible {
  outline: 2px dashed #004094;
  outline-offset: 2px;
}

.mobile_menu *:focus-visible {
  outline: 2px dashed #000;
  outline-offset: 2px;
}

ul, ol {
  padding: 0;
  list-style-type: none;
}

.main .content-text ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.5em;
}
.main .content-text ul li:before {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 5px solid transparent;
  border-left-color: #004094;
  position: absolute;
  top: 7px;
  left: 0;
  z-index: 2;
}

.main ol {
  list-style-type: decimal;
  margin-left: 1.5em;
  font-family: "Barlow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  margin-bottom: 1.5rem;
}

.flexlist ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.flexlist li {
  flex: 0 0 30%;
  min-width: 160px;
  padding-right: 0.2em;
}

body {
  max-width: 1920px;
  margin: 0 auto;
  overflow-x: hidden;
}

.wrap, .cookies-eu-inner, .layout-leftcol .container, .mod_article .article-wrapper, #footer .inside, .header-content-wrapper, #topheader .inside {
  max-width: 1560px;
  margin: 0 auto;
}

/*
.inside {

} */
:root {
  --topheader-height: 60px;
}
@media screen and (min-width: 48em) {
  :root {
    --topheader-height: 80px;
  }
}
@media screen and (min-width: 56.25em) {
  :root {
    --topheader-height: 100px;
  }
}

#topheader + #wrapper {
  margin-top: var(--topheader-height);
}

#topheader {
  background-color: #fff;
  height: var(--topheader-height);
  z-index: 10;
  transition: all 0.2s ease-in;
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0);
}
#topheader.fixed-active {
  --topheader-height: 60px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 48em) {
  #topheader.fixed-active {
    --topheader-height: 80px;
  }
}
#topheader .inside {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
}
#topheader .content-element-group {
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 1rem;
  padding-inline: 0.5rem;
  width: 100%;
}
#topheader .logo {
  padding-block: 0.5rem 0.25rem;
  transition: all 0.2s ease-in;
  margin-right: auto;
}
#topheader .logo img {
  width: auto;
  max-height: calc(var(--topheader-height) - 1rem);
  transition: all 0.2s ease-in;
}
@media screen and (min-width: 48em) {
  #topheader .logo {
    padding-block: 0.5rem;
  }
}

.nav-is-mobile #topheader .mainnav {
  order: 5;
}

#header {
  position: relative;
}

.small-header #header {
  max-height: 150px;
  overflow: hidden;
}

.header-content {
  position: relative;
  background-color: #DADADA;
  display: grid;
  grid-template-areas: "hero";
}

.header-content-wrapper {
  position: relative;
  grid-area: hero;
  align-self: end;
  bottom: 1rem;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  flex-direction: column;
}
@media screen and (min-width: 48em) {
  .header-content-wrapper {
    justify-content: stretch;
    flex-direction: row;
  }
}

.hero-image {
  grid-area: hero;
  position: relative;
  background-color: #004094;
}
.hero-image::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, rgba(1, 37, 84, 0) 30%, rgba(1, 37, 84, 0.7) 100%);
}

.slogan {
  font-size: 36px;
  font-size: 2.25rem;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  line-height: 1;
}

.kanzleiname {
  font-size: 48px;
  font-size: 3rem;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1.1;
}

#footer {
  background-color: #6C7174;
  padding: 4rem 1em;
}
#footer .inside .footer-content {
  display: grid;
  grid-template-areas: "adresse" "links" "slogan" "logo";
  grid-template-columns: 1fr;
}
@media screen and (min-width: 48em) {
  #footer .inside .footer-content {
    grid-template-areas: "adresse links" "slogan slogan" "logo logo  ";
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 75em) {
  #footer .inside .footer-content {
    grid-template-areas: "adresse links slogan slogan" "adresse links .      logo  ";
    grid-template-columns: repeat(4, 1fr);
  }
}
#footer * {
  color: #fff;
}
#footer .postal {
  border-left: 5px solid #fff;
  padding: 0 1em;
}
#footer .addressblock {
  z-index: 1;
  margin-bottom: 3rem;
  grid-area: adresse;
}
#footer .footer-col {
  grid-area: links;
}
#footer .footernav {
  z-index: 1;
}
#footer .slogan {
  text-align: left;
  font-weight: 600;
  font-size: 1.5rem;
  margin-top: 3rem;
  grid-area: slogan;
}
@media screen and (min-width: 48em) {
  #footer .slogan {
    font-size: 2.25rem;
    text-align: center;
  }
}
@media screen and (min-width: 75em) {
  #footer .slogan {
    text-align: right;
    margin-top: 0;
    font-size: 2.5rem;
  }
}
#footer .logo {
  text-align: left;
  margin-top: 2rem;
  grid-area: logo;
}
@media screen and (min-width: 48em) {
  #footer .logo {
    text-align: center;
  }
}
@media screen and (min-width: 75em) {
  #footer .logo {
    text-align: right;
  }
}
#footer .logo svg {
  width: 200px;
  height: 78px;
}
#footer [class^=icon] {
  width: 20px;
  height: 20px;
  transform: translate(-4px, 0.25rem);
}
#footer .addressblock a[href^=tel] {
  text-decoration: none;
}

.external-link-box {
  flex: 0 0 100%;
  padding: 1em;
  display: flex;
  justify-content: center;
  background-color: #ececec;
  flex-wrap: wrap;
}
.external-link-box > div, .external-link-box > a {
  flex: 0 0 auto;
  padding: 0.5em 1em;
  align-self: center;
}

.mab-autounfallanwalt #footer {
  background-color: transparent;
  padding: 2rem 0;
}
.mab-autounfallanwalt #footer .inside {
  max-width: unset;
  display: block;
}
.mab-autounfallanwalt #footer .footer-content {
  display: grid;
  grid-template-areas: "service" "adresse" "subfooter";
  grid-template-columns: 1fr;
}
@media screen and (min-width: 48em) {
  .mab-autounfallanwalt #footer .footer-content {
    grid-template-areas: "service" "adresse" "subfooter";
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 75em) {
  .mab-autounfallanwalt #footer .footer-content {
    grid-template-areas: "service" "adresse" "subfooter";
    grid-template-columns: 1fr;
  }
}
.mab-autounfallanwalt #footer .service-von {
  padding: 1rem 2rem;
  grid-area: service;
  background-color: #6C7174;
  text-align: center;
}
.mab-autounfallanwalt #footer .adresse {
  padding: 1rem 2rem;
  grid-area: adresse;
  background-color: #004094;
}
.mab-autounfallanwalt #footer .adresse .ce_cp_grid_start {
  margin-bottom: 0;
}
.mab-autounfallanwalt #footer .adresse .content-text {
  margin-bottom: 0;
}
.mab-autounfallanwalt #footer .lawnav {
  padding: 1rem 2rem;
  grid-area: subfooter;
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}
.mab-autounfallanwalt #footer .lawnav .content-text {
  margin-bottom: 0;
}
.mab-autounfallanwalt #footer .lawnav .content-text p,
.mab-autounfallanwalt #footer .lawnav .mod_customnav a {
  color: #0E0E10;
}
.mab-autounfallanwalt #footer .lawnav .mod_customnav ul {
  list-style: none;
  display: flex;
  gap: 1rem;
}

.mod_article {
  padding: 2rem 1rem;
  position: relative;
}
@media screen and (min-width: 48em) {
  .mod_article {
    padding: 4rem 1rem;
  }
}
@media screen and (max-width: 48em) {
  .mod_article:first-child {
    margin-top: 1rem;
  }
  .firstarticle-notopmargin .mod_article:first-child {
    margin-top: 0;
  }
}
.mod_article.nobottom {
  padding-bottom: 0;
}
.mod_article.smallpadding {
  padding: 2rem 1rem;
}
.mod_article.article-bg-hellblau {
  background-color: #CCD9EA;
}
.mod_article.rezensionen {
  background: linear-gradient(to bottom, rgb(237, 237, 237) 0%, rgb(218, 218, 218) 100%);
}
.mod_article.rezensionen .mod_article {
  padding: 0;
}
.mod_article.rezensionen .mod_article .article-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: center;
  position: relative;
}
.mod_article.rezensionen .mod_article .article-wrapper > * {
  flex: 0 0 100%;
  margin-bottom: 2em;
  padding: 2rem;
  background-color: #F6F6F6;
  display: flex;
  align-content: center;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (min-width: 36.875em) {
  .mod_article.rezensionen .mod_article .article-wrapper > * {
    flex: 0 0 48%;
    max-width: 48%;
  }
}
@media screen and (min-width: 65.625em) {
  .mod_article.rezensionen .mod_article .article-wrapper > * {
    flex: 0 0 23%;
    margin: 0;
    max-width: 23%;
  }
}
.mod_article.rezensionen .mod_article .article-wrapper > * img {
  width: 100%;
}
.mod_article.rezensionen .ce-siegel {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
.mod_article.rezensionen .ce-siegel .siegel-item:first-child {
  margin-bottom: 2rem;
}
.mod_article.rezensionen .ce-siegel .siegel-item-titel {
  font-size: 1.25rem;
  text-transform: uppercase;
  color: #004094;
  font-weight: bold;
}
.mod_article.rezensionen .ce-siegel .siegel-item-titel a {
  text-decoration: none;
  color: inherit;
}
.mod_article.rezensionen .ce-siegel .siegel-item-titel a:hover, .mod_article.rezensionen .ce-siegel .siegel-item-titel a:focus {
  text-decoration: underline;
}
.mod_article.rezensionen .ce-siegel .siegel-item-text {
  font-size: 1.125rem;
  font-style: italic;
}
.mod_article.aktuelle-faelle .article-wrapper {
  display: grid;
  grid-gap: 1rem 1rem;
}
@media screen and (min-width: 35em) {
  .mod_article.aktuelle-faelle .article-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 64em) {
  .mod_article.aktuelle-faelle .article-wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 77.5em) {
  .mod_article.aktuelle-faelle .article-wrapper {
    grid-template-columns: repeat(4, 1fr);
  }
}
.mod_article.aktuelle-faelle .content-headline {
  grid-column: 1/-1;
}
.mod_article.aktuelle-faelle .ce_rsce_fall {
  flex: 0 1 360px;
  margin: 0 0 1.5rem 0;
}
.mod_article .syndication {
  position: absolute;
  right: 1rem;
  top: 4rem;
}
@media screen and (min-width: 56.25em) {
  .mod_article .syndication {
    right: 0;
  }
}
.mod_article .syndication a {
  color: #AFAFB4;
}
.mod_article .syndication a:hover, .mod_article .syndication a:focus {
  color: #8A8E91;
}
.mod_article.article-related {
  padding-top: 0;
}

@media screen and (min-width: 60em) {
  .layout-leftcol .container {
    display: grid;
    grid-template-columns: 1fr 350px;
    grid-gap: 48px;
  }
}

.flexbox-1-1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox-1-1.flex-start {
  justify-content: flex-start;
}
.flexbox-1-1 > .flex-column {
  flex: 0 0 46%;
}
@media screen and (max-width: 47.5em) {
  .flexbox-1-1 > .flex-column {
    flex: 0 0 100%;
  }
}

.flexbox-auto {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox-auto.flex-start {
  justify-content: flex-start;
}
.flexbox-auto > .flex-column {
  flex: 0 0 auto;
  margin: 0 1em 1em 0;
}
.flexbox-auto.v-center {
  align-items: center;
}

.flexend {
  align-self: flex-end;
}

/*Aus altem markup*/
@media screen and (min-width: 56.25em) {
  .group.row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 1em 0;
  }
  .group.row > * {
    flex: 0 0 49%;
    min-width: 320px;
  }
}
.grid-1-1 {
  margin-bottom: 4em;
}
.grid-1-1 > * {
  margin-bottom: 3rem;
}
@media screen and (min-width: 47.5em) {
  .grid-1-1 > * {
    display: inline-block;
    width: 45%;
    margin: 0 8% 2% 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 47.5em) {
  .grid-1-1 > *:nth-child(even) {
    margin: 0 0 2% 0;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 47.5em) {
    .grid-1-1 {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 4em;
      grid-row-gap: 4em;
    }
    .grid-1-1.grid-1-1 > * {
      width: auto;
      margin: 0;
    }
  }
}

.grid-2-1 > * {
  margin-bottom: 3rem;
}
@media screen and (min-width: 62.5em) {
  .grid-2-1 > *:first-child {
    display: inline-block;
    width: 55%;
    margin: 0 8% 2% 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 62.5em) {
  .grid-2-1 > *:last-child {
    display: inline-block;
    width: 35%;
    margin: 0 0 2% 0;
    vertical-align: center;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 62.5em) {
    .grid-2-1 {
      display: grid;
      grid-template-columns: 2fr 40%;
      grid-column-gap: 4em;
    }
  }
  .grid-2-1.grid-2-1 > * {
    width: auto;
    margin: 0;
  }
}

.grid-2-1-30 > * {
  margin-bottom: 3rem;
}
@media screen and (min-width: 62.5em) {
  .grid-2-1-30 > *:first-child {
    display: inline-block;
    width: 55%;
    margin: 0 8% 2% 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 62.5em) {
  .grid-2-1-30 > *:last-child {
    display: inline-block;
    width: 35%;
    margin: 0 0 2% 0;
    vertical-align: center;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 62.5em) {
    .grid-2-1-30 {
      display: grid;
      grid-template-columns: 2fr 30%;
      grid-column-gap: 4em;
    }
  }
  .grid-2-1-30.grid-2-1-30 > * {
    width: auto;
    margin: 0;
  }
}

.grid-1-1-1 {
  margin-bottom: 4em;
}
.grid-1-1-1 > * {
  margin-bottom: 3rem;
}
@media screen and (min-width: 50em) {
  .grid-1-1-1 > * {
    display: inline-block;
    width: 28%;
    margin: 0 8% 2% 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 50em) {
  .grid-1-1-1 > *:nth-child(3n) {
    margin: 0 0 2% 0;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 50em) {
    .grid-1-1-1 {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-column-gap: 4em;
      grid-row-gap: 4em;
    }
  }
  .grid-1-1-1.grid-1-1-1 > * {
    width: auto;
    margin: 0;
  }
}

.grid-1-1-1-1 {
  margin-bottom: 4em;
}
.grid-1-1-1-1 > * {
  margin-bottom: 3rem;
}
@media screen and (min-width: 62.5em) {
  .grid-1-1-1-1 > * {
    display: inline-block;
    width: 18%;
    margin: 0 8% 2% 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 62.5em) {
  .grid-1-1-1-1 > *:nth-child(4n) {
    margin: 0 0 2% 0;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 47.5em) {
    .grid-1-1-1-1 {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 4em;
      grid-row-gap: 4em;
    }
  }
  @media screen and (min-width: 68.75em) {
    .grid-1-1-1-1 {
      grid-template-columns: 1fr 1fr 1fr 1fr;
    }
  }
  .grid-1-1-1-1.grid-1-1-1-1 > * {
    width: auto;
    margin: 0;
  }
}

.grid-v-center {
  align-self: center;
}

@supports (grid-area: auto) {
  [class*=grid_] {
    --gap-default: 1rem;
    --margin-default: var(--gap-default);
    --gap-value: var(--gap-default);
    grid-column-gap: var(--gap-value);
    grid-row-gap: var(--gap-value);
  }
  @media screen and (max-width: 48em) {
    [class*=grid_] {
      grid-row-gap: 0;
    }
  }
  @media screen and (min-width: 56.25em) {
    [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 2);
    }
  }
  @media screen and (min-width: 75em) {
    [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 3);
    }
  }
  .ce_cp_grid_start {
    margin-bottom: calc(var(--margin-default) * 2);
  }
  .grid-gap-null {
    --gap-value: 0;
  }
  .grid-item-padding {
    padding: 1rem;
  }
  @media screen and (min-width: 48em) {
    .grid-item-padding {
      padding: 2rem;
    }
  }
}
.grid-boxed {
  max-width: 73.75em;
  margin-inline: auto;
}

nav ul {
  margin: 0;
  padding: 0;
}
nav a {
  display: block;
  text-decoration: none;
}

.mainnav {
  --nav-breakpoint: 1100;
  --nav-font-weight: 400;
  --nav-font-size: 1.5rem;
  --nav-color: #343434;
  --nav-active-color: #004094;
  --nav-mobile-font-size: 1.25rem;
  --nav-mobile-color: #343434;
  --nav-mobile-active-color: #fff;
  --nav-mobile-active-background: #004094;
  --nav-mobile-active-border-color: #004094;
  --nav-mobile-btn-clr: #004094;
  --nav-burger-line-color: #004094;
  --skip-focus-border-color: #004094;
  --nav-mobile-background: #DADADA;
  --nav-mobile-separator-color: #AFAFB4;
  --nav-mobile-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" fill="none" stroke="%23004094" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24"><path d="m9 18 6-6-6-6"/></svg>');
}
.mainnav .level_1 {
  gap: 0.5rem;
}
.mainnav a {
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
}
.mainnav .level_1 > li > a {
  text-transform: uppercase;
}

body.nav-is-desktop .navigation-main .level_1 ul a {
  font-size: 1.25rem;
}
body.nav-is-desktop .navigation-main .level_1 ul a:hover, body.nav-is-desktop .navigation-main .level_1 ul a:focus {
  color: #fff;
  background-color: var(--nav-active-color);
}

body.nav-is-desktop .navigation-main a.active {
  color: var(--nav-active-color);
}

body.nav-is-desktop .navigation-main .level_1 {
  gap: 0 1rem;
}
@media screen and (min-width: 68.75em) {
  body.nav-is-desktop .navigation-main .level_1 {
    gap: 0 2rem;
  }
}

body.nav-is-desktop .navigation-main .level_2 {
  border-top: 2px solid #004094;
}
body.nav-is-desktop .navigation-main .level_2::before {
  border-bottom-color: #004094;
}

body.nav-is-desktop .btn-toggle-submenu {
  top: 13px;
}

body.nav-is-desktop .navigation-main .level_2 a.nachhaltigkeit {
  background-color: #3a6b3a;
  color: #fff;
}
body.nav-is-desktop .navigation-main .level_2 a.nachhaltigkeit:hover, body.nav-is-desktop .navigation-main .level_2 a.nachhaltigkeit:focus-within, body.nav-is-desktop .navigation-main .level_2 a.nachhaltigkeit.active {
  background-color: #316b31;
}

.footernav a {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M26.5652 20C26.5652 19.6016 26.4004 19.2266 26.1178 18.9453L15.567 8.44531C15.2844 8.16406 14.9076 8 14.5072 8C13.683 8 13 8.67969 13 9.5V30.5C13 31.3203 13.683 32 14.5072 32C14.9076 32 15.2844 31.8359 15.567 31.5547L26.1178 21.0547C26.4004 20.7734 26.5652 20.3984 26.5652 20Z' fill='%23ffffff'/%3E%3C/svg%3E");
  background-repeat: none;
  background-position: left center;
  background-size: 20px 20px;
  padding-left: 1.5rem;
}
.footernav a:hover, .footernav a:focus {
  text-decoration: underline;
}

.mod_mobile_menu .mobile_menu_trigger {
  position: absolute;
  right: 10px;
  top: 5px;
}
@media screen and (min-width: 48em) {
  .mod_mobile_menu .mobile_menu_trigger {
    top: 16px;
  }
}
.mod_mobile_menu button {
  background: none;
  border: 0;
}
.mod_mobile_menu .icon-menu {
  height: 40px;
  width: 40px;
  color: #004094;
  cursor: pointer;
}
.mod_mobile_menu span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

@media screen and (min-width: 37.5em) {
  .mobile_menu {
    width: 50% !important;
  }
}
.mobile_menu .prenav {
  display: block;
  background: none;
  position: relative;
  box-shadow: none;
  border-bottom: 1px solid #EDF5FF;
}
.mobile_menu .inner {
  background-color: #004094;
  padding: 1rem;
  position: relative;
}
.mobile_menu .inner * {
  color: #fff;
}
.mobile_menu .mobile_menu_trigger svg {
  width: 30px;
  height: 30px;
}
.mobile_menu .mheader {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2em;
}
.mobile_menu .logo {
  background: none;
  width: 120px;
  flex: 0 0 120px;
  padding: 0;
  margin: 0;
  transform: translateY(8px);
}
.mobile_menu .logo a {
  padding: 0;
}
.mobile_menu .logo a:hover, .mobile_menu .logo a:focus {
  background: none;
}
.mobile_menu .logo #ongineer-textmarke path:not(#ongineer-bildmarke-strich) {
  fill: #fff;
}
.mobile_menu .logo #ongineer-slogan {
  display: none;
}
.mobile_menu .menu-close {
  padding: 0;
  color: #fff;
  background: none;
}
.mobile_menu .menu-close:hover, .mobile_menu .menu-close:focus {
  color: #809FC9;
}
.mobile_menu .msearch {
  padding: 0;
  margin: 0.5rem 0 1rem;
}
.mobile_menu .msearch .formbody {
  display: flex;
  flex-wrap: none;
  justify-content: stretch;
  max-width: 260px;
}
.mobile_menu .msearch .widget-text {
  flex: 1;
}
.mobile_menu .msearch .widget-text label {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
.mobile_menu .msearch .widget-text input {
  height: 40px;
  padding: 0.5em;
  font-size: 16px;
  font-size: 1rem;
  border-radius: 5px 0 0 5px;
  background-color: #F6F6F6;
  color: #00193A;
  width: 100%;
}
.mobile_menu .msearch button {
  flex: 0 0 40px;
  height: 40px;
  width: 40px;
  background: #1F61B9;
  border: none;
  border-radius: 0 5px 5px 0;
  color: #F6F6F6;
}

.mobilenav a, .law-items a {
  display: block;
  padding: 0.5em;
}
.mobilenav a:not(.first), .law-items a:not(.first) {
  border-top: 1px solid #809FC9;
}
.mobilenav a.submenu, .law-items a.submenu {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M26.5652 20C26.5652 19.6016 26.4004 19.2266 26.1178 18.9453L15.567 8.44531C15.2844 8.16406 14.9076 8 14.5072 8C13.683 8 13 8.67969 13 9.5V30.5C13 31.3203 13.683 32 14.5072 32C14.9076 32 15.2844 31.8359 15.567 31.5547L26.1178 21.0547C26.4004 20.7734 26.5652 20.3984 26.5652 20Z' fill='%233F76BD'/%3E%3C/svg%3E");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 20px;
}
.mobilenav .level_2 a, .law-items .level_2 a {
  background-color: #1F61B9;
  padding: 0.75em 0.5em 0.75em 1.5em;
}
.mobilenav .level_2 a:hover, .mobilenav .level_2 a:focus, .law-items .level_2 a:hover, .law-items .level_2 a:focus {
  background-color: #3F76BD;
}
.mobilenav .level_2 a.first, .law-items .level_2 a.first {
  border-top: 1px solid #fff;
}
.mobilenav li.active, .mobilenav li:focus, .law-items li.active, .law-items li:focus {
  background-color: #1F61B9;
}

.ce_rsce_fall {
  position: relative;
  overflow: hidden;
  max-width: 360px;
}
.ce_rsce_fall a {
  display: flex;
  justify-content: center;
  align-items: center;
}
.ce_rsce_fall a:hover .linkbox-name, .ce_rsce_fall a:focus .linkbox-name {
  background: #004094;
}
.ce_rsce_fall a:hover p, .ce_rsce_fall a:focus p {
  font-size: 28px;
  font-size: 1.75rem;
}
.ce_rsce_fall .linkbox-image {
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.ce_rsce_fall .linkbox-name {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background: rgba(0, 64, 148, 0.7);
  transition: background 0.2s linear;
}
.ce_rsce_fall .linkbox-name p {
  color: #fff;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  margin: 0;
  transition: all 0.1s ease-out;
  text-align: center;
}

[class^=icon] {
  height: 40px;
  width: 40px;
  cursor: pointer;
}
[class^=icon] + span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

#preheader [class^=icon] {
  height: 30px;
  width: 30px;
}

.adressblock [class^=icon] {
  height: 24px;
  width: 24px;
}

.mod_search {
  margin: 1rem 0;
}
.mod_search .formbody {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}
.mod_search .formbody .widget-text input {
  padding: 0.5em;
  border: 1px solid #004094;
  font-size: 1.125rem;
  min-width: 30ch;
  height: 2.5rem;
  color: #004094;
}
.mod_search .formbody .widget-submit button {
  background-color: #004094;
  color: #fff;
  border: 0;
  height: 2.5rem;
  padding-inline: 0.5em;
  cursor: pointer;
}
.mod_search .header {
  margin-bottom: 2rem;
}
.mod_search > div {
  margin-bottom: 2rem;
}
.mod_search h3 {
  font-family: "Barlow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.25em;
  color: #004094;
}
.mod_search .relevance, .mod_search .url {
  font-size: 0.75em;
  color: #8A8E91;
  font-weight: normal;
}
.mod_search .context {
  margin-bottom: 0.25em;
}
.mod_search .highlight {
  background-color: #DADADA;
  padding: 0 0.2em;
}
.mod_search .url {
  color: #8A8E91;
}

.artikelsuche .formbody {
  display: flex;
  flex-wrap: nowrap;
}
.artikelsuche .formbody .widget {
  flex: 0 1 90%;
}
.artikelsuche .formbody .widget input {
  width: 100%;
  padding: 1em;
  border: 1px solid #6C7174;
}
.artikelsuche .formbody button {
  flex: 0 0 10%;
  background-color: #AFAFB4;
}

.search-form label {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

/* -------------------------------------------------------------------------- */
/* Dialog                                                                     */
/* -------------------------------------------------------------------------- */
/* Tokens are declared on the dialog and on the controls which sit outside it */
.tl-dialog,
.tl-dialog__button,
.tl-dialog__close {
  --colour-dialog-text: var(--tl-colour-text, #333333);
  --colour-dialog-background: var(--tl-colour-page, #ffffff);
  --colour-dialog-border: var(--tl-colour-border, #666666);
  --colour-button-text: var(--tl-colour-text, #333333);
  --colour-button-background: var(--tl-colour-surface, #f0f0eb);
  --colour-button-border: var(--tl-colour-border, #666666);
  --colour-button-destructive-border: var(--tl-colour-error, #ca3535);
  --colour-focus-highlight: var(--tl-colour-highlight-focus, #7f238b);
  --colour-focus-contrasting: var(--tl-colour-page, #ffffff);
  --border-width: 2px;
}

/* The dialog surface, shared by the modal and non-modal variants */
.tl-dialog {
  max-inline-size: min(35rem, 100vw - 2rem);
  inline-size: calc(100vw - 2rem);
  padding: 1.5rem;
  color: var(--colour-dialog-text);
  background-color: var(--colour-dialog-background);
  border: var(--border-width) solid var(--colour-dialog-border);
  position: fixed;
  inset-block-start: 10%;
  inset-inline: 0;
  margin-inline: auto;
  margin-block: 0;
}

/* Dim the page behind a modal dialog */
.tl-dialog::backdrop {
  background-color: rgba(0, 0, 0, 0.6);
}

/* The browser makes the page behind a modal dialog inert, but still lets it
   scroll, so lock it in place until the dialog is dismissed */
html:has(.tl-dialog:modal) {
  overflow: hidden;
}

/* The dialog itself is focused when it opens, so it needs no indicator of its own */
.tl-dialog:focus-visible {
  outline: none;
}

#dialog-modal-heading {
  margin-block: 0 1rem;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.5rem;
}

/* Row of buttons which dismiss the dialog */
.tl-dialog__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-block-start: 1.5rem;
}

/* Controls which open and dismiss the dialog */
.tl-dialog__button,
.tl-dialog__close {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  min-inline-size: 44px;
  min-block-size: 44px;
  padding: 0.5rem 1rem;
  font: inherit;
  color: #004094;
  cursor: pointer;
  background-color: transparent;
  border: 0 solid var(--colour-button-border);
}

/* Hidden controls stay hidden, whatever display value is set above */
.tl-dialog__button[hidden],
.tl-dialog__close[hidden] {
  display: none;
}

/* Destructive actions are marked out with the error colour */
.tl-dialog__button--destructive {
  border-color: var(--colour-button-destructive-border);
}

/* The icon-only close button is square, so it needs no horizontal padding */
.tl-dialog__close {
  padding: 0.5rem;
}

.tl-dialog__close svg {
  inline-size: 24px;
  block-size: 24px;
}

.tl-dialog__close .visually-hidden {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

/* Focus styles, which stay visible against light and dark backgrounds */
.tl-dialog__button:focus-visible,
.tl-dialog__close:focus-visible {
  outline: 3px solid var(--colour-focus-contrasting);
  box-shadow: inset 0 0 0 3px var(--colour-focus-highlight);
}

/* The close button comes last in the markup, so people reach the content before
   it and it is the last control before leaving the dialog. It still sits in the
   top corner, where people expect to find it, with the heading kept clear of it */
.tl-dialog__close {
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
}

.tl-dialog:has(.tl-dialog__close:not([hidden])) #dialog-modal-heading {
  padding-inline-end: calc(44px + 1rem);
}

#search-modal .formbody {
  display: flex;
}
#search-modal .widget-text {
  flex: 1;
}
#search-modal input {
  padding: 0.5em;
  border: 1px solid #004094;
  font-size: 1.125rem;
  width: 100%;
  height: 2.5rem;
  color: #004094;
}
#search-modal .formbody button {
  background-color: #004094;
  color: #fff;
  border: 0;
  width: 2.5rem;
  height: 2.5rem;
}

.header-name,
.header-termin,
.header-kontakt {
  flex: 0 1 auto;
  color: #fff;
}
@media screen and (min-width: 48em) {
  .header-name,
  .header-termin,
  .header-kontakt {
    flex: 1;
    border-left: 5px solid #fff;
    padding: 0 1em;
  }
}

.header-name {
  flex: 3;
  display: none;
}
@media screen and (min-width: 75em) {
  .header-name {
    display: block;
  }
}

@media screen and (min-width: 48em) {
  .header-termin {
    min-width: 280px;
  }
}
.header-termin a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #fff;
  transition: all 0.2s linear;
  background-color: #004094;
  padding: 0.25rem 0.5rem;
  border-radius: 3px;
}
.header-termin a:hover, .header-termin a:focus {
  background-color: #012554;
}
@media screen and (min-width: 48em) {
  .header-termin a {
    background-color: transparent;
    padding: 0;
    border-radius: 0;
  }
  .header-termin a:hover, .header-termin a:focus {
    background-color: transparent;
  }
}
.header-termin p {
  margin: 0;
}
.header-termin .termin-titel {
  display: none;
}
@media screen and (min-width: 48em) {
  .header-termin .termin-titel {
    display: block;
    font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
  }
}
.header-termin .termin-cta {
  display: none;
}
@media screen and (min-width: 48em) {
  .header-termin .termin-cta {
    font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 24px;
    font-size: 1.5rem;
    color: #fff;
    line-height: 1.4;
    flex: 1;
    transition: all 0.2s linear;
    display: block;
  }
}
.header-termin .termin-cta:hover, .header-termin .termin-cta:focus {
  text-decoration: underline;
}
.header-termin .termin-cta-mobile {
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  color: #fff;
  line-height: 1.4;
  flex: 1;
  transition: all 0.2s linear;
  display: block;
  white-space: nowrap;
}
@media screen and (min-width: 31.25em) {
  .header-termin .termin-cta-mobile {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 48em) {
  .header-termin .termin-cta-mobile {
    display: none;
  }
}
.header-termin .termin-cta-mobile:hover, .header-termin .termin-cta-mobile:focus {
  text-decoration: underline;
}
.header-termin .icon-calendar {
  width: 24px;
  height: 24px;
  flex: 0 1 2rem;
  margin-right: 0;
}
@media screen and (min-width: 31.25em) {
  .header-termin .icon-calendar {
    width: 32px;
    height: 32px;
    margin-right: 0.5rem;
    flex: 0 0 2rem;
  }
}

@media screen and (min-width: 48em) {
  .header-kontakt {
    min-width: 328px;
  }
}
.header-kontakt .kontakt-titel {
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  display: none;
}
@media screen and (min-width: 31.25em) {
  .header-kontakt .kontakt-titel {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 48em) {
  .header-kontakt .kontakt-titel {
    display: block;
  }
}
.header-kontakt .kontakt-telefon,
.header-kontakt .kontakt-email {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #fff;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  margin: 0;
}
@media screen and (min-width: 31.25em) {
  .header-kontakt .kontakt-telefon,
  .header-kontakt .kontakt-email {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.header-kontakt a {
  color: #fff;
  text-decoration: none;
}
.header-kontakt a:hover, .header-kontakt a:focus {
  text-decoration: underline;
}
.header-kontakt .kontakt-telefon a,
.header-kontakt .kontakt-telefon span {
  white-space: nowrap;
}
.header-kontakt .kontakt-telefon span {
  display: none;
}
@media screen and (min-width: 48em) {
  .header-kontakt .kontakt-telefon span {
    display: flex;
  }
}
.header-kontakt [class^=icon] {
  width: 24px;
  height: 24px;
  flex: 0 0 2rem;
  transform: translateY(2px);
  margin-right: 0;
  color: #fff;
}
@media screen and (min-width: 31.25em) {
  .header-kontakt [class^=icon] {
    width: 32px;
    height: 32px;
    margin-right: 0.5rem;
  }
}
@media screen and (min-width: 48em) {
  .header-kontakt [class^=icon] {
    color: inherit;
  }
}
.header-kontakt .kontakt-email {
  display: none;
}
@media screen and (min-width: 48em) {
  .header-kontakt .kontakt-email {
    display: flex;
  }
}

aside.left .article-wrapper > * {
  padding: 2rem;
  background: #F6F6F6;
  margin-bottom: 3rem;
}
aside.left h3 {
  color: #53565A;
  font-weight: normal;
  text-transform: uppercase;
}

.info {
  display: flex;
  flex-wrap: wrap;
  line-height: 100%;
  margin-bottom: 0.4rem;
  font-size: 14px;
  font-size: 0.875rem;
}
.info .category {
  border-left: 1px solid #004094;
  margin-left: 0.2em;
  padding-left: 0.2em;
}
.info .category a {
  color: #53565A;
}
.info .category a:hover, .info .category a:focus {
  color: #004094;
}

@media print {
  .category {
    display: none;
  }
}
.layout_latest {
  margin-bottom: 4rem;
}

.aktuelles .layout_latest h3, .aktuelles .layout_latest h2 {
  margin-bottom: 1.6rem;
}
.aktuelles .layout_latest .teaser {
  border-left: 4px solid #004094;
  padding-left: 1.5rem;
}
.aktuelles .layout_latest .more {
  margin-left: 1.75rem;
  position: relative;
  padding-left: 1.3rem;
}
.aktuelles .layout_latest .more:before {
  content: "…";
  display: inline-block;
  font-weight: 900;
  font-size: 22px;
  font-size: 1.375rem;
  position: absolute;
  left: 0;
  bottom: 0;
}

.startseiten-news {
  margin-bottom: 4em;
}
.startseiten-news .layout_latest {
  margin-bottom: 3rem;
}
@media screen and (min-width: 50em) {
  .startseiten-news .layout_latest {
    display: inline-block;
    width: 28%;
    margin: 0 8% 3rem 0;
    vertical-align: top;
  }
}
@media screen and (min-width: 50em) {
  .startseiten-news .layout_latest:nth-child(3n) {
    margin: 0 0 3rem 0;
  }
}
@supports (grid-area: auto) {
  @media screen and (min-width: 50em) {
    .startseiten-news {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-column-gap: 4em;
      grid-row-gap: 4em;
    }
  }
  .startseiten-news.startseiten-news > .layout_latest {
    width: auto;
    margin: 0;
    margin-bottom: 3rem;
  }
}
.startseiten-news .layout_latest h3, .startseiten-news .layout_latest h2 {
  margin: 0.35em 0 0.5rem 0;
}
.startseiten-news .layout_latest .more {
  position: relative;
  padding-left: 1.3rem;
}
.startseiten-news .layout_latest .more:before {
  content: "…";
  display: inline-block;
  font-weight: 900;
  font-size: 22px;
  font-size: 1.375rem;
  position: absolute;
  left: 0;
  bottom: 0;
}

.newsteaser--anwalt {
  --gap-default: 2rem;
  --min: 360px;
  margin-block: 2rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--min)), 1fr));
  gap: var(--gap-default);
}
.newsteaser--anwalt .layout_latest {
  background-color: #F6F6F6;
  padding: 1.5rem 1rem;
  border-radius: 0.5rem;
  margin-bottom: 0;
}
.newsteaser--anwalt h3 {
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.375;
  margin-block: 0.75rem;
  color: #53565A;
}

.list-widm {
  margin-top: 3rem;
}
@supports (grid-area: auto) {
  @media screen and (min-width: 50em) {
    .list-widm {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 4em;
      grid-row-gap: 4em;
    }
  }
  .list-widm.startseiten-news > .layout_latest {
    width: auto;
    margin: 0;
    margin-bottom: 3rem;
  }
}
.list-widm .item-widm figure {
  margin-bottom: 1rem;
}
.list-widm .item-widm figure img {
  width: 100%;
}
@media screen and (min-width: 30.625em) {
  .list-widm .item-widm {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .list-widm .item-widm figure {
    flex: 0 0 33%;
  }
  .list-widm .item-widm .content {
    flex: 0 0 65%;
  }
}

.mod_newslist .layout_latest .image_container a {
  display: block;
}

.related {
  border-top: 1px solid #EDEDED;
  padding-top: 3em;
}
.related .layout_simple {
  border-left: 4px solid #004094;
  padding-left: 1.5rem;
  margin-bottom: 2em;
}
.related .layout_simple h5 {
  font-size: 22px;
  font-size: 1.375rem;
}

.pagination li {
  display: inline-block;
  margin-right: 0.3rem;
  margin-bottom: 0.3em;
}
.pagination a,
.pagination .active {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  background: #F6F6F6;
  border: 1px solid #DADADA;
  text-align: center;
  text-decoration: none;
  color: #343434;
  line-height: 2.5rem;
  transition: all 0.2s linear;
}
.pagination .active {
  background: #004094;
  border: 1px solid #004094;
  color: #fff;
}
.pagination a.next,
.pagination a.previous,
.pagination a.first,
.pagination a.last {
  width: auto;
  padding: 0 0.5em;
}
.pagination a:hover,
.pagination a:focus {
  background: #004094;
  border: 1px solid #004094;
  color: #fff;
}

.mod_newscategories h3,
.autoren-nav h3 {
  text-transform: uppercase;
  color: #000;
}
.mod_newscategories li,
.autoren-nav li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.2em;
}
.mod_newscategories li a,
.mod_newscategories li strong > span,
.autoren-nav li a,
.autoren-nav li strong > span {
  text-decoration: none;
  color: #343434;
  display: inline-block;
}
.mod_newscategories li a:before,
.mod_newscategories li strong > span:before,
.autoren-nav li a:before,
.autoren-nav li strong > span:before {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 8px solid transparent;
  border-left-color: #004094;
  position: absolute;
  top: 4px;
  left: 0;
  z-index: 2;
}
.mod_newscategories li a:hover, .mod_newscategories li a:focus,
.mod_newscategories li strong > span:hover,
.mod_newscategories li strong > span:focus,
.autoren-nav li a:hover,
.autoren-nav li a:focus,
.autoren-nav li strong > span:hover,
.autoren-nav li strong > span:focus {
  color: #004094;
}

.mod_newsreader:after {
  content: "";
  display: table;
  clear: both;
}
.mod_newsreader .layout_full:after {
  content: "";
  display: table;
  clear: both;
}
.mod_newsreader .layout_full {
  border-bottom: 1px solid #EDEDED;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}
@media screen and (min-width: 61.875em) {
  .mod_newsreader .additionalinfo {
    float: left;
    width: 68%;
  }
  .mod_newsreader .column {
    float: right;
    width: 30%;
  }
}
.mod_newsreader .autorenbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.mod_newsreader .autorenbox .image {
  flex: 0 0 10%;
  margin-top: 0.4em;
}
.mod_newsreader .autorenbox .image img {
  border-radius: 50%;
}
.mod_newsreader .autorenbox .autoreninfo {
  flex: 0 0 87%;
}
.mod_newsreader .back {
  display: none;
}
.mod_newsreader .newstools {
  margin-top: 3em;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.mod_newsreader .newstools > * {
  flex: 0 1 auto;
}
.mod_newsreader .detail-header {
  border-left: 4px solid #004094;
  padding-left: 1.5rem;
}

.mod_hofff_shariff {
  clear: both;
  padding: 1em 0;
}
.mod_hofff_shariff .shariff .orientation-horizontal {
  justify-content: start;
}
.mod_hofff_shariff a {
  border-radius: 50%;
  text-align: center;
}

.datenschutzlink {
  text-align: right;
}

div.mbrateItRating div.rateItRating-hover,
div.mbrateItRating div.rateItRating-selected,
div.rateItRating div.rateItRating-hover,
div.rateItRating div.rateItRating-selected {
  background: url("/files/theme57/img/star-rating.png") left;
}

.mbrateItRating .wrapper,
.rateItRating .wrapper {
  background: url("/files/theme57/img/star-rating.png");
}

.newsletter-item {
  display: flex;
  gap: 1rem;
  align-items: start;
}
.newsletter-item .datum {
  background-color: #004094;
  display: inline-block;
  padding: 0.5rem;
  color: #fff;
  text-align: center;
  line-height: 1.2;
}
.newsletter-item .month {
  display: block;
  font-size: 1.25rem;
  font-weight: bold;
}
.newsletter-item .year {
  font-size: 1rem;
}

/*Variable Werte für Grundstyle*/
/*
Import additional file for using js select solution (does not work with group otion in Contao select fields)
	// activate @import "nice-select";
	// add $GLOBALS['TL_JAVASCRIPT'][] = $GLOBALS['TL_CONFIG']['uploadPath'].'/theme57/js/jquery.nice-select.min.js|static'; to script template
	// Add $('select').niceSelect(); to main js
*/
/*Klassen für @extend*/
.fieldreset, .ce_form .basic .widget-radio fieldset, .ce_form .basic .widget-checkbox.dsgvo fieldset, .ce_form .basic .widget-checkbox fieldset {
  border: none;
  padding: 0;
}

/*Basic Styles*/
.ce_form .basic input,
.ce_form .basic label {
  display: block;
}
.ce_form .basic p.error {
  color: #C62A2A;
}
.ce_form .basic label,
.ce_form .basic legend {
  color: black;
}
.ce_form .basic label span.mandatory,
.ce_form .basic legend span.mandatory {
  color: black;
}
.ce_form .basic input,
.ce_form .basic textarea {
  width: 100%;
  border: 1px solid #53565A;
  padding: 0.6em 1.5em;
  background-color: white;
  color: black;
  border-radius: 0px;
}
.ce_form .basic input:focus,
.ce_form .basic textarea:focus {
  background: rgb(249.9, 249.9, 249.9);
}
.ce_form .basic input:valid {
  color: black;
}
.ce_form .basic input:focus:invalid {
  background-color: #FCF4F4;
}
.ce_form .basic input.error, .ce_form .basic textarea.error, .ce_form .basic select.error {
  color: #6C1111;
  background-color: #F4D4D4;
}
.ce_form .basic input.error:valid, .ce_form .basic textarea.error:valid, .ce_form .basic select.error:valid {
  color: black;
  background-color: #E5FFDE;
}
.ce_form .basic fieldset {
  border: 1px solid #53565A;
}
.ce_form .basic .widget {
  margin-bottom: 1em;
}
.ce_form .basic .widget-checkbox .checkbox_container > span {
  display: block;
  position: relative;
}
.ce_form .basic .widget-checkbox .checkbox_container > span label {
  padding-left: 30px;
}
.ce_form .basic .widget-checkbox .checkbox_container > span label::before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  height: 20px;
  width: 20px;
  border: 1px solid #53565A;
  background: white;
  text-align: center;
  cursor: pointer;
}
.ce_form .basic .widget-checkbox .checkbox_container > span input:checked ~ label::before {
  content: "✔ ";
  line-height: 1;
  font-size: 20px;
}
.ce_form .basic .widget-checkbox.dsgvo legend {
  display: none;
}
.ce_form .basic .widget-radio .radio_container > span {
  display: block;
  position: relative;
}
.ce_form .basic .widget-radio .radio_container > span label {
  padding-left: 30px;
}
.ce_form .basic .widget-radio .radio_container > span label::before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  border: 1px solid #53565A;
  background: white;
  text-align: center;
  cursor: pointer;
}
.ce_form .basic .widget-radio .radio_container > span input:checked ~ label::before {
  content: "✔ ";
  line-height: 1;
  font-size: 20px;
}
.ce_form .basic .widget-submit,
.ce_form .basic .submit_container {
  text-align: left;
}
.ce_form .basic .widget-submit button,
.ce_form .basic .widget-submit input,
.ce_form .basic .submit_container button,
.ce_form .basic .submit_container input {
  display: inline-block;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  background: #C62A2A;
  color: #fff;
  padding: 0.6em 1.5em;
  border: none;
  cursor: pointer;
}
.ce_form .basic .widget-submit button:hover,
.ce_form .basic .widget-submit input:hover,
.ce_form .basic .submit_container button:hover,
.ce_form .basic .submit_container input:hover {
  background: #004094;
}
.ce_form .basic .widget-submit input,
.ce_form .basic .submit_container input {
  border: none;
}

.widget.no-label {
  display: flex;
  align-items: flex-end;
  flex-wrap: nowrap;
}
.widget.no-label legend {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
.widget.no-label fieldset > span {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap;
  margin-bottom: 0 !important;
}
.widget.no-label fieldset > span label {
  line-height: 1.3 !important;
}
.widget.no-label fieldset > span label::before {
  top: 0.5em;
}

.mandantenaufnahme fieldset + fieldset {
  margin-top: 1.5rem;
}

.firstlabelh3 > legend {
  font-size: calc(22px + 6 * (100vw - 320px) / 1580) !important;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #004094 !important;
  margin: 0 0 0.5em 0;
  margin-top: 0px;
}

.ce_form.gratis {
  padding: 2rem;
  background-color: #EDEDED;
}
.ce_form.gratis .basic .widget-submit {
  text-align: center;
}
.ce_form.gratis .basic .widget-submit button {
  background-color: #004094;
}
.ce_form .form-gap-1 [class*=grid_] {
  --gap-value: 1rem;
}
@media screen and (min-width: 62em) {
  .ce_form .widget.column-half {
    width: 50% !important;
  }
}
.ce_form .widget-calendar > div {
  display: flex;
  align-items: center;
}
.ce_form .widget-calendar > div input {
  order: 2;
  margin-left: 0.2rem;
}

.klicktippform .basic {
  max-width: 350px;
  padding: 1rem;
  margin: 1em auto;
  border-radius: 15px;
  background: #EDEDED;
}
@media screen and (min-width: 37.5em) {
  .klicktippform .basic {
    padding: 30px;
  }
}
.klicktippform .basic .submit_container input {
  background: #C62A2A;
  border: none;
  color: #fff !important;
  padding: 0.6em 2vw;
}

.ktformbox {
  padding: 2rem 1rem;
  background: #F6F6F6;
  margin-bottom: 3rem;
}
@media screen and (min-width: 37.5em) {
  .ktformbox {
    padding: 2rem;
  }
}

/* Contao elements */
.content-text {
  margin-bottom: 3rem;
}
.content-text:after {
  content: "";
  display: table;
  clear: both;
}
.content-text.listeeinruecken ul {
  margin-left: 1.5rem;
}
@media screen and (min-width: 75em) {
  .content-text.listeeinruecken ul {
    margin-left: 3rem;
  }
}
.content-text figure {
  margin-bottom: 1rem;
}
.content-text.media {
  --gap-default: clamp(1rem, 2.4vw + 0.4rem, 2.5rem);
  overflow: hidden;
}
.content-text.media.media--right figure {
  float: right;
  margin-left: var(--gap-default);
  margin-bottom: var(--gap-default);
}
.content-text.media.media--left figure {
  float: left;
  margin-right: var(--gap-default);
  margin-bottom: var(--gap-default);
}
.content-text.cf {
  background: #F6F6F6;
  padding: 2em;
}
.content-text.zitat {
  background: url("/files/theme57/img/bg-blockquote.png") right bottom no-repeat #F6F6F6;
  padding: 0;
  margin-bottom: 2em;
}
.content-text.zitat p, .content-text.zitat li {
  font-style: italic;
}
.content-text.zitat ul, .content-text.zitat ol {
  margin-left: 3em;
}
.content-text.zitat blockquote {
  border-left: none;
  background-image: none;
  background-color: transparent;
  margin-bottom: 0;
}
.content-text blockquote {
  padding: 1em;
  border-left: 4px solid #004094;
  margin-bottom: 1.5em;
  background: #F6F6F6 url(/files/theme57/img/bg-blockquote.png) right bottom no-repeat;
}
.content-text blockquote p, .content-text blockquote li {
  font-size: 1.125rem;
  font-style: italic;
}
.content-text blockquote ul, .content-text blockquote ol {
  margin-left: 3em;
}
.content-text blockquote p:last-child {
  margin-bottom: 0;
}

.cta-infos .kontakt-telefon,
.cta-infos .kontakt-termin {
  display: flex;
  text-decoration: none;
  color: #343434;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  margin: 0;
}
@media screen and (min-width: 31.25em) {
  .cta-infos .kontakt-telefon,
  .cta-infos .kontakt-termin {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.cta-infos a {
  color: #343434;
  text-decoration: none;
}
.cta-infos a:hover, .cta-infos a:focus {
  text-decoration: underline;
}
.cta-infos .kontakt-telefon a,
.cta-infos .kontakt-telefon span {
  white-space: nowrap;
}
.cta-infos .kontakt-telefon span {
  display: none;
}
@media screen and (min-width: 48em) {
  .cta-infos .kontakt-telefon span {
    display: flex;
  }
}
.cta-infos [class^=icon] {
  width: 24px;
  height: 24px;
  flex: 0 0 2rem;
  transform: translateY(2px);
  margin-right: 0;
}
@media screen and (min-width: 31.25em) {
  .cta-infos [class^=icon] {
    width: 32px;
    height: 32px;
    margin-right: 0.5rem;
  }
}

.content-accordion {
  margin: 0 0 0.5em 0;
}
.content-accordion .toggler {
  position: relative;
  padding: 0.5em 4em 0.5em 1em;
  cursor: pointer;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  color: #343434;
  border: 1px solid #DADADA;
  outline: 0;
  transition: all 0.2s linear;
  background-color: #EDEDED;
  transition: all 0.2s linear;
}
.content-accordion .toggler:hover {
  color: #004094;
  background-color: #F6F6F6;
}
.content-accordion .toggler:after {
  position: absolute;
  right: 0.5em;
  top: 0;
  line-height: 1;
  font-size: 64px;
  font-size: 4rem;
  content: "+";
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  speak: none;
}
.content-accordion .toggler.open:after {
  content: "–";
}
.content-accordion .accordion {
  display: none;
  padding: 1em;
  border-left: 1px solid #F6F6F6;
  border-right: 1px solid #F6F6F6;
  border-bottom: 1px solid #F6F6F6;
}
.content-accordion .accordion * :last-child {
  margin-bottom: 0;
}
.content-accordion.formincluded-accordion .toggler {
  padding: 0.2em;
  background-color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  color: #C62A2A;
}
.content-accordion.formincluded-accordion .toggler:hover {
  color: #004094;
  background-color: #F6F6F6;
}
.content-accordion.formincluded-accordion .toggler:after {
  position: absolute;
  right: 0.5em;
  top: 0;
  line-height: 1;
  font-size: 30px;
  font-size: 1.875rem;
  content: "+";
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  speak: none;
}
.content-accordion.formincluded-accordion .toggler.open {
  color: #004094;
}
.content-accordion.formincluded-accordion .toggler.open:after {
  content: "–";
}

.content-youtube {
  max-width: 640px;
}
.content-youtube .aspect {
  aspect-ratio: 16/9;
}
.content-youtube .aspect iframe,
.content-youtube .aspect object,
.content-youtube .aspect embed,
.content-youtube .aspect > * {
  aspect-ratio: inherit;
  width: 100%;
  height: 100%;
}

hr {
  border: 0;
  height: 1px;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 64, 148, 0.75), rgba(0, 0, 0, 0));
}

@media screen and (max-width: 63.125em) {
  .logolinks {
    justify-content: center;
  }
  .logolinks .content-hyperlink {
    flex: 0 0 30%;
    margin: 0.5rem;
    text-align: center;
  }
}
@media screen and (min-width: 20em) and (max-width: 30.625em) {
  .logolinks .content-hyperlink {
    flex: 0 0 48%;
    margin: 0.5rem;
    text-align: center;
  }
}

.button a {
  display: inline-block;
  padding: 0.5em 1.8em;
  text-decoration: none;
  text-align: center;
  transition: all 0.2s linear;
}
.button.clean a {
  border: 1px solid #53565A;
  color: #53565A;
}
.button.clean a:hover, .button.clean a:focus {
  border-color: #004094;
  background: #004094;
  color: #fff;
}
.button.button-blau a {
  border: 1px solid #004094;
  border-color: #004094;
  background: #004094;
  color: #fff;
}
.button.button-blau a:hover, .button.button-blau a:focus {
  border: 1px solid #AFAFB4;
  color: #53565A;
  background: #fff;
}
.button.button-blau-skeleton a {
  border: 1px solid #004094;
  background-color: #fff;
  color: #004094;
}
.button.button-blau-skeleton a:hover, .button.button-blau-skeleton a:focus {
  border: 1px solid #004094;
  color: #fff;
  background-color: #004094;
}
.button.button-hellblau {
  margin-bottom: 2rem;
}
.button.button-hellblau a {
  border: 1px solid #809FC9;
  border-color: #809FC9;
  background: #809FC9;
  color: #fff;
  text-transform: uppercase;
}
.button.button-hellblau a:hover, .button.button-hellblau a:focus {
  border: 1px solid #AFAFB4;
  color: #53565A;
  background: #fff;
}
.button.fullwidth a {
  display: block;
}
.button.termin a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-align: left;
  background: #fff;
  color: #004094;
  text-transform: uppercase;
  transition: all 0.4s;
}
.button.termin a:hover, .button.termin a:focus {
  border: 1px solid #AFAFB4;
  color: #fff;
  background: #004094;
}
.button .icon {
  width: 1.6em;
  height: 1.6em;
  vertical-align: bottom;
}

#cookies-eu-banner {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
#cookies-eu-banner p {
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.3;
  margin: 0;
  hyphens: none;
}
@media screen and (min-width: 37.5em) {
  #cookies-eu-banner p {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.cookies-eu-inner {
  padding: 1rem 1rem 1rem;
}

.cookies-eu-footer {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 1rem;
  flex-direction: column-reverse;
}
@media screen and (min-width: 37.5em) {
  .cookies-eu-footer {
    flex-direction: row;
    justify-content: space-between;
  }
}

.cookie-eu-button {
  border: 1px solid #fff;
  padding: 0.5em;
  text-transform: uppercase;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  width: 100%;
  hyphens: none;
}
@media screen and (min-width: 37.5em) {
  .cookie-eu-button {
    font-size: 16px;
    font-size: 1rem;
    width: auto;
    flex: 0 0 280px;
    padding: 1em;
    margin-bottom: 1rem;
  }
}

#cookies-eu-reject {
  color: #fff;
  background-color: transparent;
  margin-bottom: 0;
}
#cookies-eu-reject:hover, #cookies-eu-reject:focus {
  background-color: #fff;
  color: #004094;
}
@media screen and (min-width: 37.25em) {
  #cookies-eu-reject {
    margin-bottom: 1rem;
  }
}

#cookies-eu-accept {
  background-color: #1F61B9;
  color: #fff;
  border: 1px solid #1F61B9;
}
#cookies-eu-accept:hover, #cookies-eu-accept:focus {
  background-color: #004094;
  border: 1px solid #004094;
}

.cookies-eu-link {
  text-decoration: underline;
  color: #fff;
}
.cookies-eu-link:hover, .cookies-eu-link:focus {
  text-decoration: none;
  color: rgb(0, 108.1081081081, 250);
}

.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #ffffff;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #004094;
  width: 80%; /* Could be more or less, depending on screen size */
  max-width: 600px;
  /* The Close Button */
}
.modal-content .close {
  color: #004094;
  float: right;
  font-size: 28px;
  font-weight: bold;
}
.modal-content .close:hover,
.modal-content .close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

.contao-cookiebar {
  --ccb-text: #343434;
  --ccb-detail-clr: #343434;
}
.contao-cookiebar .highlight .success {
  --ccb-btn-bg: #397b2b;
}

.content-accordion .handorgel__header__button {
  position: relative;
  padding: 0.5em 4em 0.5em 1em;
  cursor: pointer;
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.5rem;
  color: #343434;
  border: 1px solid #DADADA;
  outline: 0;
  transition: all 0.2s linear;
  background-color: #EDEDED;
  transition: all 0.2s linear;
}
.content-accordion .handorgel__header__button::after {
  position: absolute;
  right: 0.5em;
  top: 0;
  line-height: 1;
  font-size: 3.3rem;
  content: "+";
  font-family: "Barlow Condensed", "Arial Narrow", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/*Variable Werte für Grundstyle*/
.page-ma .container {
  max-width: 60rem;
  margin: 0 auto;
}

.ce_form .basic.mandantenaufnahme {
  margin-bottom: 3em;
}
.ce_form .basic.mandantenaufnahme fieldset {
  margin-bottom: 1em;
}
.ce_form .basic.mandantenaufnahme fieldset:after {
  content: "";
  display: table;
  clear: both;
}
.ce_form .basic.mandantenaufnahme fieldset {
  padding-bottom: 0;
  margin-bottom: 0;
  border: none;
}
.ce_form .basic.mandantenaufnahme fieldset.radio_container input {
  width: auto;
  float: left;
  margin: 0 0.5em 0 0;
}
.ce_form .basic.mandantenaufnahme fieldset.radio_container label {
  line-height: 100%;
}
.ce_form .basic.mandantenaufnahme fieldset.radio_container span:not(.size) {
  display: block;
  margin-bottom: 0.5em;
}
.ce_form .basic.mandantenaufnahme fieldset.radio_container span:not(.size).mandatory {
  margin: 0;
  display: inline;
}
.ce_form .basic.mandantenaufnahme fieldset.checkbox_container input {
  width: auto;
  float: left;
  margin: 0.25em 0.5em 0 0;
}
.ce_form .basic.mandantenaufnahme fieldset.checkbox_container label {
  line-height: 100%;
}
.ce_form .basic.mandantenaufnahme fieldset.checkbox_container span:not(.size) {
  display: block;
  margin-bottom: 0.5em;
}
.ce_form .basic.mandantenaufnahme fieldset.checkbox_container span:not(.size).mandatory {
  margin: 0;
  display: inline;
}
.ce_form .basic.mandantenaufnahme fieldset.fs-container > legend,
.ce_form .basic.mandantenaufnahme fieldset.nolegend > legend {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
@media screen and (min-width: 37.5em) {
  .ce_form .basic.mandantenaufnahme .twocolumns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0.4em;
  }
  .ce_form .basic.mandantenaufnahme .twocolumns .widget {
    flex: 0 0 46%;
  }
  .ce_form .basic.mandantenaufnahme .threecolumns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0.4em;
  }
  .ce_form .basic.mandantenaufnahme .threecolumns .widget {
    flex: 0 0 30%;
  }
}
@media screen and (min-width: 37.5em) {
  .ce_form .basic.mandantenaufnahme .rowfull {
    margin-bottom: 0.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .ce_form .basic.mandantenaufnahme div.widget {
    width: 100%;
  }
  .ce_form .basic.mandantenaufnahme div.widget3 {
    flex: 0 0 30%;
  }
  .ce_form .basic.mandantenaufnahme div.widget4 {
    flex: 0 0 22%;
  }
  .ce_form .basic.mandantenaufnahme div.widget6 {
    margin-bottom: 0.4em;
    flex: 0 0 48%;
  }
  .ce_form .basic.mandantenaufnahme div.widget9 {
    flex: 0 0 66%;
  }
  .ce_form .basic.mandantenaufnahme div.post3 {
    flex: 0 0 30%;
  }
  .ce_form .basic.mandantenaufnahme div.post6 {
    flex: 0 0 48%;
  }
  .ce_form .basic.mandantenaufnahme div.post9 {
    flex: 0 0 66%;
  }
}
.ce_form .basic.mandantenaufnahme label,
.ce_form .basic.mandantenaufnahme legend {
  font-size: 15px;
  font-size: 0.9375rem;
}
.ce_form .basic.mandantenaufnahme input, .ce_form .basic.mandantenaufnahme textarea, .ce_form .basic.mandantenaufnahme select {
  width: 100%;
}
.ce_form .basic.mandantenaufnahme select {
  padding: 0.6em;
}
.ce_form .basic.mandantenaufnahme input[type=submit] {
  padding: 0.25em 3em;
}
.ce_form .basic.mandantenaufnahme input[type=submit]:hover, .ce_form .basic.mandantenaufnahme input[type=submit]:focus {
  background: #C62A2A;
}
.ce_form .basic.mandantenaufnahme h2, .ce_form .basic.mandantenaufnahme h3 {
  margin-top: 1em;
}
.ce_form .basic.mandantenaufnahme p {
  margin-top: 0;
}
.ce_form .basic.mandantenaufnahme span.mandatory {
  color: red;
  font-size: 1.5em;
  line-height: 0;
}
.ce_form .basic.mandantenaufnahme .dropzone {
  margin-bottom: 1em;
}
.ce_form .basic.mandantenaufnahme .highlight:after {
  content: "";
  display: table;
  clear: both;
}
.ce_form .basic.mandantenaufnahme .highlight {
  border: 1px solid #EDEDED;
  padding: 1em;
}
.ce_form .basic.mandantenaufnahme .choosen {
  font-weight: bold;
}
.ce_form .basic.mandantenaufnahme .error {
  color: red;
}
.ce_form .basic.mandantenaufnahme #infobox {
  display: none;
  max-width: 400px;
}
.ce_form .basic.mandantenaufnahme .rechtsschutz-ja {
  display: none;
}
.ce_form .basic.mandantenaufnahme .rechtsschutz-ja.visible {
  display: block;
}
@media screen and (min-width: 37.5em) {
  .ce_form .basic.mandantenaufnahme .rechtsschutz-ja.visible {
    display: flex;
  }
}
.ce_form .basic.mandantenaufnahme .schutzinfo-ja {
  display: none;
}
.ce_form .basic.mandantenaufnahme .schutzinfo-ja.visible {
  display: block;
}
.ce_form .basic.mandantenaufnahme.mf-autocomplete .rechtsschutz-ja {
  display: block;
}
@media screen and (min-width: 37.5em) {
  .ce_form .basic.mandantenaufnahme.mf-autocomplete .rechtsschutz-ja {
    display: flex;
  }
}
.ce_form .basic.mandantenaufnahme.mf-autocomplete .schutzinfo-ja {
  display: block;
}
.ce_form .basic.mandantenaufnahme .content-download img {
  display: none;
}
.ce_form .basic.mandantenaufnahme .widget-dropzone {
  margin-bottom: 2em;
}
.ce_form .basic.mandantenaufnahme.formular input[type=submit] {
  font-size: 1.3em;
  text-transform: uppercase;
}

#infobox {
  padding: 2em;
}

.danke-downloads {
  padding: 2em 0;
}
.danke-downloads .content-download img {
  display: none;
}

fieldset.widerrufsfrist {
  padding: 0;
}

.submit_container {
  margin: 1em auto;
}

/*Select basic styles works unreliably in IE and Edge browser */
.widget-select {
  position: relative;
}
.widget-select select {
  width: 100%;
  padding: 0.6em;
  border: 1px solid #53565A;
  background: #fff;
  color: black;
  cursor: pointer;
}
.edge .widget-select select, .ie .widget-select select {
  padding: 0;
  height: 40px;
}
.widget-select select option {
  padding: 0.6em;
  color: black;
  padding: 0.6em;
  background: inherit;
}
.widget-select {
  /*ie*/
}
.widget-select select::-ms-expand {
  display: none;
}
.widget-select select:focus::-ms-value {
  background-color: transparent;
}

/*Select basic  end*/
.mab-autounfallanwalt .mandantenaufnahme {
  max-width: 60em;
  margin-inline: auto;
}
