 :root { --font-family: "DM Sans", sans-serif; --font-heading: "DM Serif Display", serif; --bricks-color-primary: var(--red); --bricks-color-secondary: var(--black); --bricks-border-color: var(--font-secondary); --red-rgb: 149,19,63; --black-rgb: 26,22,18; --white-rgb: 255,255,255;  --page-width: 2048px; --header-height: 75px; --header-height-mobile: 64px; --gap: 1rem; --section-padding-y: 5rem; --spacing: 1.2rem; --text-smaller: 0.875rem; --border-transparent: rgba(var(--black-rgb),0.25); --border-transparent-hover: rgba(var(--black-rgb),0.5); --border-radius: 1rem; --box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1); --border-image: linear-gradient(rgba(var(--black-rgb),0.5) 101%, transparent) 0 fill; --slider-arrow-size: 2.5rem; --transition-duration: 0.35s; --transition: ease-out var(--transition-duration); } @media (max-width: 991px) { :root { --header-height: var(--header-height-mobile); --section-padding-y: 3.5rem; } } @media (max-width: 478px) { :root { --section-padding-y: 2rem; } }  @media (max-width: 600px) { body.bricks-is-frontend.admin-bar #brx-header.sticky.scrolling { top: 0; } }  html { scroll-behavior: smooth; scroll-padding-top: var(--header-height); } html, body { font-family: var(--font-family); font-size: 16px; font-weight: 400; line-height: 1.6; color: var(--font-primary); } body { background-color: var(--offwhite); overflow-x: clip; } ::selection { background-color: rgba(var(--black-rgb),0.8); color: var(--white); } .hidden, [hidden] { display: none!important; opacity: 0; visibility: hidden; } body.bricks-is-frontend :focus-visible { outline: 2px dashed var(--red-light); }  h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { margin-bottom: 1.5rem; font-family: var(--font-heading); font-weight: 400; line-height: 1; text-wrap: balance; } h5, .h5, h6, .h6 { margin-bottom: 1rem; } h1, .h1 { font-size: 5rem; }  h2, .h2, h3, .h3 { font-size: 2.5rem; } h4, .h4 { font-size: 2.25rem; } h5, .h5 { font-size: 1.375rem; } h6, .h6 { font-size: 1.25rem; } .brxe-heading.bricks-type-hero { font-size: 3rem; } @media (max-width: 991px) { h1, .h1 { font-size: 3.5rem; }  h3, .h3 { font-size: 2.25rem; } h4, .h4 { font-size: 2rem; } .brxe-heading.bricks-type-hero { font-size: 2.75rem; } } @media (max-width: 767px) { h1, .h1 { font-size: 2.825rem; }  .brxe-heading.bricks-type-hero { font-size: 2.5rem; } } @media (max-width: 478px) { h1, .h1 { font-size: 2.25rem; }  h2, .h2, h3, .h3 { font-size: 1.75rem; } h4, .h4 { font-size: 1.5rem; } .brxe-heading.bricks-type-hero { font-size: 2rem; } } b, strong { font-weight: 500; } a, a.brxe-text-link .text, a.brxe-text-link .icon { transition: var(--transition); } main a:not(.bricks-button, .brxe-text-link), :where(p, ul, ol) a:not(.bricks-button) { text-decoration: underline; color: inherit; } a.brxe-text-link .icon { color: var(--red); } a.brxe-text-link .icon path, svg.icon path { fill: currentColor; } main a:not(.bricks-button):is(:hover, :focus), a.brxe-text-link:is(:hover, :focus) text { color: var(--red); } :where(footer, .banner, .bg--red) a:not(.bricks-button):is(:hover, :focus), a.brxe-text-link:is(:hover, :focus) .icon { color: var(--red-light); } main a:not(.bricks-button, .title):visited { color: var(--font-secondary); } .bg--red a:not(.bricks-button, .title):visited { color: var(--red-light); } .dsgvo-reference { font-size: 0.8rem; }  .brxe-text :where(ul, ol) { text-align: left; } .brxe-text ul { padding-left: 1.25em; } .brxe-text ol { padding-left: 2.5ch; list-style: decimal-leading-zero; } .brxe-text :where(ul, ol) ::marker { color: var(--red); } .brxe-text :where(ul, ol) li:not(:last-child) { margin-bottom: 0.5em; }  .checklist ul { padding-left: 0; font-size: var(--text-smaller); list-style: none; } .checklist ul li, .checklist.checklist--em ol li { position: relative; padding-left: 2em; } .checklist.checklist--em ol li { padding-top: 0.25em; padding-left: 3em; } .checklist ul li::before { content: ""; width: 1.25em; height: 1.25em; border-radius: 50%; background-image: url('/wp-content/uploads/check.svg'); background-repeat: no-repeat; background-size: 0.75em; background-position: center; background-color: var(--red-light); } .checklist ul li::before, .checklist.checklist--em ol li::before { position: absolute; top: 0.1em; left: 0; display: block; } .checklist.checklist--em :where(ul, ol) li:not(:last-child) { margin-bottom: 0.75em; padding-bottom: 0.75em; border-bottom: 1px solid var(--border-transparent); } .checklist.checklist--em ol { padding-left: 0; list-style: none; counter-reset: numberedlist; } .checklist.checklist--em ol li { counter-increment: numberedlist; } .checklist.checklist--em ol li::before { content: counters(numberedlist, "-", decimal-leading-zero); font-family: var(--font-heading); font-size: 1.5em; line-height: 1; color: var(--red); opacity: 0.75; }  @media (min-width: 479px) { .list-columns :where(ol, ul) { columns: 2; column-gap: 2rem; } .list-columns :where(ol, ul) li { break-inside: avoid; } }  section { padding: var(--section-padding-y) 1rem; } section section { padding: 0; } .brxe-container { align-items: center; width: 1400px; } .brxe-container.container--narrow { width: 1200px; } .brxe-container.container--wide { width: 1550px; } .brxe-container.container--left { align-items: flex-start; } header + main, header + .hero { margin-top: var(--header-height); } .hero, .banner { width: 100%; max-width: var(--page-width); border-image: var(--border-image); }  .text--left { text-align: left; } .text--center { text-align: center; } .text--wide, .text--medium, .text--narrow { width: 100%; } .text--wide { max-width: 90ch; } .text--medium { max-width: 64ch; } .text--narrow { max-width: 46ch; } .text--smaller { font-size: var(--text-smaller); } @media (max-width: 478px) { .text--center { text-align: left; } }  p { margin-bottom: var(--spacing); } p:last-of-type { margin-bottom: 0; } .brxe-text :where(ul, ol) { margin: var(--spacing) 0; } .brxe-text :where(ul, ol):first-child { margin-top: 0; } .brxe-text :where(ul, ol):last-child, .brxe-heading:last-child, .no-margin-bottom { margin-bottom: 0; } .brxe-text :where(ul, ol):only-child { margin: 0; } .brxe-text + :where(h2, h3, h4, h5, h6), :where(p, ul, ol) + :where(h2, h3, h4, h5, h6) { margin-top: 1em; } :where(p, ul, ol, .brxe-text, .brxe-text-basic) + :where(.button-wrapper, .bricks-button), .title + .checklist.checklist--em, .flex-wrapper + .bricks-button { margin-top: var(--spacing); }  .bg--beige { background-color: var(--beige); } .bg--beige-light { background-color: var(--beige-light); } .font--red { color: var(--red); } .font--red-light, .title.font--red-light, .bg--red .title.font--red-light, .banner .title.font--red-light { color: var(--red-light); } .font--secondary, .title.font--secondary { color: var(--font-secondary); }  header { display: flex; align-items: flex-end; height: var(--header-height); padding: 0 1rem; box-shadow: var(--box-shadow); background-color: var(--white); font-family: var(--font-heading); color: var(--black);  content-visibility: visible !important; }  .brxe-nav-menu .bricks-nav-menu a, .brxe-nav-menu .bricks-mobile-menu-wrapper a { color: inherit; line-height: normal; text-decoration: none; } header .brxe-nav-menu a:is(:hover, :focus), header .brxe-nav-menu a[aria-current="page"], header .brxe-nav-menu div.aria-current, footer .brxe-nav-menu a:is(:hover, :focus) { color: var(--red); } footer .brxe-nav-menu a[aria-current="page"] { color: var(--red-light); }  :where(header, footer) .brx-submenu-toggle.icon-right button { width: 1rem; } header .sub-menu { padding: 0.5em 0; color: inherit; } header .bricks-nav-menu-wrapper .sub-menu { box-shadow: var(--box-shadow); }  .bricks-mobile-menu { padding: 1.5rem 0; color: var(--black); }  footer .brxe-nav-menu ul { flex-direction: column; gap: var(--gap); } footer .brxe-nav-menu ul li { margin-left: 0; }  .bricks-button { --_border-width: 2.5px; position: relative; padding: 0.875rem 1.5rem; border: var(--_border-width) solid transparent; font-size: 0.875em; line-height: normal; color: var(--white); text-wrap: balance; isolation: isolate; cursor: pointer; transition: var(--transition); } .bricks-button .icon-arrow { color: inherit; } .bricks-button::before { content: ""; position: absolute; top: calc(var(--_border-width) * -1); left: calc(var(--_border-width) * -1); width: 0; height: calc(var(--_border-width) * 2); transition: var(--transition); transition-delay: 0.2s; z-index: 1; } .bricks-button.bricks-background-secondary { background-color: var(--white); color: var(--red); } .bricks-button::before, .bricks-button.bricks-color-secondary.outline::before { background-color: var(--red); } .bricks-button.bricks-background-secondary::before, .bricks-button.outline::before { background-color: var(--white); } .bg--red .bricks-button.bricks-color-secondary.outline::before { background-color: var(--black); } .bricks-button.outline { border-color: var(--black); background-color: transparent; color: var(--black); } .bricks-button.bricks-color-secondary.outline { border-color: var(--white); color: var(--white); } .bricks-button:is(:hover, :focus), .bricks-button.bricks-background-primary:is(:hover, :focus), .bricks-button.bricks-color-secondary.outline:is(:hover, :focus) { background-color: rgba(var(--white-rgb),0.8); color: var(--black); } .bricks-button.bricks-background-secondary:is(:hover, :focus) { background-color: var(--black); color: var(--white); } .bricks-button:is(:hover, :focus):before { width: calc(100% + var(--_border-width) * 2); } .bricks-button.outline:is(:hover, :focus) { background-color: rgba(var(--black-rgb),0.8); color: var(--white); }   .title { display: flex; flex-flow: row nowrap; justify-content: flex-start; align-items: flex-start; margin-bottom: 1em; color: var(--red); } .title, .img-tag, .job__type, .job__location { font-size: var(--text-smaller); text-transform: uppercase; letter-spacing: 0.175em; } .title strong { font-weight: 400; color: var(--font-secondary); white-space: nowrap; } .title strong::after, .banner--boxed .title::before { content: ""; display: inline-block; width: 2em; height: 1px; margin: 0 0.75em; background-color: var(--red); vertical-align: middle; } .banner--boxed .title::before { align-self: center; margin-left: 0; } .banner .title, .bg--red .title, footer .title { color: inherit; }  .emphasized-text { font-size: var(--text-smaller); color: var(--font-secondary); } .emphasized-text strong { display: block; font-family: var(--font-heading); font-size: 2em; color: var(--red); }  .split { --gap: 4rem; display: flex; flex-flow: row wrap; justify-content: center; align-items: stretch; gap: var(--gap); } .split--reversed { flex-direction: row-reverse; } .split--align-center { align-items: center; } .split--50-50 .split__img-wrapper, .split--50-50 .split__content { width: calc(50% - var(--gap) / 2); } .split--60-40 .split__img-wrapper { width: calc(40% - var(--gap) / 2); } .split--60-40 .split__content { width: calc(60% - var(--gap) / 2); } .split--70-30 .split__img-wrapper { width: calc(30% - var(--gap) / 2); } .split--70-30 .split__content { width: calc(70% - var(--gap) / 2); } .split .split__img-wrapper.split__img-wrapper--textonly { max-height: unset; } .split__img { width: 100%; height: 100%; max-height: inherit; object-fit: cover; object-position: center center; } @media (max-width: 991px) { .split { --gap: 2rem; } } @media (max-width: 767px) { .split .split__img-wrapper, .split .split__content { width: 100%; } .split .split__img-wrapper { max-width: 45rem; max-height: 25rem; } }  .split-section-big .split { --gap: 0px; } .split-section-big .split { align-items: stretch; } .split-section-big .split .split__content { padding: 4rem; } @media (max-width: 991px) { .split-section-big .split .split__content { padding: 2rem; } } @media (max-width: 767px) { .split-section-big .split .split__content { padding: 2rem 0; } }  .split.split--ultrawide > .brxe-text { max-width: 50ch; } @media (max-width: 767px) { .split.split--ultrawide > .brxe-text { max-width: unset; } }  .split.cta__split .button-wrapper { width: 20rem; }  .banner { --border-transparent: rgba(255,255,255,0.25); position: relative; overflow: hidden; isolation: isolate; } .banner--boxed { border-image: linear-gradient(to right, rgba(var(--black-rgb),0.6) 40%, transparent) 0 fill; }  svg.icon { box-sizing: content-box; overflow: visible; transition: var(--transition); }  .flex-wrapper { --gap: 2rem; } .flex-wrapper--0 { --gap: 0px; } .flex-wrapper--bordered { --gap: 2px; } a.teaser { text-decoration: none!important; } .brxe-div.teaser:is(:hover, :focus) { border-color: var(--border-transparent-hover); background-color: var(--white); } .brxe-div.teaser:is(:hover, :focus) svg.icon { background-color: var(--white); color: var(--red); }  .img-tag span { font-family: var(--font-heading); font-size: 1.75em; line-height: 1; text-transform: none; }  .breadcrumbs { position: sticky; top: var(--header-height); border-bottom: 1px solid var(--border-transparent); transition: var(--transition); z-index: 99; } header.slide-up + main .breadcrumbs { top: 0; } .breadcrumbs .title { margin-bottom: 0; } @media (max-width: 767px) { header.slide-up + main .breadcrumbs { transform: translateY(-101%); } }  .brxe-accordion-nested { --brx-icon-transform: rotate(45deg); } .brxe-accordion-nested > .brxe-block:first-child { border-top: 1px solid var(--border-transparent); } .brxe-accordion-nested > .brxe-block { border-bottom: 1px solid var(--border-transparent); } .brxe-accordion-nested .accordion-title-wrapper { flex-direction: row; flex-wrap: nowrap; justify-content: space-between; align-items: center; column-gap: 1rem; } .brxe-accordion-nested .accordion-title-wrapper .brxe-heading { margin-bottom: 0; } .brxe-accordion-nested .accordion-title-wrapper .brxe-icon { font-size: 1.5rem!important; color: var(--red); }  .box:not(.box--card) .box__headline, .box.box--contact .title { position: relative; padding-top: 1rem; } .box.box--contact .title { padding-top: 0.5rem; } .box:not(.box--card) .box__headline::before, .box.box--contact .title::before { content: ""; position: absolute; bottom: 100%; left: 0; display: inline-block; width: 2rem; height: 1px; background-color: var(--red); } .box.box--card .box__headline { margin-bottom: 1rem; } .box.box--myth .box__headline { position: relative; padding-top: 0; padding-bottom: 1rem; } .box.box--myth .box__headline::before { top: 100%; bottom: auto; } .box .box__number { font-family: var(--font-heading); font-size: 4rem; color: var(--black); opacity: 0.6; } .box.box--contact { text-decoration: none; transition: var(--transition); } .box.box--contact .box__content { font-size: var(--text-smaller); } .box.box--contact:is(:hover, :focus) { background-color: var(--red-light); } .box.box--contact:is(:hover, :focus) .box__icon { background-color: var(--red); color: var(--white); } .box.box--transparent { border: 1px solid transparent; border-left-color: var(--border-transparent); } .box.box--transparent:first-child { border-left-color: transparent; } @media (max-width: 991px) { .box.box--transparent { border-color: var(--border-transparent); } .box.box--transparent:nth-child(1), .box.box--transparent:nth-child(2) { border-top-color: transparent; } .box.box--transparent:nth-last-child(2), .box.box--transparent:last-child { border-bottom-color: transparent; } .box.box--transparent:nth-child(odd) { border-left-color: transparent; } .box.box--transparent:nth-child(even) { border-right-color: transparent; } } @media (max-width: 478px) { .box.box--transparent { border-color: transparent; } .box.box--transparent:not(:first-child) { border-top-color: var(--border-transparent); } }  .img-tag q { display: block; max-width: 24ch; margin-bottom: 0.5rem; font-family: var(--font-heading); font-size: 1.25em; text-transform: none; letter-spacing: normal; } blockquote { border-left-color: var(--red); padding-left: 1em; font-family: var(--font-heading); font-size: 1.2em; } blockquote + .title { padding-left: calc(1.25rem + 4px); } .banner--boxed blockquote { width: 39ch; margin: 0 0 1.5rem; padding-left: 0; border-left: none; font-family: var(--font-heading); font-size: 1.75em; line-height: 1.4; } @media (max-width: 991px) { .banner--boxed blockquote { font-size: 1.5em; } } @media (max-width: 767px) { .banner--boxed blockquote { font-size: 1.25em; } }  .process { counter-reset: step; } .process__step { position: relative; font-size: var(--text-smaller); counter-increment: step; } .process__step:not(:first-child) { margin-top: 2rem; } .process__step::before { content: counters(step, ".", decimal-leading-zero); position: absolute; top: 0; left: 0; width: 2ch; border-radius: 50%; background-color: var(--red); padding: 0.75em; line-height: normal; color: var(--white); text-align: center; box-sizing: content-box; transform: translate(-50%, -20%); }  .job__type { padding: 0.5em 0.75em; background-color: var(--white); line-height: 1; color: var(--red); } .job__salary { display: block; margin-top: 0.5em; } .job__fullpost { height: 0; overflow: hidden; } .job__fullpost.open { height: auto; } .job-wrapper .bricks-posts-nothing-found { padding: 0 0.5rem 1.5rem; }  .brxe-form { --_form-padding: 0.5rem; } .brxe-form ul { margin: 0.5em 0 1em; padding-left: 0; } .brxe-form ul li::before { display: none; } .brxe-form .form-group > :where(label, .label) { padding-top: 0.25em; padding-left: 1em; font-size: 0.85rem; } .brxe-form input:not([type="radio"], [type="checkbox"]), .brxe-form select, .brxe-form textarea { padding: 0.75rem; border-color: var(--border-transparent); border-radius: 0.5rem; background-color: var(--white); line-height: normal; color: var(--black); } .brxe-form input:not([type="radio"], [type="checkbox"])::placeholder, .brxe-form select::placeholder, .brxe-form textarea::placeholder { color: rgba(var(--black-rgb),0.75); } .brxe-form textarea { min-height: 10rem; max-height: 25rem; overflow: hidden; resize: vertical; }  .brxe-form select, .brxe-form select option, .variations_form select, .variations_form select option { font-family: var(--font-family); }  .brxe-form .options-wrapper li { display: flex; flex-flow: row nowrap; align-items: baseline; column-gap: 0.5rem; } .brxe-form .options-wrapper li input[type="checkbox"] { width: 1rem; min-width: 1rem; height: 1rem; padding: 0; border: 1px solid var(--white); border-radius: 0.25em; box-shadow: none; background-repeat: no-repeat; background-size: 80%; background-position: center center; background-color: var(--white); appearance: none; transition: var(--transition); } .brxe-form .options-wrapper li input[type="checkbox"]:checked { background-image: url('/wp-content/uploads/check.svg'); } .brxe-form .options-wrapper li label { max-width: 75ch; font-size: var(--text-smaller); } .brxe-form .options-wrapper li label strong { display: block; margin-bottom: 0.25em; font-size: 1rem; }  .brxe-form input:not([type="radio"], [type="checkbox"], [aria-label="PLZ"]) { padding-left: 2.75rem; background-repeat: no-repeat; background-size: 1rem; background-position: center left 1rem; } .brxe-form input[aria-label="Vorname"], .brxe-form input[aria-label="Nachname"] { background-image: url("/wp-content/uploads/person.svg"); } .brxe-form input[aria-label="E-Mail"] { background-image: url("/wp-content/uploads/mail.svg"); } .brxe-form input[aria-label="Telefon"] { background-image: url("/wp-content/uploads/phone.svg"); } .brxe-form input[aria-label="Stadt"] { background-image: url("/wp-content/uploads/city.svg"); } .brxe-form .submit-button-wrapper { width: 100%; padding: 0 var(--_form-padding); }  footer { padding: 3rem 1rem 2rem; background-color: var(--black); color: var(--white); }   @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes fade-in-left { from { opacity: 0; transform: translateX(-20%); } to { opacity: 1; transform: translateX(0); } } @keyframes fade-in-right { from { opacity: 0; transform: translateX(20%); } to { opacity: 1; transform: translateX(0); } } @keyframes fade-in-bottom { from { opacity: 0; transform: translateY(20%); } to { opacity: 1; transform: translateY(0); } }  .animation--viewport .split > div:first-child, .animation--viewport .split.split--reversed > div:last-child { opacity: 0; transform: translateX(-20%); } .animation--viewport .split > div:last-child, .animation--viewport .split.split--reversed > div:first-child { opacity: 0; transform: translateX(20%); } .animation--viewport[animate-vp="true"] .split > div:first-child, .animation--viewport[animate-vp="true"] .split.split--reversed > div:last-child { animation: fade-in-left 0.25s forwards; } .animation--viewport[animate-vp="true"] .split > div:last-child, .animation--viewport[animate-vp="true"] .split.split--reversed > div:first-child { animation: fade-in-right 0.25s forwards; } @media (max-width: 767px) { .animation--viewport .split > div:last-child, .animation--viewport .split.split--reversed > div:first-child { transform: translateX(-20%); } .animation--viewport[animate-vp="true"] .split > div:last-child, .animation--viewport[animate-vp="true"] .split.split--reversed > div:first-child { animation: fade-in-left 0.25s forwards; } }  .animation--staggered > * { opacity: 0; } .animation--staggered[animate-vp="true"] > * { animation: fade-in 0.25s forwards; } .animation--staggered > *:nth-child(1) { animation-delay: 0.25s; } .animation--staggered > *:nth-child(2) { animation-delay: 0.5s; } .animation--staggered > *:nth-child(3) { animation-delay: 0.75s; } .animation--staggered > *:nth-child(4) { animation-delay: 1s; } .animation--staggered > *:nth-child(5) { animation-delay: 1.25s; } .animation--staggered > *:nth-child(6) { animation-delay: 1.5s; } .animation--staggered > *:nth-child(7) { animation-delay: 1.75s; }  body[data-builder-window="iframe"] .animation--viewport .split > div:first-child, body[data-builder-window="iframe"] .animation--viewport .split > div:last-child, body[data-builder-window="iframe"] .animation--staggered > * { opacity: 1!important; transform: none!important; }